AIX: recuperando o comando anterior usando a seta para cima

1

Eu sei sobre as combinações set -o vi e kej. Eu quero mapear estes para seta para cima e seta para baixo para que eu possa usar o AIX (prompt do ksh) apenas como bash. Alguma sugestão?

    
por ring bearer 30.08.2010 / 16:35

2 respostas

2

Aqui está uma maneira que funcionou para mim: Coloque o seguinte no script .profile

set -o emacs
alias __A=$(print -n "0")
alias __B=$(print -n "6")
alias __C=$(print -n "
set -o emacs
alias __A=$(print -n "0")
alias __B=$(print -n "6")
alias __C=$(print -n "%pre%6")
alias __D=$(print -n "%pre%2")
6") alias __D=$(print -n "%pre%2")
    
por 31.08.2010 / 15:38
1

Você pode gravar um trap no sinal KEYBD que processará as teclas de seta e emitirá os pressionamentos de tecla vi k e j em seu lugar.

Você pode descobrir quais caracteres são emitidos pelas teclas de seta pressionando Ctrl-v e depois a tecla. Você deve ver algo como ^[[A .

Por exemplo:

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

Teste a variável .sh.edmode para controlar se a chave é substituída no modo de inserção ou de comando (seu valor será 0x1b no modo de inserção e nulo caso contrário.

    
por 30.08.2010 / 17:17