을 누르면 alt + left arrow
Urxvt가 을 인쇄 [D
하거나 을 alt + up arrow
인쇄합니다 [A
.
urxvt가 아무 작업도 수행하지 않도록 이 동작을 비활성화하는 방법이 있습니까?
답변1
무슨 일이 일어나고 있는지 urxvt가 Alt키 코드+를 Left이스케이프 시퀀스 \e\e[D
(이스케이프 문자를 나타내는 데 사용함 \e
)로 변환하고 있다는 것입니다. 이것은 합리적인 선택입니다 \eO1D
.
\e\e[D
+의 의미를 이해하려면 터미널에서 실행되는 애플리케이션을 구성해야 합니다 . readline 라이브러리를 사용하는 bash 및 기타 애플리케이션의 경우 코드에 다음과 같은 줄을 추가합니다(이 예에서는 키 조합을 문자 그대로 뒤로 이동하도록 했습니다).AltLeft~/.inputrc
"\e\e[D": backward-word
또는 rxvt를 보내도록 구성합니다 (필요한 경우 + \eO1D
로 이해하도록 애플리케이션을 가르칩니다 ). 이는 두 개의 제어 문자를 연속으로 사용하지 않는 것보다 더 편리할 수 있습니다. 다음과 같이 rxvt의 키 바인딩을 구성할 수 있습니다.AltLeft\e\e[D
XResources. 다음 줄을 파일에 입력하세요 ~/.Xresources
(많은 환경에서는 로그인할 때 로드됩니다. 파일을 수동으로 로드하려면 를 실행하세요 xrdb -merge ~/.Xresources
).
URxvt.keysym.Meta-Left: \033O1D
답변2
이는 ~/.Xresources
파일로 구성할 수 있습니다. Urxvt에는 Urxvt*keysym
키코드를 다시 매핑하는 옵션이 있습니다(참조:Urxvt 매뉴얼 페이지)예를 들어:
Urxvt*keysym.A-Left: command:\000
Urxvt*keysym.A-Right: command:\000
alt이렇게 하면 + Left와 + 가 비어 있게 alt다시 매핑 됩니다 .Right
xrdb ~/.Xresources
이 작업을 수행하려면 수행할 작업을 기억하고 새 Urxvt 터미널을 생성해야 합니다.