우리의 작업 환경에는 Solaris와 Linux가 있습니다. 우리는 수백 명의 사용자를 위한 표준 쉘로 tcsh를 사용합니다. 내 질문은 tcsh의 vi 모드에 관한 것입니다.
Solaris에서는 입력할 때 이전 문자에서 백스페이스를 누른 다음 다시 입력을 시작할 수 있습니다. 삽입 모드는 직관적이고 명령줄은 자동으로 삽입 모드에 있는 것 같습니다. ESC-i를 눌러 삽입 모드로 명시적으로 들어간 것처럼 백스페이스를 누른 다음 입력하고 백스페이스하고 입력할 수 있습니다(그런데 그렇게 하면 다음과 동일하게 렌더링됩니다). 하지마...)
그러나 Linux에서는 약간 최신 버전의 tcsh(6.17)를 사용하여 잘못된 텍스트를 백업하기 위해 백스페이스를 누르자마자 편집기가 삽입 모드를 종료하고 그 후에 텍스트 삽입으로 돌아가려면 "i"를 눌러야 합니다. 또한 백스페이스 키를 두 번 눌러야 커서 왼쪽에 있는 문자가 삭제됩니다. 이는 분명히 모드 전환입니다. 그런 다음 다시 입력을 시작하기 전에 "i"를 눌러 삽입 모드로 돌아가야 합니다. 나는 Linux의 이러한 동작이 정말 짜증나고 지루하다고 생각합니다. 이러한 행동 차이의 가능한 이유는 무엇입니까?
그런데, 두 경우 모두 내 터미널은 xterm입니다.
감사해요...
답변1
유형
stty -a
그리고 "erase"라는 단어 뒤의 문자를 살펴보세요. Sun은 AT&T 전통을 따르고 있으며 삭제를 위해 ^H(ASCII 8)를 사용하는 반면, tcsh는 DEC/Berkeley 전통을 따르고 ^?(ASCII 127)를 사용합니다.
다음과 같은 줄을 넣어야 합니다.
스티지 지우기^H
또는
스티 삭제^?
로그인 파일에.