tcsh / diferença de comportamento do modo vi entre Solaris e Linux

1

Temos ambientes Solaris e Linux no trabalho. Usamos o tcsh como shell padrão para centenas de usuários. Minha pergunta é sobre o modo de vi no tcsh:

No Solaris, enquanto digito, posso retroceder em relação aos caracteres anteriores e, depois, começar a digitar novamente. O modo de inserção é intuitivo e a linha de comando parece estar no modo de inserção automaticamente - posso retroceder e digitar, retroceder e digitar, tudo como se eu tivesse pressionado ESC-i para entrar no modo de inserção explicitamente (fazendo isso BTW apresenta o mesmo comportamento não fazendo isso ...)

No Linux, no entanto, usando uma versão um pouco mais nova do tcsh (6.17), assim que pressiono o backspace para fazer backup do texto incorreto, o editor sai do modo de inserção e depois disso eu tenho que pressionar "i" para voltar inserir texto. Além disso, antes do backspace irá apagar o caractere à esquerda do cursor, você tem que pressioná-lo duas vezes - é o modo de comutação aparentemente. Então você tem que pressionar "i" para voltar ao modo de inserção antes de poder começar a digitar novamente, e assim por diante. Eu acho esse comportamento do Linux realmente chato e tedioso. Qual é possivelmente a razão para essa diferença de comportamento?

BTW, meu terminal em ambos os casos é xterm.

obrigado ...

    
por Bjorn 27.05.2014 / 18:22

1 resposta

0

Digite

stty -a

e olhe para o caracter depois da palavra "apagar". A Sun tem a herança AT & T e usa ^ H (ASCII 8) para apagar, enquanto o tcsh tem herança DEC / Berkeley e usa ^? (ASCII 127).

Você precisa colocar uma linha como:

stty erase ^ H

ou

stty erase ^?

no seu arquivo de login.

    
por 28.05.2014 / 00:44