Nom
vim - Vi IMproved, un éditeur de texte pour les programmeurs.
Résumé
vim [options] [file ..]
vim [options] -
vim [options] -t tag
vim [options] -q [fic_erreur]
ex view gvim gview rvim rview rgvim rgview
Description
Vim est un éditeur de texte compatible avec VI. On peut l'utiliser pour éditer tout texte ASCII. Il est particulièrement adapté pour l'édition de programmes.
Il comporte de nombreuses améliorations par rapport à VI: 'annulation' multi-niveaux, fenêtres et tampons multiples, coloration syntaxique, édition de la ligne de commandes, complétion des noms de fichiers, aide en ligne, sélection visuelle, etc... Voir ":help vi_diff.txt" pour un sommaire des différences entre
Vim et Vi.
Pendant l'exécution de
Vim on peut obtenir toute une aide par le système d'aide_en_ligne grâce à la commande ":help". Voir la section AIDE plus bas.
Le plus souvent
Vim est lancé pour éditer un simple fichier avec la commande
vim fichier
Plus généralement
Vim est lancé avec :
vim [options] [liste_de_fichiers]
Si la liste_de_fichiers est omise, l'éditeur démarre avec un tampon vide. Autrement on pourra invoquer l'un des points suivants pour choisir au moins un fichier à éditer.
| fichier .. Une liste de noms de fichiers. Le premier sera le fichier courant et lu dans le tampon. Le curseur sera activé sur la première ligne du tampon. Vous pouvez visualiser les autres fichiers avec la commande ":next". Pour éditer un fichier commençant par un tiret, préfixer la liste des fichiers par "--". |
| - Le fichier à éditer est lu sur stdin. Les commandes sont lues depuis stderr, qui devrait être un terminal. |
| -t {tag} Le fichier à éditer ainsi que la position initiale du curseur dépendent d'un "tag", une sorte de label goto. {tag} est recherché dans le fichier des tags, le fichier correspondant devient le fichier courant et la commande associée est exécutée. Surtout employé dans les programmes en C, auquel cas {tag} pourrait être le nom d'une fonction. Au final, le fichier contenant cette fonction devient le fichier courant et le curseur est activé au début de la fonction. Voir ":help tag-commands". |
| -q [fic_erreur] Démarrer en mode quickFix. Le fichier [fic_erreur] est lu et la première erreur est affichée. Si [fic_erreur] est omis, le nom de fichier est obtenu par l'option 'errorfile' ("AztecC.Err" par défaut pour l'Amiga, "errors.err" sur d'autres systèmes). Les erreurs suivantes peuvent être atteintes avec la commande ":cn". Voir ":help quickfix". |
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", tout est par défaut. |
| ex Démarre en mode ex. Passer en mode Normal avec la commande ":vi". S'obtient aussi avec l'argument "-e". |
| view Démarre en mode lecture-seule. Toute modification des fichiers est impossible. S'obtient aussi avec l'argument "-R". |
| gvim gview La version IHM graphique. Ouvre une nouvelle fenêtre. S'obtient aussi avec l'argument "-g". |
| rvim rview rgvim rgview Comme ci-dessus, mais avec des restrictions. Il ne sera pas possible de démarrer un nouveau shell, ou de suspendre Vim. S'obtient aussi avec l'argument "-Z". |
Options
Les options peuvent être passées dans n'importe quel ordre, avant ou après les noms de fichier. Des options sans argument peuvent être combinées après un unique tiret.
| +[num] Pour le premier fichier le curseur sera activé sur la ligne "num". Si "num" est omis, le curseur sera activé sur la dernière ligne. |
| +/{mot} Pour le premier fichier le curseur sera activé sur la première occurence de {mot}. Voir ":help search-pattern" pour les motifs de recherche disponibles. |
| -c {commande} La {commande} sera exécutée après lecture du premier fichier. La {commande} est interprétée comme une commande Ex. Si la {commande} contient des espaces elle doit être entourée de guillemets (cela dépend du shell qui est utilisé). Exemple : Vim "+set si" main.c Note : Vous pouvez utiliser jusqu'à 10 commandes "+" ou "-c". |
| -b Mode binaire. Quelques options sont activées rendant possible l'édition d'un fichier binaire ou exécutable. |
| -C Compatible. Activer l'option "compatible". Vim se comportera alors quasiment comme Vi, même s'il existe un fichier .vimrc. |
| -d {device} Ouverture de {device} comme terminal. Seulement sur l'Amiga. Exemple : "-d con:20/30/600/150". |
| -e Lancer Vim En mode Ex, comme si l'exécutable s'appelait "ex" |
| -f Foreground. Vim ne passe pas en arrière-plan. Plus particulièrement, pour la version IHM Vim ne fork pas et ne se détache pas du shell d'où il a été appelé. Sur l'Amiga, Vim n'est pas redémarré pour ouvrir une nouvelle fenêtre. Cette option devrait être utilisée quand Vim est exécuté par un programme qui attendra la fin de la session d'édition (ex. mail). Sur l'Amiga les commandes ":sh" et ":!" ne marcheront pas. |
| -F Si Vim a été compilé avec le support FKMAP pour le clavier Farsi et pour l'édition des fichiers orientés de droite à gauche, cette option lance Vim en mode Farsi, c-a-d que 'fkmap' et 'rightleft' sont activés. Sinon un message d'erreur apparaît et Vim s'interrompt. |
| -g Si Vim a été compilé avec le support IHM, cette option autorise l'IHM. Si aucun support IHM n'a été compilé, un message d'erreur apparaît et Vim s'interrompt. |
| -h Donne un minimum d'aide sur les arguments et options de la ligne de commande. Après ça Vim s'éteint. |
| -H Si Vim a été compilé avec le support RIGHTLEFT pour l'édition de fichiers orientés de droite à gauche et le clavier Hébreu, cet option lance Vim en mode Hébreu, c-à -d que 'hkmap' et 'rightleft' sont activés. Sinon un message d'erreur apparaît et Vim s'interrompt. |
| -i {viminfo} Lorsque le fichier viminfo est autorisé, cette option indique le fichier à utiliser à la place du "~/.viminfo" par défaut. Ceci peut aussi être employé pour désactiver l'utilisation du fichier .viminfo, en passant le nom "NONE". |
| -l Mode lisp . Active les option 'lisp' et 'showmatch'. |
| -m Désactive la modification des fichiers. Désactive l'option 'write', écrire dans des fichiers n'est alors plus possible. |
| -N Mode no-compatible. Désactive l'option 'compatible' . Vim se comportera alors un peu mieux, mais moins compatible Vi, même s'il n'existe pas de fichier .vimrc. |
| -n Pas de fichier swap utilisé. La récupération après plantage sera impossible. Utile si vous voulez éditer un fichier sur un medium très lent (ex. disquette). Peut aussi être obtenu avec ":set uc=0". Peut être désactivé par ":set uc=200". |
| -o[N] Ouvre N fenêtres. Lorsque N est omis, ouvre une fenêtre pour chaque fichier. |
| -R Mode Lecture-seule. L'option 'readonly' sera activée. Vous pouvez toujours éditer le buffer, mais serez prévenu d'un écrasement accidentel du fichier. Si vous voulez modifier un fichier, ajoutez un point d'exclamation à la commande Ex, comme dans ":w!". L'option -R implique aussi l'option -n (voir plus haut). L'option 'readonly' peut être désactivée avec ":set noro". Voir ":help 'readonly'". |
| -r Liste les fichiers de swap, avec l'information sur leur utilisation pour récupération. |
| -r {file} Mode de récupération. Le fichier de swap est utilisé pour récupérer une session d'édition plantée. Le fichier de swap est un fichier de même nom que le fichier texte avec ".swap" en suffixe. Voir ":help recovery". |
| -s Mode silencieux. Seulement pour un démarrage à la "Ex" ou quand l'option "-e" est passée avant l'option "-s". |
| -s {scriptin} Le fichier de script {scriptin} est lu. Les caractères du fichier sont interprétés comme si vous les tapiez. La même chose peut-être obtenue avec la commande ":source! {scriptin}". Si la fin du fichier est atteinte avant que l'éditeur ne s'arrête, des caractères supplémentaires sont lus au clavier. |
| -T {terminal} Indique à Vim le nom du terminal que vous utilisez. Seulement nécessaire lorsque la détection automatique ne fonctionne pas. Devrait être un terminal connu de Vim (builtin) ou défini dans le fichier termcap ou terminfo. |
| -u {vimrc} Utilise les commandes du fichier {vimrc} pour les initialisations. Toutes les autres initialisations sont ignorées. Utiliser cela pour éditer des fichiers de type particulier. Peut aussi être utilisé pour ignorer toute initialisation en passant le nom "NONE". Voir ":help initialization" au sein de vim pour plus de détails. |
| -U {gvimrc} Utilise les commandes dans le fichier {gvimrc} pour des initialisations IHM. Toutes les autres initialisations IHM sont ignorées. Peut aussi être utilisé pour ignorer toute initialisation IHM en passant le nom "NONE". Voir ":help gui-init" au sein de vim pour plus de détails. |
| -V Mode volubile. Donne des messages sur les fichiers qui sont sourcés ainsi que sur la lecture et l'écriture d'un fichier viminfo. |
| -v Lance Vim en mode Vi, exactement comme si l'exécutable s'appelait "vi". Cela n'a d'effet que si l'exécutable s'appelle "ex". |
| -w {scriptout} Tous les caractères que vous tapez sont enregistrés dans le fichier {scriptout}, jusqu'à ce que vous quittiez Vim. Ceci est utile si vous voulez créer un fichier de script à utiliser avec "vim -s" ou ":source !" Si le fichier {scriptout} existe, les caractères sont ajoutés à la fin. |
| -W {scriptout} Comme -w, mais un fichier existant sera écrasé. |
| -x Utiliser le cryptage lors de l'écriture de fichiers. Demandera une clef de cryptage. |
| -Z Mode restreint. Fonctionne comme quand l'exécutable démarre avec "r". |
| -- Signale la fin des options. Les arguments suivants seront interprétés comme nom de fichier. Ce peut être utilisé pour éditer un fichier commençant par '-'. |
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 de l'aide sur la commande "ZZ". Utiliser <Tab> et CTRL-D pour compléter les sujets (":help cmdline-completion"). Des tags sont là pour sauter d'un endroit à un autre (comme des liens hypertexte, voir ":help"). Tous les fichiers de documentation peuvent être visualisés de cette façon, par exemple ":help syntax.txt".
Fichiers
| /usr/local/lib/vim/doc/*.txt Les fichiers de documentation de Vim. Utiliser ":help doc-file-list" pour en avoir la liste complète. |
| /usr/local/lib/vim/doc/tags Les fichiers de tags utilisés pour trouver l'information dans les fichiers de documentation. |
| /usr/local/lib/vim/syntax/syntax.vim Initialisations système générales pour la syntaxe. |
| /usr/local/lib/vim/syntax/*.vim Fichiers de syntaxe pour différents langages. |
| /usr/local/lib/vim/vimrc Initialisations système générales de Vim. |
| /usr/local/lib/vim/gvimrc Initialisations système générales de gvim. |
| /usr/local/lib/vim/optwin.vim Script utilisé pour la commande ":options", une façon élégante de voir et d'activer les options. |
| /usr/local/lib/vim/menu.vim Initialisations menu générales pour gvim. |
| /usr/local/lib/vim/bugreport.vim Script pour générer un rapport de bug. Voir ":help bugs". |
| /usr/local/lib/vim/filetype.vim Script pour détecter le type d'un fichier par son nom. Voir ":help 'filetype'". |
| /usr/local/lib/vim/scripts.vim Script pour détecter le type d'un fichier par son contenu. Voir ":help 'filetype'". |
Pour infos récentes lire la home page VIM/ :
<URL:http://www.vim.org/>
Voir aussi
vimtutor(1)
Auteur
La majeur partie de
Vim a été conçue par Bram Moolenaar, avec l'aide de beaucoup d'autres contributeurs. Voir ":help credits".
Vim est basé sur Stevie, maintenu par: Tim Thompson, Tony Andrews et G.R. (Fred) Walter. Cependant, il reste très peu de choses du code original.
Bugs
Probablement. Voir ":help todo" pour une liste de problèmes connus.
Remarquer 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 plus attentif au fichier vi_diff.txt (ou taper :help vi_diff.txt dans Vim). Regardez aussi les options 'compatible' et 'coptions'.
Traduction
Richard Hitier, 2000.