Я обнаружил, что оболочка Bash поддерживает тип автозаполнения, который отличается от «традиционного» автозаполнения, когда все возможности перечислены в следующей строке.
При «традиционном» автозаполнении, если я наберу ch
, а затем нажму клавишу Tab
, я получу что-то вроде:
$ ch
chacl chgrp chmod chown chvt
Но если я добавлю следующую строку в свой /etc/inputrc
(которая переназначает клавишу Tab на встроенную функцию menu-complete
):
Tab: menu-complete
затем поведение оболочки меняется: слово, которое нужно завершить, заменяется "inline" на одно совпадение из списка возможных завершений, и если я снова нажимаю клавишу Tab, слово заменяется следующим совпадением.
Я нашел это полезным, но я все же хотел сохранить традиционное автозаполнение и привязать его к комбинации клавиш Ctrl + Tab
. Поэтому я добавил следующую строку в свой файл /etc/inputrc
в соответствии с тем, что предлагает документация библиотеки readline
:
Ctrl-Tab: complete
Однако добавление этой строки только заставляет Tab
и Ctrl-Tab
вызывать традиционную функцию complete
.
Кто-нибудь знает, что я делаю неправильно?
Заранее спасибо!
man readline
предполагает, что аббревиатура для Control будетC
, а неCtrl
. (Отказ от ответственности: я не тестировал.) - person ruakh   schedule 21.08.2012