Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

New release of Tcl and Tk

19 views
Skip to first unread message

John Ousterhout

unread,
Aug 7, 1992, 2:07:08 PM8/7/92
to

I have released new versions of both Tcl and Tk. The Tcl release is
6.4; it has only one new feature (a new procedure Tcl_GlobalEval)
and a bunch of bug fixes.

The new Tk release is version 2.2. This is a major new release that
includes many bug fixes plus the following new features:

- There is now a text widget. It will display multiple lines of text
and allows the text to be edited (but the set of bindings for
editing isn't very rich yet). It also includes a tagging mechanism
that allows you to change the fonts, colors, etc. on a character-
by-character basis, and you can associate bindings with tags to
implement hypertext-like features. It handles large texts
efficiently.

- Canvases have been improved in many ways, including new item types
(arcs, bitmaps, and subwindows), Bezier spline support for lines
and polygons, "coords" and "bbox" widget commands, and many other
improvements and bug fixes.

- There is a new "grab" command that can be used to create modal dialog
boxes.

- There is a new "tkwait" command for waiting for particular events to
occur (such as modal dialog box to complete its task).

- The menu bindings have been completely reworked to have better Motif
compliance, such as keyboard traversal.

- Individual menu entries can now have their own colors and fonts.

- Most widgets (e.g. buttons, entries, text) now have a "-state" option
that can be set to "disabled" to make the widget insensitive.

- A new "-disabledForeground" option allows you to request that disabled
buttons and menu entries be displayed in a dimmer color rather than with
a stippled version of the original color.

- Entries and messages can now be tied to a variable so that either is
updated if the other changes.

See the "changes" files in the Tk and Tcl source directories for more
complete information on what's changed. The new releases should be
backward compatible unless you modified low-level things like menu
bindings.

The new releases are available in the usual places. There is a patch
file to upgrade from Tcl 6.3 to 6.4, but the Tk changes are so massive
that a patch file didn't make much sense (it was almost as large as the
new release). The rest of this message contains my standard catalog for
where things are and how to get them.

Retrieving the sources for Tcl and Tk:
--------------------------------------

I have left the sources and documentation for the Tcl command
language library, for the Tk toolkit, and for a few Tcl-based
applications in the public FTP area on sprite.berkeley.edu.
All of these files are in the "tcl" subdirectory of the FTP area.
Here is a catalog of what's available. Most of the files are
compressed tar files ("xxx.tar.Z"). There is some overlap
between the contents of the various packages.

tk2.2.tar.Z - This is the latest release of the Tk toolkit, released
in August 1992. It includes a complete copy of the
Tcl 6.4 release (the version of Tcl with which it is
compatible) plus a simple windowing shell called
"wish". If you retrieve this file you don't need to
retrieve Tcl separately.

tcl6.4.tar.Z - This is the newest release of the Tcl library.
It became available in August 1992. This package
includes only the Tcl library and its documentation,
plus a simple main program for testing.

tcl6.4.patch.Z - A patch file to upgrade from the 6.3 release of Tcl
to 6.4. Invoke patch in the top-level Tcl directory
with the "-p" switch and an uncompressed version of
this file, e.g. "patch -p tcl6.4.patch".

tclX6.2b.tar.Z - Extended Tcl (or NeoSoft Tcl), created by Mark
Diekhans and Karl Lehenbauer, which adds a number
of useful facilities to the base Tcl release.
Among the things in Extended Tcl are a Tcl shell,
many new commands for things like UNIX kernel
call access and math library routines, and an
on-line help facility. This file is based on Tcl
6.2 and also works with Tk 1.4. It should work with
Tcl 6.4 and Tk 2.2 also.

tcl/mx.tar.Z - Sources and documentation for a mouse-based text
editor (mx) and terminal emulator (tx) based on
Tcl. This is a very old release: it uses an old
version of Tcl (which is included) and doesn't
even use Tk; it uses an ancient toolkit called
"Sx". These tools will eventually be replaced
with new tools based on Tk and the newest Tcl.

tcl/tclUsenix90.ps - Postscript for a paper on Tcl that appeared in the
Winter 1990 USENIX Conference. This paper is also
included in the Tcl and Tk distributions.

tcl/tkUsenix91.ps - Postscript for a paper on Tk that appeared in the
Winter 1991 USENIX Conference. This paper is also
included in the Tk distribution.

tcl/tkF10.ps - Postscript for Figure 10 of the Tk paper.

talk1.ps - Postscript for viewgraphs from first of five talks
in the Tcl tutorial at the 1992 X Conference (the
same talk was also given at the 1992 USENIX Winter
Conference). This talk gives an overview of Tcl
and Tk.

talk2.ps - Postscript for viewgraphs from second of five talks
in the Tcl tutorial at the 1992 X Conference. This
talk describes how to write scripts in the Tcl
language.

talk3.ps - Postscript for viewgraphs from third of five talks
in the Tcl tutorial at the 1992 X Conference. This
talk describes how to program the Tk toolkit using
Tcl scripts.

talk4.ps - Postscript for viewgraphs from fourth of five talks
in the Tcl tutorial at the 1992 X Conference. This
talk describes how to write new Tcl-based applications
in C.

talk5.ps - Postscript for viewgraphs from last of five talks
in the Tcl tutorial at the 1992 X Conference. This
talk describes how to write implement widgets in C
using the Tk library. This talk uses a simple
"square" widget as an example; the code for the
widget is in tkSquare.c.

tkSquare.c - Sample code for use in conjunction with talk5.ps.

To retrieve any or all of these packages, use anonymous FTP to
sprite.berkeley.edu (Internet address 128.32.150.27). Use user
"anonymous"; when asked for a password, type your login name. Then
retrieve the relevant file(s) with the commands like the following:
type image (try "type binary" if this command is rejected)
get tcl6.4.tar.Z
get tk2.2.tar.Z
get mx.tar.Z

What you'll get in most cases are compressed tar files; to get back the
original directory hierarchies, type the commands like the following for
each file you retrieved:
uncompress tk2.2.tar.Z
tar xf tk2.2.tar
This will create a directory named tk2.0 with all the source files and
documentation for that release. There will be a README file in the
tk2.0 subdirectory that tells what to do next.

If you don't have access to Sprite, you can also retrieve some or
all of the above files from other FTP repositories. Here is a
sampler of machines that store some or all of the Tcl/Tk information,
plus the directories in which to check:

ftp.uu.net: languages/tcl/*
export.lcs.mit.edu: contrib/tk*
barkley.berkeley.edu: tcl/*

The barkley FTP area also contains a number of extensions and contributed
Tcl scripts.

If you cannot use FTP at all, there is a service called "ftpmail"
available from gateekeeper.dec.com: you can send e-mail to this
machine and it will use FTP to retrieve files for you and send you
the files back again via e-mail. To find out more about the ftpmail
service, send a message to "ftp...@gatekeeper.dec.com" whose body
consists of the single line "help".

-John Ousterhout-
ous...@sprite.berkeley.edu

0 new messages