Guide des marques Vim

Guide Des Marques Vim



Les marques Vim sont des emplacements spécifiques dans un fichier qui peuvent être définis avec un nom et renvoyés ultérieurement en les appelant par leur nom. La lettre m suivi d'une autre lettre {a-z ou A-Z} peut être utilisé pour définir la marque, et un simple citation ) ‘) avec le nom de la marque est utilisé pour revenir à cette marque. Notez que, le minuscule les lettres sont utilisées pour définir marques locales tandis que le majuscule les lettres sont utilisées pour définir le marques mondiales .

Comprendre les marques Vim

Vim vous permet de définir des positions spécifiques dans un fichier, surtout si vous travaillez sur un fichier volumineux dans lequel vous devez vous déplacer rapidement. Cette fonctionnalité rend la navigation dans un fichier contenant des centaines de lignes exceptionnellement simple. Par exemple, si vous travaillez sur un code Python avec 500 lignes de code, vous devrez peut-être faire défiler le fichier pour accéder à une ligne de code spécifique. Mais si vous placez des marques aux emplacements souhaités, vous pouvez facilement vous déplacer en appuyant sur quelques touches.







Eh bien, la fonctionnalité des marques Vim ne se limite pas à la navigation, vous pouvez également utiliser des marques pour exécuter d'autres commandes, dont je parlerai dans les sections suivantes de ce guide. Voyons comment définir et utiliser des marques dans Vim.



Note: J'utilise la distribution Linux (Ubuntu 22.04) et Vim version 8.2 pour les instructions de ce guide.



Définir une marque

Pour définir la marque dans Vim, maintenez le curseur à l'endroit où vous souhaitez définir la marque et appuyez sur la touche m clé , suivi de toute lettre de un à Avec . Par exemple, si je veux mettre une marque avec le nom de la lettre Avec alors je vais taper mz en mode NORMAL.





mz

Il existe plusieurs façons de définir une marque dans Vim, cette procédure est la plus rapide.

Bien que la procédure mentionnée ci-dessus soit largement utilisée et très rapide, vous n'obtiendrez aucune indication visuelle indiquant si la marque a été posée ou non, à moins de la vérifier explicitement.



Pour lister les marques dans Vim, utilisez le :Des marques commande, dont je parlerai dans le Liste des marques section. Cependant, vous pouvez activer l'indication de frappe en bas de la fenêtre en utilisant le :set showcmd.

: ensemble showcmd

Vous pouvez également utiliser le marque ou la Marque commandes pour définir la marque. Par exemple, le Avec la marque peut également être définie à l'aide de la commande ci-dessous :

: marque z

Chaque fichier Vim peut avoir des marques de un à Avec , mais si vous mettez une marque Avec pour une position et utilisez le même nom de marque pour une autre position, la marque précédemment définie sera supprimée (écrasée).

Notez que les lettres majuscules {A-Z} peuvent également être utilisées pour définir une marque. Les marques avec les lettres majuscules sont marques mondiales et basé sur des fichiers. Je discuterai en détail des marques mondiales dans une section distincte.

Liste des marques

Comme indiqué dans la section précédente, toutes les marques créées peuvent facilement être répertoriées

en utilisant le :Des marques commande.

: Des marques

Dans l'image de sortie ci-dessus, toutes les marques sont répertoriées ; certains sont personnalisés et d'autres sont par défaut.

Il existe également d'autres méthodes pour répertorier les marques. Pour lister une marque spécifique, utilisez le :Des marques commande avec le nom de la marque. Par exemple, pour lister la marque Avec, Utilisez le :marks commande:

: marque z

De même, pour répertorier plusieurs marques, utilisez le :Des marques :

: marques abz

un , b, et Avec sont des noms de marques différents.

Les marques au sein des fichiers ne sont pas visibles par défaut et pour les visualiser graphiquement, il existe différents plugins. Les plugins bien connus capables d'afficher des marques dans Vim sont Afficher les marques et Signature Vim .

Comme le plugin ShowMarks est truffé d'erreurs et n'a pas été mis à jour depuis de nombreuses années, je vais installer le Signature Vim plugin pour afficher les marques.

Lors de l'installation du plugin, définissez la marque et le plugin l'affichera explicitement avec le nom comme illustré dans l'image suivante.

Aller à une marque

Après avoir défini la marque, l'étape suivante consiste à parcourir les marques. Pour passer au début de la ligne marquée dans le tampon actuel, appuyez sur la touche simple citation (') avec le nom de la marque {a-z}.

'Avec

Pour accéder à l'emplacement exact (ligne/colonne), appuyez sur la touche guillemet (`) avec le nom de la marque {a-z}.

`z

Le simple (') et le backtick (`) peuvent également être utilisés pour sauter les marques globales {A-Z}.

Un tableau de navigation dans les marques minuscules est mentionné ci-dessous :

'' Revenez à la ligne d'où vous avez sauté
' Revenez à la position d'où vous avez sauté
' . /`. Pour passer à la dernière ligne/position modifiée
`[\`] Pour passer au début/fin du dernier texte extrait
`<\`> Pour passer au début/fin de la dernière sélection visuelle
[compter]] ' Pour passer à la ligne suivante de [count] le nombre de marques à partir de la position actuelle du curseur
[compte]]` Pour sauter [compter] le nombre de marques à partir de la position actuelle du curseur

Il est important de noter que les touches de navigation mentionnées ci-dessus concernent les marques minuscules.

La discussion sur les marques Vim est incomplète si nous ne discutons pas de la saute et liste des sauts . Le liste des sauts stocke les sauts effectués dans le fichier ou entre les fichiers, qu'il s'agisse de marques ou de sauts par défaut normaux de Vim.

Pour lister tous les sauts, utilisez :saute commande, et pour supprimer tous les sauts, utilisez la : sauts clairs. Pour parcourir les sauts, utilisez ctrl+o et ctrl+je clés.

Note: Avant de supprimer les sauts, n'oubliez pas que la suppression des sauts peut affecter l'historique de navigation.

Je trouve que les sauts sont plus pratiques pour parcourir les marques. Tout d’abord, j’efface tous les sauts car si je ne le fais pas, je risque de me retrouver dans d’autres fichiers. Ensuite, j'enregistre les sauts de marque dans le liste des sauts fichier en utilisant le guillemet simple ou le backtick. Une fois cela fait, j'utilise le ctrl+o et ctrl+je touches pour passer rapidement d'une marque à l'autre.

Pour plus d'aide sur la navigation dans les marques, utilisez le :marques d'aide et :aide liste de sauts commandes.

Marques mondiales

Les marques globales dans Vim sont configurées pour passer d'un fichier à l'autre. Contrairement aux marques locales, les marques globales sont définies avec des lettres majuscules et peuvent être utilisées dans tous les fichiers.

Comprenons l’importance des marques mondiales à l’aide d’un exemple. Supposons que vous travaillez sur un fichier de code et que vous souhaitez accéder à une fonction spécifique de ce fichier. Ainsi, au lieu d'ouvrir le fichier, tapez simplement la marque globale définie et le fichier sera ouvert avec l'emplacement spécifique.

Pour définir la marque globale, utilisez la commande mark m suivi d'une lettre majuscule {A-Z}.

mZ

Désormais, vous pouvez accéder à cette marque à partir de n'importe quel fichier. Pour accéder à la marque globale, utilisez la même procédure mentionnée dans le Aller à une marque section. Le fichier contenant la marque sera ouvert, fermant celui en cours.

'AVEC

De même, pour accéder à l'emplacement exact, utilisez un backtick avec le nom de la marque (`Z).

Marques numérotées

Les marques numérotées {0-9} sont utilisées pour stocker la position actuelle du curseur dans le viminfo fichier lorsque vous quittez le fichier. Les repères numérotés sont spéciaux et ne peuvent pas être réglés directement. Ces marques sont générées automatiquement dans le viminfo fichier pour garder une trace des modifications apportées au fichier lorsque vous quittez le fichier. Par exemple, lorsque vous quittez un fichier, le viminfo Le fichier enregistre les dernières informations sur la position du curseur dans les marques numérotées telles que 0, 1, 2, etc.

Vous pouvez lister les marques numérotées en utilisant le :Des marques commande.

Pour plus d'informations sur les marques numérotées Vim, utilisez le :help viminfo-file-marks commande.

Suppression de marques

Il existe différentes méthodes pour supprimer toutes les marques, des marques spécifiques ou une plage de marques.

Pour supprimer des marques, le :delmarks ou :delm les commandes peuvent être utilisées.

:delmarks z Pour supprimer une marque spécifique, par exemple, Avec
:delmarks x-z Pour supprimer des repères de X à Avec tel que la suppression X , et , et Avec
:delmarks abxy Supprimer un , b , X, et et Des marques
:delmarks zZ Supprimer Avec et AVEC Des marques

Pour effacer toutes les marques minuscules {a-z}, utilisez :delmarks! commande. Pour effacer les marques majuscules et les marques numériques, vous devez utiliser :delmarks A-Z et :delmarks 0-9 commandes. Si vous souhaitez effacer les marques majuscules {A-Z}, utilisez :delmarks A-Z . Les marques numérotées peuvent également être effacées à l’aide de la même commande.

Fonctionnalités avancées

Étant donné que les marques sont des emplacements, elles peuvent également être utilisées pour éditer le fichier dans Vim. Par exemple, pour supprimer, copier ou modifier quelque chose d'une marque spécifique à une autre marque, vous pouvez utiliser la commande correspondante en mentionnant le nom de la marque.

Dans le tableau suivant, le Avec est utilisé comme nom de marque.

d ' z / d`z Supprimer de la ligne actuelle à la prochaine ligne marquée / Supprimer de la position actuelle jusqu'à la prochaine position marquée exacte
c ' z / c`z Changer le texte de la ligne actuelle à la prochaine ligne marquée / Changer le texte de la position actuelle jusqu'à la prochaine position marquée exacte
et ' z / y`z Copier (tirer) le texte de la ligne actuelle vers la prochaine ligne marquée / Copier le texte de la position actuelle jusqu'à la prochaine position marquée exacte

Si vous souhaitez effectuer un en ligne opération, puis appelez la marque en utilisant le guillemet simple ('), et si vous souhaitez effectuer une par caractère opération, utilisez le backtick (`).

De même, si vous souhaitez supprimer, modifier ou extraire quoi que ce soit entre deux marques, vous pouvez utiliser la syntaxe de commande suivante.

: 'X,' et < d,c ou y >

Par exemple, si vous souhaitez supprimer toutes les lignes de mark 'X marquer 'et Utilisez le : ' X, ' y d commande.

Voir le fichier suivant avec les marques b et c .

Pour supprimer toutes les lignes de la marque b au c (y compris), exécutez la commande ci-dessous :

: 'b,' cd

Différence entre les marques minuscules et les marques majuscules

Les marques minuscules et majuscules ont des fonctionnalités distinctes.

Les marques minuscules sont utilisées dans les fichiers et peuvent être définies à partir de l'alphabet un à l'alphabet Avec dans n'importe quel fichier. Ils sont uniques aux fichiers dans lesquels ils ont été créés. Ils sont accessibles et gérés dans les fichiers dans lesquels ils ont été créés. En revanche, les marques majuscules {A-Z} sont globales et ne peuvent pas être définies avec le même nom. Ces marques sont accessibles à partir de n'importe quel fichier en utilisant l'apostrophe (') ou le backtick (`).

La navigation et le processus de suppression des marques minuscules et majuscules sont similaires. Mais les marques minuscules comportent davantage de commandes de navigation en raison de leurs paramètres intégrés au fichier.

Une autre chose importante est que les marques ne sont pas supprimées à la sortie du fichier ou de la session. Ainsi, si vous avez défini une marque, à la réouverture, les marques du fichier resteront intactes.

Aide-mémoire Vim Marks

Les opérations clés dont vous avez besoin pour utiliser la fonctionnalité de marques dans l'éditeur Vim sont mentionnées dans l'image suivante.

Conclusion

Les marques dans l'éditeur Vim sont des positions personnalisées permettant de parcourir un fichier comportant des centaines de lignes. Il existe deux types de marques, les marques majuscules et minuscules. Les marques minuscules sont pratiques pour naviguer dans le fichier. Pour naviguer dans les fichiers, des marques majuscules sont utilisées. Pour poser la marque, la lettre m est utilisé avec une autre lettre minuscule ou majuscule {a-z, A-Z}. Les marques de n'importe quel fichier peuvent être répertoriées à l'aide du :Des marques commande. Pour supprimer une marque :delmarks ou :delm les commandes avec le nom de la marque sont utilisées.