- GNU readline
Infobox Software
name = GNU readline
developer =Brian Fox ,Chet Ramey
latest_release_version = 5.2
latest_release_date =October 11 2006
operating_system = Various
programming_language = C
license =GNU General Public License
website = [http://tiswww.tis.case.edu/~chet/readline/rltop.html Official website]GNU readline is a
software library created and maintained by theGNU Project . It is licensed under the GPL, and used in projects such as bash. It provides line-editing capabilities. The current version is 5.2. Newer features include multibyte (Unicode ) character support.For instance, in a readline-enabled application, pressing ctrl-b moves the cursor back one space, ctrl-f moves the cursor forward one space, and ctrl-r searches the command history. These key bindings (which are the default, although bindings like
vi 's are optional) are taken from one of GNU's earliest and most popular projects, thetext editor Emacs . Readline supports a variety of basic features, including akill ring (a more flexible version of a copy/paste clipboard) andtab completion . As across-platform library, readline allows applications on various systems to exhibit identical line-editing behavior.Readline is customized via its
configuration file that can be default (~/.inputrc) or application specific. In this file, it is possible to define custom key bindings and change some other settings.Criticism
There are several bugs and limitations, making readline difficult to use by third party applicationsFact|date=January 2008. Some features don't work as documented (for example, local echoing, which cannot be disabled), and removing key bindings is not possible. Its own
manual page says, [http://www.freebsd.org/cgi/man.cgi?query=readline&apropos=0&sektion=0&manpath=FreeBSD+7-current&format=html#BUGS "It's too big and too slow."] .While Readline is a cross-platform library, some platforms do not include readline as part of the default system. It is, however, relatively easy to build independently.
Programs that are not distributed under the GPL usually use readline as an optional feature. Such programs would typically allow the user to specify whether or not to link with the readline library at build time.
This [http://clisp.cvs.sourceforge.net/*checkout*/clisp/clisp/doc/Why-CLISP-is-under-GPL email exchange between Richard Stallman and Bruno Haible] suggests that such steps do not necessarily allow the resulting software to escape the GPL. However, it predates the appearance of
NetBSD 's editline library, a BSD-licensed API-compatible implemention of the same functionality, so the argument that such software must be intended to link with readline is not as strong today.See also
*
GNU Project External links
* [http://tiswww.tis.case.edu/~chet/readline/rltop.html GNU readline homepage]
* [http://www.astro.caltech.edu/~mcs/tecla/index.html The Tecla command-line editing library] - readline replacement with an MIT-style licence
* [http://www.thrysoee.dk/editline/ Editline Library (libedit)] - readline replacement with a BSD-style licence
* [http://utopia.knoware.nl/~hlub/rlwrap/ rlwrap] - tools that provides readline functionality while running a command that does not already have it
Wikimedia Foundation. 2010.