2011-12-17 4 views
8

일반적으로 중복되는 키 바인딩을 디버그하고 해결하는 방법은 무엇입니까? 이 문제가 생겼습니다 .. 최근에 나는 vim dir에 vim-latex 플러그인을 추가합니다. 그 후 나는 ctrl-j 바인드가 vim-latex/plugin/imaps.vim에 의해 겹쳐져 있고 그것을 해결할 때까지 많은 시간을 잃어버린 것으로 나타났습니다.vim 매핑 겹침을 디버깅하는 방법은 무엇입니까?

덧붙여서 : 이미 imaps.vim에 버그가 있습니다. 필자는 "맵핑이없는 경우에만 맵"이 작성되고 나의 예제는 반대를 보여주기 때문에 생각합니다.

답변

19
당신은 :map 명령의 세부적인 정보를 얻을 수 있습니다

:

(이 경우 CTRL-J)에 특정 키와 관련된에만 매핑을 표시하려면 :

:map <c-j> 

또는, 더 나은,에 매핑이 설정된 스크립트와 특정 키에 대한 매핑을 보여줍니다.

:verbose map <c-j> 
+0

특히 '자세한 정보'가 유용합니다. 감사. – xliiv

1
:map 

현재지도의 목록을 표시합니다.

9

이것은 답변 자체가 아니라 다른 사람들의 답변에 추가 된 것입니다. 그런데

는 : 내 예를 들어 반대를 표시 "가 매핑이 이미없는 경우에만지도"가 기록되어 있기 때문에, 내가 생각 imaps.vim에 버그가있다.

여기에서 "매핑"이 의미하는 것을 착각하고 있습니다. imaps.vim 코드를 보면 <Plug>IMAP_JumpForward ({rhs})에 매핑이있는 경우 매핑이 생성되지 않으며 <C-j> 매핑 ({lhs})이있는 경우가 아니라는 것을 알 수 있습니다. 당신이 (당신이이 기능을 사용하려는 경우 물론 당신이 더 의미있는 뭔가 <SID>... 부분을 대체 할 수있는)을 필요로하지 않는 경우에 따라서는 <C-j> 매핑을 해제하기 위해

nnoremap <SID>I_won’t_ever_type_this <Plug>IMAP_JumpForward 

를 사용해야합니다.

+0

네 말이 맞아, 나 한테도 많이 설명해 줘. 고마워. – xliiv

관련 문제