diff options
Diffstat (limited to 'readline/NEWS')
-rw-r--r-- | readline/NEWS | 291 |
1 files changed, 277 insertions, 14 deletions
diff --git a/readline/NEWS b/readline/NEWS index 0ec6e09..11ac0e3 100644 --- a/readline/NEWS +++ b/readline/NEWS @@ -1,19 +1,282 @@ -This is a terse description of the new features added to readline-6.2 since -the release of readline-6.1. +This is a terse description of the new features added to readline-7.0 since +the release of readline-6.3. -a. The history library does not try to write the history filename in the - current directory if $HOME is unset. This closes a potential security - problem if the application does not specify a history filename. +New Features in Readline -b. New bindable variable `completion-display-width' to set the number of - columns used when displaying completions. +a. The history truncation code now uses the same error recovery mechansim as + the history writing code, and restores the old version of the history file + on error. The error recovery mechanism handles symlinked history files. -c. New bindable variable `completion-case-map' to cause case-insensitive - completion to treat `-' and `_' as identical. +b. There is a new bindable variable, `enable-bracketed-paste', which enables + support for a terminal's bracketed paste mode. -d. There are new bindable vi-mode command names to avoid readline's case- - insensitive matching not allowing them to be bound separately. +c. The editing mode indicators can now be strings and are user-settable + (new `emacs-mode-string', `vi-cmd-mode-string' and `vi-ins-mode-string' + variables). Mode strings can contain invisible character sequences. + Setting mode strings to null strings restores the defaults. -e. New bindable variable `menu-complete-display-prefix' causes the menu - completion code to display the common prefix of the possible completions - before cycling through the list, instead of after. +d. Prompt expansion adds the mode string to the last line of a multi-line + prompt (one with embedded newlines). + +e. There is a new bindable variable, `colored-completion-prefix', which, if + set, causes the common prefix of a set of possible completions to be + displayed in color. + +f. There is a new bindable command `vi-yank-pop', a vi-mode version of emacs- + mode yank-pop. + +g. The redisplay code underwent several efficiency improvements for multibyte + locales. + +h. The insert-char function attempts to batch-insert all pending typeahead + that maps to self-insert, as long as it is coming from the terminal. + +i. rl_callback_sigcleanup: a new application function that can clean up and + unset any state set by readline's callback mode. Intended to be used + after a signal. + +------------------------------------------------------------------------------- +This is a terse description of the new features added to readline-6.3 since +the release of readline-6.2. + +New Features in Readline + +a. Readline is now more responsive to SIGHUP and other fatal signals when + reading input from the terminal or performing word completion but no + longer attempts to run any not-allowable functions from a signal handler + context. + +b. There are new bindable commands to search the history for the string of + characters between the beginning of the line and the point + (history-substring-search-forward, history-substring-search-backward) + +c. Readline allows quoted strings as the values of variables when setting + them with `set'. As a side effect, trailing spaces and tabs are ignored + when setting a string variable's value. + +d. The history library creates a backup of the history file when writing it + and restores the backup on a write error. + +e. New application-settable variable: rl_filename_stat_hook: a function called + with a filename before using it in a call to stat(2). Bash uses it to + expand shell variables so things like $HOME/Downloads have a slash + appended. + +f. New bindable function `print-last-kbd-macro', prints the most-recently- + defined keyboard macro in a reusable format. + +g. New user-settable variable `colored-stats', enables use of colored text + to denote file types when displaying possible completions (colored analog + of visible-stats). + +h. New user-settable variable `keyseq-timout', acts as an inter-character + timeout when reading input or incremental search strings. + +i. New application-callable function: rl_clear_history. Clears the history list + and frees all readline-associated private data. + +j. New user-settable variable, show-mode-in-prompt, adds a characters to the + beginning of the prompt indicating the current editing mode. + +k. New application-settable variable: rl_input_available_hook; function to be + called when readline detects there is data available on its input file + descriptor. + +l. Readline calls an application-set event hook (rl_event_hook) after it gets + a signal while reading input (read returns -1/EINTR but readline does not + handle the signal immediately) to allow the application to handle or + otherwise note it. + +m. If the user-settable variable `history-size' is set to a value less than + 0, the history list size is unlimited. + +n. New application-settable variable: rl_signal_event_hook; function that is + called when readline is reading terminal input and read(2) is interrupted + by a signal. Currently not called for SIGHUP or SIGTERM. + +------------------------------------------------------------------------------- +This is a terse description of the new features added to readline-6.1 since +the release of readline-6.0. + +New Features in Readline + +a. New bindable function: menu-complete-backward. + +b. In the vi insertion keymap, C-n is now bound to menu-complete by default, + and C-p to menu-complete-backward. + +c. When in vi command mode, repeatedly hitting ESC now does nothing, even + when ESC introduces a bound key sequence. This is closer to how + historical vi behaves. + +d. New bindable function: skip-csi-sequence. Can be used as a default to + consume key sequences generated by keys like Home and End without having + to bind all keys. + +e. New application-settable function: rl_filename_rewrite_hook. Can be used + to rewite or modify filenames read from the file system before they are + compared to the word to be completed. + +f. New bindable variable: skip-completed-text, active when completing in the + middle of a word. If enabled, it means that characters in the completion + that match characters in the remainder of the word are "skipped" rather + than inserted into the line. + +g. The pre-readline-6.0 version of menu completion is available as + "old-menu-complete" for users who do not like the readline-6.0 version. + +h. New bindable variable: echo-control-characters. If enabled, and the + tty ECHOCTL bit is set, controls the echoing of characters corresponding + to keyboard-generated signals. + +i. New bindable variable: enable-meta-key. Controls whether or not readline + sends the smm/rmm sequences if the terminal indicates it has a meta key + that enables eight-bit characters. + +------------------------------------------------------------------------------- +This is a terse description of the new features added to readline-6.0 since +the release of readline-5.2. + +New Features in Readline + +a. A new variable, rl_sort_completion_matches; allows applications to inhibit + match list sorting (but beware: some things don't work right if + applications do this). + +b. A new variable, rl_completion_invoking_key; allows applications to discover + the key that invoked rl_complete or rl_menu_complete. + +c. The functions rl_block_sigint and rl_release_sigint are now public and + available to calling applications who want to protect critical sections + (like redisplay). + +d. The functions rl_save_state and rl_restore_state are now public and + available to calling applications; documented rest of readline's state + flag values. + +e. A new user-settable variable, `history-size', allows setting the maximum + number of entries in the history list. + +f. There is a new implementation of menu completion, with several improvements + over the old; the most notable improvement is a better `completions + browsing' mode. + +g. The menu completion code now uses the rl_menu_completion_entry_function + variable, allowing applications to provide their own menu completion + generators. + +h. There is support for replacing a prefix of a pathname with a `...' when + displaying possible completions. This is controllable by setting the + `completion-prefix-display-length' variable. Matches with a common prefix + longer than this value have the common prefix replaced with `...'. + +i. There is a new `revert-all-at-newline' variable. If enabled, readline will + undo all outstanding changes to all history lines when `accept-line' is + executed. + +------------------------------------------------------------------------------- +This is a terse description of the new features added to readline-5.2 since +the release of readline-5.1. + +New Features in Readline + +a. Calling applications can now set the keyboard timeout to 0, allowing + poll-like behavior. + +b. The value of SYS_INPUTRC (configurable at compilation time) is now used as + the default last-ditch startup file. + +c. The history file reading functions now allow windows-like \r\n line + terminators. + +------------------------------------------------------------------------------- +This is a terse description of the new features added to readline-5.1 since +the release of readline-5.0. + +New Features in Readline + +a. The key sequence sent by the keypad `delete' key is now automatically + bound to delete-char. + +b. A negative argument to menu-complete now cycles backward through the + completion list. + +c. A new bindable readline variable: bind-tty-special-chars. If non-zero, + readline will bind the terminal special characters to their readline + equivalents when it's called (on by default). + +d. New bindable command: vi-rubout. Saves deleted text for possible + reinsertion, as with any vi-mode `text modification' command; `X' is bound + to this in vi command mode. + +e. If the rl_completion_query_items is set to a value < 0, readline never + asks the user whether or not to view the possible completions. + +f. New application-callable auxiliary function, rl_variable_value, returns + a string corresponding to a readline variable's value. + +g. When parsing inputrc files and variable binding commands, the parser + strips trailing whitespace from values assigned to boolean variables + before checking them. + +h. A new external application-controllable variable that allows the LINES + and COLUMNS environment variables to set the window size regardless of + what the kernel returns. + + +------------------------------------------------------------------------------- +This is a terse description of the new features added to readline-5.0 since +the release of readline-4.3. + +New Features in Readline + +a. History expansion has a new `a' modifier equivalent to the `g' modifier + for compatibility with the BSD csh. + +b. History expansion has a new `G' modifier equivalent to the BSD csh `g' + modifier, which performs a substitution once per word. + +c. All non-incremental search operations may now undo the operation of + replacing the current line with the history line. + +d. The text inserted by an `a' command in vi mode can be reinserted with + `.'. + +e. New bindable variable, `show-all-if-unmodified'. If set, the readline + completer will list possible completions immediately if there is more + than one completion and partial completion cannot be performed. + +f. There is a new application-callable `free_history_entry()' function. + +g. History list entries now contain timestamp information; the history file + functions know how to read and write timestamp information associated + with each entry. + +h. Four new key binding functions have been added: + + rl_bind_key_if_unbound() + rl_bind_key_if_unbound_in_map() + rl_bind_keyseq_if_unbound() + rl_bind_keyseq_if_unbound_in_map() + +i. New application variable, rl_completion_quote_character, set to any + quote character readline finds before it calls the application completion + function. + +j. New application variable, rl_completion_suppress_quote, settable by an + application completion function. If set to non-zero, readline does not + attempt to append a closing quote to a completed word. + +k. New application variable, rl_completion_found_quote, set to a non-zero + value if readline determines that the word to be completed is quoted. + Set before readline calls any application completion function. + +l. New function hook, rl_completion_word_break_hook, called when readline + needs to break a line into words when completion is attempted. Allows + the word break characters to vary based on position in the line. + +m. New bindable command: unix-filename-rubout. Does the same thing as + unix-word-rubout, but adds `/' to the set of word delimiters. + +n. When listing completions, directories have a `/' appended if the + `mark-directories' option has been enabled. |