키 조합 Right Alt+ Left Arrow를 <a-left>
또는 로 매핑 할 수 있습니다 <m-left>
. 그러나 Left Alt키 를 매핑 할 수 없습니다 .
그렇게 할 방법이 있습니까?
편집 :
명확성을 <a-left>
의미하는 것은 Alt+을 의미 Left Arrow합니다.
여기서 중요한 질문 은 Vim의 키맵핑 관점 Left Alt과 차이점이 무엇 Right Alt입니까?
답변
당신이 할 경우 :help key-notation
정력에, 당신은 빔이 인식하는 유일한 수정이 변화, 제어, (동의어로 취급) 고도 / 메타, 맥 명령 키 것을 볼 수 있습니다. xmodmap을 사용하면 오른쪽 Alt 키를 Vim이 인식하는 새로운 수정 자에 쉽게 매핑 할 수 있지만 현재 사용중인 수정자는 없습니다. (Vim이 보는 것처럼 Linux 시스템이 Mac 명령 키 수정자를 나타낼 수 있는지 여부는 알 수 없습니다.) X가 인식하는 다른 수정자는 Mod4, Hyper 등입니다. 그들을 보거나 적어도 그들을 묶을 수 없습니다.
또 다른 옵션은 특정 키 시퀀스 (예 : Esc- [MyUniqueGarbageHere)를 생성하도록 RightAlt- 왼쪽 화살표를 정렬하는 것입니다. 이것은 확실히 할 수 있으며, Vim에게 왼쪽 Alt 키와는 다른 원하는 행동에 바인딩하도록 지시 할 수 있습니다. 이것의 단점은 각 RightAlt + Key 조합에 대해 개별적으로 수행해야한다는 것입니다. 그러나 몇 개의 키로이 작업을 수행하려는 경우 매우 적합합니다.
정확하게 구현하는 방법은 X에서 또는 Linux 콘솔에서 또는 다른 환경에서 Vim을 사용하는지 여부에 따라 다릅니다. X에서 사용하는 것에 대해 이야기한다고 가정합니다.
-
xmodmap을 사용하여 RightAlt를 Mod3에 바인딩하십시오. X 세션이 시작될 때 한 번만 실행되도록 구성하십시오. 일부 배포판에는 이미 xmodmap 명령이 포함 된 특정 위치에 파일을로드하는 / etc / X11 / xinit / xinitrc 파일이 있습니다.
xmodmap -e "remove Mod1 = Alt_R" -e "add Mod3 = Alt_R"
-
터미널 urxvt를 사용합니다. Xresources 유형 파일에서 키 바인딩을 정의 할 수 있습니다. ~ / .config / Xresources에서 할 수 있습니다. ~ / .config / app-defaults / URxvt에서 수행합니다. 해당 파일에 다음과 같은 줄을 넣었습니다 (정확한 구문은 파일을 넣은 파일에 민감합니다).
URxvt.keysym.Mod3-Left: \033<RAlt-Left>
이제 새 터미널을 시작하고 ctrl-V를 입력 한 다음 RightAlt + Left를 입력하십시오. 명령 줄에 ^ [[<RAlt-Left> 문자가 표시되어야합니다. 작동합니까? 좋은.
-
~ / .vimrc에 다음을 입력하십시오.
set t_Ff=^[<RAlt-Left>
여기서 ‘^ [‘은 단일 이스케이프 문자입니다. 다른 각 문자 ( ‘<‘, ‘R’, ‘A’등)는 자체입니다. vim의 “literal”키 접두어와 이스케이프를 사용하여 ‘^ [‘를 입력하십시오 ( “literal”키가 기본적으로 무엇인지 잊어 버립니다. 아마도 ctrl-V일까요?) t_Ff는 사용되지 않은 터미널 항목입니다. . 다른 하나는 t_Fg입니다. 당신은 사용할 수있는 :set termcap
터미널 항목이 할당 된보고 정력에, 그냥 사용하지 않는 일부 XX에 대한 t_XX를 사용합니다. 다음에 제시된 .vimrc 라인을 따르십시오 :
map <t_Ff> whatever-vim-keys-you-want-it-mapped-to
map! <t_Ff> whatever-vim-keys-you-want-it-mapped-to
직접 수행하는 것도 가능합니다.
map ^[<RAlt-Left> whatever-vim-keys-you-want-it-mapped-to
그러나 유휴 터미널 항목을 사용하여 훨씬 안정적으로 작동하는 기술을 찾았습니다.
나는 여기에서 많은 가정을했다 : 당신이 리눅스, X 등을 사용하고 있다는 것이다. urxvt와 다른 터미널 프로그램을 사용하는 경우, 내가 설명한 것을 수행하기에 충분한 키 바인딩 기술을 제공하거나 제공하지 않을 수 있습니다. 덜 이국적인 키를 선택하면 여기에 설명 된 것과 같은 작업을 수행 할 수 있습니다. 예를 들어, RAlt-Left가 F21에 바인딩되도록 정렬 한 다음 거기서 갈 수 있습니다. 요구 사항이 무엇인지 알려주십시오.