요점은 및 in이 Backspace예상대로 작동하지 않는다는 것입니다. 키 역할을 하고 삭제 키가 문자를 삭제하는 것인데 대신 뭔가 이상한 일이 벌어지고 있습니다. 그러나 지금은 일의 열쇠를 얻기 위해 애쓰고 있습니다.vim
vi
DeleteBackspace
Google에서 unix.se를 검색하여 몇 가지 해결책을 시도했지만 아무 도움이 되지 않았습니다. 추가해 보았습니다
:map~ ^? ^H
보관소 .exrc
. 또한 다음 기능을 추가해 보았습니다.이 링크, 나중에 주어진 올바른 키 시퀀스를 매핑했지만 그것조차도 문제를 해결하는 데 도움이 되지 않았습니다.
func Backspace()
if col('.') == 1
if line('.') != 1
return "\<ESC>kA\<Del>"
else
return ""
endif
else
return "\<Left>\<Del>"
endif
endfunc
vim
세부 사항
VIM - Vi IMproved 7.0 (2006 May 7, compiled Jun 12 2009 07:09:20)
기계
$ cat /etc/*release
Red Hat Enterprise Linux Server release 5.5 (Tikanga)
노트:
- 저는 퍼티 연결 관리자를 사용하여 원격 UNIX 시스템에 연결하고 있습니다.
- Shift+는 왼쪽에 있는 문자를 삭제하는 Backspace일반 키와 동일한 기능을 수행합니다 .
Backspace
답변1
백스페이스 모드를 설정해 보셨나요? :help bs
다음을 확인 하고 시도해 보세요.
set bs=indent,eol,start
:fixdel
해당 도움말 섹션에는 "<BS> 또는 <Del> 키가 원하는 대로 작동하지 않는 경우" 사용에 대한 참고 사항도 있습니다 .
"호환되지 않음"(WRT를 vi로)으로 설정해야 할 수도 있습니다 :set nocp
.
답변2
PuTTY에 대한 Gert의 의견 외에도 세 번째 기사는이 스레드PuTTY 설정에 대한 추가 참고사항:
터미널->키보드 섹션 아래에 "발신자 순서 변경:"이라고 표시된 블록이 있습니다. 첫 번째 블록은 백스페이스 키입니다. Control-H 또는 Control-?여야 합니다. 현재 설정과 반대로 변경하면 제대로 작동합니다.
답변3
골디락스 답변도움이 되었습니다. 그가 보여준 대로 구성을 설정한 후 아래 단계에 따라 문제를 해결했습니다.
xterm을 TERM
다음으로 설정하세요.
$ TERM=xterm; export TERM
.bashrc
그런 다음 파일 에 다음 내용을 추가합니다 .
stty erase ^H