Anonim

vi är en välkänd skärmorienterad textredigerare som går tillbaka till Unix tidiga dagar. Den mest imponerande funktionen är att den kan fungera i två olika lägen.

I Insert-läge blir texten en del av filen. I normalt läge förstås tangenttryckningar som direkta kommandon. Därför används olika tangentbordskommandon för att minska mängden arbete som behövs för att redigera en fil.

Men om kommandona är så olika, är det verkligen lättare att ta bort rader eller redigera dem med tangenttryckningskommandona? - Låt oss ta reda på.

Skärning av en linje eller ett block

snabblänkar

  • Skärning av en linje eller ett block
        • Placera markören framför textraden som du vill ta bort
        • Tryck på v och börja ett teckenvisuellt val
        • Tryck på V om du vill välja hela rader
        • Tryck på Ctrl + v eller Ctrl + q om du vill välja ett block
        • Placera markören i slutet av textraden
        • Tryck på d för att klippa
  • Redigering över en rad
  • Radera flera rader
  • Använda tecken, ord och rader i normalt läge
    • dd
    • x / X
    • dw
  • En sista tank
  1. Placera markören framför textraden som du vill ta bort

  2. Tryck på v och börja ett teckenvisuellt val

  3. Tryck på V om du vill välja hela rader

  4. Tryck på Ctrl + v eller Ctrl + q om du vill välja ett block

  5. Placera markören i slutet av textraden

  6. Tryck på d för att klippa

Om du nu vill klistra in den raden någon annanstans, flytta helt enkelt markören till den nya platsen och tryck på p. Observera att om du trycker på p klistrar du in linjen eller blocket efter markörens position. Om du vill klistra in innan markörens position måste du trycka på P.

Redigering över en rad

Du kan också ändra den valda texten om du trycker på c i steg 6. Om du trycker på d kommer du att klippa, trycka på y kommer att ta bort eller kopiera, och c öppnar insertläget där du kan lägga till ny text. Detta kan hjälpa dig att byta ut en hel linje eller block utan att behöva bry dig om att skära dem först.

Radera flera rader

Det finns två bra alternativ om du vill ta bort mer än en rad i vi.

“:%d”

Detta kommando raderar alla rader. ':' Sätter vi i kommandoläge. Tecknet '%' berättar att det ska tillämpa 'd' (radera kommandot) på alla rader.

“:1, $d”

Detta är det mer populära alternativet. Återigen introducerar ':' ett kommando. '1, $' säger vi vilka rader du ska rikta in dig på. I det här exemplet skulle det vara linjerna som börjar med rad 1 och den sista. 'd' står för radering.

Men vad gör detta kommando bättre än det första? - Den här är anpassningsbar. Du kan använda den för att radera rader i bulk men utan att behöva radera alla.

Om du använder något som “:4, $-2d” kommer vi att radera alla rader mellan den tredje och den näst sista. Den lämnar de tre första intakta eftersom raderna börjar med 1 och inte 0. Och du anger den första raden som du vill radera som i detta exempel är 4.

"-2" representerar i princip hur många rader som börjar från den sista och räknar tillbaka till 1.

Använda tecken, ord och rader i normalt läge

Först vill du se till att du trycker på Escape för att gå in i normalt läge. Efter det kan du använda följande vi-kommandon för att radera specifik information.

dd

Detta kommando raderar en hel rad. Du kan placera markören var som helst på linjen, oavsett om det är på ett ord eller ett tomt utrymme. Linjen och allt utrymme som det ockuperas raderas.

x / X

Om du vill ta bort bara ett tecken från en rad kan du använda x. Placera markören efter ett tecken och tryck på x. Detta kommer att ta bort karaktären och även utrymmet det upptagen. Detta innebär också att alla andra karaktärer i närheten kommer att samlas för att fylla i klyftan.

Du kan också använda x för att radera ett tomt utrymme i en rad. Om du håller muspekaren över ett tecken och vill ta bort den före den trycker du på X istället för x.

dw

Om du trycker på dw när markören är placerad i början av ett ord raderas det ordet. Detta kommer också att ta bort det utrymme som ordet tar upp. Alternativt kan du ta bort bara delar av ett ord.

Placera markören till vänster om delen som du vill ta bort. Tryck på dw för att ta bort dessa tecken och utrymmet de ockuperade i raden. Kom ihåg att genom att göra detta kommer de intilliggande karaktärerna att föras samman för att fylla i luckan.

En sista tank

Så intressant och unikt som vi är som en modal redaktör, det tar ett tag att vänja sig till det. Det finns väldigt lite feedback när det gäller att växla mellan lägen. Detta gör det mycket enkelt att av misstag mata in kodtext när du ska ge ett kommando och vice versa.

Hur man raderar alla rader i vi