GNU/Linux >> Tutoriels Linux >  >> Linux

Commandes Vim de base que chaque utilisateur Linux doit connaître [Aide-mémoire gratuit inclus]

Peu importe si vous êtes un administrateur système ou un développeur de logiciels, si vous travaillez dans le terminal Linux, vous serez confronté à la situation où vous devrez modifier des fichiers texte dans le terminal.

Lorsque vous êtes limité au terminal, vous devez utiliser l'un des éditeurs de ligne de commande comme Vim. La plupart d'entre nous sont habitués aux éditeurs graphiques et cela pose un problème car l'utilisation d'un éditeur de ligne de commande n'est pas la même que l'utilisation d'un éditeur de texte graphique comme Atom.

Il existe plusieurs éditeurs de texte en lignes de commande disponibles et vous êtes libre d'utiliser l'un d'entre eux. Vim est l'un des éditeurs de texte en ligne de commande les plus populaires et vous le trouverez installé sur n'importe quelle distribution Linux standard. C'est pourquoi apprendre les bases de Vim vous aidera beaucoup.

Maintenant, ce n'est pas un guide complet pour faire de vous un expert Vim. Il s'agit d'un guide Vim complet destiné à vous fournir suffisamment pour survivre à Vim dans le terminal Linux.

J'espère que vous avez installé Vim sur Ubuntu ou sur la distribution Linux que vous utilisez.

Commandes de base de Vim à connaître

Si vous avez déjà travaillé avec Vim, peut-être souhaitez-vous simplement vous rafraîchir la mémoire en consultant cet aide-mémoire Vim :

Commande Vim Description
je Entrer en mode insertion
Échap Entrer en mode commande
x ou Suppr Supprimer un caractère
X La suppression du caractère est en mode retour arrière
u Annuler les modifications
Ctrl + r Rétablir les modifications
aa Copier une ligne
jj Supprimer une ligne
p Coller le contenu du tampon
/ Recherchez puis parcourez les correspondances avec n et N
[[ ou gg Aller au début d'un fichier
]] ou G Aller à la fin d'un fichier
 :%s/foo/bar/gci Rechercher et remplacer toutes les occurrences par confirmation
Échap + :w Enregistrer les modifications
Échap + :wq ou Échap + ZZ Enregistrer et quitter Vim
Échap + :q ! Forcer Vim à quitter Vim en annulant toutes les modifications

Vous pouvez également télécharger les commandes ci-dessus au format PDF. Téléchargez-le, imprimez-le et gardez-le sur votre bureau pour une référence rapide.

Feuille de triche des commandes Vim de base Manuel Linuxvim-commands-cheatsheet-linux-handbook.pdf86 KB

Ne vous inquiétez pas, je vais également vous expliquer en détail ces commandes de base de Vim.

Comprendre les modes Vim

Avant de commencer, familiarisons-nous avec les modes Vim. Vim a trois modes :

  • Mode commande :lorsque vous démarrez Vim, vous êtes placé en mode commande. Dans ce mode, vous pouvez vous déplacer sur l'écran, supprimer du texte et copier du texte.
  • Mode insertion :vous ne pouvez pas écrire de texte en mode commande. Pour écrire du texte (ou disons insérer du texte) dans un fichier, il existe un mode d'insertion dédié. Lorsque vous voulez écrire quelque chose sur un fichier, vous devez passer en mode insertion.
  • Mode visuel :un peu comme le mode commande, mais ici, vous pouvez utiliser les touches fléchées pour sélectionner du texte sur plusieurs lignes (au lieu de travailler directement sur des mots et des lignes en fonction de la position du curseur).

Une fois que vous connaissez les modes Vim, voyons quelques commandes Vim de base à des fins diverses.

Entrée en mode insertion dans Vim

Rappelez-vous toujours que je représente le mode d'insertion. Vous appuyez sur la touche "i" pour entrer en mode d'insertion .

Lorsque vous entrez dans le mode d'insertion, vous verrez - INSERT - en bas de l'écran de l'éditeur/du terminal. Cela indique que vous êtes en mode insertion.

Mais ce n'est pas le seul moyen d'entrer dans le mode d'insertion. Il existe plusieurs autres commandes pour entrer en mode insertion dans Vim. La position du curseur est importante lors de l'entrée en mode insertion.

  • i - Le nouveau texte apparaîtra avant le curseur
  • a - Un nouveau texte apparaîtra après le curseur
  • I - Le nouveau texte apparaîtra au début de la ligne actuelle
  • A - Le texte suivant apparaîtra à la fin de la ligne actuelle
  • o – Une nouvelle ligne est créée après la ligne courante
  • O - Une nouvelle ligne est créée avant la ligne actuelle

Revenir au mode commande dans Vim

Vous démarrez en mode commande, vous passez en mode insertion. Si vous voulez revenir au mode de commande, appuyez sur la touche Esc (échap) .

Lorsque vous avez saisi votre texte, je vous conseille d'appuyer sur la touche Échap pour passer en mode commande. De cette façon, vous n'entrerez pas de nouveau texte sans le savoir, involontairement. Conseil :Si vous ne vous souvenez de rien d'autre, n'oubliez pas d'appuyer sur "i" pour le mode d'insertion et sur la touche Échap pour le mode de commande. Cela devrait suffire.

Se déplacer dans Vim

Lorsque vous êtes dans Vim, vous ne pouvez pas utiliser votre souris pour cliquer sur un point de l'écran comme les éditeurs de texte ou de code normaux. C'est pourquoi vous devez connaître les commandes de déplacement vers une certaine ligne, un mot ou une position dans Vim.

Les puristes de Vi/Vim suggéreront d'utiliser les touches h, j, k et l pour se déplacer respectivement vers le haut, la gauche, la droite et le bas lorsque vous êtes en mode commande. Bien que cela s'applique aux éditeurs Vi et Vim, je ne préfère pas utiliser ces combinaisons de touches étranges.

Trivia:Lorsque l'éditeur Vi a été développé pour la première fois, la plupart des claviers n'avaient pas de touches fléchées. C'est pourquoi les touches h,j,k,l ont été utilisées pour le mouvement.

J'utilise les touches fléchées pour me déplacer dans Vim. Cela fonctionne bien même lorsque vous êtes en mode insertion dans Vim. C'est la façon standard de se déplacer à laquelle la plupart des nouvelles générations sont habituées.

Si vous débutez avec Linux ou Vim, vous pouvez opter pour les touches fléchées. Aucun mal n'a été fait.

Cependant, si vous voulez être un peu plus compétent avec Vim, vous voudrez peut-être mémoriser quelques raccourcis Vim pour vous déplacer facilement sur l'écran. Certaines de mes commandes de mouvement Vim préférées sont :

  • H - Déplacer vers le haut de l'écran. Notez que cela ne signifie pas toujours passer à la première ligne du fichier. C'est juste pour se déplacer vers le haut de l'écran visible.
  • L - Déplacez-vous vers le bas de l'écran. Notez que cela ne signifie pas toujours passer à la dernière ligne du fichier. C'est juste pour se déplacer vers le bas de l'écran visible.
  • M – Se déplacer vers le milieu de l'écran.
  • [[ – Passe à la première ligne du fichier. Vous pouvez également utiliser ue gg ici.
  • ]] – Accéder à la dernière ligne du fichier. Vous pouvez également utiliser G ici.
  • nG – Aller à la ligne numéro n. Notez que vous ne verrez rien à l'écran lors de la saisie des numéros de ligne.

Astuce :Vous pouvez afficher les numéros de ligne dans Vim en passant en mode commande et en tapant :set number

Comme vous pouvez le constater, avec ces commandes de déplacement supplémentaires, il vous sera plus facile de vous déplacer dans un gros fichier texte. Vous pouvez apprendre plus de commandes de mouvement comme { et } pour se déplacer d'un paragraphe à l'autre, w pour se déplacer mot par mot, etc.

Vous pouvez également utiliser des "modificateurs de répétition" comme nG que vous venez de voir avec la plupart des commandes de Vim. Par exemple, si vous utilisez 5w, cela déplacera 5 mots. Si vous utilisez 6H, il passera à la 6ème ligne à partir du haut de l'écran.

Les modificateurs de répétition fonctionnent également avec "i" et c'est là que beaucoup de gens font des erreurs. Si vous avez accidentellement appuyé sur un chiffre comme 7 avant d'appuyer sur "i" pour passer en mode insertion, le texte que vous tapez sera ajouté 7 fois. Vous ne le verrez pas immédiatement à l'écran tant que vous n'aurez pas commencé à enregistrer le document.

Alors, que faire lorsque vous commettez une erreur stupide comme celle-ci ? Annuler.

Annuler vos modifications dans Vim

Si vous avez fait une erreur dans Vim, vous n'avez pas à vivre avec pour toujours. J'ai aussi vu des gens quitter l'éditeur sans sauvegarder dans de tels cas, ce qui est un peu ridicule.

Vim vous permet d'annuler et de rétablir vos modifications. Vous pouvez également refaire vos modifications. Tout est applicable dans la même session, bien sûr. Une fois que vous avez enregistré vos modifications, vous ne pouvez pas les annuler.

Pour annuler une modification, passez en mode commande et appuyez sur la touche "u". Vous pouvez appuyer plusieurs fois dessus pour plusieurs actions d'annulation.

Si vous souhaitez refaire une modification, appuyez sur la combinaison de touches Ctrl+r en mode commande. Vous pouvez appuyer dessus plusieurs fois pour plusieurs actions de rétablissement.

Supprimer dans Vim

Outre l'annulation de vos modifications, vous pouvez également supprimer du texte du fichier. Dans Vim, vous pouvez toujours utiliser la touche Suppr pour supprimer un caractère, mais il existe quelques combinaisons de touches pour mieux gérer la suppression dans Vim.

  • x - Supprime le caractère à la position actuelle du curseur comme une touche de suppression
  • X - Supprime le caractère avant la position actuelle du curseur comme une touche de retour arrière. Notez que la touche de retour arrière elle-même ne fonctionne pas dans Vim.
  • dw – Supprimer le mot. En fait, il supprime de la position actuelle du curseur jusqu'à la fin du mot actuel plus l'espace blanc après.
  • dd - Supprimer la ligne actuelle.
  • d$ - Supprimer de la position actuelle du curseur jusqu'à la fin de la ligne.
  • dG - Supprimer de la position actuelle du curseur jusqu'à la fin du fichier.

Remarque :il n'y a pas de commandes de coupe dans Vim car lorsque vous supprimez quelque chose, le texte supprimé est placé dans le tampon. En d'autres termes, les commandes de suppression sont les commandes de coupe.

Copier-Coller dans Vim

Vous vous demandez peut-être comment copier coller dans Vim. Il s'agit d'une préoccupation légitime car vous ne saisirez pas toujours les textes.

Il existe deux types de copier-coller dans Vim. Un qui s'occupe du tampon et un qui s'occupe du texte "externe".

Lorsque vous êtes en mode commande, vous pouvez soit utiliser les raccourcis de votre terminal Linux pour copier le texte, soit les combinaisons de touches suivantes pour copier du texte :

  • yw – Copier le mot. En fait, il copie de la position actuelle du curseur jusqu'à la fin du mot actuel plus l'espace blanc après.
  • yy – Copie la ligne actuelle.
  • y$ - Copie de la position actuelle du curseur jusqu'à la fin de la ligne.
  • yG - Copier de la position actuelle du curseur jusqu'à la fin du fichier.

Supposons que vous utilisiez l'une des commandes de suppression décrites ci-dessus. Le texte supprimé est placé dans le tampon. Vous pouvez coller ce texte depuis le tampon à l'aide de ces deux commandes de collage :

  • p - Colle le contenu du tampon avant la position du curseur
  • P - Coller le contenu du tampon après la position du curseur

Notez que si vous avez supprimé une ligne entière, le contenu sera placé avant ou après la ligne actuelle avec les commandes de collage mentionnées ci-dessus.

Les commandes de collage ne fonctionnent qu'avec le tampon Vim. Qu'en est-il du texte que vous avez copié à partir d'un autre fichier ? Dans ces cas, vous pouvez utiliser les combinaisons de touches standard copier-coller de votre terminal Linux.

Dans Ubuntu et le terminal par défaut de nombreuses autres distributions Linux, Ctrl+Maj+C est utilisé pour copier et Ctrl+Maj+V est utilisé pour coller. Dans certains autres terminaux, la sélection d'un texte le copie et vous pouvez le coller à l'aide du clic droit.

Quel que soit le moyen de copier-coller dans votre terminal Linux, vous pouvez également l'utiliser dans Vim. Assurez-vous simplement que vous êtes en mode insertion pour ce type de copier-coller.

Rechercher du texte dans Vim

Trouver un texte particulier est une fonction importante d'un éditeur de texte. Vous pouvez rechercher du texte dans le fichier dans Vim en utilisant "/".

En mode commande, utilisez / puis tapez votre texte de recherche et appuyez sur Entrée. Vous verrez ce que vous tapez en bas à gauche de l'écran.

Il effectuera une recherche vers l'avant pour le terme recherché à partir de la position de votre curseur. Vous pouvez également utiliser '?', puis taper votre terme de recherche et appuyer sur Entrée pour effectuer une recherche en arrière. Notez que la recherche est sensible à la casse.

S'il y a plus d'une correspondance pour votre texte de recherche, vous pouvez passer à la position suivante en appuyant sur la touche n. Si vous souhaitez revenir au match précédent, appuyez sur N. Fondamentalement, avec n et N, vous pouvez parcourir tous les matchs. Astuce :vous pouvez utiliser l'option \c pour exécuter une recherche insensible à la casse dans Vim. Exemple :/\cMa_Recherche

Rechercher et remplacer dans Vim

Vim fournit une commande de substitution (:s) pour rechercher et remplacer du texte. Il s'appuie fortement sur les expressions régulières (regex) pour la recherche et le remplacement.

Vous pouvez l'utiliser de la manière suivante :

:%s/foo/bar/g

La commande ci-dessus remplacera tous les "foo" par "bar" dans l'ensemble du fichier. Le 'g' à la fin est responsable de l'extension de la fonction de recherche et de remplacement sur toutes les correspondances. Sinon, seule la première correspondance est remplacée.

:s/foo/bar/g

La commande ':s' effectuera exactement la même fonction que ci-dessus mais uniquement dans la ligne actuelle au lieu du fichier entier.

Par défaut, la recherche est sensible à la casse. Pour le rendre insensible à la casse, vous pouvez utiliser le drapeau "i" avec g.

:%s/foo/bar/gci

J'ai ajouté un drapeau "c" supplémentaire ici. En fait, vous pourriez ne pas vous sentir à l'aise avec l'idée que l'intégralité de vos textes correspondants soit remplacé dans l'ensemble du document en quelques secondes. C'est là que le drapeau "c" aide beaucoup. Avec cet indicateur de confirmation, Vim vous demandera de confirmer si vous souhaitez effectuer un remplacement à chaque correspondance.

En mode confirmation, l'option suivante s'affiche :remplacer par UU (y/n/a/q/l/^E/^Y) ?

Laissez-moi vous expliquer les choix ici :

  • y - OUI, remplacez cette correspondance
  • n - NON, ne remplacez pas cette correspondance et passez à la suivante
  • a – Remplacer TOUTES les correspondances
  • q - QUITTER sans remplacer aucune correspondance
  • l - Remplacez cette correspondance et quittez comme si c'était la DERNIÈRE correspondance
  • ^E – Faites défiler l'écran vers le haut
  • ^Y – Faites défiler l'écran vers le bas

Astuce :Si vous ne vous souvenez pas de tout le reste, n'oubliez pas : %s/foo/bar/gci essaiera de remplacer toutes les correspondances du fichier entier par votre confirmation.

Enregistrer et quitter Vim

Vous venez d'apprendre les bases des commandes Vim. Il est temps de sauvegarder votre travail et de quitter Vim. Pour enregistrer ou quitter Vim, vous devez d'abord entrer en mode commande en appuyant sur la touche Échap. Ensuite, vous pouvez utiliser les options suivantes :

  •  : w – Enregistrez les modifications, mais ne quittez pas
  • :wq – Enregistrer et quitter
  •  : q – Quitter simplement (si vous avez des modifications non enregistrées, vous verrez cet avertissement : E37 :Aucune écriture depuis la dernière modification (ajoutez ! pour remplacer))
  •  :q ! – Forcer à quitter (il supprimera toutes les modifications non enregistrées)

Télécharger la feuille de triche de la commande Vim au format PDF

Je peux comprendre que si vous êtes nouveau sur Vim, il peut être difficile de se souvenir de ce que vous venez d'apprendre. C'est pourquoi j'ai créé une liste de commandes vim de base et leur explication rapide.

Vous pouvez télécharger cette feuille de triche Vim au format PDF, l'imprimer et la conserver à votre bureau pour une référence rapide.

Télécharger la feuille de triche des commandes Vim de base

Aller plus loin avec Vim

Eh bien, vous venez d'apprendre toutes les bases de Vim dont vous avez besoin pour survivre à cet éditeur de texte terriblement génial. Avec autant de connaissances, vous pouvez lire du texte, rechercher du texte et effectuer quelques modifications de base dans Vim. Cela suffira à vous éviter la panique dès que l'idée d'utiliser un éditeur de texte de terminal comme Vim vous viendra.

Vous devriez mettre cette page en signet pour actualiser ce que vous avez appris sur Vim ici. Vous pouvez également utiliser la commande vimtutor. La plupart des distributions Linux ont la commande vimtutor installée. Si vous avez envie d'approfondir vos connaissances sur Vim ou de pratiquer les commandes Vim, lancez simplement vimtutor dans un terminal.

Si vous souhaitez faire passer vos compétences Vim au niveau supérieur, je vous recommande vivement la ressource Mastering Vim Quickly. Cela vaut l'investissement.

J'espère que ce guide vous a aidé à démarrer avec Vim. Si vous avez des questions ou des suggestions, veuillez laisser un commentaire.


Linux
  1. 10 commandes que tout utilisateur de Linux devrait connaître

  2. 3 hacks utiles que chaque utilisateur de Linux doit connaître

  3. 10 commandes Linux de base que vous devez connaître

  4. Aide-mémoire des commandes Linux

  5. Aide-mémoire des commandes Linux de base

25 commandes Linux de base qu'un débutant doit connaître

5 commandes Linux que chaque utilisateur Linux devrait connaître

13 raccourcis de terminal Linux que chaque utilisateur puissant de Linux doit connaître

Astuces pour les terminaux Linux que tous les passionnés de Linux doivent connaître !

Commandes nano de base (aide-mémoire)

Commandes vim de base (aide-mémoire)