Neovim : une refonte de vim pour le 21è siècle

Posté par  (site web personnel) . Édité par Florent Zara, BAud et Benoît Sibaud. Modéré par Ontologia. Licence CC By‑SA.
Étiquettes :
38
26
fév.
2014
Technologie

Neovim est un fork tout récent (fin janvier 2014) de Vim. Faut-il rappeler ce qu'est Vim (Vi IMproved), le fameux éditeur de texte ? Lui-même clone le plus populaire de l'ancêtre Vi ?

Logo VIM

Le logiciel a maintenant plus de 20 ans, contient environ 300 000 lignes de code de vieux C effrayant que peu de gens comprennent. Le mainteneur (unique ?) de Vim, Bram Moolenaar, refuse de factoriser certaines parties du code, et est très prudent avant d'accepter des patchs, car c'est lui qui devra en assurer la maintenance. Conséquence de tout ça : Vim est très dépendant d'une seule personne et évolue très lentement.

Neovim a pour objectif premier de simplifier la maintenance de vim :

  • modernisation du système de compilation : utilisation de cmake ;
  • suppression du code assurant la compatibilité avec de vieux systèmes ;
  • utilisation d'une bibliothèque externe (libuv) pour s'abstraire des différences entre les systèmes d'exploitation ;
  • factorisation « agressive » du code ;
  • meilleure séparation du code entre différents développeurs.

Par la suite, un nouveau système de plugins est prévu, ainsi que la possibilité de pouvoir créer plus facilement des interfaces graphiques (à la manière des plugins).

NdM : merci à Carif pour son journal.

Journal vim: Au revoir syntastic, bonjour ALE

Posté par  . Licence CC By‑SA.
Étiquettes :
37
24
août
2018

J'utilise Vim pour éditer des fichiers et notamment pour coder. Et j'aime bien avoir l'intégration des linters dans mon éditeur pour afficher les erreurs à côté du texte.

Un linter, c'est un programme qui analyse le code et signale les infractions aux règles de codages, les potentiels problèmes, erreurs de syntaxes, variables non utilisées, etc. En Python, par exemple, j'utilise pylint et flake8.

Pour intégrer ces linters à un éditeur de texte, il existe des plugins.

Depuis longtemps je (…)

Vim 7.3

Posté par  (site web personnel) . Modéré par patrick_g.
Étiquettes :
37
20
août
2010
Ligne de commande
Vim, le célèbre éditeur de texte, est sorti en version 7.3. Bram Moolenaar a annoncé que cette version, sans être majeure, était néanmoins plus conséquente qu'une simple version mineure. Il faut dire que deux ans s'étaient écoulés depuis la sortie de la version 7.2.

Les nouveautés les plus intéressantes de cette version sont :
  • Persistance de l'historique des commandes pouvant être annulées ;
  • Possibilité d'annuler un rechargement ;
  • Chiffrement avec blowfish ;
  • Chiffrement du fichier de swap ;
  • Possibilité de cacher du texte (par exemple, des commentaires) ;
  • Interface pour Lua ;
  • Interface pour Python3 ;
  • Prise en charge de la coloration syntaxique et de l'indentation pour Perl6 ;
  • Coloration syntaxique pour le langage de balisage Markdown.

Journal Le markdown, sous Emacs, et plus largement sous Linux

Posté par  (site web personnel) . Licence CC By‑SA.
37
20
mai
2018

La plupart d'entre vous connaissent le markdown, utilisé bien sûr ici même sur linuxfr, sur tant de forums, sur github 1, un peu partout dans le monde. Il peut servir à créer une page web, écrire des méls, aux forums, aux pages de documentations, à prendre des notes, ou des bouquins. Même si vous ignoriez le nom vous connaissez donc un peu la syntaxe, comme cela :

> ce chevron sur un forum

> indique une ligne de commentaire (…)

Journal Journal Bookmark #2

32
15
déc.
2014

Journal Neovim : vim's rebirth for the 21st century

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
31
25
fév.
2014
Ce journal a été promu en dépêche : Neovim : une refonte de vim pour le 21è siècle.

Context

Vim, le fameux éditeur de texte, est un logiciel ayant plus de 20 ans, qui contient environ 300 000 lignes de code de vieux C effrayant, que peut de gens comprennent.

Le mainteneur (unique ?) de vim, Bram Moolenaar, refuse de factoriser certaines parties du code, et est très prudent avant d'accepter des patchs, car c'est lui qui devra en assurer la maintenance.

Conséquence de tout ça : vim est très dépendant d'une seule personne, et évolue très lentement.

Neovim

Neovim (…)

A byte of Vim, a été traduit en français, sous licence libre

Posté par  (site web personnel) . Modéré par rootix.
Étiquettes :
29
31
juil.
2009
Ligne de commande
Le premier livre libre en français consacré à l'éditeur de texte Vim est disponible, sous la licence CC-by-sa 3.0. Il a été traduit depuis le site de Swaroopch, qui propose deux livres de l'auteur, A byte of Vim et A byte of Python.

J'ai participé à la traduction, avec David Lacerte qui l'avait initiée.

Il reste de petites choses à retoucher, mais comme c'est un wiki, vous pouvez proposer une meilleure traduction...

À moins de connaître très bien Vim, vous avez de bonnes chances d'apprendre de nouvelles choses en lisant ce livre, qui conseille notamment d'utiliser Vim comme outil de GTD, afin de "s'organiser pour réussir".

Journal [FAILLE] Code execution dans Vim via un fichier malicieux forgé

Posté par  . Licence CC By‑SA.
29
11
juin
2019

La vulnérabilité est tombée hier:

https://github.com/numirias/security/blob/master/doc/2019-06-04_ace-vim-neovim.md

Il s'agit d'execution de code, possiblement distante (merci netcat) en exploitant une //faille// dans la gestion des modeline (Fonctionnalité qui permet de configurer vim pour le buffer courant, via une ligne spécialement formaté au début du fichier)

L'astuce intéressante est que, par l'utilisation de caractères d'échappement, l'attaquant peut même rendre la ligne malicieuse invisible via cat.

Des mitigations existent (désactiver les modelines), tout est détaillé sur la page.

Journal Bon anniversaire Vim !

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
28
2
nov.
2011

Il a à peine 20 ans, c'est un jeunot face au plus abouti des éditeurs de texte, à savoir Emacs, mais il est toujours là.

Joyeuse Vingtaine vim !

http://arstechnica.com/open-source/news/2011/11/two-decades-of-productivity-vims-20th-anniversary.ars

Ps : à vous de choisir si ce journal est un jourmark ou la énième tentative de survie d'un des plus vieux troll du monde libre.

Journal Amélioration de la coloration syntaxique C dans vim

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes :
25
14
août
2021

Ça fait longtemps que je ne suis pas satisfait d'un truc avec la coloration syntaxique du C dans vim. La coloration des types est basée sur la reconnaissance de mots clés (int, unsigned, uint32_t, …) et par conséquent elle ne fonctionne pas pour les types définis par l'utilisateur qui ne sont pas dans cette liste.

Il y a quelques années, un collègue qui avait le même problème m'a donné une copie de son fichier de syntaxe modifié pour corriger ça (…)

Journal Comment savoir si le style sombre est actif ?

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes :
23
11
déc.
2023

Cher journal,

Au démarrage de mon éditeur de texte vim, je souhaite qu'il choisisse un thème sombre ou claire selon la préférence actuelle de mon bureau.

Je n'en ai besoin que pendant le lancement, parce que je ne change pas très souvent ce paramètre : la journée je préfère le thème clair et le soir le sombre. Si vraiment, j'ai besoin de changer le style de vim sans le redémarrer, je peux utiliser la commande :

:set background=dark

Jusqu'à (…)

Journal travailler sur de nombreux fichiers avec Vim et NeoVim, sur une seule vue

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes :
23
8
déc.
2023

Ce premier journal, d’une série de trois, fait suite à ma réponse à une interrogation de martoni dans le forum.

L’objectif est de répondre, à travers des exemples pratiques, à la question de savoir comment on travaille avec plusieurs fichiers ; dans un premier temps dans une seule fenêtre…

Comme prérequis, il est demandé de :

  • avoir installé Vim ou Neovim ;
  • savoir utiliser une implémentation de vi pour un usage basique ;
  • savoir, optionnellement, utiliser un (…)

Journal classeur, un script python quick&dirty pour avoir tout son texte dans un seul fichier

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes :
23
11
jan.
2024

Cher journal,

Il y a quelques semaines je demandais sur le forum linuxfr comment utiliser vim pour avoir tous les fichiers textes d'un document dans un même buffer.

S'en est suivi une réponse fleuve de Gil Cot transformée elle même en journal.

Pour résumer, mon problème était le suivant : J'aime bien rédiger ma documentation en markdown: ça fait de beaux diff, c'est lisible en texte brut et c'est convertible en tout un tas de format avec (…)