VIM Find and Remplacer

VIM Find and Remplacer
VI / VIM est l'un des éditeurs de texte légendaires qui trouvent toujours sa place à l'arsenal d'utilisateurs avancés et professionnels. VIM est particulièrement populaire parmi les programmeurs. Chaque distribution Linux là-bas comprend VIM par défaut. Si vous exécutez un système non Linux, vous devriez toujours pouvoir profiter de cet éditeur de texte de qualité à partir de n'importe quel système. Être vim.

Pourquoi cet ancien logiciel est toujours pertinent? Parce qu'il s'agit d'un raccourci léger et clavier pour presque toutes les fonctions, des recherches d'expression intégrées et un écosystème de plugin robuste, stable et sain. Sans parler des autres fonctionnalités de l'éditeur de texte moderne comme la magnifique syntaxe mise en évidence. Vous trouverez VIM principalement populaire parmi les programmeurs car VIM nécessite une mise au point du clavier lourd. C'est une bonne pratique pour les programmeurs.

Comme le titre de l'article l'indique, l'objectif de ce guide est de vous offrir une meilleure compréhension de la recherche et de remplacer les fonctionnalités de VIM. Vim n'a rien à craindre. En fait, c'est l'un des superpuissances que vous aurez toujours à vos côtés.

Création de fichiers de démonstration

Au début, nous avons besoin d'un texte de démonstration. Pour apprendre VIM, le moyen le plus sûr est de créer un fichier texte jetable et de faire ce que vous voulez avec. De cette façon, même si quelque chose ne va pas, rien d'important n'est perdu.

J'utilise Manjaro Linux comme système Linux. Apprenez à installer Manjaro Linux. C'est une distribution basée sur une arche utilisant Pacman comme gestionnaire de package par défaut. J'ai généré un fichier texte contenant tous les packages installés sur mon système.

Pacman -qqe >> packagelist.SMS
packageliste de chat.SMS

Maintenant, lancez le fichier texte dans VIM!

vim packagelist.SMS

Vim Search

Pour la recherche, VIM utilise la structure suivante.

?

Par exemple, recherchons "Python".

?python

Par défaut, la recherche s'asseyera à un résultat fixe. Pour aller au résultat de la recherche suivant / précédent, utilisez les clés suivantes.

Remarque: n'oubliez pas de frapper Entrée avant d'utiliser les touches suivantes. Sinon, le terme de recherche changera!

n - Trouvez le prochain match
N - Trouvez le match précédent

C'est juste le moyen de recherche fondamental. Essayons une méthode un peu plus puissante.

/ \\>

Ici, \ est pour la fin de la chaîne.

Tout comme l'exemple précédent, utilisez N ou N (dépendant du cas) pour naviguer dans les résultats de la recherche.

La recherche prend également en charge l'utilisation des jokers. Par exemple, il existe de nombreux packages avec une extension «Python-».

Pour les rechercher tous, nous pouvons utiliser «Python *». Ici, l'astérisque dit que n'importe quoi après le préfixe «Python». Pour toute recherche, l'astérisque peut être n'importe où sur le terme de recherche. Partout où il se trouve, il dit à VIM de combler l'écart avec toutes les données possibles de l'ensemble du fichier texte.

/ \

Lorsque vous recherchez, VIM mettra toujours le curseur au caractère de départ des matchs. C'est l'action par défaut. Ne t'inquiète pas; VIM permet de modifier la position par défaut de l'atterrissage du curseur.

/ python / e

Ici, le dernier «E» dit d'atteindre le curseur à la fin de la phrase correspondante. En utilisant l'exemple suivant, vous pouvez également dire à atterrir le curseur en dessous ou au-dessus du résultat de la recherche.

/ // + 2
/ // -3

Il est également possible de compenser le curseur depuis le début / la fin des correspondances de recherche. Par exemple, la commande suivante atterrira le curseur à 3 caractères à côté du début.

/ // s + 3
/ // b + 3

Ici, le «S» indique le début, «+3» indique 3 caractères dès le début. «B» signifie «commencer». Il fonctionne également similaire à «S». Depuis la capture d'écran, VIM tradèle automatiquement «B» en «S».

Si vous êtes intéressé à compenser à partir de la fin des correspondances de recherche, utilisez «E».

/ /

Voici une autre façon géniale de effectuer une recherche sur un fichier texte.

:% s /// gn

Une explication détaillée de la commande est sur la section suivante de l'article.

Vim Remplacer

Trouver et remplacer est une autre fonction commune et incontournable pour tout éditeur de texte de qualité. Vim, étant une légende, offre une façon robuste de trouver et de remplacer le texte souhaité de manière simple. La commande de la fonction est simple mais permet de faire des œuvres vraiment complexes.

: s // // /

Décomposons chaque partie.

  • Plage - Définissez la plage de l'exécution de la fonction «Find and Replay». Il y a 2 valeurs différentes.
    • % - effectuer sur l'ensemble du fichier
    • , - Effectuer l'action sur un certain ensemble de lignes.
  • search_string - la chaîne dont vous avez besoin pour remplacer.
  • Remplace_string - la nouvelle chaîne qui remplacera l'ancienne.
  • Modificateur - Déterminez le comportement de remplacement. Il y a quelques valeurs différentes.
    • G - Option «globale». Effectuer le remplacement à chaque occurrence d'une ligne.
    • GC - Demandez une confirmation avant de faire chaque remplacement.
    • GN - ignorer la fonction de remplacement et mettre en surbrillance les découvertes.

Par exemple, remplaçons tous les «Python» par «Python3».

:% s / python / python3 / g

Simple, à droite? Maintenant, vérifions le suivant.

:% s / python / python3 / gc

Il y a une poignée d'actions que vous pouvez choisir. Alors que certains d'entre eux sont familiers, d'autres ne sont pas. Voyons ce que cela signifie.

  • y - permettre d'effectuer le changement.
  • n - interdire effectuer le changement.
  • A - Remplacez tous.
  • Q - Quittez la tâche.
  • L - Il suffit de substituer cet événement. Ensuite, arrêtez.
  • ^ E (ctrl + e) ​​- Faites défiler un écran
  • ^ Y (ctrl + y) - Faites défiler un écran

Maintenant, essayons la partie de la gamme. Dans l'exemple précédent, nous avons déjà utilisé la gamme «%». Maintenant, il est temps de limiter nos recherches dans un certain nombre de lignes.

: 200 250 s / python / python3 / g

La recherche commencera à la ligne 200 et se terminera à la ligne 250. Entre les limites, toute l'entrée «Python» sera changée en «Python3».

Cette fonction n'est pas seulement limitée à un terme de recherche. Vous pouvez inclure plusieurs termes de recherche!

:% s /\ |\ |
/ //g

Essayons de changer toutes les entrées «python» et «py» en «python3».

:% s / python \ | py / python3 / g

Sensibilité à la casse

Toutes les astuces décrites plus tôt dans le guide sont très sensibles à des maisons. Vous devez vraiment vous assurer que chaque fois que vous travaillez, vous tapez les personnages dans le bon cas. Par exemple, «Python», «Python», «Python» etc. Tous sont des entrées différentes.

Si vous ne vous souvenez pas de l'affaire, dites simplement à Vim de devenir insensible!

/ /\ c
:% s /\ c //g

Cette insensibilité peut également être directement activée à partir du fichier VIMRC.

Définir IgnoreCase

Voici une autre option intéressante.

Définir SmartCase

«Ignorecase» obligera VIM à ignorer la sensibilité des cas. Cependant, s'il y a une lettre majuscule dans votre recherche, le «Smartcase» permettra à VIM de redevenir sensible à la caisse.

Remarque: pour que «SmartCase» fonctionne, vous avez d'abord besoin de «ignorercase».

Dernières pensées

Il y a beaucoup de choses que vous pouvez effectuer avec vim. C'est comme l'éditeur de texte ultime dont vous aurez besoin. Tout ce dont vous avez besoin est juste de la patience et de la pratique.

Apprécier!