vi Man page

VIM(1) General Commands Manual VIM(1)

NOM
vim – Vi IMproved, éditeur de texte pour programmeurs

SYNOPSIS

vim [options] [fichier …] vim [options] –
vim [options] -t marqueur
vim [options] -q [fichiererreurs]

ex
view
gvim gview evim eview
rvim rview rgvim rgview

DESCRIPTION

Vim est un éditeur de texte proposant une compatibilité ascendante avec
Vi. Il permet d’éditer n’importe quel type de texte brut. Il est parti‐
culièrement adapté pour l’édition des programmes.

Il comporte de nombreuses améliorations par rapport à Vi : annulation
sur plusieurs niveaux, fenêtres et tampons multiples, coloration syn‐
taxique, édition en ligne de commande, complètement des noms de
fichiers, aide en ligne, sélection visuelle, etc. Voir “:help
vi_diff.txt” pour un résumé des différences entre Vim et Vi.

Pendant l’exécution de Vim une aide abondante est accessible au tra‐
vers du système d’aide en ligne, grâce à la commande “:help”. Voir la
section AIDE EN LIGNE plus bas.

Le plus souvent Vim est démarré pour éditer un unique fichier avec la
commande

vim fichier

Plus généralement, Vim est lancé avec :

vim [options] [listefichiers]

Si la listefichiers est omise, l’éditeur démarre avec un tampon vide.
Autrement, l’une des quatre méthodes suivantes vous permettra de choi‐
sir un ou plusieurs fichiers à éditer.

fichier … Une liste de noms de fichiers. Le premier sera le fichier
courant et sera lu dans le tampon. Le curseur sera placé
sur la première ligne du tampon. Vous pouvez passer aux
autres fichiers avec la commande “:next”. Pour éditer un
fichier débutant par un tiret, faites précéder la liste de
fichiers par “–“.

– Le fichier à éditer est lu sur l’entrée standard (stdin).
Les commandes sont lues depuis stderr, qui devrait être un
terminal.

-t {marqueur}
Le fichier à éditer et la position initiale du curseur
dépendent d’un “marqueur”, qui est une sorte d’étiquette.
{marqueur} est recherché dans le fichier des marqueurs, le
fichier correspondant devient le fichier courant et la com‐
mande associée est exécutée. Principalement utile pour les
programmes en C ; dans ce cas, {marqueur} peut être le nom
d’une fonction. Au final, le fichier contenant cette fonc‐
tion devient le fichier courant et le curseur est placé au
début de la fonction. Voir “:help tag-commands”.

-q [fichiererreurs] Démarre en mode Mise-au-point (QuickFix). Le fichier
[fichiererreurs] est lu et la première erreur est affichée.
Si [fichiererreurs] est omis, le nom du fichier est lu dans
l’option ‘errorfile’ (“AztecC.Err” par défaut sur Amiga,
“errors.err” sur les autres systèmes). La commande “:cn”
permet de sauter aux erreurs suivantes. Voir “:help quick‐
fix”.

Vim se comporte différemment selon le nom de la commande (l’exécutable
peut cependant être le même fichier).

vim La façon “normale”, le comportement par défaut.

ex Démarre en mode Ex. La commande “:vi” permet de passer en
mode Normal. Ce mode est également accessible avec l’argument
“-e”.

view Démarre en mode Lecture-Seule. Vous êtes protégé de l’écri‐
ture accidentelle des fichiers. Ce mode est également acces‐
sible avec l’argument “-R”.

gvim gview
La version graphique. Ouvre une nouvelle fenêtre. Également
accessible avec l’argument “-g”.

evim eview
La version graphique en mode Débutant (easy). Ouvre une nou‐
velle fenêtre. Également accessible avec l’argument “-y”.

rvim rview rgvim rgview
Comme ci-dessus, mais avec des restrictions. Il vous sera
impossible de lancer des commandes du shell, ou de suspendre
Vim. Également accessible avec l’argument “-Z”.

OPTIONS

Les options peuvent être spécifiées dans n’importe quel ordre, avant ou
après les noms de fichiers. Les options sans arguments peuvent être
combinées après un unique tiret.

+[num] Place le curseur sur la ligne “num” dans le premier
fichier. Si “num” est omis, le curseur sera placé sur la
dernière ligne.

+/{motif} Place le curseur sur la première occurrence de {motif} dans
le premier fichier. Voir “:help search-pattern” pour
connaître les motifs de recherches disponibles.

+{commande}

-c {commande}
Exécute {commande} après la lecture du premier fichier.
{commande} est interprétée comme une commande Ex. Si la
{commande} contient des espaces, elle doit être entourée de
doubles-apostrophes (cela dépend du shell utilisé). Exemple
: Vim “+set si” main.c
Note : vous pouvez utiliser jusqu’à 10 commandes “+” ou
“-c”.

-S {fichier}
Source {fichier} après la lecture du premier fichier. C’est
équivalent à -c “source {fichier}”. {fichier} ne peut pas
débuter par un ‘-‘. Si {fichier} est omis, “Session.vim”
est utilisé (cela ne fonctionne que si -S est le dernier
argument).

–cmd {commande}
Comme “-c”, mais la commande est exécutée juste avant de
traiter les fichiers vimrc. Vous pouvez utiliser jusqu’à 10
de ces commandes, indépendamment des commandes “-c”.

-A Si Vim a été compilé avec le support de la fonctionnalité
ARABIC pour l’édition de fichiers de droite à gauche et les
claviers arabes, cette option lance Vim en mode Arabe,
c.-à-d. que l’option ‘arabic’ est activée. Sinon, un mes‐
sage d’erreur est émis et Vim quitte.

-b Mode Binaire. Active plusieurs options pour permettre
l’édition d’un fichier binaire ou exécutable.

-C Compatible. Active l’option ‘compatible’. Vim se comportera
alors quasiment comme Vi, même s’il existe un fichier
.vimrc.

-d Démarre en mode Diff. Deux, trois ou quatre noms de
fichiers doivent être spécifiés. Vim ouvrira alors tous les
fichiers et affichera leurs différences. Fonctionne comme
vimdiff(1).

-d {périph} Ouvre {périph} pour l’utiliser comme terminal. Uniquement
sur Amiga. Exemple : “-d con:20/30/600/150”.

-D Debogage. Passe en mode Débogage lors de l’exécution de la
première commande d’un script.

-e Démarre Vim en mode Ex, comme si l’exécutable s’appelait
“ex”.

-E Démarre Vim en mode Ex amélioré, comme si l’exécutable
“exim” avait été invoqué.

-f Premier-plan (Foreground). Pour la version graphique, Vim
ne forke pas et ne se détache pas du shell dans lequel il a
été invoqué. Sur Amiga, Vim n’est pas relancé pour ouvrir
une nouvelle fenêtre. Cette option est utile quand Vim est
exécuté par un programme qui attend la fin de la session
d’édition (par exemple mail). Sur Amiga, les commandes
“:sh” et “:!” ne fonctionneront pas.

–nofork Premier-plan (Foreground). Pour la version graphique, Vim
ne forkera pas et ne se détachera pas du shell dans lequel
il a été lancé.

-F Si Vim a été compilé avec le support de la fonctionnalité
FKMAP pour l’édition de fichiers de droite à gauche et les
claviers farsi, cette option lance Vim en mode Farsi, c.-à-
d. avec les options ‘fkmap’ et ‘rightleft’ activées. Sinon,
un message d’erreur est émis et Vim quitte.

-g Si Vim a été compilé avec le support de l’IHM graphique,
cette option active l’IHM graphique. Si le support n’a pas
été compilé, un message d’erreur est émis et Vim quitte.

-h Donne une aide succincte sur les arguments et les options
de la ligne de commande. Après cela, Vim quitte.

-H Si Vim a été compilé avec le support de la fonctionnalité
RIGHTLEFT pour l’édition de fichiers de droite à gauche et
les claviers hébreux, cette option lance Vim en mode
Hébreu, c.-à-d. avec les options ‘hkmap’ et ‘rightleft’
activées. Sinon, un message d’erreur est émis et Vim
quitte.

-i {viminfo}
Lorsque l’utilisation d’un fichier viminfo est activée,
cette option indique le nom de fichier à utiliser à la
place de “~/.viminfo” par défaut. Il est possible d’empê‐
cher l’utilisation d’un fichier “.viminfo”, en spécifiant
le nom de fichier “NONE”.

-L Comme -r.

-l Mode Lisp. Active les options ‘lisp’ et ‘showmatch’.

-m Empêche la modification des fichiers. Désactive l’option
‘write’. Vous pouvez toujours modifier le tampon, mais il
vous sera impossible d’écrire le fichier.

-M N’autorise aucune modification. les options ‘modifiable’ et
‘write’ sont désactivées, de sorte que les changements ne
sont pas autorisés et que les fichiers ne peuvent pas être
écrits. Note : ces options peuvent être activées pour auto‐
riser les modifications.

-N Mode Non-compatible. Désactive l’option ‘compatible’. Cela
améliorera le comportement de Vim mais il sera moins
conforme à celui de Vi, même s’il n’existe aucun fichier
“.vimrc”.

-n N’utilise pas de fichier d’échange (swapfile). Le recouvre‐
ment après un plantage sera impossible. Utile pour éditer
un fichier sur un support très lent (disquette par ex.).
Également activable avec “:set uc=0”. Il est possible de
l’annuler avec “:set uc=200”.

-nb Devient un serveur d’édition pour NetBeans. Consulter la
documentation à ce sujet pour davantage de détails.

-o[N] Ouvre N fenêtres les unes au-dessus des autres. Quand N est
omis, ouvre une fenêtre pour chaque fichier.

-O[N] Ouvre N fenêtres côte à côte. Quand N est omis, ouvre une
fenêtre pour chaque fichier fichier.

-p[N] Ouvre N onglets. Quand N est omis, ouvre un onglet pour
chaque fichier fichier.

-R Mode Lecture-Seule. Active l’option ‘readonly’. Vous pouvez
toujours éditer le tampon, mais il vous sera impossible de
d’écraser accidentellement un fichier. Si vous voulez écra‐
ser un fichier, ajoutez un point d’exclamation à la com‐
mande Ex, comme dans “:w!”. L’option -R impose l’option -n
(voir ci-dessus). L’option ‘readonly’ peut être désactivée
avec “:set noro”. Voir “:help ‘readonly'”.

-r Donne la liste des fichiers d’échange, avec des informa‐
tions pour les utiliser à des fins de recouvrement.

-r {file} Mode Recouvrement. Utilise le fichier d’échange pour récou‐
vrer d’une session d’édition plantée. Le fichier d’échange
est un fichier avec le même nom que le fichier texte, suivi
du suffixe “.swp”. Voir “:help recovery”.

-s Mode Silencieux. Disponible uniquement quand Vim est lancé
en tant que “ex” ou quand l’option “-e” a été spécifiée
avant l’option “-s”.

-s {scriptEntrée}
Lit le fichier de script {scriptEntrée}. Les caractères du
fichier sont interprétés comme si vous les tapiez. La com‐
mande “:source! {scriptEntrée}” donne le même résultat. Si
la fin du fichier est atteinte avant que l’éditeur quitte,
les caractères suivants sont lus depuis le clavier.

-T {terminal}
Indique à Vim le nom du terminal utilisé. Cela n’est requis
que lorsque la détection automatique échoue. Le {terminal}
devrait être connu de Vim (intégré) ou défini dans le
fichier termcap ou terminfo.

-u {vimrc} Utilise les commandes du fichier {vimrc} pour les initiali‐
sations. Toutes les autres initialisations sont omises. À
utiliser pour éditer un type de fichiers particulier. Cela
permet aussi d’omettre toute initialisation en spécifiant
le nom de fichier “NONE”. Voir “:help initialization” dans
Vim pour davantage de détails.

-U {gvimrc} Utilise les commandes du fichier {gvimrc} pour l’initiali‐
sation de l’IHM graphique. Toutes les autres initialisa‐
tions graphiques sont omises. Cela permet aussi d’omettre
toute initialisation graphique en spécifiant le nom de
fichier “NONE”. Voir “:help gui-init” dans Vim pour davan‐
tage de détails.

-V[N] Mode Verbeux. Donne des messages à propos des fichiers
sourcés, ainsi que sur la lecture et les écritures dans le
fichier viminfo. le nombre optionnel N précise la valeur de
l’option ‘verbose’ (10 par défaut).

-v Démarre Vim en mode Vi, comme si l’exécutable s’appelait
“vi”. Cela n’a d’effet que si l’exécutable invoqué est
“ex”.

-w {scriptSortie}
Tous les caractères que vous tapez sont enregistrés dans le
fichier {scriptSortie}, jusqu’à ce que vous quittiez Vim.
C’est utile quand vous voulez créer un fichier de script à
utiliser avec “vim -s” ou “:source!”. Si le fichier
{scriptSortie} existe, les caractères sont ajoutés à la
fin.

-W {scriptSortie}
Comme -w, mais un fichier existant sera écrasé.

-x Chiffre les fichiers lors de l’écriture. Une clé de chif‐
frement sera demandée.

-X Ne se connecte pas au serveur X. Accélère le temps de
démarrage dans un terminal, mais le titre de la fenêtre et
le presse-papier seront inaccessibles.

-y Démarre Vim en mode Débutant (easy), comme si l’exécutable
s’appelait “evim” ou “eview”. Donne à Vim un comportement
plus proche des éditeurs « cliquez-tapez ».

-Z Mode restreint. Fonctionne comme si l’exécutable commençait
par la lettre ‘r’.

— Délimite la fin des options. Les arguments qui suivent
seront considérés comme des noms de fichiers. Cela permet
d’éditer des fichiers débutant par un ‘-‘.

–echo-wid IHM graphique GTK uniquement : retourne la Window ID sur
stdout.

–help Donne un message d’aide et quitte, comme “-h”.

–literal Prend les arguments de noms de fichiers littéralement, sans
étendre les jokers. N’a aucun effet sur Unix, où le shell
étend les jokers.

–noplugin Ne charge pas les greffons. Implicite avec -u NONE.

–remote Se connecte à un serveur Vim et lui fait éditer les
fichiers spécifiés dans le reste des arguments. Si aucun
serveur n’est trouvé, un avertissement est émis et les
fichiers sont édités dans le Vim courant.

–remote-expr {expr}
Se connecte à un serveur Vim, y évalue {expr} et affiche le
résultat sur la sortie standard (stdout).

–remote-send {touches}
Se connecte à un serveur Vim et y envoie {touches}.

–remote-silent
Comme –remote, mais sans émettre d’avertissement si aucun
serveur n’est trouvé.

–remote-wait
Comme –remote, mais Vim ne quitte pas tant que le fichier
est en cours d’édition.

–remote-wait-silent
Comme –remote-wait, mais sans émettre d’avertissement si
aucun serveur n’est trouvé.

–serverlist
Donne la liste des noms de tous les serveurs Vim dispo‐
nibles.

–servername {nom}
Utilise {nom} pour le nom de serveur. Ce nom est donné au
Vim courant, à moins qu’il ne soit utilisé avec un argument
–remote. Dans ce cas, il s’agit du nom du serveur auquel
se connecter.

–socketid {id}
IHM graphique GTK+ uniquement : utilise le mécanisme Gtk‐
Plug pour faire fonctionner gvim dans une autre fenêtre.

–version Affiche les informations sur la version puis quitte.

AIDE EN LIGNE
Taper “:help” dans Vim pour commencer. Taper “:help sujet” pour obtenir
de l’aide sur un sujet précis. Par exemple : “:help ZZ” pour consulter
l’aide sur la commande “ZZ”. Utiliser et CTRL-D pour compléter
les sujets (“:help cmdline-completion”). Des marqueurs sont inclus dans
l’aide et vous permettent de sauter d’un endroit à un autre (comme des
liens hypertextes, voir “:help”). L’ensemble des fichiers de la docu‐
mentation peut être consulté de cette façon, par exemple “:help syn‐
tax.txt”.

FICHIERS
/usr/share/vim/vim74/doc/*.txt
Les fichiers de la documentation de Vim. Utiliser “:help
doc-file-list” pour obtenir la liste complète.

/usr/share/vim/vim74/doc/tags
Le fichier des marqueurs utilisé pour trouver les infor‐
mations dans les fichiers de la documentation.

/usr/share/vim/vim74/syntax/syntax.vim
Initialisation de la syntaxe pour l’ensemble du système.

/usr/share/vim/vim74/syntax/*.vim
Fichiers de syntaxe pour différents langages.

/usr/share/vim/vimrc
Initialisation de Vim pour l’ensemble du système.

~/.vimrc Initialisation de Vim de votre compte utilisateur.

/usr/share/vim/gvimrc
Initialisation de gvim pour l’ensemble du système.

~/.gvimrc Initialisation de gvim pour votre compte utilisateur.

/usr/share/vim/vim74/optwin.vim
Script utilisé pour la commande “:options”, une manière
pratique de consulter et de modifier les options.

/usr/share/vim/vim74/menu.vim
Initialisation des menus de gvim pour l’ensemble du sys‐
tème.

/usr/share/vim/vim74/bugreport.vim
Script pour générer un rapport de bogue. Voir “:help
bugs”.

/usr/share/vim/vim74/filetype.vim
Script pour détecter le type d’un fichier d’après son
nom. Voir “:help ‘filetype'”.

/usr/share/vim/vim74/scripts.vim
Script pour détecter le type d’un fichier d’après son
contenu. Voir “:help ‘filetype'”.

/usr/share/vim/vim74/print/*.ps
Fichiers utilisés pour l’impression PostScript.

Pour disposer d’informations récentes, consulter le site Internet de
VIM :

VOIR AUSSI
vimtutor(1)

AUTEUR
La majeure partie de Vim a été écrite par Bram Moolenaar, avec l’aide
de nombreux autres contributeurs. Voir “:help credits” dans Vim.
Vim est basé sur Stevie, réalisé par Tim Thompson, Tony Andrews et G.R.
(Fred) Walter. Toutefois, pratiquement rien du code original ne sub‐
siste.

BOGUES
Probablement. Voir “:help todo” pour consulter la liste des problèmes
connus.

NOTE : Remarquez que bon nombre de points, qui pourraient être considé‐
rés comme des bugs par certains, sont en fait dus à une reproduction
trop fidèle du comportement de Vi. Et si vous pensez que d’autres
points sont des bugs “parce que Vi le fait différemment”, vous devriez
jeter un oeil attentif au fichier vi_diff.txt (ou taper “:help
vi_diff.txt” dans Vim). Regardez aussi les options ‘compatible’ et
‘coptions’.

TRADUCTION
Cette page de manuel a été traduite par Richard Hitier.
2000-08-07.
Cette page de manuel a été mise à jour par David Blanchet. 2006-04-10. Mise à jour 2013-05-10, Dominique Pellé

22 février 2002 VIM(1)