Вкладка с KSH в режиме Emacs без привязок - PullRequest
4 голосов
/ 19 июня 2009

Я пытаюсь включить автозаполнение для командной строки в режиме emacs. Когда я пытаюсь:

set -o emacs
bind '^I'=complete
bind '^I'=complete-list

и войдите в систему, я получаю сообщение об ошибке "команда связывания не найдена".

Есть ли другой способ автозаполнения вкладок в режиме emacs, то есть вкладка завершается с первым отличием? Если нет, то как мне установить привязки в ksh?

Спасибо

Ответы [ 2 ]

6 голосов
/ 19 июня 2009

bind зависит от Bash / readline.

Из ksh faq ,

Q6.     Does ksh support file name completion?
A6.     Yes, it does.  The default key binding is <ESC><ESC>
        however, starting with the 'g' point release, <TAB> also works
        for completion.  Note, the vi users need to set -o viraw
        in order to get <TAB> completion to work.

ksh93g был выпущен в 1994-04-30, поэтому я весьма удивлен, если он не работает для вас ... какая у вас версия ksh?

0 голосов
/ 29 марта 2010

Как вы узнали, привязка ключей была введена в ksh93,

Q5. Каковы основные новые функции KornShell 1993?
A5. Единственная важная новая интерактивная функция - это привязка клавиш. ... ( KSH-93 FAQ )

В режиме emacs, нажав

<ESC>= 

дает вам список, который соответствует тексту, который вы набрали до этого момента.

...