Hoe alles in Vim te selecteren

Hoe Alles In Vim Te Selecteren



Om in Vim alle tekst in een bestand te selecteren, gebruikt u de ggVG commando in de NORMALE modus. Na het selecteren van de tekst kunnen bewerkingen zoals kopiëren, verwijderen, wijzigen of plakken eenvoudig op alle tekst worden uitgevoerd.

Als u een GUI-gebaseerd besturingssysteem gebruikt, moet u bekend zijn met de ctrl+a sneltoetsen om alle inhoud in een bestand of venster te selecteren. In Vim kun je niet dezelfde toetsen gebruiken om alle tekst te selecteren. In plaats daarvan biedt het een andere set sleutels (ggVG) om alles in een bestand te selecteren. In deze handleiding zal ik onderzoeken hoe je tekst in Vim kunt selecteren en hoe je dit gemakkelijker kunt maken met behulp van key-mapping.







Opmerking: Vim-opdrachten die in deze handleiding worden genoemd, worden uitgevoerd op macOS. Omdat Vim een ​​platformonafhankelijke teksteditor is, werken de opdrachten ook zonder fouten op Linux en Windows.



Selecteer Alles in Vim



Om alles in Vim te selecteren, drukt u op de Esc om naar de NORMAL-modus te gaan en typ het onderstaande commando:





ggVG

In het bovenstaande commando wordt een combinatie van vijf toetsen gebruikt. Laten we het opsplitsen.



  • gg wordt gebruikt om de cursor aan het begin van de eerste regel te plaatsen.
  • IN wordt gebruikt om de huidige modus naar de VISUAL LINE-modus te schakelen.
  • G wordt gebruikt om de cursor aan het begin van de laatste regel te plaatsen.

Nadat u alles hebt geselecteerd, gebruikt u de opdrachten in de volgende tabel om de gewenste bewerking uit te voeren.

En Om alle tekst te kopiëren (yanken).
D Om alle tekst te verwijderen
C Om de hele tekst te wijzigen
S Om een ​​specifiek patroon te vervangen door een string

Selecteer Alles in Vim met ctrl+a Kaart

Nou, ikzelf inbegrepen, zou niemand graag een beetje moeilijk te onthouden set Vim-commando's willen gebruiken om alle tekst in een bestand te selecteren. echter, de ctrl+a (op Linux en Windows) sleutels zijn universeel gebruikt en gemakkelijk te onthouden. Daarom zou ik er de voorkeur aan geven om de kaart in kaart te brengen ctrl+a sleutels met de ggVG commando.

Open de vimrc bestand, plaats de volgende regel erin en sla deze op met behulp van de :wq commando of druk op de verschuiving+zz sleutels.

noremap < C-een > ggVG

In het bovenstaande commando noremap wordt gebruikt om de sleutel niet-recursief in de NORMAL-modus in kaart te brengen while geeft aan ctrl , En A sleutels. U kunt elke sleutel naar eigen voorkeur instellen.

Kopieer en verwijder alle regels in een bestand

De % commando is een ander nuttig commando om bewerkingen op het hele bestand uit te voeren. Als u bijvoorbeeld alle regels in het bestand wilt kopiëren, gebruikt u de :%En commando. De % geeft de huidige bestandsnaam aan, en En kopieert alle tekst in het bestand. Op dezelfde manier gebruikt u om alle regels te verwijderen de :%D commando.

: % En 'Kopieer alle regels in een bestand

:%D '
Verwijder alle regels in A bestand

: % S /< patroon >>< vervanging > 'Vervang een patroon door een touwtje

Dezelfde functionaliteit kan ook worden bereikt met behulp van de gg En G opdrachten. Maar het hangt af van de cursorpositie. Breng uw cursor naar het begin van het bestand met behulp van gg en druk op yG om alle regels te kopiëren. Plaats op dezelfde manier de cursor aan het einde met behulp van G en druk op ygg om alle regels te kopiëren. Om de regels te verwijderen, vervangt u En met D .

Verder is de jj En dd opdrachten beschouwen telling ook als een regelnummer. Om vier regels te kopiëren, drukt u op 4yy. Vier regels vanaf de cursorpositie worden gekopieerd. Het kopiëren en verwijderen van alle functionaliteit in het bestand kan worden bereikt als we een groot getal, zoals 99999, doorgeven met een van beide jj of dd commando. Bijvoorbeeld, 99999jj En 99999dd opdrachten kopiëren en verwijderen alle inhoud in het bestand.

Kopieer alle tekst naar het systeemklembord

Om de gekopieerde tekst van Vim in systeemtoepassingen zoals teksteditors of browsers te plakken, gebruikt u de gg *yG commando. Normaal gesproken kopieert Vim de tekst naar het standaard naamloze register, waartoe toegang kan worden verkregen via :reg “” . Vim staat je echter niet toe de tekst buiten de Vim-editor te plakken. Gebruik de ' *En commando, om de geselecteerd tekst naar het klembord van het besturingssysteem.

gg '*yG                          ' Kopieer naar het systeemklembord

In het bovenstaande commando * is een systeemregister, een kleine opslagruimte voor gegevens. Er zijn twee systeemregisters + en * en beide kunnen worden gebruikt om inhoud naar het systeemklembord te kopiëren. U kunt deze opdracht op een andere manier gebruiken als u zich in de COMMAND-modus bevindt.

: % j+ 'Kopieer naar het systeemklembord

Hier, % vertegenwoordigt het hele bestand, En is voor rukken, en + is het systeemregister. Echter, * kan ook voor hetzelfde doel worden gebruikt.

Op dezelfde manier, als je iets naar het klembord hebt gekopieerd, gebruik dan om het in Vim te plakken: “+pag.

Conclusie

In Vim, het commando ggVG wordt gebruikt om alles in een bestand te selecteren. Nadat u alle regels heeft geselecteerd, kunnen verschillende bewerkingen worden uitgevoerd, zoals kopiëren, wijzigen of verwijderen. Deze bewerkingen kunnen echter ook worden uitgevoerd via de opdrachtregel met de % teken. Ik raad aan een sleutel (sleutels) in kaart te brengen om de alles-selecteren-bewerking in Vim uit te voeren.