debian/0000755000000000000000000000000012175144067007175 5ustar debian/dirs0000644000000000000000000000006710717532157010065 0ustar usr/share/doc/tklib/html usr/share/man usr/share/tcltk debian/source/0000755000000000000000000000000012175144067010475 5ustar debian/source/lintian-overrides0000644000000000000000000000033012175130151014037 0ustar # Override the following error because the helper files aren't used tklib source: ancient-autotools-helper-file config/config.guess 2003-10-07 tklib source: ancient-autotools-helper-file config/config.sub 2003-10-07 debian/source/format0000644000000000000000000000001412175122136011674 0ustar 3.0 (quilt) debian/manpages0000644000000000000000000000004012175126304010677 0ustar debian/tmp/usr/share/man/mann/* debian/rules0000755000000000000000000000570012175130151010244 0ustar #!/usr/bin/make -f # -*- makefile -*- version = 0.6 destdir=debian/tmp mandir=/usr/share/man docdir=/usr/share/doc/tklib exampledir=$(docdir)/examples %: dh $@ override_dh_auto_build: dh_auto_build $(MAKE) doc override_dh_auto_install: dh_auto_install --destdir=$(destdir) # find $(destdir)/usr/lib -name repair.tcl -delete # # Now set the permissions properly, since the Makefile doesn't bother find $(destdir)/usr/lib -type f -print | xargs chmod 644 # # Fix dia name and interpreter path mv $(destdir)/usr/bin/dia $(destdir)/usr/bin/diagram-viewer sed -i -e 's:^#!bin/bash:#!/bin/bash:' $(destdir)/usr/bin/diagram-viewer # # Fix application manpages mv $(destdir)$(mandir)/mann/dia.n $(destdir)$(mandir)/mann/diagram-viewer.n cd $(destdir)$(mandir)/mann && \ for f in diagram-viewer.n bitmap-editor.n ; do \ sed -e'/\.so man.macros/ d' \ -e's/^\.TH \([^ ]\+\) n/.TH \1 1/' \ -e's/dia\([^g]\)/diagram-viewer\1/' \ -e's/clock(n)/clock(3tcl)/g' \ -e's/(n)/(3tk)/g' \ -e's/(3)/(3tk)/g' \ -e's/spIf/sp 1\nIf/' \ -e's/\.sp Fu/\.sp 1\nFu/' \ $$f > `basename $$f .n`.1; \ rm $$f; \ done # # Several manpages has incorrect filenames (in lowercase), so take them # from the headers # Also, replace section n by 3tk cd $(destdir)$(mandir)/mann && \ for f in *.n ; do \ name=`grep '^\.TH' <$$f | sed 's/^\.TH "\([^ ]\+\)".*/\1/'`; \ LANG=C sed -e'/\.so man.macros/ d' \ -e's/^\.TH \([^ ]\+\) n/.TH \1 3tk/' \ -e's/clock(n)/clock(3tcl)/g' \ -e's/(n)/(3tk)/g' \ -e's/(3)/(3tk)/g' \ -e's/spIf/sp 1\nIf/' \ -e's/\.sp Fu/\.sp 1\nFu/' \ -e's/ü/\\[:u]/g' \ -e's/"A dialog which allows a user to m/"M/' \ $$f > $$name.3tk; \ rm $$f; \ done # # cleanup docs cd doc/html && \ for f in *.html ; do \ sed -i -e's/clock(n)/clock(3tcl)/g' \ -e's/(n)/(3tk)/g' \ -e's/(3)/(3tk)/g' $$f; \ done # # generate documentation index tclsh debian/genindex.tcl doc/html >doc/html/index.html override_dh_installexamples: dh_installexamples # # Fix incorrect permissions find debian/tklib$(exampledir) -type f -print | xargs chmod 644 # # Fix canvas example convert -geometry 400x300 debian/tklib$(exampledir)/canvas/morgens.jpg \ debian/tklib$(exampledir)/canvas/morgens1.jpg mv -f debian/tklib$(exampledir)/canvas/morgens1.jpg \ debian/tklib$(exampledir)/canvas/morgens.jpg sed -i -e 's/^source/#source/' \ -e 's/256/100/' debian/tklib$(exampledir)/canvas/puzzle.tcl override_dh_compress: dh_compress -Xusr/share/doc/tklib/examples/ \ -Xusr/share/doc/tklib/html override_dh_gencontrol: tcltk-depends dh_gencontrol override_dh_auto_test: # Tests require X, so disable them get-orig-source: wget -O tklib_$(version).orig.tar.bz2 \ http://core.tcl.tk/tklib/raw/tklib-$(version).tar.bz2?name=6a397dec6188148cf6a6fe290cf2bd92a9190c42 .PHONY: override_dh_auto_install override_dh_installexamples override_dh_gencontrol \ override_dh_auto_test get-orig-source debian/docs0000644000000000000000000000002012175122136010031 0ustar README doc/html debian/patches/0000755000000000000000000000000012175144067010624 5ustar debian/patches/doc.diff0000644000000000000000000000073712175122136012223 0ustar Author: Sergei Golovan Description: Patch fixes building of html docs and manpages. --- tklib-0.6.orig/Makefile.in +++ tklib-0.6/Makefile.in @@ -55,9 +55,9 @@ html-doc: - $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` html + $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` doc html nroff-doc: - $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` nroff + $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` doc nroff tmml-doc: $(TCLSH_PROG) `$(CYGPATH) $(srcdir)/sak.tcl` tmml wiki-doc: debian/patches/series0000644000000000000000000000004012175122136012024 0ustar manpages.diff osm.diff doc.diff debian/patches/osm.diff0000644000000000000000000000037612175122136012253 0ustar Patch fixes the openstreetmap demo. --- tklib-0.6.orig/examples/canvas/osm.tcl +++ tklib-0.6/examples/canvas/osm.tcl @@ -335,6 +335,8 @@ #puts ".z = $level" + if {$level<0} { set level 0 } + SetRegion $level ShowPoints return debian/patches/manpages.diff0000644000000000000000000001351512175122136013247 0ustar Patch by Sergei Golovan fixes errors in manual pages (several words started with a dot are treated as undefined macros). Also, -full is treated as an argument. --- tklib-0.6.orig/modules/chatwidget/chatwidget.man +++ tklib-0.6/modules/chatwidget/chatwidget.man @@ -55,7 +55,7 @@ Control the names and tags associated with names. [list_begin commands] [cmd_def "list [opt [arg -full]]"] -Returns a list of all the user names from the names view. If [opt \ +Returns a list of all the user names from the names view. If [arg \ -full] is given then the list returned is a list of lists where each sublist is made up of the nick followed by any options that have been set on this nick entry. This may be used to examine any application @@ -97,17 +97,17 @@ [section EXAMPLE] [example { -chatwidget::chatwidget .chat -proc speak {w msg} {$w message $msg -nick user} -.chat hook add post [list speak .chat] -pack .chat -side top -fill both -expand 1 -.chat topic show -.chat topic set "Chat widget demo" -.chat name add "admin" -group admin -.chat name add "user" -group users -color tomato -.chat message "Chatwidget ready" -type system -.chat message "Hello, user" -nick admin -.chat message "Hello, admin" -nick user + chatwidget::chatwidget .chat + proc speak {w msg} {$w message $msg -nick user} + .chat hook add post [list speak .chat] + pack .chat -side top -fill both -expand 1 + .chat topic show + .chat topic set "Chat widget demo" + .chat name add "admin" -group admin + .chat name add "user" -group users -color tomato + .chat message "Chatwidget ready" -type system + .chat message "Hello, user" -nick admin + .chat message "Hello, admin" -nick user }] [para] --- tklib-0.6.orig/modules/history/tklib_history.man +++ tklib-0.6/modules/history/tklib_history.man @@ -46,7 +46,7 @@ This command queries or sets configuration options. Currently the options recognized are [arg length] and [arg alert]. Setting the length determines the number of history entries to keep for -the named Entry. Alert specifies the command to run when the user reaches the end of the history, it defaults to [call bell]. Although configure requires a [arg pathName] argument, the setting for alert is global and the path is ignored. +the named Entry. Alert specifies the command to run when the user reaches the end of the history, it defaults to [cmd bell]. Although configure requires a [arg pathName] argument, the setting for alert is global and the path is ignored. [list_end] --- tklib-0.6.orig/modules/ntext/ntextIndent.man +++ tklib-0.6/modules/ntext/ntextIndent.man @@ -102,39 +102,39 @@ To switch on [emph Ntext] 's indentation and use it in widget .t: [example { -package require ntext -set ::ntext::classicWrap 0 -text .t -wrap word -bindtags .t {.t Ntext . all} + package require ntext + set ::ntext::classicWrap 0 + text .t -wrap word + bindtags .t {.t Ntext . all} }] To decide later to switch off [emph Ntext] 's indentation: [example { -set ::ntext::classicWrap 1 -::ntext::wrapIndent .t + set ::ntext::classicWrap 1 + ::ntext::wrapIndent .t }] To decide later to switch [emph Ntext] 's indentation back on: [example { -set ::ntext::classicWrap 0 -::ntext::wrapIndent .t 1.0 end + set ::ntext::classicWrap 0 + ::ntext::wrapIndent .t 1.0 end }] To inject some text into the widget: [example { -set foo [.t index end] -.t insert end {This line was added by the script, not the keyboard!} -::ntext::wrapIndent .t $foo end + set foo [.t index end] + .t insert end {This line was added by the script, not the keyboard!} + ::ntext::wrapIndent .t $foo end }] To switch to [arg -wrap] [arg char] mode: [example { -.t configure -wrap char -::ntext::wrapIndent .t + .t configure -wrap char + ::ntext::wrapIndent .t }] --- tklib-0.6.orig/modules/tooltip/tooltip.man +++ tklib-0.6/modules/tooltip/tooltip.man @@ -97,44 +97,44 @@ [section EXAMPLE] [example { -# Demonstrate widget tooltip -package require tooltip -pack [label .l -text "label"] -tooltip::tooltip .l "This is a label widget" + # Demonstrate widget tooltip + package require tooltip + pack [label .l -text "label"] + tooltip::tooltip .l "This is a label widget" }] [example { -# Demonstrate menu tooltip -package require tooltip -. configure -menu [menu .menu] -.menu add cascade -label Test -menu [menu .menu.test -tearoff 0] -.menu.test add command -label Tooltip -tooltip::tooltip .menu.test -index 0 "This is a menu tooltip" + # Demonstrate menu tooltip + package require tooltip + . configure -menu [menu .menu] + .menu add cascade -label Test -menu [menu .menu.test -tearoff 0] + .menu.test add command -label Tooltip + tooltip::tooltip .menu.test -index 0 "This is a menu tooltip" }] [example { -# Demonstrate canvas item tooltip -package require tooltip -pack [canvas .c] -set item [.c create rectangle 10 10 80 80] -tooltip::tooltip .c -item $item "Canvas item tooltip" + # Demonstrate canvas item tooltip + package require tooltip + pack [canvas .c] + set item [.c create rectangle 10 10 80 80] + tooltip::tooltip .c -item $item "Canvas item tooltip" }] [example { -# Demonstrate listbox item tooltip -package require tooltip -pack [listbox .lb] -.lb insert 0 "item one" -tooltip::tooltip .lb -item 0 "Listbox item tooltip" + # Demonstrate listbox item tooltip + package require tooltip + pack [listbox .lb] + .lb insert 0 "item one" + tooltip::tooltip .lb -item 0 "Listbox item tooltip" }] [example { -# Demonstrate text tag tooltip -package require tooltip -pack [text .txt] -.txt tag configure TIP-1 -underline 1 -tooltip::tooltip .txt -tag TIP-1 "tooltip one text" -.txt insert end "An example of a " {} "tooltip" TIP-1 " tag.\n" {} + # Demonstrate text tag tooltip + package require tooltip + pack [text .txt] + .txt tag configure TIP-1 -underline 1 + tooltip::tooltip .txt -tag TIP-1 "tooltip one text" + .txt insert end "An example of a " {} "tooltip" TIP-1 " tag.\n" {} }] [keywords tooltip hover balloon help] debian/changelog0000644000000000000000000001065312175144037011051 0ustar tklib (0.6-1) unstable; urgency=low * New upstream release. * Switched to the 3.0 (quilt) source package format. * Bumped debhelper compatibility version to 9. * Bumped standards version to 3.9.4. * Changed the upstream project homepage to http://core.tcl.tk/tklib/home. * Renamed /usr/bin/dia script to /usr/bin/diagram-viewer to avoid filename clash with the Dia editor. -- Sergei Golovan Sun, 28 Jul 2013 11:28:29 +0400 tklib (0.5-3) unstable; urgency=low * Fixed demo which shows a tile-based world map using openstreetmap. * Added ${misc:Depends} substvar because the package uses debhelper. * Bumped the standards version to 3.9.2. * Added the README.source which describes how to apply the series of patches in debian/patches subdir. * Added build-arch and build-indep targets into debian/rules. -- Sergei Golovan Sun, 18 Dec 2011 22:28:10 +0400 tklib (0.5-2) unstable; urgency=low * Added tcllib in recommended dependencies because some modules (widget) don't work without modules from tcllib (snit). * Fixed script which generates documentation index (newer doctool adds class attribute which broke the script). * Added a short description of two modules added to Tklib in 0.5 version. -- Sergei Golovan Thu, 19 Mar 2009 18:22:20 +0300 tklib (0.5-1) experimental; urgency=low * New upstream release. -- Sergei Golovan Tue, 03 Feb 2009 20:52:28 +0300 tklib (0.4.1-20080501-1) unstable; urgency=low * New CVS snapshot. * Changed section in doc-base registration file to Programming. * Added copyright statements for individual Tklib modules. * Protected quilt calls in debian/rules to allow converting the source package into 3.0 (quilt) format (closes: #484926). * Cleaned up debian/rules. * Bumped standards version to 3.8.0. * Fixed errors in man pages (lines started with a dot). * Added debian/watch uscan control file to help tracking new upstream releases. -- Sergei Golovan Tue, 17 Jun 2008 15:31:42 +0400 tklib (0.4.1-20080125-1) unstable; urgency=low * New CVS snapshot. * Removed empty directory /usr/lib from the binary package. * Removed extra leading spaces from continuation strings in doc-base registration file. * Bumped standards version to 3.7.3. -- Sergei Golovan Fri, 25 Jan 2008 17:44:11 +0300 tklib (0.4.1-20071020-1) unstable; urgency=low * New CVS snapshot. * Adapted the package to Debian Tcl/Tk policy. This includes moving the Tcl modules into a subdirectory of /usr/share/tcltk and switching to default tcl package in dependencies. * Use quilt for patch management. * Fixed ignoring errors in clean target in debian/rules. * Added Homepage field in debian/control. -- Sergei Golovan Sat, 17 Nov 2007 11:47:05 +0300 tklib (0.4.1-20070927-1) unstable; urgency=low * New CVS snapshot. * Upload to Debian archive (closes: #444415). -- Sergei Golovan Sun, 30 Sep 2007 15:53:42 +0400 tklib (0.4.1-20070504-1) unstable; urgency=low * New CVS snapshot. * Fixed registering docs in doc-base. -- Sergei Golovan Fri, 11 May 2007 12:06:49 +0400 tklib (0.4.1-20070108-1) unstable; urgency=low * New CVS snapshot. * Fixed sections inside manual pages and HTML docs. * Added an index for HTML documentation. * Register HTML docs in doc-base. * Removed tk8.4 from build-dependencies and tcllib from dependencies. * Moved tklib scripts to /usr/share as required by Debian Policy leaving symlink in /usr/lib. -- Sergei Golovan Mon, 08 Jan 2007 01:59:26 +0300 tklib (0.4.1-20061210-2) unstable; urgency=low * Fixed manual pages filenames. -- Sergei Golovan Thu, 04 Jan 2007 11:30:53 +0300 tklib (0.4.1-20061210-1) unstable; urgency=low * Used current CVS because of KHIM module. -- Sergei Golovan Sun, 10 Dec 2006 13:39:33 +0300 tklib (0.4.1-2) unstable; urgency=low * Moved debhelper to Build-Depends section in debian/control file. * Bumped Standards-Version to 3.7.2. * Moved demo.tcl from tkpiechart to docs dir. * Fixed section number in manual pages. -- Sergei Golovan Sun, 10 Dec 2006 00:55:30 +0300 tklib (0.4.1-1) unstable; urgency=low * Initial release. -- Sergei Golovan Sat, 09 Dec 2006 23:00:40 +0300 debian/compat0000644000000000000000000000000212175143723010371 0ustar 9 debian/genindex.tcl0000644000000000000000000000264311160465272011504 0ustar #!/usr/bin/tclsh set docdir [lindex $argv 0] set manuals {} foreach docfile [glob -nocomplain -directory $docdir *.html] { puts stderr $docfile if {[catch {set fd [open $docfile]} msg]} { puts stderr "Can't open file $docfile: $msg" continue } while {[gets $fd line] >= 0} { if {[regexp {]*>\s*(.*)\(\S*\)\s+(\S+)\s+(\S+)\s+(.*)} $line -> \ name version module title]} { lappend manuals [list $module!$title!$name $module $name $version $title [file tail $docfile]] break } } close $fd } puts " Tklib HTML Documentation

Tklib HTML Documentation

" set manuals [lsort -index 0 $manuals] set prev "" foreach m $manuals { set module [lindex $m 1] set name [lindex $m 2] set version [lindex $m 3] set title [lindex $m 4] set fname [lindex $m 5] if {$module != $prev} { if {$prev != ""} { puts "" } puts "

$module

\n
    " set prev $module } puts "
  • $name $version $title
  • " } puts "

tablelist

  • tablelist - "A multicolumn listbox package"
" debian/control0000644000000000000000000000415212175144012010570 0ustar Source: tklib Section: interpreters Priority: optional Maintainer: Sergei Golovan Build-Depends: debhelper (>= 9.0.0) Build-Depends-Indep: tk-dev, tcllib, imagemagick Standards-Version: 3.9.4 Homepage: http://core.tcl.tk/tklib/home Package: tklib Section: interpreters Architecture: all Depends: ${wish:Depends}, ${misc:Depends} Recommends: tcllib (>= 1.11) Description: standard Tk Library Tklib, the standard Tk library, is a collection of common utility functions and widgets all written in pure Tcl/Tk. . Modules included: autoscroll: automatically maps scrollbars when they are needed; canvas: provides a canvas with map background based on square tiles; chatwidget: a composite widget for chat applications; controlwidget: widgets for displaying and controlling numerical values; crosshair: provides commands to (de)activate and track crosshairs; on canvas widgets; ctext: a text widget with syntax highlighting support; cursor: provides a few cursor routines; datefield: an entry widget for the purpose of date entry; Diagrams: helps drawing diagrams, like flowcharts; getstring: a dialog which prompts for a string input; history: provides a history for mechanism for entry widgets; ico: provides functions for reading and writing windows icons; ipentry: a widget for the entering of an IP address; khim: provides key bindings for entering international characters on a keyboard that does not support them; mentry: a multi-entry widget; menubar: creates and manipulates menubars; ntext: provides alternative bindings for the Text widget; Plotchart: provides simple plotting and charting commands; style: provides simple theming using Tk options; swaplist: a dialog which allows one to move options between two lists; tablelist: a multicolumn listbox widget; tkpiechart: 2D or 3D pie chart object in a canvas; tooltip: provides tooltips for Tk widgets; wcb: widget callbacks; widget: a set of megawidgets based on snit system; widgetl: a widget for entry of ordered and unordered lists; widgetv: a widget validator. debian/examples0000644000000000000000000000001310536625015010724 0ustar examples/* debian/doc-base0000644000000000000000000000055411025717140010570 0ustar Document: tklib Title: Tklib Documentation Author: Authors of the Tklib modules Abstract: This is a documentation for Tklib - the standard Tk library. It contains documentation on individual Tklib modules, supplied with upstream distribution. Section: Programming Format: HTML Index: /usr/share/doc/tklib/html/index.html Files: /usr/share/doc/tklib/html/*.html debian/copyright0000644000000000000000000000766111025717140011131 0ustar This package was debianized by Sergei Golovan from sources obtained from: http://sourceforge.net/project/showfiles.php?group_id=12883 Copyright: This software is copyrighted by Ajuba Solutions and other parties. The following terms apply to all files associated with the software unless explicitly disclaimed in individual files. The authors hereby grant permission to use, copy, modify, distribute, and license this software and its documentation for any purpose, provided that existing copyright notices are retained in all copies and that this notice is included verbatim in any distributions. No written agreement, license, or royalty fee is required for any of the authorized uses. Modifications to this software may be copyrighted by their authors and need not follow the licensing terms described here, provided that the new terms are clearly indicated on the first page of each file where they apply. IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. GOVERNMENT USE: If you are acquiring this software on behalf of the U.S. government, the Government shall have only "Restricted Rights" in the software and related documentation as defined in the Federal Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you are acquiring the software on behalf of the Department of Defense, the software shall be classified as "Commercial Computer Software" and the Government shall have only "Restricted Rights" as defined in Clause 252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing, the authors grant the U.S. Government and others acting in its behalf permission to use and distribute the software in accordance with the terms specified in this license. Copyrights for individual modules: autoscroll: Copyright (c) 2003 Kevin B. Kenny chatwidget: Copyright (c) 2007 Pat Thoyts ctext: Copyright (c) 2007 George Peter Staplin cursor: Copyright (c) 2001 Jeffrey Hobbs datefield: Copyright (c) 2002 Keith Vetter diagrams: Copyright (c) 2006 Arjen Markus getstring: Copyright (c) 2005 Aaron Faupell history: Copyright (c) 2005 Aaron Faupell ico: Copyright (c) 2003-2004 ActiveState Corporation Copyright (c) 2003-2007 Aaron Faupell ipentry: Copyright (c) 2003 Aaron Faupell khim: Copyright (c) 2005-2006 Kevin B. Kenny Copyright (c) 2006 Andreas Kupries Copyright (c) 2008 Emiliano Gavilan ntext: Copyright (c) 1992-1994 The Regents of the University of California Copyright (c) 1994-1997 Sun Microsystems, Inc. Copyright (c) 1998 Scriptics Corporation Copyright (c) 2005-2007 additions by Keith Nash plotchart: Copyright (c) 2004-2008 Arjen Markus style: Copyright (c) 2004 ActiveState Corporation Copyright (c) 2004 David N. Welton swaplist: Copyright (c) 2005 Aaron Faupell tablelist: Copyright (c) 2000-2008 Csaba Nemethi tkpiechart: Copyright (c) 2005-2006 Jean-Luc Fontaine tooltip: Copyright (c) 2003 ActiveState Corporation. Copyright (c) 1996-2007 Jeffrey Hobbs widget: Copyright (c) 2005 Jeffrey Hobbs debian/install0000644000000000000000000000017712175143713010570 0ustar debian/tmp/usr/bin/* usr/bin debian/tmp/usr/lib/*/* usr/share/tcltk modules/tablelist/doc/* usr/share/doc/tklib/html/tablelist debian/checkout0000644000000000000000000000102010746441745010723 0ustar #!/usr/bin/expect switch -- [llength $argv] { 0 { set date "now" set dir . } 1 { set date "now" set dir [lindex $argv 0] } default { set date [clock format [expr {[clock scan [lindex $argv 1]] + 24*60*60}] -format %Y%m%dT%H:%M:%S] set dir [lindex $argv 0] } } cd $dir set cvsroot ":pserver:anonymous@tcllib.cvs.sourceforge.net:/cvsroot/tcllib" spawn cvs -q -d$cvsroot login expect -re "assword: " send "\r" system "cvs -q -d$cvsroot -z9 co -D \"$date\" tklib" system "cvs -q -d$cvsroot logout"