Projects / libtecla


The Tecla library provides programs with interactive command line editing facilities, similar to those of the Unix tcsh shell. It supports recall and editing of previously entered command lines, TAB completion of file names and application specific tokens, and in-line wild-card expansion of filenames. The optionally reentrant modules which perform TAB completion and wild-card expansion are also available separately for general use. The library is smaller, more modular, makes more efficient use of the heap, and has a less restrictive license than GNU readline.

Operating Systems

Recent releases

  •  12 Jun 2012 04:03

    Release Notes: This is a minor release that fixes a configuration problem that was preventing the enhance program from finding a pseudo terminal on some recent systems.

    •  08 Nov 2004 05:36

      Release Notes: This release fixes a few bugs, remedies a configuration problem under Mac OS X, adds configuration support for IRIX, and adds a few minor features. gl_get_line can now be forced to treat a terminal as a non-interactive stream, by setting the TERM environment variable to the word "dumb". The line-buffer returned by one call to gl_get_line can now be passed as the initial input line of the next call for further editing. There is a documented way for file descriptor and inactivity timeout callbacks to safely suspend line editing, in case they need to interact with the terminal.

      •  26 Apr 2004 05:35

        Release Notes: This release fixed a few bugs and added two functions for controlling what goes in the list of historically entered input lines, a function for prompting the user and awaiting a single character reply, and another that invisibly reads a character from the terminal without the user having to hit return. The configure script now also has an option to compile the library for embedded OSes without filesystems and option for removing built-in actions that users could otherwise exploit to explore the host filesystem.

        •  09 Dec 2003 22:34

          Release Notes: There are several major new features, including an optional non-blocking mode, which allows gl_get_line to be called from arbitrary external event handlers without blocking the caller, an added provision for binding multiple completion handlers, improvements to error reporting and history recall behavior, added facilities for reliable signal handling, the option of inactivity timeouts, and an explicit way to set the terminal size on systems without SIGWINCH. There are also several bugfixes.

          •  31 May 2002 05:25

            Release Notes: This is a maintenance release. It includes minor changes to support 3 operating systems, Mac OS X (Darwin), the QNX real-time operating system, and Cygwin under Windows. It also fixes an oversight that was preventing the tab key from inserting tab characters when users unbound the complete-word action from it.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.