vi-command 및 vi-insert 모드에서 Readline 키 바인딩을 설정하는 방법

vi-command 및 vi-insert 모드에서 Readline 키 바인딩을 설정하는 방법

vi 모드에서 Emacs 단어 바꾸기 기능을 사용하려면 다음과 같은 .inputrc가 있습니다.

$if mode=vi
  bind Control-b: transpose-words
$endif

불행하게도 "삽입" 모드에서만 작동합니다. "삽입" 및 "명령" 모드에서 작동하게 하는 비결은 무엇입니까?

나는 사용하려고키보드 매핑 vi 명령 설정파일에 있지만 아무런 효과가 없습니다.

$if mode=vi
  set keymap vi-command
  bind Control-b: transpose-words
$endif

답변1

"bind" 키워드는 inputrc에 나타나서는 안 됩니다. 다음 inputrc는 예상대로 작동합니다. Ctrl-B는 삽입 모드와 명령 모드에서 단어를 바꿉니다.

set editing-mode vi
$if mode=vi
  set keymap vi-command
  Control-b: transpose-words
  set keymap vi-insert
  Control-b: transpose-words
$endif

관련 정보