:h[elp] <keyword> - Ouvrez l'aide pour <keyword> ( n'utilisez pas "<>" ):sav[eas] <file> - Enregistrer <file> comme:clo[se] - Fermer le volet de courant:ter[minal] - Ouvrez une fenêtre de terminal K - Page ouverte de l'homme pour le mot sous le curseur
Astuce : - Exécutez Vimtutor dans un terminal pour apprendre les premières commandes VIM.
h - Déplacer le curseur à gauche
j - Déplacer le curseur vers le bas
k - Déplacer le curseur vers le haut
l - Déplacer le curseur à droite
H - Déplacez-vous en haut de l'écran
M - Déplacez-vous au milieu de l'écran
L - Déplacez-vous au bas de l'écran
w - sautez en avant jusqu'au début d'un mot
W - sautez vers l'avant au début d'un mot (les mots peuvent contenir la ponctuation)
e - sautez en avant à la fin d'un mot
E - sautez vers l'avant à la fin d'un mot (les mots peuvent contenir la ponctuation)
b - sautez en arrière au début d'un mot
B - sauter en arrière au début d'un mot (les mots peuvent contenir la ponctuation)
% - Déplacez-vous vers le caractère correspondant (paires prises en charge par défaut: '()', '{}', '[]' - Utiliser: H Matchpairs dans VIM pour plus d'informations)
0 - Sautez au début de la ligne
^ - Sautez au premier caractère non foncé de la ligne
$ - sautez à la fin de la ligne
; - Répétez le mouvement F, T, F ou T
, - Répétez le mouvement précédent F, T, F ou T, en arrière
} - Passez au paragraphe suivant (ou fonction / bloc, lors de l'édition de code)
{ - Passez au paragraphe précédent (ou fonction / bloc, lors de l'édition de code)
g_ - sautez au dernier caractère non foncé de la lignegg - Accédez à la première ligne du documentG - allez sur la dernière ligne du document5gg ou 5G - allez à la ligne 5gd - Passez à la déclaration localegD - Déplacement vers la déclaration mondialefx - Passez à la prochaine occurrence de caractère xtx - Sautez avant la prochaine occurrence de caractère xFx - Sautez à l'occasion précédente du caractère xTx - sautez après l'occasion précédente du caractère xzz - curseur central à l'écrangh - Déplacez le curseur vers la ligne de l'éditeur Peviousgj - Déplacez le curseur vers la ligne de l'éditeur suivantg0 - sautez au début de la ligne de l'éditeurg^ - Sautez au premier personnage non foncé dans la ligne de l'éditeurg$ - Sautez à la fin de la ligne de l'éditeur Ctrl + e - Déplacer l'écran en une ligne (sans curseur en mouvement)
Ctrl + y - Déplacez l'écran d'une ligne (sans curseur en mouvement)
Ctrl + b - reculer d'un plein écran
Ctrl + f - avancer un plein écran
Ctrl + d - avancer 1/2 un écran
Ctrl + u - Remplacez 1/2 un écran
Astuce : - Préfixe une commande de mouvement du curseur avec un numéro pour le répéter. Par exemple, 4J se déplace sur 4 lignes.
Ctrl + h - Supprimer le caractère avant le curseur pendant le mode d'insertionCtrl + w - Supprimer le mot avant le curseur pendant le mode d'insertionCtrl + j - commencer une nouvelle ligne pendant le mode d'insertionCtrl + t - UNET (Déplacez à droite) Ligne One Shiftwidth pendant le mode d'insertionCtrl + d - DE-INDENT (Déplacer à gauche) Ligne One Shiftwidth pendant le mode d'insertionCtrl + n - INSERT (AUTO-COMPLET) Match suivant avant le curseur pendant le mode d'insertionCtrl + p - INSERT (AUTO-COMPLET) Match précédent avant le curseur pendant le mode d'insertionCtrl + rx - Insérez le contenu du registre xCtrl + ws - fenêtre diviséeCtrl + wv - fenêtre divisée verticalementCtrl + ww - Windows SwitchCtrl + wq - quittez une fenêtreCtrl + wx - Échangez la fenêtre actuelle avec la suivanteCtrl + w= - Faire toutes les fenêtres de hauteur et de largeur égalesCtrl + wh - Déplacer le curseur vers la fenêtre gauche (division verticale)Ctrl + wl - Déplacez le curseur vers la fenêtre de droite (fractionnement vertical)Ctrl + wj - Déplacez le curseur vers la fenêtre ci-dessous (division horizontale)Ctrl + wk - Déplacez le curseur vers la fenêtre au-dessus (division horizontale) i - insérer devant le curseurI - insérer au début de la lignea - insérer (Ajouter) après le curseurA - Insérer (Ajouter) à la fin de la ligneo - Ajouter (ouvrir) une nouvelle ligne sous la ligne actuelleO - Ajouter (ouvrir) une nouvelle ligne au-dessus de la ligne actuelleea - INSERT (APPEND) à la fin du motEsc - Mode d'insertion de sortier - Remplacez un seul caractèreJ - Rejoignez la ligne ci-dessous à celle actuelle avec un espace entre les deuxgJ - Joinez la ligne ci-dessous à celle actuelle sans espace entre les deuxgwip - Paragraphe de refluxg~ - Casquer le boîtier en mouvementgu - Changez en minuscules en mouvementgU - passer en majuscules au mouvementcc - Changer (remplacer) la ligne entièreC - changer (remplacer) à la fin de la lignec$ - changement (remplacer) jusqu'à la fin de la ligneciw - changer (remplacer) tout entiercw - changer (remplacer) à la fin du mots - Supprimer le caractère et remplacer le texteS - Supprimer la ligne et remplacer le texte (identique à CC)xp - Transposer deux lettres (supprimer et coller)u - défaireU - restaurer (annuler) Dernière ligne modifiéeCtrl + r - refaire. - Répétez la dernière commande v - Démarrer le mode visuel, marquer les lignes, puis faire une commande (comme y-yank)V - Démarrer le mode visuel ligneuxgv - Démarrer le mode visuel, rappelant la sélection précédenteo - Déplacez-vous vers une autre extrémité de la zone marquéeCtrl + v - Démarrer le mode de bloc visuelO - Déplacez-vous dans un autre coin du blocaw - marque un motab - un bloc avec ()aB - un bloc avec {}at - un bloc avec <> balisesib - Bloc intérieur avec ()iB - Bloc intérieur avec {}it - bloc intérieur avec <> balisesEsc - mode visuel de sortie> - Shift Text Right< - Shift Text à gauchey - Yank (copie) Texte marquéd - Supprimer le texte marqué~ - Casquer le boîtieru - changer de texte marqué en minusculesU - changer de texte marqué en majuscules :reg[isters] - Afficher le contenu des registres
"xy` - Yank dans l'enregistrement x
"xp` - Coller le contenu du registre x
"+y` - Yank dans le registre du presse-papiers système
"+p` - Coller du registre du presse-papiers système
Astuce - Les registres sont stockés dans ~ / .viminfo et seront à nouveau chargés au prochain redémarrage de VIM.
0 - Dernière Yank" - Registre sans nom, dernière suppression ou yank% - nom de fichier actuel# - Nom de fichier alternatif* - Contenu du presse-papiers (X11 primaire)+ - Contenu du presse-papiers (Presse-papiers X11)/ - Dernier modèle de recherche: - Dernière ligne de commande. - Dernier texte inséré- - Dernière petite (moins d'une ligne) Supprimer= - Registre d'expression_ - Registre des trous noirs :marks* - Liste des marques
ma - définir la position actuelle pour Mark A
`a - sauter à la position de Mark A
y`a - Yank Text à la position de Mark A
`0 - Allez à la position où VIM était auparavant quit
`" - Aller au poste lors de la dernière modification de ce fichier
`. - Accédez à la position du dernier changement dans ce fichier
`` - Allez à la position avant le dernier saut
:ju[mps] - Liste des sauts
Ctrl + i - Allez en position plus récente dans la liste de sauts
Ctrl + o - Aller à la position plus ancienne dans la liste de sauts
:changes - Liste des modifications
g, - Accédez à une position plus récente dans la liste des changements
g; - Accédez à une position plus ancienne dans la liste des changements
Ctrl + ] - sautez sur la balise sous curseur
Astuce - Pour sauter à une marque, vous pouvez utiliser une backtic ( ` ) ou une apostrophe ('). L'utilisation d'une apostrophe saute au début (premier non noir) de la ligne tenant la marque.
qa - Enregistrer la macro aq - Arrêtez d'enregistrer la macro@a - Exécutez la macro a@@ - Rerun Last Run Macro yy - yank (copier) une ligne2yy - Yank (copie) 2 lignesyw - yank (copier) les caractères du mot de la position du curseur au début du mot suivanty$ - yank (copie) à la fin de la lignep - Mettez (collez) le presse-papiers après le curseurP - mettre (coller) avant le curseurdd - supprimer (couper) une ligne2dd - Supprimer (couper) 2 lignesdw - Supprimer (couper) les caractères du mot de la position du curseur au début du mot suivantD - Supprimer (coupé) à la fin de la ligned$ - Supprimer (couper) à la fin de la lignex - Supprimer (Cut) >> - Indent (se déplacer à droite) Ligne un shiftwidth<< - DE-indent (déplacer à gauche) ligne une largeur de bougie>% - indemne un bloc avec () ou {} (curseur sur l'agitation)>ib - Bloc intérieur à retrait avec ()>at - Implacer un bloc avec <> balises3== - Re-indentiment 3 lignes=% - Re-indentine un bloc avec () ou {} (curseur sur l'agitation)=iB - Bloc intérieur à réin-re-d'indemple avec {}gg=G - Re-in-tampon entier]p - collez et ajustez le retrait à la ligne actuelle :w - écrire (enregistrer) le fichier, mais ne sortez pas:w!sudo tee % - Écrivez le fichier actuel en utilisant Sudo:wq ou :x ou ZZ - écrivez (enregistrer) et quitter:q - Quitter (échoue s'il y a des modifications non sauvées):q! ou ZQ - Arrêtez et jetez les changements non sauvés:wqa - Écrivez (enregistrer) et arrêter sur tous les onglets /pattern - recherche de motif?pattern - Recherchez en arrière pour le motifvpattern - Modèle «très magique»: les caractères non alphanumériques sont interprétés comme des symboles regex spéciaux (aucune échappement nécessaire)n - Répétez la recherche dans le même sensN - Répétez la recherche dans la direction opposée:%s/old/new/g - Remplacez tous les anciens par un nouveau fichier à travers:%s/old/new/gc - Remplacez tous les anciens par un nouveau fichier avec des confirmations:noh[lsearch] - supprimer la mise en évidence des correspondances de recherche:vim[grep] /pattern/ {`{file}`}**** - Recherchez le modèle dans plusieurs fichiers ** eg :vim[grep] /foo/ **/*:cn[ext] - sautez au match suivant:cp[revious] - sautez au match précédent:cope[n] - Ouvrez une fenêtre contenant la liste des matchs:ccl[ose] - Fermez la fenêtre QuickFix :tabnew ou :tabnew {page.words.file} - ouvrez un fichier dans un nouvel ongletCtrl + wT - Déplacez la fenêtre partagée actuelle dans son propre ongletgt ou :tabn[ext] - passez à l'onglet suivantgT ou :tabp[revious] - passez à l'onglet précédent#gt - Passez au numéro de l'onglet #:tabm[ove] # - déplacer l'onglet actuel à la position # e (indexée à partir de 0):tabc[lose] - Fermez l'onglet actuel et toutes ses fenêtres:tabo[nly] - Fermez tous les onglets à l'exception de celui actuel:tabdo command - Exécutez la commande sur tous les onglets (par exemple :tabdo q - ferme tous les onglets ouverts) :e[dit] Fichier - Modifier un fichier dans un nouveau tampon:bn[ext] - aller au tampon suivant:bp[revious] - aller au tampon précédent:bd[elete] - Supprimer un tampon (fermez un fichier):b[uffer]# - Allez dans un tampon par index #:b[uffer] <file> - Accédez à un tampon par <file> (_Remove le "<>"):ls ou :buffers - Répertoriez tous les tampons ouverts:sp[lit] <file> - Ouvrez un <file> dans un nouveau tampon et fenêtre divisé:vs[plit] <file> - Ouvrez un <file> dans un nouveau tampon et une fenêtre divisée verticalement:vert[ical] ba[ll] - modifier tous les tampons sous forme de fenêtres verticales:tab ba[ll] - modifier tous les tampons en tant que onglets zf - Définissez manuellement un pli vers le mouvementzd - Supprimer le pli sous le curseurza - basculer le pli sous le curseurzo - pli ouvert sous le curseurzc - Fermez le pli sous le curseurzr - Réduisez (ouvert) tous les plis d'un même niveauzm - plier plus (fermer) tous les plis d'un même niveauzi - basculer les fonctionnalités de pliage]c - sauter pour commencer le prochain changement[c - Sautez pour commencer le changement précédentdo ou :diffg[et] - obtenir (obtenir) différence (à partir d'un autre tampon)dp ou :diffpu[t] - mettez la différence (vers un autre tampon):diffthis - Faites en sorte que la fenêtre actuelle partie de Diff:dif[fupdate] - Mettez à jour les différences:diffo[ff] - désactiver le mode Diff pour la fenêtre actuelle