John Purnell wrote: > > Bash Version: 3.1 > Patch Level: 17 > Release Status: release > > Description: > ~/.inputrc has the following key bindings which work correctly in > bash 2.05b: > > # Mac forward delete > "\e[3~": delete-char > > # Toggle insert/overwrite mode > $if mode=emacs > "\M-i": overwrite-mode > $endif > > # Kill the entire line > "\M-k": kill-whole-line > > When using bash 3.1.17 they do not work and the results of bind -p are: > > "\M-[3~": delete-char > "?": kill-whole-line > "?": overwrite-mode > > As can be seen the modifier keys are being read incorrectly. > > Repeat-By: > Creating the above key bindings in ~/.inputrc. > C-x C-r > Press the respective key combinations--they don't work > Run bind -p > Note that the keys are not picked up
The bindings are, in fact, processed. As of bash-3.1/readline-5.1, the key binding code obeys the setting of the `convert-meta' variable. The same thing happens when the key bindings are processed as when the key sequences are read as input: if `convert-meta' is on, the \M- prefix causes an escape character to be prefixed; if it is off, the \M- prefix turns on the eighth bit. Use `bind -v' to check the value of convert-meta. Chet -- ``The lyf so short, the craft so long to lerne.'' - Chaucer Live Strong. No day but today. Chet Ramey, ITS, CWRU [EMAIL PROTECTED] http://cnswww.cns.cwru.edu/~chet/ _______________________________________________ Bug-bash mailing list Bug-bash@gnu.org http://lists.gnu.org/mailman/listinfo/bug-bash