X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f Message-Id: <201902031835.x13IZx7k030685@delorie.com> Date: Sun, 03 Feb 2019 18:01:30 +0100 From: "Juan Manuel Guerrero (juan DOT guerrero AT gmx DOT de) [via djgpp-announce AT delorie DOT com]" To: djgpp-announce AT delorie DOT com Subject: ANNOUNCE: DJGPP port of GNU Readline 8.0 uploaded. Content-Type: text/plain; charset=ISO-8859-15; format=flowed Reply-To: djgpp AT delorie DOT com This is a port of GNU Readline and History libraries 8.0 to MSDOS/DJGPP. The Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those lines, and perform csh-like history expansion on previous commands. The history facilites are also placed into a separate library, the History library, as part of the build process. The History library may be used without Readline in applications which desire its capabilities. DJGPP specific changes. ======================= - The port is based on the port of readline 2.2 and uses the termios emulation provided by it. It has been slightly adjusted to work with DJGPP 2.05. It also supports copying from Windows clipboard as the readline port from bash does. Most of the other changes are to handle DOS/DJGPP specific slash and backslash issues and to pacify the compiler. - The port will check at run time if LFN support is available or not. If available, then it will look for ".inputrc" and ".history" as configuration files. If one of them is not available then it will try "_inputrc" and/or "_history" as alternative file names. This means that if LFN support is available, the POSIX file names will always be tried before the DOS file names are tried. Of course, if only SFN support is available only the DOS versions of the file names will be tried. - The port will try to load the system wide configuration file using the file name "/dev/env/DJDIR/etc/inputrc" instead of the hard coded "/etc/inputrc". The system wide INPUTRC file is always tried to be load if the loading of "~/.inputrc" fails and before "~/_inputrc" is tried to be load on LFN systems. - If pdcurses is installed it will be used to provide termios functionality instead of the one provided by the C-library. If you prefer the termios functionality profided by the C-library you will have to uninstall pdcurses before you configure the sources. The sources have been configured without pdcurses support. - The port has been configured and compiled on WinXP SP3 and Win98SE. There is no guarantee that this may be possible with any other DOS- like OS. Due to the use of long file names it will not be possible to configure and compile without LFN support. As usual, my changes and the rest of the djgpp specific stuff is stored in the /djgpp directory. To learn how to use the libraries please inspect the files in the /examples directory. For further information about GNU Readline please read the info docs and NEWS file. Here is an extract of the NEWS file showing the user visible changes from the last port (GNU Readline 7.0) to this one: ------------------------------------------------------------------------------- This is a terse description of the new features added to readline-8.0 since the release of readline-7.0. New Features in Readline a. Non-incremental vi-mode search (`N', `n') can search for a shell pattern, as Posix specifies (uses fnmatch(3) if available). b. There are new `next-screen-line' and `previous-screen-line' bindable commands, which move the cursor to the same column in the next, or previous, physical line, respectively. c. There are default key bindings for control-arrow-key key combinations. d. A negative argument (-N) to `quoted-insert' means to insert the next N characters using quoted-insert. e. New public function: rl_check_signals(), which allows applications to respond to signals that readline catches while waiting for input using a custom read function. f. There is new support for conditionally testing the readline version in an inputrc file, with a full set of arithmetic comparison operators available. g. There is a simple variable comparison facility available for use within an inputrc file. Allowable operators are equality and inequality; string variables may be compared to a value; boolean variables must be compared to either `on' or `off'; variable names are separated from the operator by whitespace. h. The history expansion library now understands command and process substitution and extended globbing and allows them to appear anywhere in a word. i. The history library has a new variable that allows applications to set the initial quoting state, so quoting state can be inherited from a previous line. j. Readline now allows application-defined keymap names; there is a new public function, rl_set_keymap_name(), to do that. k. The "Insert" keypad key, if available, now puts readline into overwrite mode. ------------------------------------------------------------------------------- The port consists of the usual three packages that have been produced using djdev205 and can be downloaded from ftp.delorie.com and mirrors as (time stamp 2019-01-10): Readline and History 8.0 libraries, headers and info format documentation: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/rdln80b.zip GNU Readline 8.0 dvi, html, ps and pdf format documentation: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/rdln80d.zip GNU Readline 8.0 source: ftp://ftp.delorie.com/pub/djgpp/current/v2gnu/rdln80s.zip Send GNU Readline specific bug reports to . Send suggestions and bug reports concerning the DJGPP port to comp.os.msdos.djgpp or . Enjoy. Guerrero, Juan Manuel