ctrl+ W한 번에 한 단어 씩 뒤로 삭제하는 것처럼 보입니다 . 훌륭하지만 실제로 다른 대부분의 앱과 마찬가지로 ctrl+ backspace와 함께 작동한다는 것을 정말로 원합니다 .
가장 좋은 방법은 무엇입니까? 그놈 터미널 명령, 명령 행 vim 및 GUI vim에 영향을 주려면 변경이 필요합니다.
ctrl+ W한 번에 한 단어 씩 뒤로 삭제하는 것처럼 보입니다 . 훌륭하지만 실제로 다른 대부분의 앱과 마찬가지로 ctrl+ backspace와 함께 작동한다는 것을 정말로 원합니다 .
가장 좋은 방법은 무엇입니까? 그놈 터미널 명령, 명령 행 vim 및 GUI vim에 영향을 주려면 변경이 필요합니다.
답변:
참고 이있는 당신이 경우에 사용하는 (터미널 및 기본 이맥스 모드에서 작동합니다 Ctrl+W 당신을 위해 이전 단어를 삭제합니다). bash의 vi 모드에서는 작동하지 않으며 vi / vim 자체에는 영향을 미치지 않습니다. 따라서 이것은 부분적인 답변 일 뿐이지 만 이맥스 사용자가 제공 할 수있는 최선의 방법입니다.
이러한 종류의 작업은 readline
라이브러리를 통해 관리되며,이를 통해 동작을 제어 할 수 있습니다 ~/.inputrc
. 편집하거나 존재하지 않는 경우 작성 ~/.inputrc
하고 다음 행을 추가하십시오.
"\C-H":"\C-W"
이제 새 터미널을 열면 작동합니다.
은 \C-H
실제로 Control+ BackSpace. 키를 누른 다음 Ctrl+ 키를 누르면 키 코드를 볼 수 있습니다 V. 당신은 BackSpace반환 을 볼 수 있습니다^H
있습니다.
이제 를 사용하여 이전 단어 ( 또는 ) 를 삭제하는 bash 함수에 + 를 바인딩 할 수 있습니다 . 그러나 나는 그것을 작동시킬 수 없다. 그것은 서로 다른 키와 함께 완벽하게 작동합니다 ( 예를 들어, 수 + 하지만 어떤 이유로, 내가 함께 작동하도록 그것을 얻을 수 없습니다 이전 단어 삭제) .ControlBackSpacebackward-kill-word
unix-word-rubout
"\C-H": backward-kill-word
"\C-E": backward-kill-word
CtrlEBackSpace
그래서 해결 방법으로, 우리는 단지지도 Ctrl+를 Backspace에 Ctrl+ W이미 매핑됩니다 backward-kill-word
. 누를 때, Ctrl+ Backspace그가에 변환됩니다 Ctrl+ W다시 보낼 것이다, backward-kill-word
. 이 SU 게시물 에서이 해결 방법에 대한 아이디어를 얻었 습니다 .
아주 최근까지 gnome-terminal은 동일한 코드를 on Backspace과 Ctrl+로 방출 Backspace했기 때문에 응용 프로그램에서 두 코드를 구별 할 수 없습니다.
이것은 vte-0.42에서 수정되었으며, 이번 가을에 출시 된 Gnome 3.18의 일부입니다.
Wily를 사용하는 경우 Gnome3 Staging 에서 업데이트 된 패키지를 찾을 수 있습니다 .
내 컴퓨터에서 작동합니다. 그냥 linuxbrew의 master와 nvim의 tmux를 사용하고 bash와 vim에서도 control + backspace를 사용하십시오!
(linuxbrew에서도 bash를 얻으십시오)