1 million udviklere: Hjælp, hvordan slipper jeg ud af Vim?

Teksteditoren Vim er berygtet for at være svær at slippe ud af igen, hvis man har åbnet den ved et uheld.

Du har lige trykket 'enter' efter at have skrevet kommandoen 'git commit'. 10 minutter senere giver du op og tager Google til hjælp for at slippe ud af teksteditoren Vim. Og du er ikke alene. Spørgsmålet på udviklerforummet Stack Overflow om, hvordan man slipper ud af Vim, har nu rundet én million visninger.

I et blogindlæg har Stack Overflows David Robinson set nærmere på, hvor ofte spørgsmålet bliver besøgt, og hvem der er endt med at sidde fast i Vim.

For de uindviede læsere skal det lige slås fast, at Vim er den mest udbredte variant af den gamle teksteditor Vi. Det er en editor, som er født og har levet hele sit liv i en Unix-terminal. Ingen mus og ingen tastaturgenveje adopteret fra DOS eller Windows.

For dem, der har tæmmet Vim, så er det en hurtig editor, hvor alt kan lade sig gøre gennem kommandosystemet, men for dem, der havner i Vim ved et uheld, er der ingen velkendte referencer, som kan hjælpe dem med at slippe ud.

Og det kan ske, at man havner i Vim ved et uheld. Som eksempelvis hvis man bruger versionsstyringsprogrammet Git fra kommandolinjen og ikke inkluderer en beskrivelse, når man laver et commit af ny kode til projektet.

Læs også: Sådan kommer du i gang med at lære Git

Men folk må da efterhånden have lært at finde ud af Vim, kunne man tænke. Men ifølge Stack Overflows statistik, så ligger antallet af visninger af spørgsmålet nogenlunde stabilt. Cirka én ud af 20.000 visninger på forummet går til at finde ud af Vim.

Det er måske heller ikke overraskende, at de udviklere, som mest hyppigst får forvildet sig ind i Vim og ikke kan finde ud, er udviklere, der ikke normalt færdes i miljøer, hvor Vim er oplagt at bruge.

Ud fra de tags på teknologier, som brugerne hyppigst besøger, så er David Robinson nået frem til, at det især er frontend-webudviklere, som ender i Vim. De tre mest almindelige tags er jQuery, CSS og AngularJS.

Dernæst er det nok heller ikke overraskende, at Windows og mobil-udviklere med C#, Android og iOS også har svært ved at finde ud af Vim. Det går til gengæld noget lettere for udviklere, der bruger Python, C++ og C, hvor redigering direkte fra kommandolinjen frem for en grafisk teksteditor er meget nærliggende.

Svaret på, hvordan man kommer ud er i øvrigt at trykke 'escape' og taste ':q' (kolon og q) efterfulgt af enter. Hvis du i stedet er havnet i Emacs, så ved du nok, hvad du laver, så der er du på egen hånd.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (30)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Peter Christiansen

man vim

Der får du information om at du også kan se på "vimtutor"

vimtutor

og du kan følge en vim tutorial, i vim.

"If you make a man a fire, he'll be warm for the night.
If you set a man on fire, hell be warm for the rest of his life
"

  • 5
  • 6
Simon Mikkelsen

du har lavet ændringer der ikke skal gemmes: ESC og :q!
skal ændringerne gemmes: ESC og :wq eller bare ESC og ZZ

Hvis man i øvrigt har drift (eller bare bruger) en unix-agtig maskine, bør man altid kunne de mest basale ting i vi. Den editor findes altid og står man med håret i postkassen kan den være eneste redning.

  • 4
  • 3
Martin Sørensen

Det kan tilføjes at kommando-syntaksen minder en smule om Amigaens ED editor. Der skal man først trykke Esc for at komme i extended command-mode og derefter trykke q + Enter for exit.

  • 3
  • 0
Ditlev Petersen

Jeg ser aldrig UNIX (ikke endnu da), men for en del år siden skulle jeg over telefonen have nogle ret uerfarne brugere til at rette nogle konfigurationsfiler under MS-DOS. Det viste sig så, at den eneste editor, de havde, var EDLIN. Som jeg selv ikke havde set i omkring end 10 år. Jeg ved ikke, hvad der var mest imponerende: At jeg kunne huske brugen af den, eller at det lykkedes brugerne at følge mine instruktioner og få lavet de ændringer. Jeg fik en vis respekt for dem, og de blev efterhånden ganske gode til at bruge EDLIN.

Jeg er ikke sikker på, at jeg kan huske EDLIN i dag, selv om den vist var med til Windows XP (nogen med humor hos Microsoft?).

  • 0
  • 0
Robert Winther

Jeg har aldrig fanget at folk spørger om den slags simple ting på Stackoverflow. Hvem tænker IKKE "lad mig lige søge", før "jeg skriver et spørgmål på SO"?

Folk er mærkelige.

Det er ikke en million der har spurgt, det er en million der har besøgt siden.

Og siden er netop første side der bliver foreslået når man søger på "how to exit VIM" på Google.

Så er det vel ikke så mærkeligt.

  • 8
  • 0
Mads Bendixen

Jeg synes heller ikke at vi er så slem men jeg er blevet vant til nano da den også gør hvad jeg beder den om.


Jeg synes fordelen ved nano er at kommandoerne står i bunden. En stor fordel, når man ikke bruger en editor så ofte. Desuden kan genvejen oftes laves med 1 hånd, f.eks. at gemme (Ctrl+O<ENTER>), "ESC :w<ENTER>" er ikke "lige ved hånden".

Det er sikkert ikke et problem hvis vi(m) er ens primære værktøj, men for "occasional users" kan det være det.

  • 3
  • 0
Ditlev Petersen

Wkipedia skriver, at den (stadig) er en del af 32-bits Windows. Hvilket nok er årsagen til, at jeg ikke har den længere.

Hvad var så grunden til, at jeg skrev EDLIN ved en DOS-prompt i XP dengang? En barnlig trang til at pille ved ting?

  • 0
  • 1
Finn Aarup Nielsen

rtfm

man vim

Er det en vittighed? "man vim" /quit giver "pattern not found". Selv om det skulle være forklaret på man-siderne hvordan man kommer ud af programmet er det sædvanligvis ikke en effektiv metode at læse man-siderne. Google+Stackoverflow er - ifølge mine egne erfaringer - noget mere effektiv.

  • 3
  • 0
Bente Hansen

Rigtige programmører bruger


Vel det de er vant til, og typisk lærte på studiet.

Hvad der er bedst skal jeg ikke svare på, men det er IKKE Edlin eller Win.
Jeg kendte en som skrev alt sin dokumentation, også breve og rapporter i IBM Lotus Regneark. Det var det bedst for ham :-)

Kan også forstår at man ikke bare skifter, selv her 10-15 efter jeg droppet NC, sider nogle af tastetryk stadig i fingrene. Har selv lige set på ATOM, men til mit brug, er det nok mere end overkill.

Men stadig en vigtigt tråd. Det er vigtig hvis man kalder sig rigtigt EDB mand, at man har et bredt kendskab til OS og Prompt i de forskellige systemer.
Måske ikke nær superbruger, men at man kan copy/past og editere efter google anvisninger.

Men hvis vi skal bringe tråden til live.

Hvad er den nemmeste simpel tekst editor i "tekst mode", som nemt kan installeres og bruges på alle OS ?

Også lige til Troll føde, skal man bruge Tab eller space ;-)

Lader det sidste ligge, men måske er editoren i NC eller (MC) det nemmeste.

  • 0
  • 0
Bente Hansen

når de ikke kan finde ud af at lære ESC :q! udenad... eller finde ud af at google man vi.


Og skribenter der ikke læser hele tråden :-)

Det er netop fordi de google svaret, at de får denne søgning.

Det er version2 typisk. extra bladet overskrift.-

Så der er en som har skrevet et svar. og google har dygtigt fundet dette, når nogen ,som søgt svar og hjælp, har skrevet om dette i google. Så de 1 millioner er hit til svaret.

  • 4
  • 0
Tom Arleth

Jeg er en af dem der må have fat i google, når jeg har fået forvildet mig ind i Vim.

Jammen så er her en huskeregel (den er fra VI, men kan åbenbart også få en ud af VIM):
<Esc> - Escape, jeg vil væk her fra
":" - denne her åndsvage colon ting
q - quit (jeg vil faktisk væk her fra)
! - never (som regel er ! = not, men her er det altså never)
<ENTER> - return

Altså: "Escape this colon thing never return"

  • 0
  • 0
Nicolaj Søndberg-Jeppesen

@Martin Sørensen: God pointe,

Personligt synes jeg at vi/vim minder lidt om en tidlig -noget tunghør ugdave af SIRI. I stedet for at tale, skriver man bare hvad man vil. Vil man afslutte skriver man :quit og har dummet sig skriver man :undo.
Kobler man det med tale til tekst har man brugervenlighed på appleniveau :)

  • 0
  • 0
Log ind eller Opret konto for at kommentere
IT Company Rank
maximize minimize