Une collection sélectionnée de patrons et d'extraits Vimscript pratiques pour le développement de plugins et la personnalisation de vimrc.
Mappages de Touches et de Commandes
" Lier une commande personnalisée à une fonction locale au script
command! YoFunctionHere call s:YoFunctionHere()
" Mapper une touche silencieusement en mode normal
nnoremap <silent> x :call <SID>FunctionHere()<CR>
function! s:FunctionHere()
" Implémentation
endfunction
Appel de Fonctions en Mode Insertion
" Utiliser le registre d'expression (=) pour insérer le résultat
inoremap X <C-R>=script#myfunction()<CR>
inoremap <F2> <C-R>=MyVimFunc()?'':''<CR>
Vérifier la Disponibilité d'un Plugin
if globpath(&rtp, "plugin/commentary.vim") != ""
" Le plugin Commentary est installé
endif
Chargement Automatique (Autoloading)
" autoload/hello.vim
if exists("g:hello_loaded") | finish | endif
let g:hello_loaded = 1
function! hello#method()
echo "Bonjour depuis une fonction autoloaded !"
endfunction
L'appel de hello#method() charge automatiquement autoload/hello.vim à la demande.
Divers
Vérifications de Version
if v:version < 704
echom "Ce plugin nécessite Vim >= 7.4"
finish
endif