Passer de Vim à Neovim

Neovim est un fork de Vim né il y a environ 2 ans et dont les premières versions publiques ont été mises à disposition à la fin de l'année dernière. Je suis un fervent utilisateur de Vim depuis... pfffiou une quinzaine d'année mais je trouve ce fork plutôt appropriée avec de bonnes idées. Par exemple Neovim permet d'éxécuter des tâches de manière asynchrone dans les plugins, j'aurais adoré avoir cette fonctionnalités quand je développais le plugin eZVim pour eZ Publish il y a quelques années.

Installation

L'installation de Neovim est bien détaillée dans Installing Neovim. Sur une Ubuntu (postérieure à 12.04 Precise Pangolin), pour l'installer, il suffit d'activer le PPA correspondant et ensuite d'installer le paquet neovim. En fonction des plugins, il sera peut-être nécessaire d'installer quelques paquets liés à Python. Cette même page propose également de configurer le système d'alternatives pour lancer Neovim avec les commandes vim, vi et editor, sinon il faudra impérativement utiliser nvim.

Configuration

Le fichier de configuration principal ~/.vimrc est remplacé par ~/.config/nvim/init.vim et le dossier ~/.vim est remplacé par ~/.config/nvim/. La documentation pour passer de Vim à Neovim conseille de faire des liens symboliques. Pour ma part, j'ai préfèré profiter de l'occasion pour remettre à plat ma configuration un peu vieillissante au niveau des plugins et pour notamment remplacer Pathogen par vim-plug.

Les différences entre Vim et Neovim sont bien documentées et au final, le changement s'est fait sans grosse difficulté avec 2 adaptations relativement mineures :

  • La valeur par défaut de mouse est maintenant a mais je n'utilise quasiment jamais la souris dans mon éditeur et je préfère garder le fonctionnement du terminal intact, j'ai donc ajouté set mouse= à mon .vimrc euh init.vim ;-)
  • dans les plugins que j'utilisais avec Vim, seul Powerline n'est pas compatible avec Neovim, heureusement vim-airline fournit une alternative fonctionnelle et compatible avec Neovim.

Pour le reste quasi rien n'a changé, ou alors je n'ai pas encore remarqué ;-)

Et alors ça marche ?

Capture d'écran de Neovim
Capture d'écran de Neovim lors de la rédaction de ce billet

Neovim fonctionne très bien pour moi, je l'ai adopté depuis une petite semaine et jusqu'à présent je n'ai noté aucun problème dans mon usage relativement intensif en tant qu'IDE au bureau, dans l'édition de divers fichiers ou lors de la rédaction de ce billet. Bref, Neovim a l'air bien installé sur ma machine et il va maintenant falloir aller fouiller dans les quelques plugins qui tirent partie de Neovim et refaire le tour des plugins Vim compatibles qui valent le coup.