iTerm2에서 삭제 키가 vim에서 작동하지 않습니다


16

먼저, 삽입 모드에서 다음과 같은 것을 입력했습니다.

Hello

이 단계에서 삽입 모드를 종료하지 않으면 delete작동하며 원하는 경우 전체 단어를 삭제할 수 있습니다.

삽입 모드를 종료하고 삽입 모드를 다시 열면에 Hello의해 제거 할 수 없습니다 delete. 그러나 새로 입력 한 내용은 제거 할 수 있습니다.

.vimrc의 이름을 변경했는데 문제가 계속 발생합니다.

그리고 iterm을 통해 원격 서버에서 일부 테스트를 수행했지만 동일한 문제가 발생하지 않았습니다.

이 문제의 원인은 무엇입니까? 고치는 방법?


'삭제'로 백 스페이스를 의미합니까? 삽입 모드에서 전체 단어를 제거하면을 사용하여 수행 할 수 있습니다 Ctrl-W. 그래도 아무런 효과가 없으면 vim에 문제가있는 것입니다. 나는 iTerm 2를 사용하고 그런 문제가 없었습니다.
oarfish

예, 일반 모드에서 dw또는 dw+ shift를 사용 하여 단어를 삭제할 수 있습니다 . 그러나 위에서 언급 한 두 번째 상황에서는 + backspace와 둘 다 작동하지 않습니다. ctrlw
Zen

그러나 vim 외부의 일반 명령 줄에서 백 스페이스를 사용할 수 있습니까? 엄청 이상해.
oarfish

@ oarfish, 예, 가능합니다. 원격 서버 vim에서 그런 문제가 없습니다. 모두 갑자기 발생합니다. 지금은 실마리를 얻을 수 없습니다.
Zen

어떤 vim 버전이 있습니까? vim 7.4.481이 있는데 문제를 재현 할 수 없습니다.
jan.h

답변:


16

이 기능은 vim의 기능이지만 IIRC는 기본적으로 활성화되어 있지 않습니다.

backspace정력의 설정은, 당신은 세 가지 매개 변수를 설정할 수 있습니다 indent, eol그리고start

를 실행하면 다음 :help backspace과 같이 알려줍니다.

Influences the working of `<BS>`, `<Del>`, `CTRL-W` and `CTRL-U` in Insert
mode.  This is a list of items, separated by commas.  Each item allows
a way to backspace over something:

value     effect
indent    allow backspacing over autoindent
eol       allow backspacing over line breaks (join lines)
start     allow backspacing over the start of insert; CTRL-W and CTRL-U
          stop once at the start of insert.

귀하에게 설정되지 않은 것은 start입니다.

set backspace=indent,eol,start.vimrc에 추가 하면 삽입 모드의 모든 항목을 백 스페이스 할 수 있습니다.


"feature"... 어떤 이유로 vim이 최신 버전으로 설치된 새로운 macOS 10.13에서 기본적으로 활성화되어 있습니다. 이 솔루션은 여전히 ​​문제를 해결합니다.
Taylor Edmiston

9

나는 또한 이것을 가지고 있었고, 자연 텍스트 처리 기본값은 나에게 잘못되었다.

  • MacBook Pro (2018 년 15 인치)
  • 10.14.3 (모하비)
  • Iterm2 3.2.7

로 이동 Preferences > Profiles > Keys하고 기본 프리셋을로드 Natural Text Editing하고 대한 모든 항목을 삭제 delete하고 delete동작을. 그 후 예상대로 작동합니다.


1
"Del->"에 대한 항목을 제거했지만 "Sends ^ H"바인딩을 추가하지 않았다는 점을 제외하고는 동일합니다. 그런 다음 예상대로 작동했습니다.
DagW

@DagW에서 확인되었으므로 ^ H 바인딩이 필요하지 않습니다.
Salyangoz

2
이것을 올바른 답변으로 찾기 위해 잘못된 게시물에 너무 깊이 파고 들었습니다. 감사합니다!
RecuencoJones

1
Tmux 및 Iterm2에 오랫동안 문제가 있었으므로 여기에서 게시물을 찾을 때까지 해결책을 찾지 못했습니다.
1234

1
예! 이것은 vim 자체가 아니라 iterm 구성에 관한 것입니다.
Rodrirokr '12
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.