.inputrc
vi 키 바인딩을 사용하고 있습니다
set editing-mode vi
그런 다음 현재 입력 기록에서 정방향 및 역방향 검색을 사용 K
하고 수행 하는 명령 모드에 대한 새 바인딩을 추가하려고 합니다 . J
나는 시도했다:
C-K:history-search-backward
C-J:history-search-forward
...그러나 이는 일반적으로 명령 모드가 Ctrl Shift K아닌 삽입 모드에서 이 검색에 바인딩되도록 설정됩니다.Shift K
내가 사용하는 경우:
K:history-search-backward
J:history-search-forward
...그런 다음 다시 삽입 모드에서 문자 K와 J를 검색해야 합니다(실제로는 필요하지 않음).
새로운 명령 모드 키를 설정하는 구문은 무엇입니까 .inputrc
?
답변1
확립된이것, 내 결론은 변경해야 하는 키 입력이 아니라 .inputrc
(논리적으로 말하면) 적용되는 컨텍스트라는 것입니다.
$if mode=vi
set keymap vi-command
K:history-search-backward
J:history-search-forward
$endif
이제 또 다른 어려움이 있습니다. 명령 모드에서는 커서가 삽입 모드처럼 마지막 문자가 아닌 줄의 마지막 문자에만 위치할 수 있으므로 검색된 패턴에는 마지막 문자가 포함되지 않습니다. 예를 들어 - 를 입력 fin
한 후 실행 하면 검색 도 완료됩니다 .Esc shiftKfi
file
find
효율적인 해결 방법은 없다고 생각하므로 가장 편리한 방법 인 Ctrl삽입 모드에 익숙해져야 합니다.shiftK