Vim에서 Ack 플러그인을 실행하기 위해 <cmd>-<shift> -f를 어떻게 매핑합니까?


10

나는 vim을 처음 사용하고 여기에있는 Ack 플러그인을 실행하기위한 주요 콤보를 매핑하려고합니다 : https://github.com/mileszs/ack.vim

cmd-shift-fAck 명령을 실행 하도록 매핑하고 싶습니다 :Ack. 나는 다음을 추가했다~/.vimrc

nmap <D-F> :Ack<space>

작동하지 않습니다. 내가 무엇을 잘못하고 있지?

MacOS X의 iTerm 2에서 vim 7.3을 사용하고 있습니다.

답변:


4

문제는 <...> 표기법 매핑에서 대 / 소문자를 구분하지 않으므로 Shift 키를 사용하여 매핑하려는 상태를 명시 적으로 지정해야한다는 것입니다. 이 시도:

nmap <D-S-F> :Ack<space>

그래도 작동하지 않습니다. nmap <CF> : Ack <space>가 <ctrl> <shift> -f에서 작동하기 때문에 이상합니다. 그러나 그것은 <cmd>와 함께 작동하지 않습니다
jordelver

1
흠, 흥미로운. nmap <D-F> :Ack<space>MacVim에서는 작동하지만 터미널에서는 작동하지 않습니다. cmd터미널에서 인식되지 않는 것 같습니다 .
jordelver

1
마지막으로이 페이지에 따르면 : unix.stackexchange.com/questions/29665/… MacVim<cmd> 과 같은 GUI Vim 에서만 키 매핑을 사용할 수 있습니다 . 나는 지금 같이 가기로 결정했다 <ctrl>-f.
jordelver

3

아니면 .. 이런 식으로 생각할 수 있습니다.

nmap <D-F> :Ack <space>

시프트에 대해 언급 할 필요는 없으며 여전히 대문자 F로만 트리거됩니다 (따라서 바인딩에 시프트가 언급되지 않았더라도 여전히 눌러야합니다).

이것은 적어도 나를 위해 작동합니다.


나를 위해 일했다! 내 사용 사례 :nnoremap <silent> <D-D> <C-w>s
aymericbeaumet
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.