등호로 Ctrl 매핑


10

Ctrl과 더하기 기호를 함께 매핑하려고합니다. 이것이 내 vimrc에서 시도하는 것입니다.

nnoremap <C-=>    : echo "Hello" <CR> 

그러나 매핑이 트리거되지 않는 것 같습니다. 내가 뭘 잘못하고 있는지에 대한 제안? macvim을 사용하고 있습니다.



1
: 이런 종류의 질문이 더 자주지고 보인다 VIM이 방법은 키 결합 매핑 : + W Ctrl 키 + 시프트 +를,
mMontu

@mMontu 네, 일반적인 질문입니다. vim의 문자, 용어 코드 및 vim이 매핑 할 수없는 항목에 대한 내부 게시물에 표준 게시물을 작성하는 것이 좋은 아이디어인지 궁금합니다.
제임스

답변:


17

불행히도, 신뢰할 수있는 매핑 방법은 없습니다 Ctrl-=.

ctrl+key코드가 터미널과 상호 작용하고 내부적으로 표현 되는 방식으로 인해 Vim에서 감지 할 수있는 유일한 Ctrl-mapping은 ASCII 표준에 정의 된 것입니다. 다음은 이러한 ctrl+key조합 의 전체 목록이며 각 바이트를 나타냅니다.

Ctrl-@                 0x00            NUL
Ctrl-A to Ctrl-Z       0x01 to 0x1A
Ctrl-a to Ctrl-z       0x01 to 0x1A
Ctrl-[                 0x1B            ESC
Ctrl-\                 0x1C
Ctrl-]                 0x1D
Ctrl-^                 0x1E
Ctrl-_                 0x1F
Ctrl-?                 0x7F            DEL

그러나 이들 중 대부분은 이미 Vim에서 기능을 가지고 있으며 일부는 다른 키 입력과 본질적으로 동일하거나 예측할 수 없습니다. 예 CTRL-M를 들어와 같은 키 코드를 가지 Enter므로 둘 중 하나를 매핑하면 다른 하나도 불가피하게 매핑됩니다.

출처 : Vim-FAQ

이 스택 오버플로 스레드 와 같이 매핑을 위해 특정 바이트 시퀀스를 보내도록 터미널을 구성하여 위의 제한 사항을 해결할 수는 있지만 분명히 고통 스럽습니다. 개인적으로는 차라리 다른 매핑을 선택하고 싶습니다.

이것은 결국 수정 될 수도 있지만, Vim이 실행중인 터미널에 의존하기 때문에 가능성이 낮습니다. 그러나 Neovim에서 작동 할 가능성이 높습니다. 그게 지금 작동하는지 모르겠습니다.


1
나는 앞으로 사람들과 이것을 연결시킬 것입니다.
텀블러 41
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.