8 Interessante 'Vi/Vim' Editor Tips og tricks til enhver Linux-administrator - Del 2


I den forrige artikel i denne serie gennemgik vi RHCE).

Når det er sagt, lad os komme i gang.

TIP # 8: Opret vandrette eller lodrette vinduer

Dette tip blev delt af Yoander, en af vores læsere, i del 1. Du kan starte vi/m med flere vandrette eller lodrette divisioner for at redigere separate filer i det samme hovedvindue:

Start vi/m med to vandrette vinduer, med test1 øverst og test2 i bunden

# vim -o test1 test2 

Start vi/m med to lodrette vinduer, med test3 til venstre og test4 til højre:

# vim -O test3 test4 

Du kan skifte markøren fra et vindue til et andet med den sædvanlige vi/m bevægelsesrutine (h: højre, l: venstre, j: nederst, k: øverst):

  1. Ctrl + w k - top
  2. Ctrl + w j - bund
  3. Ctrl + w l - venstre
  4. Ctrl + w h - højre

TIP # 9: Skift bogstaver, ord eller hele linjer til store bogstaver eller små bogstaver

Bemærk, at dette tip kun fungerer vim. I de næste eksempler er X et heltal.

  1. For at ændre en række bogstaver til store bogstaver skal du placere markøren på det første bogstav, derefter skrive gUX i ex-tilstand og til sidst trykke på højre pil på tastaturet.
  2. For at ændre X antal ord skal du placere markøren i begyndelsen af ordet og skrive gUXw i ex-tilstand.
  3. Hvis du vil ændre en hel linje til store bogstaver, skal du placere markøren et vilkårligt sted på linjen og skrive gUU i ex-tilstand.

For eksempel, for at konvertere en hel lille bogstav til store bogstaver, skal du placere markøren hvor som helst på linjen og skrive gUU:

For eksempel, for at konvertere to store bogstaver til små bogstaver skal du placere markøren i begyndelsen af det første ord og skrive gu2w:

TIP # 10: Slet tegn, ord eller til begyndelsen af en linje i INSERT-tilstand

Mens du kan slette tegn eller flere ord på én gang i ex-tilstand (dvs. dw for at slette et ord), kan du også gøre det i Insert-tilstand som følger:

  1. Ctrl + h: slet det forrige tegn til det sted, hvor markøren aktuelt er placeret.
  2. Ctrl + w: slet det forrige ord til det sted, hvor markøren aktuelt er placeret. For at dette kan fungere korrekt, skal markøren placeres i et tomt rum efter det ord, du skal slette.
  3. Ctrl + u: slet den aktuelle linje, der begynder med tegnet straks til venstre for det sted, hvor markøren er.

TIP # 11: Flyt eller kopier eksisterende linjer til en anden linje i dokumentet

Selvom det er rigtigt, at du kan bruge de velkendte dd-, yy- og p-kommandoer i ex-tilstand til at slette, henholdsvis yank (kopiere) og indsætte linjer, der kun fungerer, når markøren er placeret, hvor du vil udføre disse operationer . Den gode nyhed er, at du med kopierings- og flytkommandoerne kan gøre det samme uanset hvor markøren aktuelt er placeret.

I det næste eksempel vil vi bruge et kort digt med titlen "Forever" af Terri Nicole Tharrington. Til at begynde med får vi vim til at vise linjenumrene (: indstil nu i kommandotilstand - betragt dette som et ekstra tip). Vi bruger: 3copy5 (også i kommandotilstand) til at kopiere linje 3 under linje 5:

Fortryd nu den sidste ændring (Esc + u - endnu et bonustip!) Og skriv: 1move7 for at erstatte linje 7 med linje 1. Vær opmærksom på hvordan linie 2 til 7 flyttes op og tidligere linje 1 nu indtager linje 7:

TIP # 12: Tæl matches, der er resultatet af en søgning efter mønster, og flyt fra en forekomst til en anden

Dette tip er baseret på erstatningskommandoen (tip nr. 7 i del 1 i denne serie) med den undtagelse, at det ikke fjerner noget, da erstatningsadfærden tilsidesættes af n-indstillingen, hvilket resulterer i antallet af forekomster af det angivne mønster :

Sørg for, at du ikke udelader nogen af de skråstreg fremad!

:%s/pattern//gn 

For eksempel,

:%s/libero//gn

For at flytte fra en forekomst af mønsteret til den næste i ex-tilstand skal du trykke på n (små bogstaver N). For at flytte til den forrige forekomst skal du trykke på N.

Hvis du bruger vi/m til at redigere konfigurationsfiler eller til at skrive kode, vil du være i stand til at vise linjenumre, når du først åbner programmet og indstille automatisk indrykning, så når du trykker på Enter-tasten, vil markøren være automatisk placeret i den korrekte position. Derudover kan du tilpasse antallet af hvide mellemrum, en fane optager.

Mens du kan gøre det hver gang du starter vi/m, er det nemmere at indstille disse indstillinger i ~/.vimrc , så de automatisk anvendes:

set number
set autoindent
set shiftwidth=4
set softtabstop=4
set expandtab

For yderligere muligheder for at tilpasse dit vi/m-miljø kan du henvise til online vim-dokumentationen.

TIP # 15: Få generel Vim-hjælp/indstillinger med vimtutor

Hvis du til enhver tid har brug for at pusse op i dine generelle vi/m-færdigheder, kan du starte vimtutor fra kommandolinjen, der viser en fuld vi/m-hjælp, som du kan henvise til så ofte du ønsker uden behov for at fyre op webbrowser for at søge, hvordan man udfører en bestemt opgave i vi/m.

# vimtutor

Bemærk, at du kan navigere i eller søge i indholdet af vimtutor, som om du navigerede i en almindelig fil i vi/m.

Resumé

I denne serie med 2 artikler har jeg delt flere vi/m-tip og tricks, der skal hjælpe dig med at blive mere effektiv, når det kommer til redigering af tekst ved hjælp af kommandolinjeværktøjer. Jeg er sikker på, at du skal have andre - så del dem gerne med resten af samfundet ved hjælp af nedenstående formular. Som altid er spørgsmål og kommentarer også velkomne.