'''[https://github.com/hanslub42/rlwrap%|%rlwrap]''' is a wrapper for GNU [readline]. It can be used with an [Interactive Tcl%|%interactive Tcl%|%] to provide readline editing and command history functionality. To use it with tclsh, start tclsh with: ======none rlwrap tclsh ====== Useful options are `-c` (file name completion) and `-f` (add words from a file to the completion list). To use rlwrap with tclsh with file name completion type: ======none rlwrap -c tclsh ====== It would be nice to have a file of all words used in Tcl: commands and subcommands to set rlwrap up using the -f option. [info commands] and [info procs] could help with that. Maybe there are some *.syn files out there to provide such a database. ** Alternatives ** *** Current *** **** enhance **** The rlwrap alternative bundled with the [http://www.astro.caltech.edu/~mcs/tecla/index.html%|%Tecla command-line editing library], which offers tcsh-like interactive command line editing. Has both [vi] and [emacs] key bindings. The former are [https://ivorykite.blogspot.com/2013/06/rlwrap-try-using-teclas-enhance.html%|%allegedly] better than rlwrap's. **** rlfe **** Available from http://per.bothner.com/software/#rlfe and as a Debian/Ubuntu package. **** socat readline **** [PT]: It is also possible to use [socat] to wrap readline around your tclsh executable. ====== # Rename your tclsh8.6 binary to tclsh8.6.exe then create the following wrapper script mv tclsh8.6 tclsh8.6.exe cat > tclsh8.6 <> Dev. Tools