exists()
플러그인에 의해 정의 된 변수, 명령 또는 함수가 vim으로 알려져 있는지 확인하기 위해 함수를 사용하는 조건부로 해당 블록을 랩핑 할 수 있습니다 .
~ / .vim 아래 파일에 몇 비트가 있습니다.
" after/plugin/speeddating.vim
if exists(':SpeedDatingFormat')
SpeedDatingFormat %-d %B %Y
endif
" ftplugin/ruby.vim
if exists('g:loaded_surround') && !exists('b:surround_'.char2nr(':'))
let b:surround_{char2nr(':')} = ":\r"
endif
위의 비트는 일반 플러그인, 여기서 ftplugin 및 after/plugin
디렉토리 의 파일 이후에 평가되는 파일에 있습니다.
다른 옵션은 try / catch 블록을 사용하는 것이지만 vim 7.0 이상이 필요합니다.
if v:version >= 700
try
runtime bundle/pathogen/autoload/pathogen.vim
call pathogen#infect()
catch
endtry
endif
try
해당 블록 의 섹션에 문제가 발생하면 해당 catch
섹션으로 건너 뜁니다
. catch
섹션이 비어 있기 때문에 endtry
명령문 다음에 나머지 초기화 파일로 계속 진행됩니다 .
이미로드 된 플러그인에 의존하지 않고 수동으로 코드를로드하기 때문에 .vimrc 파일 자체에서 수행 할 수 있습니다.
~/.vimrc
되므로~/.vimrc
플러그인 파일의 존재를 테스트하거나 플러그인이 다음과 같은 자동 명령으로로드 될 때까지 테스트를 연기하지 않으면 플러그인 내에서 플러그인의 효과를 테스트 할 수 없습니다. VimEnter.