GNU/Linux >> Tutoriels Linux >  >> Linux

Comment ajouter des signets dans l'éditeur Vim


Photo publiée avec l'aimable autorisation de secretlondon123

Ceci est un article invité écrit par SathiyaMoorthy

Cet article fait partie de la série Vi / Vim Tips and Tricks en cours. Mark est une fonctionnalité de mise en signet dans l'éditeur Vim, où vous pouvez mettre en signet une ligne particulière et y revenir plus tard rapidement. Si vous utilisez régulièrement l'éditeur Vim, cette technique simple d'utilisation de signets fera monter en flèche votre productivité.

Il existe deux types de signets dans Vim :local et global.

1. Signet local Vim

Dans un même fichier, lorsque vous souhaitez accéder à une position ou à une ligne particulière, vous pouvez utiliser le marquage local. Si le nom du signet est une lettre minuscule, il s'agit d'une marque locale.

Comment créer un signet dans Vi ?

Tapez m{nom-macro}. macro-name est un alphabet pour faire référence au nom du signet.


Si vous tapez "ma", cela créera un signet sur la ligne actuelle à l'emplacement actuel avec le nom "a". Dans l'exemple suivant, la saisie de ma a créé un signet à l'emplacement exact où le curseur est en surbrillance.

ma

Schéma 1 : Marquer l'emplacement actuel dans Vim en utilisant ma

Deux méthodes pour accéder à la ligne mise en signet à l'intérieur de Vi

Méthode 1 :`{nom-macro}

backtick suivi du nom de la macro. Déplacez-vous vers l'emplacement exact du signet. Cela sautera à l'emplacement exact du caractère dans la ligne à partir de laquelle il a été marqué plus tôt.


Par exemple, si vous tapez `a , vous serez redirigé vers le signet portant le nom « a ». c'est-à-dire qu'il vous amènera à l'endroit où le curseur est mis en surbrillance dans la figure 1 ci-dessus.

`a

Méthode 2 :'{nom-macro}

apostrophe suivie du nom de la macro. Aller au début de la ligne marquée.


Par exemple, si vous tapez ‘a , cela vous amènera au début de la ligne qui a le signet avec le nom « a ». Cela vous amènera au début de la ligne "CustomLog logs/access_log combiné" dans la figure 1 ci-dessus.

'a

2. Signet global Vim

Lorsque plusieurs fichiers sont ouverts, si vous souhaitez accéder à une position particulière dans l'un des fichiers ouverts, vous pouvez utiliser la fonction de marque globale de Vim. Si le nom du signet est une lettre majuscule, il s'agit d'un signet global.

La séquence d'étapes suivante explique comment utiliser le signet global lors de l'édition de plusieurs fichiers.

  1. Ouvrir plusieurs fichiers :# vim /etc/passwd /etc/group
  2. Lors de la modification du fichier /etc/passwd, accédez à une ligne spécifique et tapez mP pour créer un signet global appelé P
  3. Saisissez :n depuis le fichier /etc/passwd pour accéder au fichier /etc/group dans vim.
  4. Lors de la modification du fichier /etc/group, accédez à une ligne spécifique et tapez mG pour créer un signet global appelé G
  5. Tapez `P (back-tick suivi d'un P majuscule), ce qui vous amènera au signet dans /etc/passwd
  6. Depuis /etc/passwd, tapez `G (back-tick suivi d'un G majuscule), ce qui vous amènera au signet dans /etc/group.

3. Comment afficher tous les signets

Si vous avez créé plusieurs signets et que vous ne vous en souvenez pas, vous pouvez facilement obtenir une liste de tous les signets en tapant :marks comme indiqué ci-dessous.

:marks
mark line  col file/text
 a     15    9 ypserver 192.168.1.119
 b     11   18 domain THEGEEKSTUFF
 G     56    0 group
 P     45    0 passwd


Ceci indique que j'ai créé les signets suivants :

  • a - signet local avec le nom "a" à la ligne 15 et à la colonne 9. Cela donne également le texte de la ligne #15 . Cela provient du fichier actuellement ouvert, qui est yp.conf
  • b - signet local avec le nom "b" à la ligne 11 et à la colonne 18. Cela donne également le texte de la ligne #18. Cela provient du fichier actuellement ouvert, qui est yp.conf
  • G - signet global avec le nom "G" à la ligne 56 et la colonne 0 du fichier "groupe"
  • P - signet global avec le nom "P" à la ligne 45 et la colonne 0 du fichier "passwd".


Outre les signets ci-dessus, chaque fois que vous tapez :marks dans Vim, vous pouvez obtenir les lignes suivantes. Ces marques ‘ (guillemets simples), ” (guillemets doubles), [ , ], ^ et . (point) sont créés par vim par défaut et vous n'avez aucun contrôle dessus.

:marks
mark line  col file/text
 '      8   12 #^IUse  broadcast  on  the local net for domain NISDOMAIN
 "      1    0 # /etc/yp.conf - ypbind configuration file
 [     11    0 domain THEGEEKSTUFF
 ]     11   19 domain THEGEEKSTUFF
 ^     11   19 domain THEGEEKSTUFF
 .     11   18 domain THEGEEKSTUFF


Par exemple, la marque . (point) indique la dernière position où un changement a été effectué. Donc, vous pouvez toujours faire `. (back-tick suivi d'un point), qui vous amènera à la position où le dernier changement a été effectué.

4. Résumé rapide des commandes Vim Bookmark

  • ma – Crée un signet appelé a
  • `a – Aller à l'emplacement exact (ligne et colonne) du signet a
  • ‘a – Aller au début de la ligne du signet a
  • :marks – Afficher tous les signets
  • :marks a – Affiche les détails du signet portant le nom a
    `. – Sauter à l'emplacement exact (ligne et colonne) où la dernière modification a été effectuée
  • ‘. – Aller au début de la ligne où le dernier changement a été effectué

Lecture recommandée

Vim 101 Hacks, par Ramesh Natarajan . Je suis un accro de la ligne de commande. Donc, naturellement, je suis un grand fan des éditeurs Vi et Vim. Il y a plusieurs années, lorsque j'écrivais beaucoup de code C sur Linux, je lisais tous les trucs et astuces disponibles pour l'éditeur Vim. Sur la base de mon expérience dans l'éditeur Vim, j'ai écrit le livre électronique Vim 101 Hacks qui contient 101 exemples pratiques sur diverses fonctionnalités avancées de Vim qui vous rendront rapide et productif dans l'éditeur Vim. Même si vous utilisez les éditeurs Vi et Vim depuis plusieurs années et que vous n'avez pas lu ce livre, rendez-vous service et lisez ce livre. Vous serez étonné des capacités de l'éditeur Vim.


Linux
  1. Comment configurer Vim comme éditeur par défaut sous Linux

  2. Comment afficher les numéros de ligne dans vi/vim ?

  3. VIM :comment aller à la ligne exacte sur Ubuntu

  4. Comment ajouter une commande dans l'éditeur vim ?

  5. Comment ajouter l'affichage du nom d'hôte à la ligne d'état VIM sous Linux ?

Comment installer le dernier éditeur Vim sous Linux

Comment installer Vim sur Ubuntu

Comment supprimer plusieurs lignes dans Vim

Comment installer l'éditeur vim sur Rocky Linux 8

Comment afficher ou masquer les numéros de ligne dans Vim

Éditeur Vim :comment corriger automatiquement les fautes d'orthographe