vi er en kjent skjermorientert tekstredigerer som går tilbake til de første dagene av Unix. Den mest imponerende funksjonen er at den kan fungere i to forskjellige modus.
I Sett inn modus blir teksten en del av filen. I normal modus forstås tastetrykk som direkte kommandoer. Derfor brukes forskjellige tastaturkommandoer for å redusere arbeidet som trengs for å redigere en fil.
Men hvis kommandoene er så forskjellige, er det egentlig lettere å fjerne linjer eller redigere dem ved hjelp av tastetrykk-kommandoene? - La oss finne det ut.
Kutte en linje eller blokk
Hurtigkoblinger
- Kutte en linje eller blokk
-
-
- Plasser markøren foran linjen med tekst du vil fjerne
- Trykk på v og begynn et tegnvisuelt valg
- Trykk på V hvis du vil velge hele linjer
- Trykk Ctrl + v eller Ctrl + q hvis du vil velge en blokk
- Plasser markøren på slutten av tekstlinjen
- Trykk på d for å klippe
-
-
- Redigering over en linje
- Slette flere linjer
- Bruke tegn, ord og linjer i normal modus
- dd
- x / X
- dw
- En siste tanke
-
Plasser markøren foran linjen med tekst du vil fjerne
-
Trykk på v og begynn et tegnvisuelt valg
-
Trykk på V hvis du vil velge hele linjer
-
Trykk Ctrl + v eller Ctrl + q hvis du vil velge en blokk
-
Plasser markøren på slutten av tekstlinjen
-
Trykk på d for å klippe
Hvis du nå vil lime den linjen et annet sted, bare flytt markøren til det nye stedet og trykk p. Legg merke til at å trykke på p vil lime linjen eller blokkeringen etter markørens plassering. Hvis du vil lime inn før markørens posisjon, må du trykke på P.
Redigering over en linje
Du kan også endre den valgte teksten hvis du trykker på c i trinn 6. Ved å trykke på d vil du kutte, trykke på y vil trekke eller kopiere, og c vil åpne innspillingsmodus der du kan legge til ny tekst. Dette kan hjelpe deg med å erstatte en hel linje eller blokk uten å måtte bry deg med å kutte dem først.
Slette flere linjer
Det er to gode alternativer hvis du vil slette mer enn en linje i vi.
“:%d”
Denne kommandoen sletter alle linjene. ':' Setter vi i kommandomodus. '%' Tegnet forteller at den skal bruke 'd' (slett kommando) på alle linjene.
“:1, $d”
Dette er det mer populære alternativet. Igjen introduserer ':' en kommando. '1, $' forteller vi hvilke linjer du skal målrette mot. I dette eksemplet vil det være linjene som begynner med linje 1 og den siste. 'd' står for sletting.
Men hva er det som gjør denne kommandoen bedre enn den første? - Denne er tilpasningsdyktig. Du kan bruke den til å slette linjer i bulk, men uten å slette hver og en av dem.
Hvis du bruker noe som “:4, $-2d”
vil vi slette alle linjene mellom den tredje og den nest siste. Den etterlater de tre første intakte fordi linjene starter med 1 og ikke 0. Og du spesifiserer den første linjen du vil slette, som i dette eksemplet er 4.
'-2' representerer i utgangspunktet hvor mange linjer som starter fra den siste og teller tilbake til 1.
Bruke tegn, ord og linjer i normal modus
Først vil du forsikre deg om at du treffer Escape for å gå inn i normal modus. Etter det kan du bruke følgende vi-kommandoer til å slette spesifikk informasjon.
dd
Denne kommandoen sletter en hel linje. Du kan plassere markøren hvor som helst på linjen, enten det er på et ord eller et tomt område. Linjen og all plassen den okkuperte vil bli slettet.
x / X
Hvis du vil fjerne bare ett tegn fra en linje, kan du bruke x. Plasser markøren etter et tegn, og trykk på x. Dette vil fjerne karakteren og også plassen den okkuperte. Dette betyr også at alle de andre figurene i nærheten vil komme sammen for å fylle ut gapet.
Du kan også bruke x til å slette et tomt område på en linje. Hvis du holder musepekeren over et tegn og vil fjerne det før det, trykker du på X i stedet for x.
dw
Hvis du trykker på dw når markøren er plassert i begynnelsen av et ord, vil du slette det ordet. Dette vil også fjerne plassen som ordet bruker. Alternativt kan du fjerne bare deler av et ord.
Plasser markøren på venstre side av delen du vil slette. Trykk dw for å fjerne tegnene og plassen de okkuperte på linjen. Husk at å gjøre dette vil bringe de tilstøtende karakterene sammen for å fylle ut gapet.
En siste tanke
Så interessant og unik som vi er som en modal redaktør, tar det en stund å bli vant til det. Det er veldig lite tilbakemelding når det gjelder å bytte mellom modus. Dette gjør det veldig enkelt å tilføre kodetekst når du skal gi en kommando, og omvendt.