vim 명령 줄에서 Readline 단축키를 어떻게 사용합니까?


15

Vim 명령을 편집 할 때 Bash 및 다른 모든 REPL과 동일한 바로 가기 를 사용 하고 싶습니다 M-b. 단어로 돌아가 M-Backspace거나 이전 단어를 삭제 M-u하고 단어를 대문자로 변환 C-k하고 끝까지 잘라 내려면 줄 등을 사용하여 일부 명령을 구성 할 수 :cmap있었지만 전부는 아닙니다.

이것을 제공하는 플러그인이나 설정이 있습니까?

에 대해 알고 cedit있지만 필요한 것은 빠른 명령을 입력하는 것만으로도 번거 롭습니다.


잠깐, Vim을 편집기로 사용하더라도 Emacs 모드에서 Bash를 사용한다고 말하는가?
Kyle Strand

3
@KyleStrand Bash를 vi 모드에서 사용한 사람을 아직 보지 못했습니다. 한 줄로만 제한되면 모달 편집기의 이점이 대부분 사라지는 것 같습니다.
Mihai

1
흥미 롭군 나는 Emacs 모드가 Vi 모드가 지원하지 않는 것을 지원하는 것처럼 보이지만 Vi 모드에서만 Bash를 사용합니다. 나는 Emacs 바인딩에 대해 거의 완전히 무지한 채 Vi 키 바인딩을 알고 있으며 기본값을 배우는 데 충분한 문제가 있다고 생각한 적이 없습니다.
Kyle Strand

답변:


11

이것을 제공하는 플러그인이나 설정이 있습니까?

예, rsi.vim 플러그인 :

풍모

  • 리드 라인 맵핑은 삽입 모드 및 명령 행 모드에서 제공됩니다. 정상 모드는 일부러 생략되었습니다.
  • 중요 Vim 키 바인딩 (삽입 모드의 Cn 및 Cp 완료 등)은 무시되지 않습니다.
  • 메타 키 바인딩은 다시 매핑의 위험을 피하지 않고 터미널에서 작동하는 방식으로 제공됩니다.
  • Cd, Ce 및 Cf는 행 중간에서 Readline 동작과 끝에 Vim 동작을 수행하도록 매핑됩니다. (생각해보세요.)

1

이것을 제공하는 플러그인이나 설정이 있습니까?

도 있습니다 readline.vim은 .

명령 행에 전적으로 초점을 맞춘 최신 플러그인입니다. 또한 Readline 바로 가기의 더 큰 부분 집합을 구현하며 Readline에서와 같이 각 바로 가기를 구현한다는 목표를 가지고 있습니다.

이 플러그인을 유사한 플러그인과 다르게 만드는 것은 Readline 매핑의 더 큰 부분 집합을 구현하고 각 명령에 대해 Readline 동작을 모방하는 작업을 더 잘 수행한다는 것입니다.

단어 이동 및 삭제 명령은 Vim과 Readline간에 동작이 다릅니다. 가장 큰 차이점은 단어 경계를 검색 할 때 Readline 구두점을 항상 건너 뜁니다. 또 다른 차이점은 _ (밑줄)이 단어 구분 기호로 취급된다는 것입니다. 이 플러그인은 단어 이동 및 삭제 명령에 대한 Readline 동작을 구현합니다.


1
이런 종류의 것을 찾는 사람이 있다는 것에 놀랐습니다. readline의 vim 모드를 사용하는 것이 너무 쉬워서 모든 일반 vim 사용자가 그렇게 할 것이라고 생각합니다. (이맥스 모드에서 추가 명령을 찾지 못했습니다.) 어쩌면 "어떻게"는 널리 알려지지 않았을 것입니다. 몇 년 전 내가 인정해야 할 것보다 ... had set -o vim:)
B Layer
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.