Trucs et astuces Vim

Avant propos

Je vous recommande toujours la lecture de: learning the vi Editor, aux éditions O'Reilly, qui m'a donné l'idée de ce récapitulatif.

Voici un livre que je n'ai pas lu, mais qui est disponible gratuitement, consacré à vim.

Pour les plus pressés, il y a ces trucs et astuces qui sont bien sympa, et aussi: ceci.

Vous pouvez bien sur m'envoyer vos patch, si vous pensez qu'il y a matière à rajouter ou modifier.
Ce document ne ce veut pas du tout exhaustif.

Couleurs plus claires sur un fond noir

:set bg=dark Ãgallement, :help syntax.txt

Produire du code html coloré, et correct

Il faut utiliser 2html.vim, sauf que, par défaut, il utilise l'infame tag font, et c'est mal(tm). C'est pourquoi, il faut réaliser cette manip:
  1. Charger votre fichier à convertir: toto.c
  2. Executer la commande:
    :let html_use_css = 1
    Ceci permet de passer dans un html correct, sans tag font
  3. Générer le fichier comme d'habitude:
    :runtime! syntax/2html.vim

Comment installer la coloration syntaxique pour les fichiers .edc

Je m'intéresse depuis peu à la nouvelle version d'enlightenment et j'ai voulu installer le fichier edc.vim, afin d'avoir la coloration syntaxique pour ce types de fichiers dans vim.
Voici comment j'ai procédé:

  1. Créer les répertoires intéressants:
    $ mkdir -p ~/.vim/syntax
  2. Créer le fichier ~/.vim/filetype.vim
  3. Copier le fichier edc.vim:
    $ cp edc.vim ~/.vim/syntax/edc.vim

Commandes intéressantes sous vim

Commandes vim
Commande Description
:split coupe la fenêtre verticallement
:on[ly] fenêtre courante seule
:hls :nohls highlighte ou pas les recherches
:set is nois recherche incrémentale ou pas
/chien \| chat cherche un chien ou un chat
\s espace (ou tabulation)
\S tout sauf espace
\r retour à la ligne
\{n,m} de n à m fois
shift ctrl <- -> (flêche gauche droite) en mode commande (:), avance ou recule par mots
^b ^e aller en début ou fin de ligne
esc ou ^c arrêter la saisie sans la valider
^d voir les complétions possibles
^l expande juste sur ce qui est possible
^n ^p circule dans la table des complétions
^a expande tous les noms
^n ^p cherche à compléter depuis le texte (cherche en avant/arrière)
^x ^k complète suivant un dictionnaire
^x ^[ complète avec les fichiers inclus
^x ^i complète avec le fichier de tag
^x ^f complète suivant les noms de fichiers
^x ^l complète sur des lignes complètes
:set nowrap permet le scrolling horizontal
zl zh scrolle vers la droite/gauche
V mode visuel par ligne entière
^v mode visuel en rectangle
ab ou ib étend la sélection aux blocs de parenthèses ()
aB ou iB étend la sélection aux blocs d'accolades {}
O change de côté pour la sélection début/fin
r remplace toutes les lettres. Si blanc, intéressant pour effacer avec le mode rectangle par exemple
:mak compilation
:enext va à l'erreur suivante
:set fileformat permet de changer le format de fichier de sauvegarde (DOS/Unix)
% marche pour commentaires et macros
[( [{ [# [* ou [/ recherche (,{,# ou commentaires mal fermés en arrière (] pour l'avant)
* # cherche mot sous le curseur # recherche inverse
^r ^w insère le mot sous le curseur dans une recherche avec /
^i ^o circule dans les fichiers qu'on a accédé (sauvegarde la position). :jumps permet de voir la liste
^a ^x incrémente/décrémente un nombre
ge va à la fin du mot précédent

Date de dernière mise à jour: 04 septembre 2007 à 15:10,