====== VIm : Premiers pas ====== On vous a demandé d'éditer un fichier de configuration ? Croyez-moi, ça risque d'arriver souvent. Dans ce cas, autant le faire avec un véritable éditeur de texte. Nano, ça va bien 5 minutes, mais ça reste assez rudimentaire. Emacs est une alternative, que je n'aime pas, je ne développerai ni ne trollerai donc pas sur le sujet LOL ===== Pourquoi utiliser un éditeur de texte en mode console ? ===== * Parce qu'il n'y a pas besoin d'un serveur graphique pour éditer un pauvre fichier de configuration * Parce que c'est plus léger et disponnible facilement sur toutes les configurations * Parce que quand le serveur graphique est mort, on n'a pas le choix * Parce que de toute façon, la souris nous ferait perdre du temps * Parce qu'il démarre en moins d'une seconde ===== Pourquoi utiliser VIm plutôt que nano ? ===== * Pour ses fonctionnalités de recherche de texte * Pour ses fonctionnalités de substitution * Pour son ergonomie (si si !) * Pour son lot de plugins et sa reconnaissance syntaxique * Pour la magie noire qui émane de lui ===== Remarques importantes ===== * On dit « Vi-aïe immeprouvdeuh ». * Moi, je dis « Vimmeuh ». * Normalement, la différence ne devrait pas trop se ressentir sur le Wiki. * Conclusion, si on vous demande comment on doit appeler vim, répondez « En l'invoquant dans un terminal. » ====== Installation ====== aptitude install vim-nox vim-scripts ====== Au secours, comment on quiteuh !!! ====== '':q'' //Mais euh, il veut pas euh !// '':q!'' ===== Utilisation basique de VIm ===== Commençons par créer un fichier de jeu : echo -e "Il y a trois sortes de casseroles.\nLes casseroles avec la queue à droite, les casseroles avec la queue à gauche et les casseroles avec pas de queue du tout.\nMais celles-là on les appelle des autobus." > /tmp/jeu.txt Cette commande crée un fichier ''/tmp/jeu.txt'' ressemblant très fortement à ça : Il y a trois sortes de casseroles. Les casseroles avec la queue à droite, les casseroles avec la queue à gauche et les casseroles avec pas de queue du tout. Mais celles-là on les appelle des autobus. Étonnant n'est-ce pas ? ==== Ouverture de fichier ==== On supposera pour l'instant que vous n'avez pas lancé vim. Si c'est le cas, quittez-le. Il suffit de taper : vim /tmp/jeu.txt Vous avez maintenant une interface qui ressemble fort à ça (un clic pour agrandir) : {{:tuto_nix:vim:00_coucou.png?500|Coucou}} Vous êtes en mode **commande**. Les lettres que vous tapez ne sont pas insérées dans le texte mais sont interprétées comme des commandes. ==== Insertion de texte ==== Appuyez maintenant sur la touche ''i''. {{:tuto_nix:vim:01_insertion.png?500|Mode insertion}} Peu de chose ont changées. Seule l'inscription  -- INSERTION -- est apparue en bas à gauche de la fenêtre. Cela change beaucoup de chose ! Vous êtes dorénavant en mode **insertion**, c'est à dire que les lettes que vous tapez sont insérées à l'emplacement du curseur. Tapez maintenant le texte suivant : Pour les Shadocks, i Et faite . Vous vous retrouvez maintenant avec l'écran suivant : {{:tuto_nix:vim:02_modifie.png?500|Document modifié}} Remarquez la ligne qui indiquait le nom du fichier. Elle est maintenant annotée d'un ''[+]''. /tmp/jeu.txt [+] Cela signifie que le document a été modifié. Vous noterez également qu'en appuyant sur vous avez quitté le mode **insertion** et avez réintégré le mode **commande**. ==== Sauvegarde des modifications ==== Maintenant que vous êtes en mode commande, vous allez sauvegarder les modifications apportées au fichier. Pour ce faire, tapez '':w'' Vous avez remarqué qu'après la saisie de '':'', une petite invite de commande est apparue. ''w'' signifie //write//, c'est la commande pour écrire un fichier. {{:tuto_nix:vim:03_dpq.png?500|Invite de commande}} Après avoir tapé sur , vous êtes revenu en mode **commande** et le ''[+]'' a disparu. {{:tuto_nix:vim:04_written.png?500|Fichier enregistré}} Vous avez enregistré les modifications du fichier sur le disque. Au passage, si le fichier n'existait pas, il a été créé. ==== Se déplacer dans le document ==== Oui, enfin bon, voilà, la phrase du document texte ne veut rien dire, et ça n'est certainement pas la faute des Shaddocks. S'il est une décision qui doit être prise en cet instant, c'est la suivante : il faut supprimer le ''I''. Cette décision s'impose d'autant plus qu'elle me fournit une transition vers la suite du tutoriel. Il y a 36 solutions pour supprimer ce ''I''. * La plus facile, dont vous devez vous souvenir : * repassez en mode console avec ''i'' * allez vers la droite avec… la flèche vers la droite * appuyez sur * appuyez sur * La solution équivalente « tout en mode commande » : * appuyez sur ''l'' * appuyez sur ''x'' * Une solution par substitution : * tapez '':s/iI/i/'' Vous pouvez maintenant enregistrer comme tout à l'heure votre document. === Quelques explications === * En mode commande, on peut utiliser ''h'', ''j'', ''k'' et ''l'' pour se déplacer. Bien sûr, les flèches fonctionnent également, mais VIm est prévu pour pouvoir fonctionner sur des claviers sans flèches 8-O et puis, ces touches sont moins éloignées de la position de repos de vos mains, donc vous vous fatiguez moins :-P. * En mode commande, ''x'' permet de couper la lettre présente sous le curseur. * '':s/''//motif//''/''//texte//''/'' est une commande pour remplacer la première occurrence de //motif// par ''texte''. ===== C'est tout pour aujourd'hui ! =====