VI를 전환하려면 Control+H 백스페이스 대신 백스페이스를 사용하시겠습니까?

VI를 전환하려면 Control+H 백스페이스 대신 백스페이스를 사용하시겠습니까?

저는 Solaris 10을 사용하고 있으며 viSVR4.0 및 Solaris 2.5.0 버전이 기본적으로 설치되어 있습니다.

시스템은 다음과 같이 설정됩니다. ssh를 실행하면 Control+H백스페이스로 이동하여 출력됩니다.^?

stty erase '^?'이제 .profile터미널에서 백스페이스 키가 제대로 작동하도록 추가했습니다 . 그러나 vi를 사용하면 여전히 해당 ^?문자가 출력됩니다.

일반적으로 나는 :set nocompatible이 문제를 해결하기 위해 타이핑을 하겠지만,

compatible: No such option - 'set all' gives all option values

set all나에게주세요

noautoindent            nomodelines                     noshowmode
autoprint               nonumber                        noslowopen
noautowrite             nonovice                        tabstop=8
nobeautify              nooptimize                      taglength=0
directory=/var/tmp      paragraphs=IPLPPPQPP LIpplpipnpptags=tags /usr/lib/tags
noedcompatible          prompt                          tagstack
noerrorbells            noreadonly                      term=xterm
noexrc                  redraw                          noterse
flash                   remap                           timeout
hardtabs=8              report=5                        ttytype=xterm
noignorecase            scroll=33                       warn
nolisp                  sections=NHSHH HUuhsh+c         window=66
nolist                  shell=/bin/ksh                  wrapscan
magic                   shiftwidth=8                    wrapmargin=0
mesg                    noshowmatch                     nowriteany

이 버전은 너무 오래된 것 같아서 vi최신 버전이 필요하거나 vim사용하고 싶지만 set nocompatible알고 싶습니다.vivim을 로드하지 않고 백스페이스 키를 사용하여 백스페이스 하는 또 다른 방법이 있습니까 ?

답변1

좋아요 그래서 백스페이스 키가 작동하지 않는 문제를 해결했습니다.

증가시킴으로써

:map! ^? ^H

.exrc 파일에. 비슷한 방식으로 화살표 키를 매핑하려면 동일한 .exrc 파일에 다음을 추가하면 됩니다.

:map! ^[OA ^[ka
:map! ^[OB ^[ja
:map! ^[OC ^[la
:map! ^[OD ^[ha

이러한 모든 "이스케이프 코드"는 shift단순히 "^" 문자에 +를 입력하여 생성되는 것이 아니라 6다음을 눌러 생성된다는 점을 기억하세요.

백스페이스 및 삭제:

  • ^ = control + v+delete
  • ^H = control + v+control + h

위쪽 화살표:

  • ^[OA = control + v+up arrow
  • ^[카 = control + v+ esc+ k+a

아래쪽 화살표:

  • ^[OB = control + v+down arrow
  • ^[ja = control + v+ esc+ j+a

오른쪽 화살표:

  • ^[OC = control + v+right arrow
  • ^[라 = control + v+ esc+ l+a

왼쪽 화살표:

  • ^[OD = control + v+left arrow
  • ^[하= control + v+ esc+ h+a

"대신 .exrc 파일의 모든 주석 줄을 표시해야 합니다 #. 그리고 .exrc 파일에 빈 줄을 남겨둘 수 없습니다. 그렇지 않으면 첫 번째 빈 줄이 .exrc 처리를 중지합니다.

일단 이것들이 설치되면 vi는 인간이 사용하도록 설계된 것처럼 느껴지기 시작할 것입니다. :)

.exrc 파일의 강력한 예를 보려면 다음을 확인하세요.이 .exrc 예제저자: 데이브 카펠라.

관련 정보