Denna artikel är en del av VIM User Guide-serien:

  • Nybörjarhandboken för att börja använda Vim
  • Vim Tangentbord Genvägar Cheatsheet
  • 5 Vim Tips och tricks för erfarna användare
  • 3 Användbara VIM Editor Tips och tricks för avancerade användare
  • Hur man gör Vim till en ordbehandlare

Vim-redaktören erbjuder så många funktioner att det är väldigt svårt att lära dem alla. Medan du självklart spenderar mer och mer tid på kommandoradsredigeraren, hjälper det dig inte att förneka det faktum att du lär dig nya och produktiva saker snabbare samtidigt som du interagerar med andra Vim-användare. Här är några Vim tips och tricks för dig.

Obs! För att skapa exemplen här använde jag Vim version 7.4.52.

1. Arbeta med flera filer

Om du är en mjukvaruutvecklare eller någon som använder Vim som sin primära redaktör, är chansen att du måste arbeta med flera filer samtidigt. Nedan följer några användbara tips som du kan använda när du arbetar med flera filer.

Istället för att öppna olika filer i olika skalflikar kan du öppna flera filer i en enda flik genom att skicka sina filnamn som argument till kommandot vim. Till exempel:

 vim file1 file2 file3 

Den första filen (fil1 i exemplet) blir den aktuella filen och läses in i bufferten.

När du är inne i redigeraren, använd kommandot :next eller :n att flytta till nästa fil, och :prev eller :N återgår till föregående. För att direkt växla till den första eller den sista filen, använd respektive :bl :bf och :bl kommandon. För att öppna och börja redigera en annan fil, använd kommandot :e med filnamnet som argument (använd den fullständiga sökvägen om filen inte finns i den aktuella katalogen).

Vid något tillfälle om det är nödvändigt att lista ned nu öppnade filer, använd kommandot :ls . Se skärmbilden nedan.

Observera att "% a" representerar filen i det aktuella aktiva fönstret, medan "#" representerar filen i föregående aktiva fönster.

2. Spara tid med automatisk slutförd

Vill du spara tid och förbättra noggrannhet? Använd förkortningar. De är användbara när du skriver långa, komplexa ord som återkommer ofta i hela filen. Vim-kommandot för förkortningar är ab . Till exempel, efter att du kört kommandot

 : Så snart som möjligt, så snart som möjligt 

varje händelse av ordet "asap" kommer automatiskt att ersättas med "så snart som möjligt", när du skriver.

På samma sätt kan du också använda förkortningar för att rätta till vanliga typfel. Till exempel kommandot

 : ab mottaga mottagning 

kommer automatiskt att korrigera stavfel när du skriver. Om du vill förhindra att expansionen / korrigeringen sker vid en viss händelse, skriv bara "Ctrl + V" efter den sista bokstaven och tryck sedan på mellanslagstangenten.

Om du vill spara den förkortning du har skapat så att den är tillgänglig för dig nästa gång du använder Vim-redigeraren, lägg till komplett ab kommandot (utan det ursprungliga kolonet) till "/ etc / vim / vimrc" -filen. För att ta bort en viss förkortning kan du använda kommandot una . Till exempel :una asap .

3. Dela windows för att enkelt kopiera / klistra in

Det finns tillfällen när du vill kopiera en bit kod eller en del text från en fil till en annan. Medan processen är lätt när man arbetar med GUI-redaktörer blir det lite tråkigt och tidskrävande när man arbetar med en kommandoradsredaktör. Lyckligtvis erbjuder Vim ett sätt att minimera den tid och det arbete som krävs för att göra detta.

Öppna en av de två filerna och dela sedan Vim-fönstret för att öppna den andra filen. Detta kan göras genom att använda split kommandot med filnamnet som argument. Till exempel,

 : split test.c 

kommer att dela upp fönstret och öppna "test.c".

Observera att kommandot delade Vim-fönstret horisontellt. Om du vill dela upp fönstret vertikalt kan du göra det med kommandot vsplit . När båda filerna är öppna kopierar du sakerna från en fil, trycker du på "Ctrl + w" för att växla kontrollen till en annan fil och klistra in.

4. Spara en fil du redigerade utan de behöriga behörigheterna

Det finns tillfällen när du inser att en fil endast är skrivskyddad efter att ha gjort en massa förändringar i den.

Även om du stänger filen och återupptar den med nödvändiga behörigheter är en utväg, är det ett helt slöseri med tid om du redan har gjort många förändringar, eftersom alla kommer att gå vilse under processen. Vim ger dig ett sätt att hantera denna situation genom att låta dig ändra filbehörigheter från redaktören innan du sparar den. Kommandot för detta är:

 : w! sudo tee% 

Kommandot kommer att fråga dig lösenordet, precis som sudo gör på kommandoraden, och spara sedan ändringarna.

En relaterad tips : För att snabbt komma åt kommandotolken medan du redigerar en fil i Vim, kör kommandot :sh från redigeraren. Detta kommer att placera dig i ett interaktivt skal. När du är klar kör kör exit att snabbt återvända till din Vim-session.

5. Behåll inryckning under kopiering / klistra in

De flesta av de erfarna programmörerna arbetar med Vim med automatisk inryckning aktiverad. Även om det är en tidsbesparande övning, skapar det ett problem medan du klistrar in en redan inryckt kod. Det här är till exempel vad som hände när jag klistrade in en redan inryckt kod i en fil öppnad i Vim-redigeraren med automatisk inmatning på.

Lösningen på detta problem är alternativet pastetoggle . Lägg till raden

 ställa in pastetoggle = 

till din vimrc-fil och tryck på F2 i inmatningsläge precis innan du klistrar in koden. Detta bör bevara den ursprungliga inrymmet. Observera att du kan ersätta F2 med någon annan nyckel om den redan är mappad till någon annan funktionalitet.

Slutsats

Det enda sättet att ytterligare förbättra dina Vim-redigeringsfärdigheter är att använda kommandoradsredaktören för ditt dagliga arbete. Notera bara de åtgärder som tar tid och försök ta reda på om det finns ett redigeringskommando som gör åtgärderna snabbare.