Habituellement je n’utilise que la ligne suivante dans mon fichier vimrc qui gère la configuration par défaut de mon gvim/vim :
colorscheme slate
Juste le changement du thème et donc des couleurs par défaut de Gvim en choisissant un thème prédéfini.
J’avais besoin de disposer d’un Gvim ouvert au centre de mon écran de taille plutôt réduite déjà en mode édition avec un fichier vide par défaut. Du coup, j’ai installé le plugin wimproved.vim. Ce plugin a installer simplement, le fichier wimproved32.dll dans le dossier principal de vim, dans le dossier autoload le fichier autoload/wimproved.vim et dans le dossier plugin le fichier plugin/wimproved.vim.
Ensuite il faut configurer le fichier vimrc :
" Simplifier l'interface de gvim en retirant le menu et les icones autocmd GUIEnter * silent! WToggleClean " Centrer gvim avec une taille de 30% de l'écran autocmd GUIEnter * silent! WCenter 30 " Degré de transparence de l'interface sur 255 niveau autocmd GUIEnter * silent! WSetAlpha 220 " Couleur du thème colorscheme slate " test si c'est l'édition d'un nouveau fichier ou d'un fichier existant " ces réglages ne sont appliqués qu'au nouveau fichier pas aux fichiers en éditon if argc()==0 " cache les symboles ~ qui indiquent des lignes non existente hi NonText guifg=bg " fait une insertion vide par défaut pour retirer le message d'introduction normal i " mode insertion au lieu d'être mode commande comme habituellement start endif
Vi / VIM / Gvim sont des outils très pratiques car disponiblent sur toutes les plateformes et les systèmes d’exploitations. Ils gèrent un nombre important type de format et ouvrent même des fichiers de tailles énormes sans sourciller. Je sais que l’apprentissage sur cet outil est compliqué (mode commande <-> mode édition) mais les manipulations de types expressions régulières et les plugins additionnels en font un outil extraordinaire.
Efface les lignes avec le mot profile quelque part:
:g/profile/d
Efface les lignes ne contenant par le mot profile quelque part:
:g!/profile/d
Scripts avec gVIM
Maintenant supposons que l’on souhaite appeler une commande classique qui efface les lignes vides d’un fichier.
On peut créer le fichier pje.vim par exemple dans le dossier de l’utilisateur (dans mon cas c:/Users/pierre.jean/pje.vim). Dans ce fichier, on indique cette ligne :
g/^$/d
Il suffit ensuite de l’appeler avec la commande source
:source ~/pje.vim
Ou avec le chemin complet
:source c:/Users/pierre.jean/pje.vim
Mais comment faire de cette ligne une fonction et l’appeler plusieurs fois surtout dans la nouvelle version Gvim 9. En premier lieu nous créons une nouvelle fonction avec le mot clef def dans le script pje.vim
vim9script # RemoveEnmptyLine def RemoveEmptyLine() g/^$/d enddef
La fonction RemoveEmptyLine est créée mais non appelée. Alors on pourrait ajouté un appel avec call RemoveEmptyLine au dessous mais nous voulons une commande et un raccourci pour l’appel de notre fonction ajoutons donc:
vim9script # RemoveEnmptyLine def RemoveEmptyLine() g/^$/d enddef command! Rel :call RemoveEmptyLine() nmap <silent> <C-D> :Rel<CR>
La commande Rel peut appeler la méthode RemoveEmptyLine et la dernière ligne lie la combinaison de CTRL+D avec la commande Rel.
Alors, je ne suis pas un expert dans les nouveaux scripts de gvim 9, je n’ai pas compris pourquoi ma nouvelle fonction de type def n’est pas appelable en mode commande, mais cette solution me va bien, soit une commande et un raccourci.