Bitlabbets guide till vi

Denna guide är under konstruktion, mer tillkommer efter hand.


Programmet “vi” (egentligen “vim – VI Improved – a programmers text editor”) är en kraftfull textredigerare till GNU/Linux och Unix. Vi kan vara lite svårt att använda, det skiljer sig en del från vanliga textredigerare, som t.ex. Nano. Skillnaden är att för att skriva används ett läge (insert-läget) och för att t.ex. radera och kopiera används ett annat (kommandoläget). Det finns en mängd olika kommandon som man kan använda och i denna guide går jag igenom några av de enklaste och vanligaste.

Använda vi

Vi används vid kommandotolken i operativsystemet och startas genom kommandot vi, åtföljt av namnet på filen en vill redigera.

$ vi ny.txt

När Vi startats befinner man sig i kommandoläget. I detta läge kan man flytta runt prompten genom att t.ex. använda piltangenterna. Man kan t.ex. kopiera en textrad (tryck y), klippa ut en textrad (tryck x), klistra in en textrad (tryck p) eller radera ett tecken (tryck x) eller en helt textrad (tryck dd).

vi_2

Tildetecknet (~) indikerar att raden är tom. På bild ovan har vi öppnat en helt ny fil.

För att redigera texten går man in i redigeringsläget, det gör man genom kommandot “i” (betyder insert). Nu kan man skriva text. För att lämna redigeringsläget trycker man på ESC-tangenten. Nu är man tillbaka i kommandoläget. Vi består alltså av två lägen och kallas därför “modal”.

För att avsluta vi, skriv kommandot:

:q

Om vi gjort en ändring och vill avsluta utan att spara, skriv:

:q!

Om vi gjort en ändring och vill spara den, skriv:

:qw

Q:et betyder quit och i sista exemplet betyder w:et write. Avsluta och skriv med andra ord. Om man har redigerat filen och försöker avsluta utan att spara, får man upp en varningstext som informerar om att det korrekta kommandot för att avsluta utan att spara är “:q!” (det andra exemplet).

Spara ditt arbete

Tryck “ESC” för att komma till kommandoläget. Tryck sedan “:” för att kunna mata in kommandon i det sk. ex-läget, skriv sedan “w” (write).

:
:w

Skapa en ny fil, lägg till och redigera text

Skapa nytt

Skapa en ny fil från kommandoraden genom följande kommando:

$ vi nytt.txt

Tryck “i” och skriv följande text:

Den gröna hunden springer genom rågfältet.

Om vi nu trycker “ESC” för att komma till kommandoläget kan vi röra markören till höger och vänster med piltangenterna. För att lägga till text efter meningen måste vi ställa markören över punkten och sedan trycka:

a

Efter det kan vi slå mellanslag och fortsätta skriva text.

Den gröna hunden springer genom rågfältet. Skatorna dansar på taket.

Med stora “A” kommer vi automatiskt till slutet av raden och kan då lägga till text eller t.ex. trycka ENTER för att skapa ny rad.

Radera text

För att radera text finns det olika kommandon. Det enklaste är “x” som används för att radera det tecken som är markerat. Kom ihåg att befinna dig i kommandoläget, som du når med “ESC”.

x

Man kan också använda x med en siffra framför, för att ta bort första och de följande tecknen, t.ex. “2x” för att ta bort två tecken.

2x

Med kommandot “dd” tar du bort en hel rad.

dd

dd funkar på samma sätt som x, om man vill ta bort tre rader skriver man in 3dd.

3dd

Ångra

Med kommandot “u” ångrar man senaste kommandot eller ändringen.

u

Klipp och klistra

Med “y” (yank) kopierar man (ett tecken) och med “p” klistrar man in.

y
p

Kopiera ett ord:

yw

Kopiera funkar på samma sätt som “x” och “dd”, vill man kopiera en hel rad skriver man:

yy

För att kopiera fem rader skriver man “5yy”

5yy

För hjälp och mer information om hur man använder Vi kan man trycka “:help”, då öppnas hjälpfilen. Man kan också använda sig av manual-kommandot, man vi vid kommandotolken i operativsystemet.

Det finns också mängder av guider på nätet om vi, den jag gillar bäst kommer från boken “The Linux Command Line” av William E. Shotts, Jr.

Det finns ett antal “cheat sheet” för vi, här är en.

Tobias

Bloggande IT-bibliotekarie och linuxnörd. Brinner för frågor om fri programvara, personlig integritet på nätet och teknik som befriar snarare än stänger in.

Du gillar kanske också...

Lämna ett svar