vim 시작시 명령을 실행하는 방법 시작할 때 트리를 열고 싶습니다 .py. 파일을

방금 메소드 트리를 표시하는 파이썬 플러그인을 설치했습니다. 따라서 시작할 때 트리를 열고 싶습니다 .py. 파일을 열 때마다 버튼을 누를 필요가 없습니다 . 그러나이 명령은 .py파일에 대해서만 실행되기를 원합니다 . 내 vimrc 조각은 다음과 같습니다.

nmap <F8> :TagbarToggle<CR>

시작할 때 .py파일에 대해서만이 명령을 실행하는 방법이 있습니까?



답변

에 추가하십시오 .vimrc:

au BufEnter *.py :TagbarToggle<CR>

어디

  • au이면 autocmd명령을 자동으로 실행하십시오.

  • BufEnter 파일을 처음 입력 할 때입니다.

  • *.py 파일 유형 파이썬 용입니다.

  • 나머지는 실행될 명령입니다

답변

내 의견으로는, 가장 깨끗한 방법은 .vim/vimfiles디렉토리 의 파일에 명령을 추가하는 것입니다 .

~/.vim/after/ftplugin/python.vim

또는 Windows의 경우 :

$HOME\vimfiles\after\ftplugin\python.vim

이 기술은 :help ftplugin-overrule컨텍스트 (설정 변경)가 약간 다르지만 (목록 항목 3)에 설명되어 있습니다.

kapil에 설명 된 자동 명령 기술에 비해 다음과 같은 이점이 있습니다.

  1. 적은 코드 . 실행하려는 Vimscript 만 작성하면됩니다. 당신은 코드에 자동 명령을 필요로 둘러싸하지 않습니다 augroupautocommand!명확한 명령.

  2. 적은 오버 헤드 . Vim은 이미 파일 형식을 감지하고 파일이 있는지 확인하고 after/ftplugin/filetype있습니다. 왜 같은 목적을 수행하는 자동 명령을 추가합니까?

  3. 청소기.vimrc . 파일 유형별 기능을 my과 분리하는 것이 .vimrc좋습니다. (일부 의견에 동의하지 않는 경우 : 아래의 단점을 참조하십시오.)

또한 몇 가지 사소한 단점이 있습니다.

  1. Vim의 파일 형식 탐지를 사용하는 경우에만 작동합니다. ( :help filetype)

    그러나 이것은 일반적으로 사람들이 .vimrc에서 활성화하는 첫 번째 설정 중 하나이며 거의 모든 Vim 사용자가 이미 설정 한 것으로 설정했습니다.

  2. 어떤 사람들은 모든 설정을 .vimrc파일 에 보관하는 것을 선호 합니다.


답변