Neovim 0.12.6 : un editeur de terminal configure en Lua, serveur de langage inclus

Résumé

Un editeur de texte qui tourne dans un terminal : le modele d edition de Vim est conserve, la configuration passe en Lua, et le client de serveur de langage comme l analyse par Tree-sitter font partie du noyau. La version courante est 0.12.6, publiee sous licence Apache.

Recommander
Nom
Neovim
Version
0.12.6
Tarif
Gratuit
Open source
Open source
Système
WindowsmacOSLinux
Mis à jour
2026-10-13 11:59

Les gens qui ecrivent du code dans un terminal manquent rarement de patience. Ce qui manque, c est un endroit ou il ne faut pas changer de fenetre sans arret.

Une reconstruction qui part de Vim

L avantage d un editeur de terminal se dit vite : il ne depend pas d une session graphique, demande peu a la machine et continue de fonctionner a travers une connexion distante. Les gestes d un editeur installe deviennent un reflexe apres dix ans, et le prix d un changement est si eleve que la plupart des gens ne le paient jamais. C est aussi pourquoi ce genre de logiciel vit si longtemps et se laisse si mal remplacer.

Neovim se tient exactement dans cet intervalle. La definition officielle est courte : un editeur de texte hautement extensible, construit sur Vim. Ce qui a change, c est la maniere dont le programme est assemble. Des parties autrefois soudees ensemble ont ete separees en composants, si bien que le noyau d edition, l interface et le mecanisme d extension sont independants et se parlent par des interfaces definies. Beaucoup de ce qui a suivi vient de cette separation.

Le point le plus immediat pour les utilisateurs est la compatibilite. La page des fonctions indique une compatibilite complete avec le modele d edition de Vim et avec la premiere version du langage de script de Vim. Les raccourcis et les scripts existants continuent de fonctionner, et une configuration en place se migre morceau par morceau au lieu d etre reecrite d un coup. La documentation garde meme une entree dediee aux personnes qui arrivent de Vim.

capture

Configuration, analyse et extensions

Depuis que la configuration est en Lua, elle peut elle meme s ecrire comme un programme avec des conditions et des boucles, au lieu d une longue suite d affectations. Les extensions peuvent aussi s ecrire en Lua. La formulation officielle indique que la configuration tient dans un fichier Lua et que scripts et extensions partagent un seul langage, ce qui supprime la vieille habitude de faire passer la logique d une syntaxe a l autre.

Deux changements dans le travail d edition meritent un paragraphe chacun. Le premier concerne l analyse : la syntaxe est traitee par Tree-sitter, qui lit le code selon sa structure grammaticale au lieu de comparer des motifs ligne par ligne. Les paires de parentheses, la selection d une fonction ou d une classe et la mise en couleur deviennent plus justes parce qu elles suivent la structure reelle. Le second est un client de serveur de langage integre au noyau : une fois l outil d analyse d une langue connecte, le saut vers une definition, la liste des usages et le renommage au travers des fichiers deviennent disponibles sans que quelqu un reimplemente ce support langue par langue.

La partie la plus singuliere de l extensibilite est l interface d appel distant. Selon la documentation, les extensions peuvent s ecrire dans n importe quel langage, et des programmes graphiques, des environnements de developpement integres ou meme des navigateurs peuvent embarquer le noyau comme composant. Le terminal integre est l autre ajout pratique : compilation, journaux et edition partagent une fenetre, ce qui retire une couche de basculement.

Versions et obtention

La page de publication propose des paquets pour Linux, macOS et Windows sous le meme numero de version, si bien qu une configuration suit souvent le changement de machine sans retouche. La version courante est 0.12.6. Les versions correctives d une meme serie apportent surtout des corrections, et lire les notes avant de franchir une version mineure reste une habitude prudente.

Le projet est publie sous Apache-2.0, ce qui autorise execution, modification et redistribution et comprend une clause sur les brevets. Pour une organisation qui integre un editeur dans son processus de developpement, ce point est souvent compare aux licences purement permissives. La communaute maintient par ailleurs quelques ensembles preconfigures qui offrent un environnement assez complet des l installation, ce qui convient a ceux qui preferent partir de quelque chose qui marche plutot que de batir une configuration a partir de rien.

Element

Information officielle

Version courante

0.12.6

Forme

Editeur de texte en terminal

Systemes

Linux, macOS, Windows

Langage de configuration

Lua

Fonctions

Client de serveur de langage, analyse par Tree-sitter, extensions par appel distant, terminal integre

Licence

Apache-2.0

Garder les anciens gestes tout en deplacant configuration et extensions vers un langage plus facile a ecrire, voila le coeur pratique de cette reconstruction.

Quelques conseils : lors d une migration depuis Vim, laisser la configuration ancienne en place pour que l editeur demarre encore, puis remplacer point par point, un seul a la fois, afin qu un probleme reste facile a localiser ; ne connecter des serveurs de langage que pour les langues reellement utilisees, car trop de serveurs ralentissent nettement le demarrage ; et garder une liste d extensions courte, en desactivant une par une en cas de souci plutot qu en installant une pile avant de chercher.

NeovimTéléchargement
Systèmes pris en charge : Windows macOS Linux