시작 시 vim 키 조합 실행

시작 시 vim 키 조합 실행

내 안에는 .vimrc줄이 있어요

autocmd VimEnter * NERDTree
autocmd VimEnter * TagbarOpen

이로 인해 두 개의 사이드바와 기본 편집 버퍼(예: 편집 중인 파일)가 포함된 중앙 열이 있는 레이아웃이 생성되지만 커서는 NERDTree 사이드바에 있으므로 탭 표시줄이 기본적으로 축소됩니다. 내가 하고 싶은 것은 <C>l열리는 NERDTree와 토글되는 Tagbar 사이의 키 입력 조합을 수행하는 것입니다(커서를 한 버퍼 오른쪽으로 이동하는 명령에 매핑했습니다). 하지만 지금까지는 커서를 이동합니다. 지금까지 나는 두 가지를 모두 사용해 보았습니다.

autocmd VimEnter * <C>l
autocmd VimEnter * normal <Ctrl+l>

...위의 두 줄 사이에 있지만 이들 중 어느 것도 작동하지 않습니다.

나는 무엇을 해야 합니까?

답변1

오른쪽 창으로 이동하는 명령은 입니다 <C-w>l. 다음 명령으로 실행할 수 있습니다.

:execute "normal! \<C-w>l"

그러나 명령의 경우 이를 더 쉽게 만들어 주는 <C-w>특별한 명령이 있습니다 . :wincmd따라서 사용자 지정 매핑을 건너뛰고 다음을 수행하세요.

autocmd VimEnter ...
autocmd VimEnter * wincmd l

답변2

좀 더 생각해 본 결과 이 ​​질문은 실제로 중복된 질문이 아니라는 점을 인정합니다.VIM은 기능에서 키보드 명령을 실행합니다..

당신은 올바른 길을 가고 있습니다 . 명령을 autocmd VimEnter놓쳤습니다 .execute

:help execute
:exe[cute] {expr1} ..   Executes the string that results from the evaluation    
                        of {expr1} as an Ex command.

위의 링크에서 Ctrl와 같이 키 조합을 수행하기 위한 구문을 사용하여 L다음에서 두 가지를 결합할 수 있습니다 .vimrc.

autocmd VimEnter * execute "normal \<C-L>"

관련 정보