fbpx
Komma igång med VIM (uppdatering 2021)

Komma igång med VIM (uppdatering 2021)

Komma igång vim: Valet av textredigerare kan vara en het debattpunkt bland utvecklare. Det finns till och med en Wikipedia-posten på denna vanliga rivalitet. För att vara säker är det inte vad du använder utan hur du använder det. En professionell textredigerare kan dock göra en enorm skillnad i ditt utvecklingsarbetsflöde och produktivitet. En sådan textredigerare är vim.

Det finns otaliga textredigerare och IDE att välja mellan. Men ofta när du frågar erfarna utvecklare kommer valet alltid till två olika redaktörer: vim och Emacs. Både vim och Emacs är kommandoradsbaserade redaktörer som har funnits i mer än 25 år. Medan de båda har sina styrkor och svagheter kan man argumentera för att vim har en något mindre brant inlärningskurva. Dessutom erbjuder vim en starkare och mycket aktiv gemenskap kring den.

Det här inlägget tar en titt på varför vim är en idealisk textredigerare för utvecklare som vill förbättra sitt arbetsflöde. Vi går igenom steg för att komma igång, samt tillgängliga konfigurationsalternativ.

Varför använda vim?

vim (står för "vi förbättrad") är en klon av klassikern vi redaktör för Unix-baserade system. Som namnet antyder är vim en uppdaterad version av vi, den senare visas först 1976. vim släpptes först 1991 av den holländska programmeraren Bram Moolenaar. Att använda en textredigerare med denna långa historik säkerställer en viss nivå av stabilitet och mognad. Dessutom har den den största fördelen med allestädes över alla Unix-baserade operativsystem - inklusive Linux-servrar.

En av de viktigaste principerna för vim som använder så lite handrörelse som möjligt. Håll händerna på "hemrad" (dvs. den mellersta raden på tangentbordet börjar med a, s, d, f, minskar rörelse och därmed ineffektivitet. Som ett exempel använder du knapparna istället för att använda piltangenterna för navigering h (vänster), j (ner), k (upp och l (rätt). Medan piltangenterna fortfarande fungerar i vim kan det bli mycket snabbare att vänja sig vid detta olika arbetsflöde.

En annan viktig egenskap hos vim är användningen av lägen. De flesta textredigerare har bara ett enda läge - vad du skulle kalla infogningsläget i vim. Infoga läge fungerar precis som en vanlig textredigerare. Att skriva vissa tangenter matar alltid in motsvarande tecken.

I vim är det läge du startar i normalt läge. I det här läget tilldelar vim nästan varje tangent ett kommando eller "snabbtangent" för vanliga redigeringsfunktioner och arbetsflöden. Om du till exempel skriver w i normalt läge kommer markören till början av nästa ord. Om du skriver 0 kommer markören till början av markörraden. Nedan följer en översikt över några av de vanligaste kommandona i vim. Detta borde ge en uppfattning om hur mycket vim kan minska på repetitiva redigeringsuppgifter.

Vanliga kommandon

$ - flytta markören till slutet av den aktuella raden

gg - gå till första raden i dokumentet

G - gå till sista raden i dokumentet

dd - radera den aktuella raden

2dd - ta bort nuvarande och följande rad

d$ - ta bort från den aktuella markörpunkten till slutet av raden

r - ersätt ett enda tecken (följ detta kommando med det tecken du vill ersätta med)

Detta är bara ett litet urval av de 100+ vim-kommandon som finns. Antalet kommandon kan vara något skrämmande för någon som överväger vim-redigeraren. Att lära sig även några kommandon åt gången kan dock drastiskt ändra sättet du arbetar med text på.

Komma igång vim

För att starta vim för första gången, öppna din terminal. jag rekommenderar verkligen iTerm2, även om standard Terminal-appen också fungerar bra. Medan du kan börja använda vim helt enkelt genom att skriva vim, rekommenderar jag att du namnger filen i förväg:

vim min-första-text-fil.txt

 

Detta öppnar upp en ny instans av vim:

Komma igång vim

När du först öppnar vim kommer det att vara i vad vim hänvisar till som normala läge. Normalt läge är det primära läget för vim. I det här läget är nästan varje tangent på tangentbordet en snabbtangent för vanliga redigeringskommandon. Exempel är "radera ord", "flytta markören till slutet av raden", "ersätt text under markören", etc.

För att faktiskt skriva text i vim måste du ange infoga läge. För att göra detta, skriv bara bokstaven i. När du träffar i, vim fungerar som en vanlig textredigerare. I infogningsläge matar alla tangenter in sina vanliga tecken.

Komma igång vim

Skriv in lite text och tryck sedan på esc för att återgå till normalt läge. Om du någonsin är osäker på vilket läge du befinner dig i, tryck bara esc för att återgå till normalt läge och börja om.

Medan vår nya fil har ett namn, finns den fortfarande bara i en tillfällig cache och måste sparas ordentligt i systemet. För att spara en fil, skriv :w tryck sedan på Enter.

Komma igång vim

Om du vill spara filen och avsluta vim samtidigt skriver du :wq ange sedan.

För att avsluta vim utan att spara dina ändringar, skriv :q! ange sedan.

Bli bekväm med vim

Ovan är det mesta av en typisk redaktörs funktionalitet. Detta repar dock knappt ytan på vad vim kan. För att ta full kontroll är det nödvändigt att bli bekväm med normalt läge och dess viktigaste funktioner.

Ett sätt att förbättra typeffektiviteten är att använda h j k l knappar i normalt läge. Dessa tar platsen för de vanliga piltangenterna. Detta minskar handrörelsen och eliminerar behovet av höger hand för att komma åt piltangenterna.

h är för att flytta åt vänster.

j är för att flytta ner.

k är för att flytta upp.

l är för att flytta rätt.

Det kan ta lite tid att vänja sig vid. När du väl har antagit det här nya arbetsflödet vill du troligen alltid använda det för navigering.

Komma igång vim

Markörrörelse

Låt oss utöka dessa markörrörelsekommandon ytterligare. Skriver H flyttar markören till toppen av skärmen. M flyttar markören till mittraden på skärmen och L flyttar markören till botten av skärmen. Du kan komma ihåg dessa enkelt för att stå som “Hög”, “Mellan” och “Låg”.

Det finns ett område där vim verkligen lyser över typiska textredigerare. I vim kan du fritt flytta markören nästan var som helst på en given rad. Du behöver inte en mus alls för att flytta markören. Oavsett var du befinner dig på en rad kan du hoppa till början av raden genom att skriva 0. Skriver $ tar dig till slutet av den aktuella raden.

Vad händer om du vill hoppa över några ord? Skriver w hoppar till början av nästa ord (dvs. det första tecknet i nästa ord). Om du behöver göra en redigering eller tillägg till slutet av ordet, använd e. Detta leder markören till det sista tecknet i följande ord.

Du kan också utöka dessa kommandon genom att prefixa dem med ett nummer. Om du skriver 2w, hoppar markören fram två ord. 4w hoppar fyra ord framåt, 3e hoppar till den sista karaktären av de tre orden framåt, etc.

Om du någonsin behöver gå tillbaka till början av ett dokument (dvs. första raden), skriv gg. Skriver G tar dig till den sista raden i dokumentet.

När du väl har fattat det här blir det så enkelt att göra ändringar i ditt skrivande.

Utöka din vim-kunskap

En ofta citerad metod för att lära dig och förbättra dina vim-färdigheter är att gå igenom det inbyggda vimtutor. Detta levereras förinstallerat med vim. Du kan komma åt den genom att skriva vimtutor till din kommandorad:

Komma igång vim

Vimtutorn går igenom några av de vanligaste användningarna av vim. De inkluderade övningarna är inställda för att komma igång med att redigera text direkt. Som handledaren föreslår är det inte klokt att försöka memorera kommandona utan snarare att lära sig genom att göra. Det kan ta allt från 30 till 45 minuter att slutföra vimtutor i första hand. Jag rekommenderar att du går igenom handledaren regelbundet när du börjar. Du kommer gradvis att sänka din slutförande tid och lägga kommandona på muskelminnet.

Migrera från Vim till NeoVim

Den officiella versionen av Vim är en utmärkt textredigerare. Det har dock länge varit besvikelse över hur uppdateringar välkomnas eller integreras i projektet. Den ursprungliga och primära underhållaren, Bram Moolenaar, har något rykte för att förneka annars rimliga dragförfrågningar. Som svar på problem med inkludering i projektet har det skett flera gafflar och omfördelningar av Vim. Detta har varit ett försök att fokusera om underhållet av Vim-projektet mot samhällets behov.

En av de viktigaste av dessa projekt är NeoVim. En gaffel med den ursprungliga distributionen, NeoVim har för avsikt att förverkliga många av de funktioner som länge diskuterats i samhället. Nedan går vi över att komma igång med NeoVim. Oavsett om det helt flyttar från Vim eller nytt till Vims värld är NeoVim en utmärkt distribution.

Fördelar med NeoVim

En av de främsta fördelarna med NeoVim jämfört med den ursprungliga distributionen är möjligheten att köra uppgifter asynkront. Detta är särskilt fördelaktigt och efterlängtat. Den största fördelen här är asynkron linting i det programmeringsspråk du skriver för närvarande. Som en konsekvens av detta finns det ett brett utbud av NeoVim-plugins som utnyttjar den här funktionen.

Det är värt att nämna att några av funktionerna i NeoVim, såsom asynkron I / O, sedan dess har lagts till i Vim 8. Vim 8 lagt till lade till dessa funktioner till stor del på grund av framgång och mottagande av NeoVim. Med sitt fokus på samhällsstyrd utveckling har NeoVim visat sig uppdateras och underhålls ofta. Ett stort team av utvecklare bidrar aktivt till det.

Hämta och installera

För att ladda ner och installera NeoVim för OS X är det enklaste sättet via Homebrew i terminalen:

brygga installera neovim 

 

Alternativt kan du installera den senaste stabila versionen från här. Ytterligare distributioner är också tillgängliga för Linux och Windows.

När du väl har installerat bör du kunna köra nvim i terminalen för att starta NeoVim:

Komma igång vim

Migrera konfiguration från Vim till NeoVim

Om du har använt vim ett tag har du sannolikt konfigurationer som du vill överföra till NeoVim. De .vimrc filen lagrar alla konfigurationsinställningar. Du hittar det oftast i din hemkatalog (~/.vimrc).

NeoVim använder en helt annan konfigurationsfil som standard. Bara från början måste du vara inställd först för att kunna lägga till eller importera inställningar. Standardnamnet och platsen för NeoVims konfigurationsfil är ~/.config/nvim/init.vim. init.vim är NeoVim-motsvarigheten till .vimrc.

Det finns åtminstone ett par alternativ för att hantera konfigurationsinställningar i NeoVim:

  1. Göra en exakt kopia av .vimrc till ~/.config/nvim/init.vim (en av de enklaste lösningarna)

  2. Skapa en symlänk mellan ~/nvim/init.vim och ~/.vimrc

    Detta kan göras genom att köra följande 3 kommandon:

    mkdir -p $ {XDG_CONFIG_HOME: = $ HOME / .config}
    ln -s ~ / .vim $ XDG_CONFIG_HOME / nvim
    ln -s ~ / .vimrc $ XDG_CONFIG_HOME / nvim / init.vim

     

Om kompatibilitet och synkronisering mellan vim och NeoVim inte är en prioritet är förstahandsvalet det enklaste. Du behöver bara behålla init.vim efter att ha importerat några inställningar från ~/.vimrc.

Är Vim den bästa textredigeraren?

Är Vim den bästa textredigerarenNär man letar efter en bra textredigerare blir många förvirrade eftersom det finns så många val. Vim är dock en av de bästa textredigerarna. När du jämför det med moderna grafiska redaktörer, som Brackets och Atom, använder Vim bara en del av systemets totala minne. Det laddas också direkt och är mycket snabbare än Emacs.

En av de bästa sakerna med Vim är att det är enkelt att komma igång med redaktören. Visste du att Vim är mycket konfigurerbar och har anmärkningsvärda funktioner? Några av dessa funktioner är syntaxmarkering, grafiska versioner, musstöd och visuellt läge. Du hittar också många nya redigeringskommandon, vilket är utmärkt.

När det gäller support har Vim en energisk och entusiastisk gemenskap som erbjuder anmärkningsvärt stöd när det gäller att utveckla anmärkningsvärda plugins och tillhandahålla användbara Vim -tips och tricks både för nybörjare och experter.

Med stöd för Linux, Windows och Mac är Vim en pålitlig och stabil redaktör som integreras väl med många populära verktyg på marknaden. Du kommer gärna att veta att Vim alltid är tillgänglig. Alla Linux -maskiner har det.

Vim har också ett litet fotavtryck, snabb start, låg latens och möjliggör mer skärmutrymme, vilket är anmärkningsvärt. Vim är också mycket snabb, lyhörd och lätt, även när du redigerar stora källkodfiler.

Vim Text Editor -kommandon

Du kanske vet att Vim skiljer sig lite från konventionella Linux -textredigerare. Till exempel upprätthåller Vim den unika Unix -filosofin att göra en sak i taget och göra det rätt.

Visste du att den grundläggande tanken bakom denna filosofi är att de flesta programmerare spenderar större delen av sin tid på att redigera kod, inte att skriva den? Om du vill få ut det mesta av Vim bör du vara bekant med Vim -kommandon.

I Vim kan du tillbringa större delen av tiden i "normalt" läge och bara byta till "infoga" -läge när du måste lägga till eller ändra text. Detta är viktigt eftersom det säkerställer att alla redigeringar blir sina egna fristående operationer som du kan upprepa eller kedja med andra operationer.
Visste du att de flesta redigeringskommandon eventuellt kan föregås av ett nummer för att tillämpa det flera gånger? Du kan till exempel ta bort tre rader genom att trycka på 3dd. Det är också värt att notera att du har två alternativ för hur du kan markera text.

Till exempel kan du använda kommandon som dd, som tar bort en rad i taget och yy, som kopierar en rad. Det andra sättet är att markera text och kopiera texten till det namnlösa registret.

Liksom rörelsekommandon, om du sätter ett nummer framför kommandot, kommer det att öka antalet gånger en specifik uppgift är klar. Om du till exempel placerar ett nummer, till exempel 5, framför yy ökar antalet rader som kopieras. Det betyder att 5yy kommer att kopiera 5 rader.

  • yy - Kopierar en rad
  • yw - Kopierar ett ord
  • v - Markerar ett enda tecken åt gången med olika pilknappar eller knapparna k, h, j och l
  • V - Markerar en enda rad, och du kan använda rörelseknapparna för att markera ytterligare rader
  • p - Klistrar in vad du än har kopierat till det namnlösa registret
  • dd - Tar bort en textrad
  • dw - Tar bort ett ord

Observera att i kommandoläge bearbetar Vim -redigeraren olika tangentbordsinmatningar som kommandon. Å andra sidan, i infogningsläge, bearbetar redaktören dessa ingångar som sina ursprungliga värden. Du kan använda kommandoläget för att styra textredigering.

Hur öppnar jag textredigerare i Vim?

Du måste göra lite förberedelser innan du hoppar in i Vim. Du kan enkelt öppna en konsolterminal direkt från ditt Linux -operativsystem (operativsystem). Så snart ett terminalfönster öppnas kan du skriva ls -kommandot för att lista den aktuella katalogen.

Efter det skriver du mkdir Tutorial för att skapa en ny katalog. Det kallas handledning. Du kan gå in i katalogen genom att helt enkelt skriva cd -handledning. Du kan öppna ett dokument och skriva: vsplit /path-to-document /document. Observera att detta öppnar det angivna dokumentet och delar skärmen så att du enkelt kan se båda dokumenten.

Om filen inte finns för närvarande öppnar redigeraren en ny fil (tom). Om den existerar öppnar Vim filen så att du kan redigera den. Tänk på att du kan skapa en ny fil och redigera en befintlig med hjälp av vi.

Vim startar i kommandoläget - du kan inte skriva något i det här läget. Du kan gå in i infogningsläget genom att trycka på i.

Vim textobjekt

Vim textobjektDet bästa med textobjekt i Vim är att de låter dig göra ändringar eller modifieringar av ord, fraser och textavsnitt baserat på flera parametrar.

Du kommer att gilla hur Vim låter dig redigera din text med hög precision med hjälp av Vim -textobjekt. Det är därför Vims textobjekt är värda att förstå.

För att vara en effektiv redigerare i Vim måste du redigera bortom enskilda tecken. Redigera snarare efter mening, ord och stycke. Visste du att i Vim är dessa högre kontexter kända som textobjekt? Till exempel, när du skriver daw, följer Vim ditt kommando och tar sedan bort ett ord. Om du skriver ci 'hjälper Vim dig att ändra eller ändra text i enskilda citattecken.

Vim är utmärkt eftersom det ger dig denna precision genom att sömlöst kombinera dess olika användbara operatörer (ändra, ta bort, rycka, etc.) med kraftfulla textobjekt. Med hjälp av operatörer i kombination med dessa textobjekt, erbjuder Vim dig en fin detaljrikedom och mycket kraft för att redigera textbaserade dokument och kod.

Vim textmarkering

Det råder ingen tvekan om att ingen textredigerare verkligen är komplett utan syntax eller textmarkering, färgning av speciella fraser och nyckelord inom ett program. Visste du att syntaxmarkering betonar strukturen i ditt dokument?

Det hjälper också till att identifiera tryckfel och hjälper till med felsökningsändamål, vilket gör textredigering enklare och mer produktiv.
Vim -textmarkering är en funktion som visar text, särskilt källkod, i olika färger och teckensnitt, beroende på kategori av termer. Visste du att syntax eller textmarkering är på i Vim som standard?

Observera också att markeringsmekanismen använder olika osynliga tokens. Dessa sätts in i en Txtfmt -buffert med hjälp av intuitiva mappningar som erbjuds av filtyp -plugin.

angelo frisina solljusmedia

Författare Bio

Angelo har varit involverad i den kreativa IT-världen i över 20 år. Han byggde sin första webbplats 1998 med Dreamweaver, Flash och Photoshop. Han utvidgade sin kunskap och expertis genom att lära sig ett bredare spektrum av programmeringskunskaper, såsom HTML / CSS, Flash ActionScript och XML.

Angelo slutförde formell utbildning med CIW-programmet (Certified Internet Webmasters) i Sydney, Australien, där han lärde sig kärnan i datanätverk och hur det relaterar till infrastrukturen på internet.

Förutom att köra Sunlight Media, tycker Angelo om att skriva informativt innehåll relaterat till webb- och apputveckling, digital marknadsföring och andra tekniska relaterade ämnen.

en Kommentar

  • soundos Oktober 17, 2021 vid 8: 04 am

    Tack för informationen,