Est-il possible d’appliquer des configurations vim sans redémarrer?

Je veux éditer le fichier .vimrc de Vim et les appliquer sans redémarrer Vim.

Oui, utilisez simplement la commande :so % lors de l’édition de votre fichier .vimrc.

Si vous voulez que vim recharge automatiquement votre configuration, vous devez append les commandes suivantes:

 augroup myvimrchooks au! autocmd bufwritepost .vimrc source ~/.vimrc augroup END 

le regroupement de l’autocommande est là pour éviter le rechargement “exponentiel” si vous enregistrez plusieurs fois votre configuration.

Voici une version plus compatible entre plates-formes si vous utilisez Mac / Windows / Linux et gvimrc :

 augroup myvimrc au! au BufWritePost .vimrc,_vimrc,vimrc,.gvimrc,_gvimrc,gvimrc so $MYVIMRC | if has('gui_running') | so $MYGVIMRC | endif augroup END 

La commande autocmd surveille tous les fichiers *vimrc potentiels et, à *vimrc changement, elle recharge le fichier vimrc suivi de gvimrc si l’interface graphique est en cours d’exécution.

source de votre fichier vimrc :source ~/.vimrc

 " Quickly edit/reload this configuration file nnoremap gev :e $MYVIMRC nnoremap gsv :so $MYVIMRC 

Pour recharger automatiquement lors de la sauvegarde, ajoutez ce qui suit à votre $MYVIMRC :

 if has ('autocmd') " Remain compatible with earlier versions augroup vimrc " Source vim configuration upon save autocmd! BufWritePost $MYVIMRC source % | echom "Reloaded " . $MYVIMRC | redraw autocmd! BufWritePost $MYGVIMRC if has('gui_running') | so % | echom "Reloaded " . $MYGVIMRC | endif | redraw augroup END endif " has autocmd 

et puis pour la dernière fois, tapez:

 :so % 

La prochaine fois que vous sauvegarderez votre vimrc , il sera automatiquement rechargé.

Caractéristiques:

  • Indique à l’utilisateur ce qui s’est passé (en se connectant également à :messages )
  • Gère divers noms pour les fichiers de configuration
  • S’assure qu’il ne correspond qu’au fichier de configuration actuel (ignore les copies dans d’autres répertoires ou un fugitive:// diff)
  • Ne génère pas d’erreur si vous utilisez vim-tiny

Bien sûr, le rechargement automatique ne se produira que si vous éditez votre vimrc in vim.

autocmd! bufwritepost _vimrc source%

cela rechargera automatiquement toute la configuration dans le fichier _vimrc lorsque vous enregistrez