System-Linux

Aller au contenu | Aller au menu | Aller à la recherche

Commande Vi et Vim

Voici un petit mémo des commandes Vi bien pratique.

Commande et Description

flèches et page.up/down Permet de déplacer le prompt dans le fichier.

:q et :q! Quitter sans sauvegarder, le ”!” permet de forcer au cas ou le fichier à été modifié par exemple.

i et o Passer en mode édition au prompt et passer en mode édition à la ligne

:w et :w! Sauvegarder le fichier, le ”!” permet de forcer au cas ou le fichier est en lecture seul par exemple. __ :wq et :wq!__ Sauvegarder et quitter le fichier, le ”!” permet de forcer de l'action.

:set encoding=utf-8 Changer le charset de l'éditeur, dans cet exemple nous utiliserons un charset unicode.

:set fileencoding=utf-8 Changer le charset du ficher, n'oubliez pas de sauvegarder le fichier avec :w!

:set noai Supprimer l'auto incrémentation, pratique lorsqu'un copier/coller se décale de partout

:$ Amener le prompt à la fin du fichier

:u Annule la dernière action mode commande.

yy Copier une ligne en mode commande

p Coller une ligne qui a été préalablement copier biensur :p

Pour remplacer une chaîne de caractères par une autre, taper :

:1,$ s/chaîne_de_remplacement/chaîne_à_remplacer/

Le 1 indique la première ligne, et le $ la dernière.

Il est donc possible de remplacer la chaîne de caractère seulement entre la ligne 10 et 24 avec la commande :

:10,24 s/chaîne_de_remplacement/chaîne_à_remplacer/

ou

pour remplacer le même mot par un autre dans tout le fichier :

:%s/mot1/mot2/g

Commenter plusieurs lignes (par exemple 4 avec le caractère de commentaire #) :

Il suffit de se positionner sur la première ligne à commenter puis de taper:

:.,+4 s/^/#/g

L'inverse :

:.,+4 s/^#//g

Supprimer tous les retours à la ligne :

:s/\n//

Fusionner deux lignes

Avec la touche : J

Insérer un retour à la ligne après un texte précis (ex : texte)

:s/\(texte\)/\1\r/g

Supprimer le dernier caractère de chaque ligne :

:s/.$//

Supprimer les blancs en fin de ligne :

:s/\( \|\t\)*$//

Conversion de format fichier :

:set fileformat=unix
ou
:set fileformat=dos

Afficher les numéros de ligne :

:set number

///

Par GanGan | le mardi, décembre 23 2008 08:11

Commentaires

1. zarer

lundi, janvier 5 2009 | 01:08

Bonsoir,

Vim est (normalement) installé avec "vimtutor" : 30 minutes de tutoriel pour se faire la main avec les commandes les plus courantes de vim.

@+

2. gangan

lundi, janvier 5 2009 | 10:21

Je ne connaissais pas merci bien
et en français en plus !

3. zarer

lundi, janvier 5 2009 | 18:30

Bonsoir,

Vim est (normalement) installé avec "vimtutor" : 30 minutes de tutoriel pour se faire la main avec les commandes les plus courantes de vim.

@+

4. Afnarel

samedi, mars 14 2009 | 13:08

:set noai Supprimer l'auto incrémentation
--> :set noai Supprimer l'auto indentation

(J'aurais rajouté <Ctrl-R> pour ré-appliquer les modification mais bon c'est un mémo...)