Cygwin bash에서 ctrl-arrow 키를 한 번에 한 단어 씩 앞으로 / 뒤로 이동 시키려면 어떻게합니까?


89

기본 Cygwin 설치에서 CTRL-LEFTARROW 또는 CTRL-RIGHTARROW를 사용하면 한 번에 한 단어 씩 건너 뛰는 대신 5C 또는 5D를 인쇄합니다.

Home / End 키가 제대로 작동하므로 다시 매핑이 가능해야합니다.


이 질문은 Cygwin을 다루지 만 Unix / Linux 시스템에 일반적인 응용 프로그램을 가질 수 있음에 유의하십시오. PuTTY를 사용 중이며 여기의 솔루션이 작동하지 않는다면 PuTTY에 사용할 코드에 관한 질문 .
palswim

답변:


124

발견 된 해결책 후세를 위해 여기에 올리십시오.

다음 행을에 추가하십시오. ~/.inputrc ( C:\cygwin\home\<username>\.inputrc ) :

"\e[1;5C": forward-word   # ctrl + right
"\e[1;5D": backward-word  # ctrl + left 

완료되면 C-x C-r 다시 읽으려면 .inputrc 현재 세션의 파일.

다른 유사한 맞춤 설정을 원하면 메모 할 사항 : 5A5B 위아래 화살표와 2x 이동 된 버전의 경우.

"공식적인"키 매핑은 Bash 레퍼런스 매뉴얼 ,하지만 bash에서 키 매핑을 찾는 빠른 방법은 다음과 같습니다.

  1. 유형 Ctrl + V
  2. 관심이있는 키 시퀀스를 입력하십시오 (예 : Alt + ). 이것은 인쇄 할 것이다. ^[[1;3C
  3. 선도를 제거하다 ^[ 그것을 \e 만들다 \e[1;3C
  4. 이 가치를 당신의 .inputrc 파일.

& lt; kbd & gt; Shift & lt; / kbd & gt;와 같이 일부 키보드 코드가 전혀 표시되지 않습니다. + kbd & lt; / kbd & gt;를 포함한다. Mintty / Windows / Cygwin을 통해이 키보드 코드를 어떻게 찾을 수 있습니까?
CMCDragonkai

14

다음을 통해 file .inputrc를 다시로드 할 수 있습니다.

bind -f ~/.inputrc

출처


2
이것은 유용하지만 실제로 질문에 대한 대답이 아닙니다. 다른 대답에 대한 의견으로는 더 좋을까요?
Martin Thompson

위의 @ Tom의 답변에 추가됨
dovetalk

7

예를 들어 서버의 공유 계정으로 작업하거나 사용중인 사용자 정의 구성의 양을 제한하는 경우와 같이 사용자 정의 환경 설정없이 작업 할 수있는 항목이 필요한 경우 Bash에는 Cygwin에서 작동하는 기본 제공 기능이 있습니다.

Alt + 에프 앞으로 나아가고 Alt + 뒤로 이동.

http://www.gnu.org/software/bash/manual/html_node/Commands-For-Moving.html


4
고마워, 비록 내가 그 열쇠를 알고 있고 그들을 사용합니다. 편리 할 때 화살표 키를 사용하기 만하면 커서를 옮기지 않고 이스케이프 코드를 분출하지 않아도됩니다.
Tom

0

Cygwin에서 rxvt를 사용할 때이 링크의 솔루션이 저에게 효과적이라는 것을 알았습니다 : control_arrow_keys_in_rxvt .

다음 행을에 추가하십시오. ~/.inputrc :

"\eOd": backward-word
"\eOc": forward-word

추가 레이어가 전송 된 키를 변경하는 경우입니다 (그러나 질문 된 질문에는 대답하지 않습니다).
Nikana Reklawyks

0

이 솔루션은 msys2 콘솔 :

"\e[1;5C": forward-word   # ctrl + right
"\e[1;5D": backward-word  # ctrl + left 

이 키 조합을 .inputrc 파일.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.