1

Я знаю о множестве -o vi и k и j комбинациях. Я хочу отобразить их на стрелки вверх и вниз, чтобы я мог использовать AIX(подсказка ksh) так же, как bash. Какие-либо предложения?

2 ответа2

2

Вот один способ, который сработал для меня: Поместите следующее в скрипт .profile

set -o emacs
alias __A=$(print -n "\020")
alias __B=$(print -n "\016")
alias __C=$(print -n "\006")
alias __D=$(print -n "\002")
1

Возможно, вы сможете написать trap для сигнала KEYBD которая будет обрабатывать нажатия клавиш со стрелками и нажимать на них клавиши vi k и j .

Вы можете узнать, какие символы испускаются вашими клавишами со стрелками, нажав Ctrl-v, а затем клавишу. Вы должны увидеть что-то вроде ^[[A

Например:

f () { if [[ ${.sh.edchar} == $'\033[A' ]]; then .sh.edchar="k"; fi; }
trap f KEYBD

Протестируйте переменную .sh.edmode чтобы определить, заменяется ли ключ в режиме вставки или в командном режиме (его значение будет 0x1b в режиме вставки, а в противном случае - ноль) .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .