Anda bisa membungkus blok itu dalam kondisi yang menggunakan exists() berfungsi untuk
periksa apakah variabel, perintah atau fungsi yang ditentukan oleh plugin diketahui vim.
Berikut adalah beberapa bit yang saya miliki di file di bawah ~ / .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
Perhatikan bahwa bit di atas ada dalam file yang dievaluasi setelah plugin normal,
di sini sebuah ftplugin, dan sebuah file di after/plugin direktori.
Opsi lain adalah menggunakan blok coba / tangkap, meskipun ini membutuhkan pada
paling tidak vim 7.0:
if v:version >= 700
try
runtime bundle/pathogen/autoload/pathogen.vim
call pathogen#infect()
catch
endtry
endif
Sekali sesuatu di try bagian dari blok itu gagal itu akan melompat ke catch bagian. Sejak catch Bagian kosong, hanya akan melanjutkan
dengan sisa file inisialisasi setelah endtry pernyataan.
Karena ini memuat kode secara manual daripada mengandalkan plugin
sudah dimuat, ini bisa dilakukan di file .vimrc itu sendiri.
~/.vimrc, jadi Anda tidak akan dapat menguji efek dari plugin di dalam Anda~/.vimrckecuali jika Anda menguji keberadaan file plugin atau menunda pengujian sampai setelah plugin dimuat dengan perintah otomatis seperti VimEnter.