Voilà bientôt deux mois que j’utilise l’éditeur de texte Vim, il était donc temps de vous faire partager mon point de vue sur cette application.
Pour commencer, il faut savoir que passer d’un éditeur de texte traditionnel comme Gedit à Vim est une expérience en soi. En règle générale, une fois l’application lancée on insère tout bêtement son texte : Et bien là, on a beau essayé ça ne fonctionne pas ou alors c’est que l’on a appuyé sur la bonne touche sans le savoir ! Le copier/coller est aussi assez surprenant, oubliez la combinaison des touches [Ctrl + c] [Ctrl + v ] : Ça ne fonctionne pas non plus ! Et oui, utiliser Vim c’est également apprendre à faire un simple copier/coller : Incroyable non ?
L’utilisateur doit donc se familiariser avec le système de copier/coller mais aussi avec des modes qu’on ne comprend pas forcement au début : Insertion, commande ou encore visuel. La première réaction est donc de se demander pourquoi il faudrait se donner tant de mal pour éditer un simple fichier texte et on se dit que cette méthode de fonctionnement est pour le moins tordue ! Dans la plupart des cas, la deuxième réaction consistera à mettre Vim au placard, je parle en connaissance de cause : C’est ce que j’ai fait lors de ma venue dans le monde des logiciels libres.
Pour ceux qui tentent tout de même l’aventure ou qui comme moi refont une tentative, il y a un gros danger : Celui de devenir dépendant ! Oui, vous avez bien lu le mot « dépendant » et ce n’est en aucun cas une erreur de ma part … Au fur et à mesure des utilisations, on se rend très vite compte que Vim est un éditeur hors norme et on réalise par la même occasion que les défauts reprochés au début deviennent petit à petit des qualités : L’édition d’un texte devient alors un véritable plaisir !
Dans le cadre de mon utilisation, j’ai particulièrement apprécié les points suivant :
- Coloration syntaxique.
- Correction orthographique.
- Déplacement rapide dans le texte.
- Gestion des modèles de documents.
- Auto-complétion.
- Fonction de recherche/remplacement.
- Gestionnaire de fichiers.
- Split d’écran.
- Copier/coller multiple.
- Annulation/restauration.
Bon, je vous l’accorde sans mal : La grande majorité des logiciels disposant d’une interface graphique proposent des fonctionnalités similaires ! Peut être, mais je me vois mal reprendre ma souris pour sélectionner un mot mal orthographié et chercher dans un menu pour reprendre ensuite le clavier : Je trouve personnellement que c’est une grosse perte de temps ( en plus d’être chiant ) ! C’est un exemple parmi tant d’autres, mais vous l’aurez sans doute compris : Ce qui pour moi fait le charme de Vim, c’est avant tout la possibilité de faire un nombre inimaginable d’actions tout en ayant ses doigts posés bien tranquillement sur le clavier.
Évidement VIM n’est pas le seul éditeur en mode texte, son concurrent Emacs me fait d’ailleurs de l’œil… Une application que je ne tarderai pas essayer dès qu’un peu de temps libre s’offrira à moi !
Pour finir et vous faire part de mon addiction, je vous avoue que Vim me plait au point d’avoir un desktop que l’on pourrait appeler de « Vimeux » : WMFS, Mutt, Ranger, Jumanji, Newsbeuter agrémentent mon espace de travail de bien belle manière !
Une vrai drogue je vous dis !
23 juin 2011 à 21:20
Le grand avantage de vim est la somme ENORME de plugins, thèmes, hacks, … Il permette de twitter dans une de ces fenêtres, en utilisant les ircs dans une autre, de se connecter à git, cvs, svn, … Mais avant tout il fonctionne dans une console texte !!! Donc pas besoin d’environnement graphique ! Sur un serveur, sur un Desktop, sur Windows, sur Mac, processeurs i386, ARM, PPC
Voilà j’en ai fini ??
A+
23 juin 2011 à 21:29
@Vincent RABAH : Je n’en suis pas encore arrivé à ce stade d’utilisation ! Le chemin est encore long
23 juin 2011 à 21:54
À la base j’utilisais Emacs par habitude… Or depuis que je suis passé au BÉPO les raccourcis clavier d’Emacs sont devenus impraticables! Je suis donc en train de redécouvrir Vim moi aussi. Par contre je galère a essayer de me faire un .vimrc correct, peux tu partager le tiens stp ?
23 juin 2011 à 22:15
@julien : Le mien est pour le moins très limité :
syntax on
set number
set spelllang=fr
set bg=dark
au bufNewFile *.html 0r ~/.vim/templates/xhtml.html
au bufNewFile *.sh 0r ~/.vim/templates/bash.sh
Je doute qu’il te serve !
23 juin 2011 à 22:18
Faudrait que je reteste un jour, je suis toujours avec
nano
quand je suis dans un shell (oui, j’ai honte). Pour écrire du texte c’est intuitif, mais dès que c’est pour des copier-collers ou autres c’est pas terrible.23 juin 2011 à 22:31
@Julien : Tu as de quoi te faire un bon .vimrc ici
23 juin 2011 à 23:13
Au fait, vous copiez-coller comment depuis une application externe ?
Ce qui me fait encore reprendre un éditeur graphique pour trois secondes par moments, c’est que je ne peux pas accéder au presse-papier de X (j’utilise le package vim standard d’archlinux).
Vous l’avez recompilé avec l’option pour le support X11, ou vous utilisez gvim ?
23 juin 2011 à 23:24
@Wan ,
Un clic molette + Shift devrait te permettre d’accéder au xclip.
23 juin 2011 à 23:57
Pareil que ®om : je me contente de nano. En même temps je ne dois pas éditer plus de 2 fichiers de config par semaine. Et je n’écris pas des fichiers de plus de 10 lignes très souvent.
24 juin 2011 à 0:16
Rien à voir mais c’est volontaire l’heure des commentaires en UTC ?
24 juin 2011 à 5:30
@Wan :
pour copier/coller depuis Vim vers une application externe
pour copier/coller d’une application externe vers Vim
Vim a de l’avance au niveau du sondage ! Je devrais faire un article sur Emacs, la tendance serait certainement différente !
24 juin 2011 à 7:58
Pour simple info, copier/coller un contenu sélectionné à partir de la souris en ligne de commande (oui c’est un peu contradictoire):
Copier dans le presse papier: CRTL+SHIFT+C
Coller le contenu du presse papier: CTRL+SHIFT+V
Ça fonctionne bien évidemment aussi si on veut copier/coller (ctrl+c et ctrl+v classiques) du contenu depuis un logiciel graphique.
Et dans le même genre, faire une sélection à la souris (copie) et faire un clic molette là où on vont coller le contenu sélectionné (ou shift+insert).
La première solution est au moins native gnome et la seconde fonctionne dans les tty pour ma part.
Et si on veut faire de la haute voltige, on passe à screen qui a un bon gros buffer et qui permet de remonter le contenu d’un terminal, de copier/coller à travers les terminaux, …
On veut bien un petit aperçu de ton desktop du coup :þ
24 juin 2011 à 8:44
.vimrc: http://gardouilleland.free.fr/wordpress/wp-content/uploads/vimrc.txt
Et pour ceux qui utilise encore nano, tester vim avant d’en avoir vraiment besoin . Autant se former petit à petit.
24 juin 2011 à 8:45
@Socketubs @David
Merci pour les indications.
Le problème que j’avais, c’est que :
$ vim –version | grep « +xterm_clipboard »
ne me donnait rien. J’ai installé le paquet gvim, et celui-là vient avec un vim compilé avec le support du clipboard X11, donc je peux enfin accéder aux registres « + et « *.
24 juin 2011 à 9:16
Moi, ce dont je ne peux plus me passer en éditant du code c’est :
Pour éditer un truc du genre :
var_a_ralonge->le_champ_initial.un_pointer->un_autre_champ = 4;
En ce mettant sur le « l » de le_cham…
c2/un puis taper le nouveau nom.
Pour renommer « un_autre_champ » en « un_troisième_champ » je me met sur le « a » de autre et : ct_troisième c’est terminé.
Au final, c’est une question d’habitude. Gare à l’adiction…
24 juin 2011 à 9:49
Vim c’est très bien, et Emacs aussi
C’est une excellente idée que de se lancer dans Emacs. En fait, il faut connaître les deux, bien les connaître, car sinon on ne fait que dire des bêtises à leur sujet.
Concernant Emacs, il faut savoir :
1) Qu’Emacs n’est pas vraiment un éditeur de texte. C’est un interpréteur LISP spécialisé dans le traitement interactif du texte. Quasiment tout est LISP dans Emacs, y compris les actions les plus simples (déplacer le curseur). Tout est donc modifiable.
2) Emacs peut émuler Vi (via Viper) et même Vim (via Viper + Vimpulse).
Vous pouvez jeter un oeil à ma conf Emacs ici :
https://github.com/jbbourgoin/Emacs-configuration
Et à ma conf Vim (bien moins « riche ») :
https://github.com/jbbourgoin/Vim-conf
Happy hacking (comme dit l’autre ).
24 juin 2011 à 10:38
Vim et Emacs ! Vim pour toutes les petites choses courantes dans la console, fichiers de conf, … Emacs pour le développement, car les modes qui m’intéressent sont plus riches en fonctionnalités, permet beaucoup de plus de choses. Bien que je préfère l’interface modale de vim, c’est dans Emacs que je passe le plus de temps.
D’ailleurs tu as déjà une capture de ma config emacs : http://ubunblox.servhome.org/wordpress/wp-content/Simon.png
la config est là: https://github.com/saimn/dotfiles/tree/master/emacs.d
24 juin 2011 à 16:16
Moi franchement j’ai essayé mais pour éditer un fichier de temps à autre pour un desktop ça ne vaut pas le coup nano suffit largement.
Après pour les gens qui tapent un fichier config de 10km de long ça c’est très bien vim, emacs est bien mais usine à gaz et trop lent à se lance même sur une machine très puissance…
24 juin 2011 à 17:36
Je suis tombé dans Emacs récemment à cause d’Org-mode pour ma part. Et comme toi, je suis en train de pousser vers les applications en « mode minitel » comme tu le disais dans un autre billet.
Pour l’instant avec Emacs, je twitte, je dent, je m’organise. Bientôt je pense que j’IRCiserai, je lirai mes mails, je remplirai les divers mediawiki, wordpress, drupal, git et autres avec cette seule application. C’est juste affolant le nombre de trucs que je peux faire avec et je ne fais que commencer.
S’il n’y avait pas eu Org-mode, je pense que j’aurai commencé par Vim.
24 juin 2011 à 21:20
@Micklie : man emacsclient
comme ça on ne lance emacs qu’une seule fois …
25 juin 2011 à 6:44
Je viens de découvrir vimtutor, vraiment excellent.
Pour ceux qui ne connaissent pas et qui veulent découvrir vim,
un seul conseil : taper « vimtutor » dans votre terminal
26 juin 2011 à 14:50
@6pi
Merci, je vais essayer
vimtutor
8 juillet 2011 à 23:17
[...] Mon aventure avec Vim Partager cet article : Recommend on Facebook Buzz it up Share on netvibes Share on identica Share on technorati Tweet about it Subscribe to the comments on this post Bookmark in Browser Tell a friend [...]