5 points par GN⁺ 2026-02-15 | 1 commentaires | Partager sur WhatsApp
  • Mise à jour majeure incluant de grandes améliorations du langage de script Vim9, un mode diff amélioré, des fonctions d’autocomplétion complètes et un support expérimental de Wayland
  • L’autocomplétion en mode insertion est renforcée avec le fuzzy matching, la complétion de mots basée sur les registres et de nouvelles options completeopt
  • Des améliorations d’interface propres à chaque plateforme ont été apportées, comme le support de l’UI et du presse-papiers Wayland, un panneau d’onglets vertical et le mode sombre natif de Windows
  • Les fonctionnalités du langage ont été étendues avec les enums, les fonctions génériques et le type tuple, ce qui ouvre aussi la voie au développement de plugins basés sur l’IA
  • Même après le décès de Bram Moolenaar, Vim conserve sa philosophie Charityware, et l’organisation soutenue a été transférée à Kuwasha

Principales améliorations

  • Renforcement de l’autocomplétion
    • Le mode insertion prend en charge le fuzzy matching et permet de compléter directement des mots depuis les registres (CTRL-X CTRL-R)
    • Les options nosort et nearest ont été ajoutées à 'completeopt', permettant de contrôler finement le tri des résultats
  • Améliorations de plateforme et d’interface
    • Support complet de l’UI Wayland et du presse-papiers
    • Sur Linux/Unix, respect de la XDG Base Directory Specification, avec utilisation de $HOME/.config/vim comme chemin de configuration
    • Ajout d’un panneau d’onglets vertical ; la GUI Windows prend désormais en charge le mode sombre pour les menus et la barre de titre, ainsi que les icônes haute résolution
  • Ajout d’outils d’apprentissage
    • Un nouveau plugin de tutoriel interactif, lancé avec la commande :Tutor, offre une expérience d’apprentissage plus moderne que vimtutor

Extensions du langage de script Vim9

  • Renforcement des structures du langage
    • Prise en charge nouvelle des enums, des fonctions génériques et du type de données tuple
    • Les fonctions intégrées sont intégrées comme méthodes d’objet, et les classes prennent en charge une méthode protégée _new() ainsi que la compilation complète des méthodes via :defcompile
  • Intégration avec les outils d’IA
    • Deux projets d’exemple utilisant GitHub Copilot ont été publiés
      • Battleship in Vim9: implémentation du jeu classique à l’aide de classes
      • Number Puzzle: puzzle logique sous forme de plugin interactif

Améliorations du mode diff

  • Algorithme Linematch
    • Nouvel ajout dans la configuration 'diffopt', il aligne les modifications entre lignes similaires et améliore la précision de la mise en surbrillance
  • Diff Anchors
    • L’option 'diffanchors' permet de définir des points d’ancrage pour aligner les diffs par section dans les fichiers complexes
  • Inline Highlighting
    • Affiche finement les modifications à l’intérieur d’une même ligne, avec contrôle via la sous-option "inline"
    • "inline:simple" est inclus dans la valeur par défaut de 'diffopt'

Changements des valeurs par défaut

  • Plusieurs valeurs de configuration par défaut ont été mises à jour pour correspondre à un environnement moderne
    • 'history': 50 → 200
    • 'backspace': valeur vide → "indent,eol,start"
    • 'diffopt': "internal,filler""internal,filler,closeoff,indent-heuristic,inline:char"
    • 'fontsize' (GTK): 10pt → 12pt
    • 'showcmd', 'ruler': activés par défaut

Autres améliorations et corrections de bugs

  • Depuis Vim 9.1, de nombreux correctifs de failles de sécurité, de fuites mémoire et de plantages ont été apportés

Transition de l’action caritative

  • Dissolution d’ICCF Holland
    • Après le décès du fondateur Bram Moolenaar, la fondation n’a pas pu être maintenue et a été dissoute
    • Les fonds restants ont été transférés pour soutenir le projet Kibaale
  • Coopération avec Kuwasha
    • L’organisation canadienne Kuwasha a repris le projet en Ouganda afin de poursuivre le soutien
  • Pérennité de Charityware
    • Vim reste un logiciel Charityware, et les utilisateurs peuvent faire un don via Kuwasha

Remerciements et distribution

  • Remerciements à tous les contributeurs ayant participé avec des patchs, des traductions et des rapports de bugs
  • La dernière version est disponible sur la page de téléchargement

1 commentaires

 
GN⁺ 2026-02-15
Commentaires Hacker News
  • Ça fait plaisir de voir Vim9 continuer à évoluer
    Même si le centre de gravité semble s’être un peu déplacé vers Neovim, l’écosystème Neovim paraît davantage ciblé sur ceux qui veulent un environnement proche d’un IDE
    Je me demande surtout si davantage d’auteurs de plugins vont migrer vers Vim9Script. Comme les utilisateurs de Neovim sont majoritairement passés aux plugins basés sur Lua, il semble y avoir moins de motivation à prendre en charge les deux côtés

    • J’aime vraiment vim9script, donc j’écris la plupart de mes plugins avec, sauf quand ils doivent aussi fonctionner sur d’autres vim
      Je suis particulièrement ravi de l’ajout du support des tuples
    • Je ne distribue pas de plugins, mais le support de Lua dans Neovim a été la principale raison de mon passage depuis Emacs
      Elisp comme Vimscript étaient trop frustrants pour moi
      Cela dit, si j’avais eu le choix, j’aurais sans doute préféré un autre langage que Lua
  • Le fait que Vim soit proposé en charityware depuis plus de 30 ans est impressionnant
    Après le décès de Bram Moolenaar, la fondation ICCF Holland a été dissoute, mais les fonds restants ont été transférés afin de continuer à soutenir le projet Kibaale en Ouganda
    J’ai choisi vim pour des raisons techniques, mais j’ai été encore plus fier de l’utiliser en apprenant que Bram poursuivait ce type d’action caritative avec autant de bienveillance

    • Quand je travaillais autrefois dans une grande entreprise, j’avais essayé de faire approuver vim pour un usage interne, mais cette clause de charityware avait provoqué un long débat avec le service juridique sur l’existence ou non d’une obligation de don
      Au final, le fait qu’il soit déjà inclus dans la distribution Linux a simplement été passé sous silence
      Je soutiens malgré tout entièrement l’intention de Bram
    • Je me demande si, quand les gens font un don à vim, cet argent est bien reversé à une organisation d’aide aux enfants en Ouganda
  • Je suis un fan de vim, mais j’ai fini par passer à nvim
    Honnêtement, j’aimerais que les mainteneurs de vim trouvent un moyen de fusionner d’une manière ou d’une autre avec nvim

    • Je pense aussi qu’il y a de la valeur à ne pas ajouter sans cesse de nouvelles fonctionnalités et à préserver la stabilité
      Ça fonctionne de la même manière sur ma machine locale, mon Raspberry Pi et ma VM Ubuntu 20.04
      La simplicité et la cohérence sont au cœur de Vim ; si on veut davantage de fonctionnalités, autant utiliser vscode avec l’extension vim
      J’ai essayé nvim autrefois, mais je n’y ai pas vu de gros avantage, et j’ai abandonné parce que la commande :sh s’y comportait différemment
    • À mon avis, une fusion est impossible, car les deux projets ont déjà une structure de base différente
      Personnellement, j’aime la direction prise par vim9
    • Moi aussi je suis passé à nvim, mais à chaque release je me demande si je ne devrais pas revenir
      Honnêtement, je déteste Lua. Le fait que toute l’infrastructure parte en Lua semble devenu inévitable
      C’est déjà une bonne chose que la prise en charge de XDG ait été réglée
    • J’utilise vim et nvim en parallèle. Il suffit de faire lire ~/.vimrc par init.nvim et tout se passe bien
    • En revanche, je me demande si nvim a désormais défini un standard d’UI
  • Cette release donne presque envie de faire la blague « Où sont les fonctionnalités IA ? », tant il est rafraîchissant de voir une grosse mise à jour sans IA

    • Vim n’a pas besoin d’IA, mais j’aimerais vraiment avoir une fonctionnalité de multi-cursor
      C’était d’ailleurs pour ça que j’étais passé à Sublime Text à l’époque, et c’est indispensable aujourd’hui dans VSCode ou Zed
      Il existe des plugins, mais ce serait bien plus puissant avec une prise en charge native
    • Vim a déjà toute l’IA nécessaire — à savoir les mains et le cerveau de l’utilisateur
    • À mon avis, vim est justement l’outil le plus adapté à l’agentic coding
    • Moi aussi, je me pose la question. Comment les gens utilisent-ils l’IA dans vim ces jours-ci ? J’ai vu des scripts ollama, mais je suis curieux de connaître les cas d’usage courants
    • À noter que vim est aussi bien compatible avec les plugins d’IA
  • Il fut un temps où Bram Moolenaar refusait de mettre vim à jour jusqu’à l’arrivée de Neovim

    • Maintenant qu’il est décédé, je pense qu’il n’est pas vraiment nécessaire de revenir là-dessus
  • J’ai trouvé étrange qu’il n’y ait pas de tag v9.2 dans la liste des tags GitHub

    • Les tags v9.2.0 et v9.2.0000 ont depuis été ajoutés
    • Le commit correspondant est à ce lien. Au moment de la rédaction, le tag n’avait pas encore été posé
  • Après longtemps m’y être intéressé, j’ai enfin commencé à vraiment apprendre vim
    Grâce à l’IA, j’ai maintenant du temps entre deux demandes pour apprendre, et demander de simples modifications à un IDE ou à une IA me paraît au contraire plus lent
    Grâce à un workflow agentique, je peux faire bien plus vite des modifications fines et des tâches répétitives

    • Mais pour moi, l’IA a au contraire supprimé le besoin de vim
      Avant, j’étais un évangéliste de vim, mais aujourd’hui je règle la plupart des bugs avec des commandes vocales et des corrections par IA
      J’aime toujours autant la philosophie de vim malgré tout
  • C’est vraiment une très bonne nouvelle de voir vim continuer à évoluer

  • La GUI Windows prend désormais en charge le mode sombre, un plein écran amélioré et des icônes haute résolution
    Félicitations pour cette nouvelle release, et j’ai hâte d’essayer ces superbes améliorations

    • C’est un timing vraiment parfait, surtout pour ceux dont le service informatique a bloqué l’accès à Notepad++