Горячие клавиши readline
Привязки клавиш в файле inputrc задаются с помощью простого синтаксиса. Необходимо указать только имя команды или текст макроподстановки, и горячие клавиши, с которыми его надо связать. Горячие клавиши можно задавать двумя способами: как символическое имя клавиши, возможно, с префиксом Meta- или Control-, или как комбинацию клавиш. При использовании формы имя_клавиши:имя_функции или макроподстановка, имя_клавиши просто задается на английском. Например:
Control-u: universal-argument
Meta-Rubout: backward-kill-word
Control-o: "> output"
В этом примере комбинация клавиш C-u связывается с функцией universal-argument, M-DEL - с функцией backward-kill-word, а C-o - с макроподстановкой, указанной в правой части (т.е. приведет к вставке текста > output в строку).
Во второй форме, "комбинация_клавиш":имя_функции или макроподстановка, комбинация клавиш отличается от использованного выше имени клавиши тем, что может задаваться в двойных кавычках. При этом можно использовать некоторые управляющие символы в стиле GNU Emacs, как в следующем примере.
"\C-u": universal-argument
"\C-x\C-r": re-read-init-file
"\e[11~": "Function Key 1"
В этом примере, комбинация клавиш C-u опять связывается с функцией universal-argument. Комбинация C-x C-r связывается с функцией re-read-init-file, а комбинация ESC [ 1 1 ~ будет приводить к вставке текста Function Key 1. Полный набор управляющих последовательностей в стиле GNU Emacs представлен ниже.
| \C- | префикс клавиши Control |
| \M- | префикс клавиши Meta |
| \e | управляющий символ |
| \\ | обратная косая |
| \" | символ " |
| \' | символ ' |
Помимо управляющих последовательностей в стиле GNU Emacs, имеется еще один набор управляющих последовательностей, начинающихся с обратной косой:
| \a | предупреждение (звонок) |
| \b | забой (backspace) |
| \d | удаление символа (delete) |
| \f | перевод страницы (form feed) |
| \n | новая строка |
| \r | возврат каретки |
| \t | горизонтальная табуляция |
| \v | вертикальная табуляция |
| \nnn | символ, ASCII-код которого имеет восьмеричное значение nnn (от одной до трех цифр) |
| \xnnn | символ, ASCII-код которого имеет щестнадцатеричное значение nnn
(от одной до трех цифр) |
При вводе текста макроподстановки необходимо для ее обозначения указывать одиночные или двойные кавычки. Текст без кавычек считается именем функции. В теле макроподстановки интерпретируются перечисленные выше управляющие последовательности, начинающиеся с обратной косой. Обратная косая маскирует любой другой символ в тексте макроподстановки, в том числе, символы " и '.
Командный интерпретатор bash позволяет просмотреть или изменить текущие горячие клавиши библиотеки readline с помощью встроенной команды . Режим редактирования можно переключать в ходе интерактивной работы с помощью опции встроенной команды (см. раздел "" ниже).