*resume-perso.txt* Resume personnel de l'aide Vim Pour installer ce fichier d'aide sur votre Vim, copier ce fichier (resume-perso.txt) dans votre répertoire doc personnel puis exécuter > :helptags nom_répertoire Le répertoire doc personnel de Vim n'existe pas par défaut, il faut le créer. Sur Linux, créer ~/.vim/doc, sur Windows, créer ~/_vim/doc où ~ est C:\Documents and Settings\login_utilisateur Exemple sur Linux : > :helptags ~/.vim/doc < Pour Vim version 7.2 Mai 2009 - février 2012, version 1.1 *resume-perso* *rp* 1. Introduction |rp-introduction| 2. Options |rp-options| 3. Commandes |rp-ex-commands| 4. Registres |rp-registers| 5. Commandes |rp-commands| 6. Sélection d'objets |rp-text-objects| 7. Aide |rp-help| 8. Mode insertion |rp-insert-mode| 9. Recherches |rp-search-patterns| 10. Lancement de Vim |rp-vimopts| 11. Trucs |rp-tricks| 12. Scripts utiles |rp-scripts| ============================================================================== 1. Introduction *rp-introduction* *rpintro* {{{ Ce fichier est un résumé en français de ce qu'il faut connaître pour utiliser Vim. Il n'a pas pour objectif de remplacer |index.txt| mais d'être un résumé beaucoup plus rapide que ce dernier. Il liste les raccourcis clavier, les commandes, les expressions régulières (rationnelles), et donne quelques trucs trouvés ici et là dans les fichiers d'aide originaux. Il est proche de |quickref.txt|pour le contenu, mais n'a pas vocation à l'exhaustivité. Note Il s'agit d'un résumé PERSONNEL, c'est-à-dire non exhaustif. ============================================================================== }}} 2. Options *rp-options* *rpopt* {{{ - Manipulation des options Consulter ce fichier d'aide |options.txt|. :set all Liste les valeurs de toutes les options |:set| :set option? Affiche une option sans la modifier (utile pour booléen) :set option Active une option booléenne :set nooption Désactive une option booléenne :set option! Inverse une option booléenne (aussi :set invoption) :set all& Mets toutes les options à leur valeur par défaut|:set-default| :set option& Mets l'option à sa valeur par défaut (dépend de 'compatible') :set option&vi Mets l'option à sa valeur par défaut pour Vi :set option&vim Mets l'option à sa valeur par défaut pour Vim :set option=.. Définis la valeur d'une option |:set-args| :set option:.. Idem ci-dessus, définis la valeur d'une option :set option+=.. Augmente (si numérique) ou ajoute (chaîne ou liste) |:set+=| :set option-=.. Idem ci-dessus, mais retranche ou enlève |:set-=| :set option^=.. Multiplie (si numérique) ou ajoute en début de chaîne |:set^=| :setglobal .. Définis la valeur globale d'une option |:setglobal| :setlocal .. Définis la valeur locale d'une option |:setlocal| :setlocal option< Mets l'option locale à sa valeur globale, en recopiant cette valeur (donc pas de lien dynamique) |global-local||:setlocal| :set option< Mets l'option locale à vide, pour que la valeur globale soit prise en compte :set termcap Affiche les options du terminal :options Affiche la fenêtre des options |:options| :verbose set .. Affiche la valeur d'une option et des détails sur sa dernière mise à jour :set =.. Définis des caractéristiques termcap |set-termcap| - Modeline Permet de définir des options au début ou à la fin du fichier grâce à une ligne spéciale (la modeline), 'modeline' doit être activé et 'modelines' indique le nombre de lignes au début et à la fin où chercher cette ligne. Plus de détails dans |modeline|. Premier format, exemple : vi:noai:sw=3 ts=6 ~ Deuxième format, exemple : vim: set ai tw=75: ~ - Options courantes 'ignorecase' 'ic' Recherche insensible à la casse |/ignorecase| 'smartcase' 'scs' Recherche sensible à la casse s'il y a des majuscules dans la chaîne recherchée alors que l'option 'ignorecase' est activé 'shiftwidth' 'sw' {n} Taille d'un tab à l'indentation (commandes < et >) 'shiftround' 'sr' Arrondis l'indentation à un multiple de 'shiftwidth' 'tabstop' 'ts' {n} Taille d'un caractère de tabulation à l'affichage 'softtabstop' 'sts' {n} Taille d'un tab en nombre d'espaces, lorsqu'inséré à la saisie 'expandtab' 'et' La saisie d'un caractère de tabulation produit uniquement des espaces 'smarttab' 'sta' En début de ligne, insère des espacements selon 'shiftwidth', sinon insère les tabulations selon 'tabstop' ou 'softtabstop' 'hlsearch' 'hls' Mets en surbrillance ce que la recherche trouve 'linebreak' 'lbr' Pas de coupure de mot lors du passage à la ligne de l'affichage (option 'wrap' activée) 'autoindent' 'ai' Auto-indentation 'smartindent' 'si' Auto-indentation plus élaborée qu'avec 'autoindent' 'preserveindent' 'pi' Préserve autant que possible les caractères présents sur la ligne en cours d'indentation 'copyindent' 'ci' Recopie les caractères utilisés pour indenter, quels qu'ils soient, au moment d'indenter une nouvelle ligne 'fileformat' 'ff' {s} Détermine le type de fichier texte pour les sauts de ligne (unix, dos ou mac, voir 'fileformats') 'filetype' 'ft' {s} Détermine le type de fichier (cpp, cmd, pl, etc.) 'list' Affiche les caractères non imprimables 'listchars' 'lcs' Affichage différencié des caractères blancs, utilisé avec l'option 'list' 'number' 'nu' Affiche les numéros de ligne 'numberwidth' 'nuw' {n} Nombre de colonnes pour les numéros de ligne, lorsque l'option 'number' est activée 'scroll' 'scr' {n} Nombre de lignes à scroller |CTRL-U||CTRL-D| 'scrollbind' 'scb' Lie les fenêtres pour le scrolling |scroll-binding| 'scrollopt' 'sbo' {s,..} Réglages de 'scrollbind', les options sont ver, hor et jump |scroll-binding| 'scrolloff' 'so' {n} Nombre minimal de lignes toujours affichées en haut et en bas de l'écran 'scrolljump' 'sj' {n} Nombre de lignes à scroller lorsque le curseur sort de l'écran 'sidescrolloff' 'siso' {n} Idem option 'scrolloff' mais horizontalement, 'wrap' doit être désactivé 'sidescroll' 'ss' {n} Nombre de lignes à scroller horizontalement lorsque le curseur sort de l'écran, 'wrap' désactivé 'startofline' 'sol' Les déplacements de grande taille reviennent à la ligne 'wrap' Reviens à la ligne (à l'affichage) pour les lignes qui dépassent la largeur à l'écran 'wrapmargin' 'wm' {n} Marge à droite pour le mode 'wrap' 'textwidth' 'tw' {n} Largeur du texte (pour formatage automatique) 'incsearch' 'is' Pour les commandes / et ?, démarre la recherche au cours de la frappe 'encoding' 'enc' {s} Encodage |encoding-table||encoding-names| 'termencoding' 'tenc' {s} Encodage du terminal 'fileencoding' 'fenc' {s} Encodage du fichier 'fileencodings' 'fencs' {s,..} Encodages à tester à l'ouverture d'un fichier 'backup' 'bk' Conserve une sauvegarde de l'ancienne version du fichier en cours d'édition, cf. 'writebackup', 'backupcopy', 'backupdir', 'backupext' et 'backupskip' |backup-table| 'backspace' 'bs' {s,..} Définis ce que la touche Suppression peut supprimer en mode insertion, peut contenir indent, eol et start 'spell' Active la correction orthographique 'spelllang' 'spl' {s,..} Langue(s) de la correction orthographique, exemple : fr,en 'spellfile' 'spf' {s,..} Dictionnaires personnels pour |zg| et |zw| 'spellsuggest' 'sps' {s,..} Affichage des suggestions |spellsuggest()| best : méthode qui fonctionne bien pour l'anglais double : utilise la méthode "fast" + sonorités de la langue fast : méthode qui se contente de tester des changements basiques {n} : nombre maximal de suggestions affichées par z= file:{fichier} : utilise le fichier, dont le format de ligne est mot/mot_suggéré expr:{expr} : Évalue l'expression {expr} 'spellcapcheck' 'spc' {s} Expression régulière pour détecter les fins de phrase, afin de signaler les majuscules manquantes en début de phrase, : ne pas faire ce test 'dictionary' 'dict' {s,..} Liste de dictionnaires utilisés lors de la complétion invoquée par |i_CTRL-X_CTRL-K| 'thesaurus' 'tsr' Liste de fichiers thesaurus consultés lors de la complétion invoquée par |i_CTRL-X_CTRL-T| * Avancé * 'compatible' 'cp' {s..} Ensemble de lettres indiquant quelles fonctionnalités conserver dans un mode de compatibilité avec Vi 'formatoptions' 'fo' {s..} Options pour le formatage auto |fo-table| t : ajouter des sauts de ligne automatiquement c : idem ci-dessus, dans les commentaires (option 'comments') r : démarre un commentaire auto après appui sur la touche o : démarre un commentaire auto après appui sur |o| ou |O| q : autorise le formatage des commentaires avec |gq| w : espace en fin de ligne = le paragraphe continue ligne suivante a : formatage automatique des paragraphes à chaque modification n : reconnaissance des listes numérotées pour l'indentation (option 'formatlistpat') 2 : utilise l'indentation de la 2ème ligne pour la suite du paragraphe v b : mode de compatibilité Vi, plus restrictif l : ne coupe pas une ligne qui dépassait 'textwidth' avant l'insertion m M B : gestion des caractères multi-octets 1 : si possible, ne coupe pas une ligne après un mot d'une lettre 'formatprg' 'fp' Programme pour formater avec gq 'formatexpr' 'fex' Expression pour formater avec gq 'formatlistpat' 'flp' {s} Utilisé pour la reconnaissance des en-têtes de liste durant le formatage automatique, lié au drapeau "n" de l'option 'formatoptions' 'binary' 'bin' Fichier binaire, modifie en cascade d'autres options vim -b ou :e ++bin au lancement de Vim ou à l'ouverture d'un fichier 'fileformats' 'ffs' {s,..} Formats à essayer (dans l'ordre) pour déterminer le format d'un fichier, les formats possibles sont unix (), dos () et mac () 'viminfo' 'vi' {s,..} Définis ce que le fichier est susceptible de mémoriser |viminfo-file| 'insertmode' 'im' Reste en mode insertion, |i_CTRL-O| pour exécuter une commande et revenir au mode insertion, |i_CTRL-L| pour exécuter plusieurs commandes 'breakat' 'brk' {s} Caractères auxquels passer à la ligne à l'écran, si les options 'wrap' et 'linebreak' sont activées 'showbreak' 'sbr' {s} Chaîne à afficher devant les lignes coupées à l'écran, si l'option 'wrap' est activée 'modeline' 'ml' Prends en compte la ligne de définitions des options (la ligne modeline) pouvant se trouver au début ou à la fin des fichiers texte |modeline| 'modelines' 'mls' {n} Nombre de ligne à examiner pour la modeline 'path' 'pa' {s,..} Répertoires où faire des recherches (commandes :find, gf, ...), * remplace n'importe quel nom de fichier (dans même répertoire), ** étend la recherche à toute l'arborescence 'key' {s} Clé d'encryption, recommandé uniquement pour effacer la clé |encryption| 'display' 'dy' {s,..} Règle certains aspects de l'affichage lastline : affiche une ligne tronquée au lieu de @ si dépassement uhex : affiche le code des caractères non imprimables 'showmatch' 'sm' Fais brièvement clignoter le curseur sur la parenthèse correspondante, émet un bip s'il n'y a pas de correspondance (aussi pour { } et [ ]) 'matchtime' 'mat' {n} Durée du clignotement à effectuer si l'option 'showmatch' est activée 'matchpairs' 'mps' {s,..} Paires de caractères qui vont ensemble telles que (), [], etc. 'virtualedit' 've' {s,..} Positionnement du curseur en-dehors du texte block : mode visual block insert : mode insertion all : tous les modes onemore : autorise le curseur un caractère après la fin de ligne 'wildmenu' 'wmnu' Affiche un menu lors de la complétion en ligne de commande Ex 'wildchar' 'wc' {n} Caractère pour démarrer la complétion en ligne de commande 'wildcharm' 'wcm' {n} Idem 'wildchar' mais pour les macros 'wildignore' 'wig' {s,..} Liste de recherche de fichiers à ignorer pour la complétion de noms de fichiers en ligne de commande 'wildmode' 'wim' {s,..} Type de complétion en ligne de commandes lorsque 'wildchar' est pressé 'wildoptions' 'wop' {s,..} Options de la complétion en ligne de commande 'suffixes' 'su' {s,..} Extensions de fichiers à ignorer lors de la complétion en ligne de commandes |suffixes| 'suffixesadd' 'sua' {s,..} Suffixes à ajouter si ouverture automatique (|gf|, |[_CTRL-I|, etc) 'whichwrap' 'ww' {s,..} Mouvements du curseur susceptibles de passer à la ligne précédente ou à la ligne suivante 'joinspaces' 'js' Ajoute 2 espaces au lieu d'un avec la commande J, après ., ? et ! 'nrformats' 'nf' {s,..} Format des nombres pour |CTRL-A| et |CTRL-X| alpha : incrémente des caractères uniques (a -> b -> c -> ...) octal : les nombres qui commencent par 0 sont en octal hdex : les nombres qui commencent par 0x ou 0X sont hexadécimaux 'ruler' 'ru' Affiche la position du curseur en bas à droite 'rulerformat' 'ruf' {s} Définis le format du ruler (option 'ruler') 'wrapscan' 'ws' Recherche : retourner au début du fichier après avoir atteint la fin (ou vice-versa) 'isident' 'isi' {s,..} Caractères autorisés dans les identificateurs (\i dans les recherches) |pattern| 'iskeyword' 'isk' {s,..} Caractères autorisés dans les mots-clés (\k dans les recherches) |pattern| 'isprint' 'isp' {s,..} Caractères imprimables (\p dans les recherches) |pattern| 'isfname' 'isf' {s,..} Caractères autorisés dans les noms de fichier (\f dans les recherches) |pattern| 'sessionoptions' 'ssop' {s,..} Éléments enregistrés par |:mksession|, peut contenir blank, buffers, curdir, folds, globals, help, localoptions, options, resize, sesdir, slash, tabpages, unix, winpos, winsize 'viewoptions' 'vop' {s,..} Éléments enregistrés par |:mkview|, peut contenir cursor, folds, options, slash, unix 'foldcolumn' 'fdc' {n} Réserve n colonnes à gauche de l'écran pour afficher les folds 'foldenable' 'fen' Ouvre tous les fold si off (voir |zi|) 'foldopen' 'fdo' {s,..} Déclenchement de l'ouverture des folds all : toutes options block : (, {, [(, [{, etc. hor : mouvements horizontaux insert : toute commande en mode insertion jump : déplacements de grande portée (|gg|, |G|, etc.) mark : déplacements sur un mark percent : déplacement avec |%| quickfix : commandes liées à quickfix (|:make|, |:cnext|, etc.) search : recherche tag : saut vers un tag undo : undo (|u|) et redo (|CTRL-R|) 'foldclose' 'fcl' {s} Si défini "all", ouvre et ferme automatiquement les folds lors des déplacements 'foldlevel' 'fdl' {n} Niveau d'affichage des fold, voir |zm||zr||zM||zR| 'foldlevelstart' 'fdls' {n} Définis 'foldlevel' par défaut à l'entrée dans un buffer 'foldminlines' 'fml' {n} Nombre minimum de lignes d'un fold à l'écran pour l'afficher fermé 'foldnestmax' 'fdn' {n} Limite supérieure du niveau d'imbrications des folds, ne peut dépasser 20 dans tous les cas 'foldmethod' 'fdm' {s} Méthode de fold, être manual, indent, expr, marker, syntax ou diff |fold-methods| 'foldignore' 'fdi' {s} Avec la méthode "indent", les lignes commençant par l'un des caractères de 'foldignore' prennent leur niveau de fold des lignes qui les entourent 'foldexpr' 'fde' {s} Expression lorsque foldmethod vaut "expr" 'foldmarker' 'fmr' {s,..} Balises pour la méthode de fold "marker" (option 'commentstring' et |zf|) |fold-marker| 'foldtext' 'fdt' Pour afficher les fold fermés |fold-foldtext| 'shortmess' 'shm' {s..} Ensemble d'options d'un caractère pour régler les messages affichés, m pour '+' au lieu de 'Modified,' r pour '[RO]' au lieu de '[readonly]', s pour ne rien afficher si la recherche poursuit en début de fichier (ou à la fin selon le sens de la recherche) (seulement si l'option 'wrapscan' est activée), I pour ne pas afficher le message d'introduction (:intro), etc. |hit-enter| 'terse' Ajoute ou enlève l'option s de 'shortmess', ce qui rend silencieux le mode 'wrapscan' 'shortname' 'sn' Les noms de fichiers suivent les limites MS-DOS, ils font 8 caractères et une extension de 3 caractères 'magic' Dans les recherches les caractères ., *, ^ et $ sont magiques sans \ avant |pattern| 'tildeop' 'top' La commande ~ se comporte comme un opérateur (suivi d'un mouvement) 'timeout' 'to' Prends en compte un timeout pour le code clavier suivant ou le mapping 'timeoutlen' 'tm' {n} Délai pour l'option 'timeout' 'ttimeout' Si 'notimeout', timeout sur les codes clavier 'ttimeoutlen' 'ttm' {n} Délai pour l'option 'ttimeout' 'history' 'hi' {n} Taille de l'historique des commandes et recherches 'directory' 'dir' {s,..} Emplacements où mettre le fichier de swap, . = répertoire du fichier 'remap' Autorise les commandes |:map| à fonctionner récursivement. Il est recommandé de laisser cette option activée, utiliser |:noremap| pour contourner sur un mapping en particulier 'report' Limite au-delà laquelle le nombre de lignes modifiées est rapporté après exécution d'une commande 'maxmapdepth' 'mmd' {n} Niveau maximum de transformation des mappings, évite de se bloquer en cas de mapping récursif à l'infini, lié à l'option 'remap' 'showcmd' 'sc' Affiche les commandes (mode normal) en cours de saisie 'cmdheight' 'ch' {n} Nombre de lignes de la ligne de commande 'complete' 'cpt' {s..} Types de mot pris en compte à la complétion . : buffer en cours w : les buffers des autres fenêtres b : buffers chargés u : buffers non chargés U : buffers non listés k : prend en compte les fichiers de l'option 'dictionary' kspell : prend en compte le dictionnaire en cours k{dict} : le nom du dictionnaire (peut apparaître plusieurs fois) s : les fichiers de l'option 'thesaurus' s{tsr} : le nom du thesaurus (peut apparaître plusieurs fois) i : fichiers inclus d : fichiers inclus, et prend en compte les macros ] ou t : tag 'completefunc' 'cfu' {s} Fonction pour la complétion utilisateur appelée par |i_CTRL-X_CTRL-U| |complete-functions| 'completeopt' 'cot' {s,...} Complétion en mode insertion, peut contenir menu, menuone, longest et preview |ins-completion| 'showfulltag' 'sft' Affiche un tag avec ce qui suit, ce qui permet durant l'auto-complétion d'afficher les arguments d'une fonction |ins-completion| 'omnifunc' 'ofu' {s} Nom de la fonction pour l'omni-complétion, invoquée par |i_CTRL-X_CTRL-O| |complete-functions| 'infercase' 'inf' Applique la casse du mot saisi aux mots proposés durant la complétion automatique |ins-completion| 'pumheight' 'ph' {n} Taille maximale du menu de complétion |ins-completion-menu| 'confirm' 'cf' Demande confirmation si perte des changements, sinon une erreur est produite |confirm()| 'tags' 'tag' {s,..} Fichiers tags à prendre en compte. Le fonctionnement des tags est réglé avec 'tagbsearch', 'taglength', 'tagrelative' et 'tagstack', l'option 'tags' fonctionne avec ** pour inclure toute une arborescence |tags-option| 'tagbsearch' 'tbs' Recherche binaire dans les tag 'taglength' 'tl' {n} Nombre de caractères significatifs d'un tag 'tagrelative' 'tr' Les noms de fichiers d'un fichier de tag sont relatifs au répertoire du fichier de tag 'tagstack' 'tgst' Si off, ne modifie pas la pile des tags 'winaltkeys' 'wak' Indique au GUI que faire avec Alt+Touche, vaut menu, yes ou no |:simalt| 'tabline' 'tal' {s} Format de l'affichage des onglets|setting-tabline| 'showtabline' 'stal' {n} Détermine quand afficher la ligne des onglets, vaut 0 (jamais), 1 (si >= 2) ou 2 (toujours) 'tabpagemax' 'tpm' {n} Nombre maximal d'onglets ouverts avec |-p| 'guipty' Utilise le pseudo-terminal pour effectuer des entrées/sorties avec le shell, sinon utilise des pipes 'guitablabel' 'gtl' {s} Affichage des onglets du GUI |setting-guitablabel| 'guitabtooltip' 'gtt' {s} Tooltip à affiche sur un onglet du GUI 'guicursor' 'gcr' {s,..} Options pour régler l'apparence du curseur 'guifont' 'gfn' {s,..} Liste de fontes à essayer jusqu'à en trouver qui fonctionne, peut être suivi de :h{hauteur} pour régler la taille, > :set guifont=* < ouvre une boîte de dialogue de sélection de fonte, > :echo getfontname() < affiche la police actuelle |getfontname()| 'guifontwide' 'gfw' {s} Police à utiliser pour les caractères doubles 'linespace' 'lsp' {n} Pixels entre les lignes 'guiheadroom' 'ghr' {n} Pixels soustraits de la hauteur de l'écran lorsque gvim s'y adapte 'guioptions' 'go' {s..} Réglages du GUI, liste non exhaustive : c : pour afficher les choix simples à la console au lieu de GUI l : ascenseur à gauche m : pour afficher la barre de menu t : menus 'tear off' (séparables) T : affiche la barre d'outils b : ascenseur en bas h : la taille de la scrollbar inférieure dépend de la ligne du curseur 'langmenu' 'lm' {s} Langue des menus, au même format que |:language| 'toolbar' 'tb' {s,..} Réglages de la barre d'outils, peut contenir icons, text, horiz, tooltips |gui-toolbar| 'toolbariconsize' 'tbis' {s} Peut valoir tiny, small, medium ou large 'selectmode' 'slm' {s,..} Indique quand démarrer le mode sélection au lieu de Visual, les options sont mouse, key et cmd, cette option est définie par |:behave| |select-mode| 'mouse' {s..} Modes autorisés pour la gestion de la souris, les options sont n, v, i, c, h (fichiers d'aide), a (tous les modes) et r (en réponse aux prompt) |gui-mouse||mouse-using| 'mousefocus' 'mousef' La fenêtre ayant le focus suit la souris 'mousehide' 'mh' Cache la souris pendant l'édition 'mousemodel' 'mousem' {s} Comportement des boutons de la souris, surtout le bouton droit |popup-menu| extend : le bouton droit étend la sélection (comme un xterm) popup : le bouton droit affiche un menu, shift + bouton gauche étend la sélection, comme sous windows popup_setpos : comme popup + le bouton droit déplace le curseur sur le caractère sous la souris 'mouseshape' 'mouses' {s,..} Apparence du pointeur selon mode et position 'mousetime' 'mouset' {n} Milli-secondes entre deux clics pour double-clic 'more' Pause d'une page à l'autre lors des affichages 'bufhidden' 'bh' {s} Indique ce qui se passe quand le buffer n'est plus affiché |special-buffers| : suit l'option 'hidden' unload : décharge le buffer delete : supprime le buffer, comme avec |:bdelete| wipe : détruits le buffer, comme avec |:bwipeout| 'hidden' 'hid' Décharge (off) ou cache (on) un buffer abandonné |abandon| 'buflisted' 'bl' Buffer affiché dans la liste des buffers (:ls) 'switchbuf' 'swb' {s,..} Comportement pour passer d'un buffer à un autre, les options sont useopen, usetab, split, newtab 'browsedir' 'bsdir' {s} Quel répertoire pour le file browser : last : dernier répertoire où un fichier a été ouvert ou enregistré buffer : répertoire du buffer correspondant current : répertoire courant {path} : définis le répertoire où démarrer 'verbose' 'vbs' Rends Vim plus bavard |:verbose| 'verbosefile' 'vfile' {s} Si non vide, tous les messages sont écrits dans le fichier défini par cette option 'viewdir' 'vdir' {s} Répertoire des fichiers créés par |:mkview| 'previewheight' 'pvh' {n} Hauteur de la fenêtre de pré-visualisation |:ptag| 'previewwindow' 'pvw' Activé si fenêtre de pré-visualisation 'helpheight' 'hh' Hauteur minimale de la fenêtre d'aide, lorsqu'elle est ouverte avec la commande |:help|, 0 = ignorer 'helpfile' 'hf' {s} Emplacement du fichier d'aide principal 'helplang' 'hlg' {s,..} Langue de l'aide |help-translated| 'runtimepath' 'rtp' {s,..} Répertoires où chercher les scripts Vim 'gdefault' 'gd' Substitutions globales par défaut (/g implicite) 'lines' {n} Nombre de lignes affichées dans la fenêtre Vim 'columns' 'co' {n} Idem ci-dessus, pour les colonnes gvim |-geometry| permet de régler ces paramètres au démarrage 'eventignore' 'ei' {s,..} Liste d'événements à ignorer avec les auto-commandes |:autocmd| 'statusline' 'stl' {s} Définis la ligne de description du buffer, affiché par défaut lorsque plusieurs fenêtres sont visibles à l'écran, fonctionne avec les groupes de surbrillance User1, User2, etc., lié à 'laststatus' |status-line| Exemple : > :set statusline=%1*%m%*\ %<%F\ %h%r%=\ %y\ %-14.(%l,%c%V%)\ %P :hi User1 cterm=inverse,bold ctermfg=red gui=inverse,bold guifg=red 'laststatus' 'ls' {n} Définis quand afficher la ligne de statut, vaut 0 (jamais), 1 (si >= 2) ou 2 (toujours) |status-line| 'include' 'inc' {s} Identifie les fichiers inclus d'un fichier source 'includeexpr' 'inex' {s} Transforme la partie dans l'instruction include (détecté avec 'include') en nom de fichier 'define' 'def' {s} Identifie les macros |include-search| 'comments' 'com' {s,..} Identifie les commentaires, utilisé par le formatage automatique |format-comments| 'commentstring' 'cms' {s} Utilisé par les fold "marker" |fold-marker| 'printoptions' 'popt' {s,..} Options d'impression |popt-option| 'printdevice' 'pdev' {s} Périphérique pour l'impression |pdev-option| 'printexpr' 'pexpr' {s} Expression pour lancer l'impression |pexpr-option| 'printfont' 'pfn' {s} Police de caractères à l'impression |pfn-option| 'printheader' 'pheader' {s} Format d'en-tête à l'impression |pheader-option| 'updatetime' 'ut' {n} Temps en milli-secondes au bout duquel le fichier de swap est écrit sur le disque, également utilisé par l'événement |CursorHold| 'updatecount' 'uc' {n} Écris le fichier de swap après n caractères saisis 'swapfile' 'swf' Utilisation d'un fichier de swap (= option -n au lancement de Vim) 'swapsync' 'sws' {s} Synchronise sur disque après écriture dans le swap 'fsync' 'fs' Appelle fsync() après écriture dans un fichier 'cindent' 'cin' Auto-indentation pour le langage C, légèrement meilleur que 'smartindent' |C-indenting| 'indentexpr' 'inde' {s} Expression pour l'indentation, invoqué par l'opérateur |=| entre autres |indent-expression| 'indentkeys' 'indk' {s} Touches qui provoquent l'indentation en mode insertion |indentkeys-format| 'equalprg' 'ep' {s} Programme externe pour indenter 'cinoptions' 'cino' {s,..} Indentation en C |cinoptions-values| 'cinwords' 'cinw' {s,..} Mots provoquant une indentation supplémentaire 'cinkeys' 'cink' {s,..} Touches provoquant l'indentation durant l'insertion |cinkeys-format| 'errorbells' 'eb' Utilise l'alarme sonore 'visualbell' 'vb' Alarme visuelle 'equalalways' 'ea' À l'ajout d'une fenêtre, dimensionne les fenêtres avec une taille égale 'eadirection' 'ead' {s} Indique quand 'equalalways' est pris en compte, peut valoir ver, hor ou both 'splitbelow' 'sb' Positionne une nouvelle fenêtre en-dessous de l'existante |:split| 'splitright' 'spr' Positionne une nouvelle fenêtre à droite de l'existante |:vsplit| 'keywordprg' 'kp' {s} Programme invoqué par la commande K 'operatorfunc' 'opfunc' {s} Lié à |g@| pour mapper un opérateur|:map-operator| 'charconvert' 'ccv' {s} Expression pour la conversion d'un encodage de caractères à un autre, uniquement si iconv() absent 'loadplugins' 'lpl' Exécute les fichiers de plugin au démarrage de Vim 'background' 'bg' {s} dark ou light, Vim s'en sert pour adapter les couleurs de l'affichage 'syntax' 'syn' {s} Active la surbrillance syntaxique en prenant comme nom la valeur de cette option 'autowrite' 'aw' Écris automatiquement le fichier avant exécution d'une commande qui passe à un autre fichier telle que |:next|, |:tag|, |:!|, etc. 'autowriteall' 'awa' Écris automatiquement un fichier modifié dans tous les cas, y compris |:edit|, |:enew|, |:quit|, etc. 'writebackup' 'wb' Effectue une sauvegarde avant d'écrire le fichier, et efface-la ensuite à moins que l'option 'backup' ne soit activée |backup-table| 'backupcopy' 'bkc' {s} Indique le comportement de Vim lorsqu'une sauvegarde du fichier à écrire est conservée, peut valoire yes, no ou auto 'backupdir' 'bdir' {s,..} Répertoires où enregistrer les fichiers de sauvegarde, le premier où cela est possible est utilisé, . signifie "répertoire du fichier édité" 'backupext' 'bex' {s} Chaîne ajoutée au fichier pour produire le nom du fichier de sauvegarde 'backupskip' 'bsk' {s} Expression de recherche qui désactive la sauvegarde des fichiers qu'elle détecte 'patchmode' 'pm' {s} Conserve une version originale du fichier édité, en le sauvegardant la première fois dans le nom du fichier suivi du contenu de 'patchmode', cette sauvegarde n'est jamais écrasée 'winheight' 'wh' {n} Hauteur minimale de la fenêtre 'winminheight' 'wmh' {n} Hauteur minimale absolue de toute fenêtre 'winfixheight' 'wfh' Fige la hauteur de la fenêtre 'winwidth' 'wiw' {n} Largeur minimale de la fenêtre 'winminwidth' 'wmw' {n} Largeur minimale absolue de toute fenêtre 'winfixwidth' 'wfw' Fige la largeur de la fenêtre 'cmdwinheight' 'cwh' {n} Hauteur de la fenêtre des commandes 'diff' Ajoute la fenêtre à la comparaison en cours |vimdiff| 'diffexpr' 'dex' {s} Expression pour comparer 2 fichiers|diff-diffexpr| 'diffopt' 'dip' {s,..} Réglages de diff, peut contenir filler, context:{n}, icase, iwhite, horizontal, vertical, foldcolumn:{n} 'digraph' 'dg' Autorise la saisie de digraphs 'patchexpr' 'pex' {s} Expression pour l'application d'un patch, utilisée par |:diffpatch| |diff-patchexpr| 'shell' 'sh' {s} Nom du shell exécuté par ! 'shellcmdflag' 'shcf' {s} Options à passer au shell 'shellpipe' 'sp' {s} Chaîne à passer à la commande |:make|, %s est le nom du fichier de sortie temporaire (ajouté automatiquement si non spécifié) 'shellredir' 'srr' {s} Chaîne à utiliser pour rediriger la sortie des commandes shell dans un fichier 'shellquote' 'shq' {s} Caractères à échapper dans les commandes shell 'shellxquote' 'sxq' {s} Idem 'shellquote' mais redirection incluse 'shellslash' 'ssl' Utilise des / pour étendre des noms de fichier 'shelltemp' 'stmp' Utilise un fichier temporaire avec les commandes shell, sinon utilise un pipe 'maxmem' 'mm' Mémoire maximale à utiliser pour un buffer 'maxmemtot' 'mmt' Mémoire maximale à utiliser pour tous les buffers 'grepprg' 'gp' {s} Commande exécutée par |:grep| 'grepformat' 'gfm' {s} Pour reconnaître la sortie de grep 'makeprg' 'mp' {s} Programme de la commande |:make| 'errorformat' 'efm' {s} Pour parser le fichier d'erreurs |errorformat| 'makeef' 'mef' {s} Nom du fichier d'erreur pour |:make| et |:grep| 'errorfile' 'ef' {s} Fichier d'erreur pour le mode quickfix 'ambiwidth' 'ambw' {s} Comment traiter les signes spéciaux, peut valoir single (1 caractère) ou double (2 caractères) 'autochdir' 'acd' Définis le répertoire courant comme celui du fichier chaque fois qu'un fichier est ouvert ou à chaque changement de buffer, entre autres 'autoread' 'ar' Lis automatiquement un fichier s'il a été modifié en-dehors de Vim |timestamp| 'bomb' Écris un Byte-Order-Mark en enregistrant le fichier 'cdpath' 'cd' {s,..} Répertoires pour les commandes |:cd| et |:lcd| 'cedit' {c} Touche en mode ligne de commande pour afficher la fenêtre des commandes 'cursorcolumn' 'cuc' Mets en surbrillance la colonne du curseur 'cursorline' 'cul' Mets en surbrillance la ligne du curseur 'endofline' 'eol' Utilisé pour mémoriser la présence de à la fin d'un fichier binaire 'esckeys' 'ek' Reconnais les touches échappées en mode insertion 'exrc' 'ex' Autorise .vimrc, .exrc et .gvimrc dans le répertoire courant 'keymodel' 'km' {s,..} Change la manière dont la sélection est gérée avec Shift-Touches_de_direction, permet à Vim de se comporter comme un éditeur classique, les options possibles sont startsel et stopsel 'maxcombine' 'mco' {n} Nombre maximal de caractères qui peuvent se combiner à l'affichage (uniquement avec UTF-8) 'maxfuncdepth' 'mfd' {n} Récursivité maximale d'appel de fonctions 'paste' Améliore la gestion du copier/collé dans un terminal 'quoteescape' 'qe' {s} Caractères utilisés pour échapper les guillemets dans les chaînes de caractères 'secure' Mode sécurisé, interdis certaines fonctionnalités 'selection' 'sel' {s} Réglages de la sélection Visual et Select 'term' {s} Nom du terminal 'title' Définis le titre de la fenêtre avec 'titlestring' 'titlelen' {n} Pourcentage de 'columns' pour afficher le titre 'titlestring' {s} Format du titre de la fenêtre 'ttybuiltin' 'tbi' Si on, prend en compte d'abord les termcap internes 'ttyfast' 'tf' Indique une connexion rapide au terminal, permet d'optimiser l'affichage avec certains xterm 'warn' Avertis si une commande shell est exécutée alors que le fichier n'a pas été enregistré 'window' 'wi' Hauteur en lignes de l'écran 'buftype' 'bt' {s} Type de buffer |special-buffers| : buffer normal nofile : buffer non rattaché à un fichier (scratch) nowrite : le buffer ne peut pas être écrit acwrite : le buffer sera toujours écrit avec les autocmd BufWriteCmd quickfix : contient une liste d'erreurs help : buffer d'aide 'modified' 'mod' Le buffer est dans l'état modifié 'modifiable' 'ma' Indique si le buffer peut être modifié 'write' Autorise à écrire le fichier 'writeany' 'wa' Autorise les écrasements de fichier sans ajout de ! 'readonly' 'ro' Mode lecture-seule, nécessite ! pour passer outre 'writedelay' 'wd' {n} Délai en micro-secondes pour envoyer des caractères à l'écran, pour le débugage uniquement 'casemap' 'cmp' {s,..} Options pour la gestion de la casse selon l'encodage, peut contenir internal et keepascii 'clipboard' 'cb' {s,..} Options pour la gestion du presse-papier unnamed : utilise le presse-papier par défaut, à la place de unnamed autoselect : Vim gère lui-même la sélection, lié au "a" de 'guioptions' autoselectml : comme autoselect mais uniquement pour la sélection modeless, lié au "A" de 'guioptions' exclude:{rec} : exclut les terminaux ('term') détectés par cette recherche 'fillchars' 'fcs' {s,..} Caractères de remplissage dans différents cas stl:c statusline de la fenêtre actuelle stlnc:c statusline des autres fenêtres vert:c séparateur vertical fold:c pour 'foldtext' diff:c lignes effacées en mode 'diff' 'highlight' 'hl' {s,..} Réglage de l'affichage de différents type de texte standard de Vim 'lazyredraw' 'lz' Ne rafraîchis pas l'écran dans certains cas, utiliser la commande |:redraw| pour mettre à jour 'opendevice' 'odev' Autorise lecture et écriture avec des périphériques 'restorescreen' 'rs' À la sortie de Vim, rétablis l'affichage 'undolevels' 'ul' {n} Nombre maximal d'undo ============================================================================== }}} 3. Commandes Ex *rp-ex-commands* *rpex* {{{ - Saisie dans la ligne de commande Ex (|cmdline-editing|) La complétion en ligne de commandes Ex est réglée par les options 'wildmenu', 'wildoptions', 'wildmode', 'wildignore', 'wildcharm', 'wildchar' : Démarre le mode commande |Q| Démarre le mode commande permanent :{cmd}! En général, force la commande même si perte des changements |c_CTRL-D| Affiche les complétions |c_CTRL-L| Complète avec l'occurrence la plus longue |c_CTRL-R| Colle un registre |c_CTRL-R_CTRL-R| Colle un registre littéralement (pas de mapping) |c_CTRL-R_CTRL-F| Colle le fichier sous le curseur |c_CTRL-R_CTRL-P| Idem ci-dessus mais prend en compte l'option 'path' |c_CTRL-R_CTRL-W| Colle le mot sous le curseur |c_CTRL-R_CTRL-A| Colle le MOT sous le curseur |c_CTRL-V||c_CTRL-Q| Insère un caractère littéralement (cf |i_CTRL-V|) Sous Win32 |c_CTRL-V| colle du texte, dans ce cas utiliser |c_CTRL-Q| |c_CTRL-U| Efface du curseur jusqu'au début de la ligne |c_CTRL-W| Efface le mot à gauche du curseur |c_CTRL-K| Saisir un digraph (cf |i_CTRL-K|) |c_CTRL-P||c_CTRL-N| Complétion de noms de fichiers : suivant ou précédent |c_CTRL-L| Complète autant que possible, tant qu'il n'y a pas d'ambiguïté |c_CTRL-A| Prends tous les choix possibles de la complétion |c_||c_| Mot précédent ou mot suivant |CTRL-Y| Copie dans le presse-papier la sélection modeless |CTRL-F| Ouvre la fenêtre de commandes (réglé par 'cedit') $ Termine la recherche (exemple : *.c$) |suffixes| :..|c_||c_| Affiche l'historique commençant par .. |:range|.. Exécute la commande qui suit pour un range du buffer. Parmi les commandes qui peuvent prendre un range, certaines prennent le fichier entier par défaut (:w), d'autres la ligne du curseur (:s), dans ce fichier d'aide je ne le précise pas. Un range est constitué d'une ou deux composantes (séparées par ',') parmi les possibilités ci-dessous : {n} : la ligne n, la première ligne est numéro 1 . : la ligne courante $ : la dernière ligne % : synonyme de 1,$ : tout le fichier 'm ou 'M : la marque m ou M /...[/] : la prochaine ligne où la recherche réussit ?...[?] : idem ci-dessus mais vers le haut \/ : reproduis la dernière recherche vers le bas \? : reproduis la dernière recherche vers le haut \& : recherche la dernière substitution effectuée +[{n}] : décale vers le bas de n, 1 par défaut -[{n}] : décale vers le haut de n, 1 par défaut Ainsi .+3 est la troisième en-dessous de la ligne courante, $-5 est la 5ème ligne avant la fin du fichier {n}:.. Permet d'exécuter la commande n fois vers le bas Est traduit en :.,.+n-1 {mode Visual}: '<,'> appliquent la commande à la zone Visual en cours % # Nom du fichier en cours (%) ou alternatif (#) |_%||_#| #n #||| Le mot ou MOT se trouvant sous le curseur || Le nom de fichier ou de répertoire sous le curseur |||| Nom de fichier avec les autocmd || Buffer en cours pour les autocmd || Nom du fichier de script lorsqu'exécuté avec :source Modificateurs de noms de fichier (à utiliser avec % par exemple) |filename-modifiers| :p Mets le nom de fichier en nom absolu |::p| :8 Mets le nom de fichier au format DOS 8.3 |::8| :~ Écris le fichier relativement au répertoire perso |::~| :. Écris le fichier relativement au répertoire courant |::.| :h Chemin du nom de fichier |::h| :r Nom de fichier sans l'extension (peut être répété) |::r| :e Extension du fichier (peut être répété) |::e| :s?rec?rpl? Cherche rec et remplace par rpl, une fois |::s| :gs?rec?rpl? Idem ci-dessus, mais remplace toutes les occurrences |::gs| < Enlève l'extension du nom de fichier |:_%<| - Commandes Ex Il n'y a pas de fichier d'aide unique sur les commandes, commencer par cette aide |editing.txt|. |:write| [range] Enregistre le fichier en cours |:w| |:wall| [range] Même chose mais pour tous les buffers |:wall| |:write|{f} [range] Écris dans f sans changer le nom de fichier en cours |:write|>> {f} [range] Ajoute à f |:update| [range] Écris le fichier, seulement s'il a été modifié |:up| |:quit||:qall| Quitte le buffer en cours ou tous les buffers |:q||:qa| |:saveas|{f} Change le nom du fichier et enregistre-le |:sav| |:file| {f} Définis ou affiche le nom de fichier en cours |:f| |:0file| Efface le nom de fichier |:0f| |:new|[..] Crée une nouvelle fenêtre (peut être suivi d'une commande) |:edit|.. Édite un fichier |:e| |:edit!| Recharge le fichier en cours (tel que sur le disque) (:e!) |:enew| Démarre un nouveau fichier dans la fenêtre courante |:ene| |:xit| Comme |:wq| mais écris uniquement si changements |:x| |:xall| Écris les buffers modifiés et quitte |:xa| |:/||:?| Démarre une recherche en avant ou en arrière :!{cmd} [range] Filtre le range dans la commande |:!cmd| |:substitute| [range] Substitution, /&cegiInp#lr |count-items||s_flags||:s| :write !{cmd} [range] Exécute {cmd} en lui envoyant le fichier comme entrée |:w_c| |:read|{f} Insère le contenu du fichier |:r| |:read|!{cmd} Insère le résultat (la sortie) de la commande |:r!| :0read Insère au tout début du fichier (:$read insère à la fin) :[range]!xxd [range] Édite le fichier en hexadécimal |using-xxd| Option -r pour reconvertir en texte |:sort|[..] [range] Tri, ! (:sort!) inverse le tri, peut prendre comme options i : ignore la casse, n : tri numérique, u : supprime les lignes identiques |:sor| |:hardcopy|[..] [range] Imprime |:ha| |:nohlsearch| Stoppe la surbrillance de la recherche |:noh| |:syntax| Affiche les définitions en cours, utilisé avec l'option on ou off, permet d'activer ou de désactiver la surbrillance syntaxique |:syn-on||syn-enable||:sy| |:syntax|clear Efface les définitions de surbrillance syntaxique |:syncbind| Aligne les fenêtres si l'option 'scrollbind' est active |:split|[{cmd}] Coupe la fenêtre en deux et exécute la commande |:sp| |:vertical| Idem ci-dessus, mais couper verticalement |:vert| |:only| Ferme les autres fenêtres |:on| |:tabnew| Crée un nouvel onglet |:tabmove| Déplace un onglet |:tabm| |:tabonly| Ferme tous les onglets sauf l'onglet courant |:tabo| |:tab|{cmd} Si {cmd} crée une fenêtre, ouvre des onglets à la place :tab ball Ouvre un onglet pour chaque buffer de la liste :tab help Ouvre l'écran d'aide dans un nouvel onglet - Commandes Ex avancées |:sall| Ouvre un fenêtre pour chaque fichier donné en argument |:ball| Ouvre une fenêtre pour chaque buffer dans la liste |:hide|{cmd} Cache le buffer en cours et exécute {cmd} |:hid| |:hide|e {f} Cache le buffer en cours et édite fichier |:unhide| Ouvre une fenêtre pour chaque fichier chargé |:unh| |:badd| Ajoute un buffer |:bad| |:bdelete| Supprime un buffer |:bd| |:bnext||:bprevious| Passe au buffer suivant ou précédent |:bn||:bp| |:wnext||:wprevious| Enregistre le fichier et passe au suivant ou au précédent |:wn||:wp| |:bfirst||:blast| Premier et dernier buffer |:bf||:bl| |:buffer|{n} Passe au n-ième buffer |:b| |:sbuffer|{n} Idem mais splitte la fenêtre horizontalement |:sb| |:argdo|{cmd} Exécute une commande pour chaque argument ([!]) |:windo|{cmd} Exécute une commande pour chaque fenêtre ([!]) |:bufdo|{cmd} Exécute une commande pour chaque buffer ([!]) |:tabdo|{cmd} Exécute une commande pour chaque onglet ([!]) |:tabd| |:confirm|{cmd} Demande confirmation {cmd} détruit des changements |:conf| |:browse|{cmd} Fournit une fenêtre de dialogue GUI pour la commande si cette commande prend un nom de fichier |:bro| |:browse|e . Pour choisir un fichier à éditer |:browse|w Pour choisir le nom de fichier où enregistrer |:pwd| Affiche le répertoire courant |:pw| |:cd||:lcd|[-] Change le répertoire courant (- pour retourner au précédent), |:lcd| pour définition locale du répertoire courant |:X| Chiffre (penser à l'option 'noswapfile') |encryption| vim|-x||-n| Chiffre (|-n| = pas de fichier de swap) |:buffers| Liste les buffers ([!]) |:files||:ls| |:registers| Affiche le contenu des registres (") |:reg||:di| |:tabs| Affiche les onglets |:args|[..] Affiche ou redéfinis les arguments de lancement de Vi |:ar| |:history|[..] Historique des commandes, peut prendre une option : : (ou rien) : commandes / : recherches = : expression @ : input line > : debug all : tout ce qui précède en ajoutant first[,last] : limite l'affichage aux entrées correspondantes |:his| |:marks|[..] Affiche les marques |:let| Affiche les variables |:jumps| Affiche les sauts |:ju| |:messages| Affiche les messages précédemment affichés |:scriptnames| Affiche les scripts sourcés par Vim |:scrip| |:digraphs|[..] Affiche ou crée des digraphs (cf. |i_CTRL-K|) |:dig| |:autocmd|[..] Affiche ou définis les commandes automatiques |:au| |:command|[..] Affiche les commandes (permet d'en créer) |:com| |:oldfiles| Affiche les fichiers connus par viminfo |:ol| |:filetype| Affiche le statut de la détection automatique de type de fichier, exécuté avec on/off : active ou désactive |:filet| :filetype detect Détecte à nouveau le type de fichier |filetype-detect| :filetype plugin indent [on/off] Active ou désactive le chargement de fichiers de plugin ou d'indentation |filetype-plugin-on||filetype-indent-on| |:intro| Affiche la fenêtre d'introduction |:language|[..] Affiche la langue en cours ou la définis |:lan| Liste des langues possibles sur Ubuntu 8.10 : /usr/lib/locale Peut prendre les options messages (mes) pour les messages, ctype (cty) pour la langue de l'encodage ou time (tim) pour la fonction strftime() |:options| Ouvre la fenêtre des options |:opt| |:recover| Récupère un fichier du swap |:rec| |:redir|[..] Redirige les messages vers un fichier (> ou >>), vers un registre (@{reg}> ou @{reg}>>) ou vers une variable (=> {var} ou =>> {var}), :redir END pour arrêter |:redi| |:shell| Lance un shell, retour à Vim à l'arrêt du shell |:sh| |:swapname| Affiche le nom du fichier d'échange |:sw| |:undolist| Affiche la liste undo |:undol| |:undo| [{n}] Annule le dernier changement (ou va au branchement n) |:u| |:redo| Rétablis le dernier changement annulé |:red| |:mksession|{f} Enregistre la session courante sous forme d'un script Vim (f est de type .vim), réglé par 'sessionoptions' |:mks| |:source|{f} Exécute le script f, permet incidemment de ramener une session enregistrée par :mksession dans f |:so| gvim -S {f} Démarre gvim en rétablissant la session enregistrée dans f |:mkview|[..] Enregistre la vue (idem session mais pour la fenêtre), peut prendre en option un numéro de vue dans {1..9} et un nom de fichier. Réglé par les options 'viewoptions' et 'viewdir'. La vue peut être ramenée par |:so| |:mkvie| |:loadview|[..] Charge la vue, peut prendre en option le numéro de vue |:lo| |:wviminfo| Écris le fichier viminfo, nom de fichier en option |:wv| |:rviminfo| Lis le fichier viminfo, nom de fichier en option |:rv| |:find|{f} Recherche le fichier (dans 'path') et l'ouvre |:fin| |:center||:right||:left| [range] [{n}] Centre, aligne le texte à droite ou à gauche, sur n colonnes (left : marge de n)|:ce||:ri||:le| |:retab|{n} Recalcule les tabulations avec un nouvelle valeur de tabstop Avec ! : Remplace tous les espaces par des |:ret| |:checkpath| Vérifie que les fichiers inclus sont trouvés |:che| |:copen| Ouvre la fenêtre d'erreurs |:cope| |:match|nom /rec/ Définis une expression régulière pour le groupe nom Fonctionne aussi avec 2match et 3match |:mat| |:highlight|.. Gestion de la coloration des groupes syntaxiques |:hi| |:mkexrc|[{f}] Écris les options et les mappings en cours dans le fichier f (.exrc par défaut) |:mk| |:mkvimrc|[{f}] Idem ci-dessus mais le fichier par défaut est .vimrc |:mkv| :set termcap Affiche les codes termcap du terminal |termcap-options| |:verbose|{cmd} Exécute cmd en mode verbose |:verb| |:spellinfo| Affiche les dictionnaires chargés |:spelli| |:mkspell|{dict} Compile dict (.spl) en fonction de la liste source |:mksp| |:spellgood|{mot} Marque le mot comme bien orthographié, comme la commande zg (! : comme zG) |:spe| |:spellwrong|{mot} Marque le mot comme mal orthographié, comme la commande zw (! : comme zW) |:spellw| |:spellundo|{mot} Annule le dernier z[gw] (! : z[GW]) |:spellu| |:spellrepall| Remplace dans la fenêtre en cours toutes les occurrences du mot pour lequel la commande z= a été exécutée |:spellr| |:winpos|[X Y] Affiche ou définis la position de la fenêtre |:winp| |:gui| Lance l'interface graphique |:gu| |:earlier|{d} Retourne en arrière, durée est suivie de s, m ou h |:ea| |:earlier|{n} Retourne en arrière de n coups |:later|.. Idem :earlier ci-dessus |:lat| |:TOhtml| [range] Convertis le fichier en HTML - cette commande est définie dans un plugin standard de Vim |:redraw| Redessine l'écran (comme |CTRL-L|), ! : efface d'abord |:redr| |:sleep|{n} Dors pendant n secondes |:sl| |:fixdel| Corrige la gestion de la touche Suppression (Delete) |:fix| |:silent|{cmd} Exécute la commande silencieusement |:sil| |:menu|.. Gestion des menus |creating-menus| |:colorscheme|.. Charge un thème de couleur, les thèmes sont des scripts .vim enregistrés dans $VIMRUNTIME/colors |:colo| |:diffsplit|{f} Ouvre f en mode comparaison (diff) avec le fichier actuel |:diffthis| Ajoute le fichier actuel aux diff en cours |:diffoff| Stoppe la comparaison pour la fenêtre actuelle |:diffupdate| Mets à jour les différences |:diffpatch|{f} Comme |:diffsplit| mais applique un fichier de patch au fichier en cours et démarre la comparaison |:behave|{m} Comportement de la souris, m est soit mswin, soit xterm |:be| |:version| Affiche la version et les options de compilation de Vim |:ve| |:checktime| Vérifie si un fichier édité a été modifié en dehors du contrôle de Vim, lié à 'autoread' |:checkt| - Commandes Ex pour les tags Ci-dessous, {tag} peut être un nom ou bien une expression régulière, commençant par / |:tags| Liste les tags de la pile :{n}tag Descends de n dans la pile des tags, 1 par défaut |:tag| {tag} Va à tag |:ta| |:stag|{tag} Splitte la fenêtre et va à tag (aussi |CTRL-W_]|) |:ptag|{tag} Idem ci-dessus mais en pré-visualisation |:pta| |:tnext| Prochaine occurrence si un tag est trouvé plusieurs fois, peut prendre un compte |:tn| |:tprevious| Idem ci-dessus pour l'occurrence précédente |:tp| |:tfirst| Idem ci-dessus pour la première occurrence |:tf| |:tlast| Idem ci-dessus pour la dernière occurrence |:tl| |:tselect|{tag} Affiche les occurrences de tag |:ts| |:ptselect|{tag} Idem |:tselect| mais en pré-visualisation |:pts| |:pclose| Ferme la fenêtre de pré-visualisation |:pc| - Commandes quickfix |:cnext||:cprevious| Passe à l'erreur suivante ou précédente |:cn||:cp| |:cc|{n} Affiche l'erreur numéro n |:clist| Affiche la liste des erreurs, ! : affiche tout |:cl| |:cwindow| Ouvre la fenêtre quickfix des erreurs |:cw| |:vimgrep|.. Effectue une recherche et place les résultats dans une fenêtre quickfix, exemple > :vimgrep /seb/ ~/**/*.txt |:colder||:cnewer| Parcours les listes d'erreur |:col||:cnew| - Commandes Ex pour la programmation |:pedit|{f} Édite le fichier f dans la fenêtre de pré-visualisation |:ped| |:psearch|/rec/ Cherche l'expression dans le fichier en cours et les fichiers include, et ouvre le fichier trouvé en pré-visualisation (utilise l'option 'path') |:ps| |:checkpath| Vérifie si les fichiers inclus sont trouvés (! : liste tous les fichiers) |:che| |:make| Construis le programme |:mak| |:compiler|{s} Définis le compilateur à utiliser, ! : global |:comp| |:cfile| - Commandes Ex pour les abréviations Ci-dessous, les préfixes i ou c sont optionnels, ils permettent de ne définir une abréviation que pour le mode insertion (i) ou pour le mode ligne de commande (c) :[ic]abbreviate Liste les abréviations ou définis une abréviation |:ab| :[ic]unabbreviate Supprime une abréviation |:una| :[ic]noreabbrev Le texte de remplacement n'est pas mappé |:norea| :[ic]abclear Supprime les abréviations |:abc| Les options et peuvent être placées juste après la commande, voir map ci-dessous sur leur sens. - Commandes Ex pour les map Ci-dessous, les différentes commandes map peuvent être préfixées avec n (normal), v (visuel), x (visuel mais pas sélection), s (sélection mais pas visuel), o (en attente opérateur), i (insertion), c (commande) et l (lié à la langue en cours.) v est l'union de x et s L'absence de préfixe (et pas de !) correspond à l'union de n, v et o s = sélection à la souris l implique i et c ! est l'union de i et c et exclut le mode normal (est utilisé sans préfixe) :[{p}]map [..] Définis un map clavier, en précédent éventuellement map de n, v, x, s, o, i, c ou l, ou en ajoutant un ! à map, exemple :imap, :vmap, :map!, :map, ... |:map| :[{p}]noremap [..] Idem ci-dessus mais la cible (la partie {rhs}) n'est pas elle-même mappée |:no| :[{p}]unmap [..] Supprime le map |:unm| :[{p}]mapclear Supprime tous les map |:mapc| Les codes clavier sont décrits ici |key-notation|pour la notation usuelle et ici |term.txt| pour la notation termcap, de type . Les touches Contrôle, Shift et Alt sont notées C-, S- et M- (ou A- synonyme de M-). Ainsi signifie CTRL-F2, signifie ALT-W, etc. Les commandes peuvent prendre des options écrites entre <>. Les options doivent être placées après le nom de la commande, plusieurs options peuvent se suivre. Options possibles : Map local au buffer Ne pas afficher les commandes Autoriser la notation <> même si < est absent de 'cpoptions' Produis une erreur si le map existe déjà Exécuter du code (appel de fonction) dans {rhs}