FILE: "/home/joze/src/tclreadline/README"
LAST MODIFICATION: "Tue Sep 21 21:21:36 1999 (joze)"
(C) 1998, 1999 by Johannes Zellner, <johannes@zellner.org>
$Id$
---
tclreadline -- gnu readline for tcl
Copyright (C) 1999 Johannes Zellner
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
<johannes@zellner.org>, http://www.zellner.org/tclreadline/
tclreadline
1. Introduction
---------------
This directory contains the sources and documentation for tclreadline,
which builds a connection between tcl and the gnu readline.
The information here corresponds to release 0.9.
2. Documentation
----------------
The tclreadline.n nroff man page in this release contains the reference
manual entries for tclreadline. If you only want to use tclreadline as
a tool for interactive script development, you don't have to read this
manual page at all. Simply change your .tclshrc according to the section 4.
3. Compiling and installing tclreadline
---------------------------------------
This release will probably only build under UNIX (Linux).
Before trying to compile tclreadline you should do the following things:
(a) Make sure you have tcl 8.0 or higher. I've tested tclreadline
with tcl 8.0.3, 8.0.4, 8.0.5, 8.1.0, 8.1.1 and 8.2.0.
tclreadline relies on a proper tcl installation:
It uses the tclConfig.sh file, which should reside somewhere
in /usr/local/lib/ or /usr/local/lib/tcl8.0/...
(b) Make sure you have gnu readline 2.2 or higher.
tclreadline uses the gnu readline callback handler, which
wasn't implemented in early releases.
The usual ./configure; make; make install sequence should do the rest.
4. Using tclreadline for interactive tcl scripting.
---------------------------------------------------
copy the sample.tclshrc to $HOME/.tclshrc. If you use another interpreter
like wish, you should copy the file sample.tclshrc to $HOME/.wishrc
(or whatever the manual page of your interpreter says.) If you have
installed tclreadline properly, you are just ready to start:
start your favorite interpreter. The tclreadlineSetup.tcl script
does the rest.
4. History and Changes.
-----------------------
tclreadline-1.0.1: (Sep 1999)
changes:
- tclreadline::readline bell.
Ring the terminal bell, obeying the setting
of bell-style -- audible or visible.
tclreadline-1.0.0: (Sep 1999)
note:
- the script completer procs are written.
this is `sort of a first usable release'.
fixes:
- some minor configure.in fixes.
tclreadline-0.9.3: (Sep 1999)
changes:
- tk completion.
- multiple fallback completion routines for unknown
commands.
- readline reset-terminal sub-function.
fixes:
- another revision of procession events and macros.
includes a hack using a readline's internal
variable _rl_executing_macro.
tclreadline-0.9.2: (Aug 1999)
changes:
- history event `!' expansion on <Tab>
- if tclreadline::historyLength >= 0,
tclreadline::write will truncate the historyfile
to this value.
By default tclreadline::historyfile == -1, that
is no truncation occurs.
- ScriptCompleter largely extended.
calls tclreadline::complete(<cmd>) functions.
- tclreadline::complete(tclreadline_complete_unknown)
- some basic tk completion.
- convenience routines as Menu, CompleteFromList, AttemptFromList
- returning an empty {} will inhibit further
builtin filename completion.
fixes:
- after having at least one character typed, X events
were not processed any more until pressing <return>.
- catching `tclreadline::readline read' errors
in tclreadline::Loop. This was necessary, because
the evaluation of the script completer can return
an error.
tclreadline-0.9.1: (Aug 1999)
changes:
- new variable tclreadline_patchLevel
- tclreadline::Loop takes an optional <historyfile>
fixes:
- tying to fix configure problems.
tclreadline-0.9: (Aug 1999)
changes:
- tclreadline::readline customcompleter
- tclreadline::readline builtincompleter
- tclreadline::readline eofchar
- variable, array and '[' command completion by the script
tclreadline::ScriptCompleter. See the man page or try
typing "puts $env<TAB>" ... Command completion currently only
works, if a '[' preceeds immediately a non-white character.
- the redefinition of the command `cd' was removed due to
multiple requests. This redefinition can be found in the
file `sample.tclshrc' and can be uncommented, if desired.
- the definition of the command `ls' was moved outside the
proc tclreadline::Setup and can be used with the command
namespace import tclreadline::ls (see sample.tclshrc).
bug fixes:
- lines added to tcl's history. (were only in readline's hist.)
- macro mappings didn't work. (only when hitting
mapped characters more than once.)
- various changes and fixes in configure.in
tclreadline-0.8: (May 1999)
- adapted for tcl8.1.
- minor bug fixes.
tclreadline-0.7: (Feb 1999)
first `public release'.