Mens jeg skrev masteren min i vår så oppdaget jeg Vim. Følg deler av reisen min for å få innblikk i hva dette verktøyet egentlig er og hva det kan hjelpe deg med å oppnå. Dette er en innledning til en serie om Vim i Bekk.christmas lukene

Det var en høstdag i Oslo. Vi hadde teknologitreff i Bekk hvor vi ble delt inn i mindre grupper som skulle diskutere noen temaer. Her stiller jeg som referent, så jeg åpner opp Windows pcen min og går rett inn i terminalen og skriver vim teknologitreff-notater. Umiddelbart hører jeg fra sidemannen "Sykt flex å bruke Vim", og etter litt prat så kommer kommentaren, "Finnes det faktisk folk under 50 som bruker Vim?" fra en annen på gruppen. Et av temaene vi diskuterte var spørsmålet om når den siste kodesnutten ville bli skrevet: "Altså det finnes jo fortsatt folk som bruker Vim, så AI kommer aldri til å erstatte alle som koder".
Vim er ikke bare for utviklere
Selv så hadde jeg fordommer mot folk som brukte Vim, det er jo bare neckbeards og nerder som er tungt inni Linux økosystemet som gidder å lære seg noe så stort og komplekst. På studiet, når jeg måtte inn i terminalen på servere så brukte jeg selv Nano, et mye enklere verktøy (trodde jeg). Etter fem år på studiet og en irrasjonell frykt for Vim oppdaget jeg mens jeg skrev master at Overleaf har Vim keybindings:

Ok what the hell, jeg kan prøve. I verste fall kunne jeg bare byttet tilbake og sagt meg fornøyd. Dette førte til at jeg i løpet av de neste månedene (les: mai/juni) bruker en god del av master-skrive-tiden min på å finne ut hva Vim er og hvordan bruke det. Her oppdaget jeg noe sykt: Man blir mye mer effektiv når man slipper å bruke musa for å redigere tekst.
Vim er bare en av mange måter å skrive og redigere tekst på, på lik linje med notater, VSCode, Notion, Word og alle andre steder du skriver. Med andre ord så er Vim en tekst editor, en såkalt "modal tekst editor", som vil si at man har flere moduser, blant annet en egen modus for skriving. Det som skiller Vim fra noen av de andre programmene er at man jobber bare med filer og tekst, man har ikke noe forhold til layout av sidene, kursiv, fet skrift, eller annen snacks. Vim handler om teksten man skriver, så får heller programmet du leser teksten i senere bry seg om formattering.
En av de store fordelene ved å bruke Vim er at man kan raskt og presist navigere, redigere, slette eller flytte tekst med intuitive kommandoer som etterhvert sitter i fingrene. Det tillater å enkelt gjøre store endringer på hele filen eller dokumentet man sitter i.
Med andre ord så er Vim ikke bare for utviklere, men alle som jobber med tekst i en eller annen grad. Det forutsetter derimot at du klarer å åpne opp terminalen og eventuelt installere det hvis det ikke kommer forhåndsinstallert (som det ofte gjør). Hvis du ikke er kjent med terminalen så kan du følge denne lenken for en super rask introduksjon for Mac og Windows (velg den du bruker).
Når du har fått opp terminalen så er det da bare å skrive vim <filnavn> og der er du inne! For å navigere rundt så bruker man hjkl for å bevege pekeren til venstre, ned, opp og høyre henholdsvis. Dette oppleves rart i starten, men det er flere grunner til at det er akkurat disse tastene som blir brukt. Den mest åpenbare er at tastaturet som Vim sin forgjenger ble laget for hadde piltaster på nettopp disse tastene. I tillegg er det slik at når man benytter touch typing så ligger den sterkeste fingeren allerede på j, og det vanligste man gjør i en tekstfil er å bla nedover. Dette betyr også at man slipper å bytte mellom mus og tastatur når man jobber.

Når du får nok av å gå rundt i teksten din kan du trykke i for å gå inn i insert mode, denne modusen ligner på notater, ved at det du trykker på blir skrevet. Når du er fornøyd, trykk <Escape> tasten og deretter :wq for å lagre (write) og lukke (quit). Gratulerer, du har skrevet din første fil med Vim!
For å gå ut av vim trykk på <Escape> og skriv :q! for å gå ut uten å lagre endringene dine
Jeg husker dessverre ikke den første teksten jeg skrev i Vim, men jeg vet at jeg benytter det hver dag på både jobb og privat. Alt fra notater til utvikling skjer i Vim på et eller annet vis. Jeg har prøvd å unngå å bli han fyren som stadig snakker om Vim, men over tid har jeg akseptert at kanskje det ikke er så galt som jeg trodde.
I starten er det uvant og litt småkleint å bruke, men hvis du står litt i det og leser de neste vim lukene som kommer i bekk.christmas serien min så kommer du ikke til å se tilbake. Og hvis du skal ta én ting fra dagens luke er det at Vim ikke er magisk, det er bare en alternativ måte å skrive og redigere tekst på.