Purpose: collect information about the [starkit] called Kitten. ---- Someone (dgp?) recently on the wiki chatroom observed that the idea of kitten is to turn a tclkit/starkit 2 file deployment into a 3 file deployment (unless of course you merge your application with either the kitten or tclkit starkit). ---- What: kitten Where: http://www.equi4.com/pub/sk/kitten.kit Description: Kitten is a [tclkit] collection of Tcl/Tk extensions aimed at reducing the work a developer has to do while developing a starkit. It contains script and compiled extensions like [tcllib], [BWidgets], [expat], [Expect], [incr Widgets], [mclistbox], [mpexpr], [narray], a tcl parser, an sgml parser, [tclSOAP], [stooop], [Supertext], [tdom], [Tix], [Tktable], [tclXML], [tkHtml], [ClassyTk] and others. Binary extensions are compiled for Windows, Linux, and Solaris as possible. Updated: 07/2002 Contact: See web site. ---- To use kitten, download it from above (it's about 4 Mb). If all you want to do is use the included packages from your application running under tclkit (over 130 by now), then nothing could be simpler: source kitten.kit If you want to list the contents, or update it over the net, you need to make kitten an executable starkit. On Unix, do a chmod +x kitten.kit On Windows, create a file called kitten.bat with the line: @tclkitsh kitten.kit ---- '''June 2002''' - When you execute the kitten file with no argument, you now get a wiki of help information explaining how to use kitten to gain access to any of these extensions. ---- Kitten has four modes. The first is the help model - by executing the command, you get output similar to this: This is a collection of Tcl extensions, packaged as a single file. Usage: kitten.kit -l list available extensions (may vary per platform) kitten.kit -u update from $update_url To use these extensions, simply source this file: source kitten.kit Your script does not need to be packaged as a "starkit" like kitten, but it's best to launch with TclKit (not wish or tclsh) to have access to the Mk4tcl and starkit packages required for this approach. If you want to use the packages with other Tcl installations, you will need either MetaKit or ReadKit to unpack, as well as the "starkit.tcl" pkg. You can make a copy of all extensions with the "sdx" utility, using: sdx unwrap kitten.kit A "kitten.vfs" directory will be created with all files unpacked. '''Jan 2003''' - the '''update''' mode has been disabled. It is going to be replaced by a far more generic and efficient mechanism. Work is in progress, no ETA yet. -[jcw] ---- If you execute "kitten.kit -l" on linux, you will see output similar to this: [[Date: Mon Nov 4 11:22:20 EST 2002]] [[Date: Mon Jan 20 09:24:37 EST 2003]] ascenc 0.11 autoproxy 1.0 autoscroll 1.0 base64 2.2.1 blowfish 0.10 BWidget 1.3.0 calendar 0.1 cgi 1.6.1 cgi2dom 1.1 cksum 1.0 Class 1.0 ClassyTk 1.0 cmdline 1.2 comm 4.0 control 0.1.1 counter 2.0 crc32 1.0 critcl 0.0 csv 0.3 dns 1.0.1 dom 2.1 dom::c 2.0 dom::generic 1.0 dom::libxml2 1.0 dom::tcl 2.1 dom::tclgeneric 1.0 dommap 1.0 dyncall 0.11 exif 1.0 expat 1.1 + 2.0 Expect 5.31.5 Extral 2.0 fileutil 1.4 ftp 2.3.1 ftp::geturl 0.1 ftpd 1.1.2 gbutton 0.2 gk 5.1 hexdump 0.10 HTML 1.0 html 1.2 HTML_Parse 1.0 htmlparse 0.3 ihash 0.11 irc 0.2 Itk 3.2 Iwidgets 3.0.1 javascript 1.0 log 1.0.1 lzrw1 0.10 math 1.2.1 math::calculus 0.5 math::fuzzy 0.1 math::geometry 1.0.1 mathf 0.11 mclistbox 1.02 md5 1.4.2 md5c 0.11 Mentry 2.4 mentry 2.4 Metawidget 1.3 mime 1.3.2 mkWidgets 1.3 Modify 1.0 Mpexpr 1.0 mvec 0.12 narray 0.81 ncgi 1.2.1 nntp 0.2 pop3 1.5.1 pop3d 1.0 pop3d::dbox 1.0 pop3d::udb 1.0 profiler 0.2 puretclparser 2.0 report 0.3 rpcvar 1.1 scratch 0.10 sgml 1.8 sgmlparser 1.0 sha1 1.0.2 smtp 1.3.2 smtpd 1.0 SOAP 1.6 SOAP::beep 1.0 SOAP::CGI 1.0 SOAP::Domain 1.4 SOAP::ftp 1.0 SOAP::http 1.0 SOAP::https 1.0 SOAP::Service 0.4 SOAP::smtp 1.0 SOAP::Utils 1.0 SOAP::xpath 0.2 soapinterop::B 1.0 soapinterop::base 1.0 soapinterop::C 1.0 stats 1.0 stooop 4.4 struct 1.2.1 sum 1.0 Supertext 1.0.1 switched 2.2 Tablelist 2.7 tablelist 2.7 tcllib 1.3 tclparser 2.0 Tclx 8.4 tdom 0.7 textutil 0.4 textutil::expander 1.0 Tix 8.2 Tkhtml 0.0 Tktable 2.7 tls 1.4 uri 1.1.1 uri::urn 1.0 uuencode 1.0.1 Wcb 2.8 wcb 2.8 Web 1.0 Widget 1.0 Wikit 1.0 Wikit::Format 1.0 Wikit::Gui 1.0 Wikit::Utils 1.0 xerces 2.0 xml 2.0 xml::c 2.0 xml::expat 2.0 xml::tcl 2.0 xml::tclparser 2.0 xmldefs 2.0 xmldep 1.0 XMLRPC 1.0 xmlswitch 1.0 xpath 1.0 yencode 1.0 The ''-u'' option updates your executable to the latest in a central repository. It may or may not reflect the very latest version that exists for a particular extension. '''Jan 2003''' - Correction, "-u" has been disabled (more accurately: the server for it has been taken down). See comments about an upcoming replacement above. ---- Unsolicited response: this is stunning. ---- [Steve Landers] characterizes Kitten as "nothing more than an experiment ... this is how you might build a [BI]--if you wanted to." Even so, it's within 10% of 'producthood'. ---- Kitten is constructed as a regular [starkit], with one change to make its use convenient for sourceing, in main.tcl, the line "starkit::startup" has been replaced by: if {[starkit::startup] == "sourced"} return With this, "source kitten" simply sets things up and then makes all its packages available in the caller. ---- See [Considerations when adding extensions to Kitten] for discussions on cross-platform deployement in this wonderful package. See also [sdx], the Starkit Developer eXtension used to create starkits. ---- [[ [Category Package] | [Category Tclkit] ]]