Denne artikel er en del af VIM Brugervejledning serien:

  • Begynderhåndbogen til at begynde at bruge Vim
  • Vim Tastaturgenveje Cheatsheet
  • 5 Vim Tips og tricks til erfarne brugere
  • 3 Nyttige VIM Editor Tips og tricks til avancerede brugere
  • Sådan aktiverer du Vim i en tekstbehandler

Vim-editoren tilbyder så mange funktioner, at det er meget svært at lære dem alle. Selvom at bruge mere og mere tid på kommandolinjedirektøren, hjælper det altid, at du ikke benægter det faktum, at du lærer nye og produktive ting hurtigere, mens du interagerer med andre Vim-brugere. Her er nogle Vim tips og tricks til dig.

Bemærk - For at lave eksemplerne her brugte jeg Vim version 7.4.52.

1. Arbejde med flere filer

Hvis du er en softwareudvikler eller en person, der bruger Vim som deres primære editor, er chancerne for, at du skal arbejde med flere filer samtidigt. Følgende er nogle nyttige tips, du kan bruge, mens du arbejder med flere filer.

I stedet for at åbne forskellige filer i forskellige shell-faner, kan du åbne flere filer på en enkelt fane ved at sende deres filnavne som argumenter til vim-kommandoen. For eksempel:

 vim file1 file2 file3 

Den første fil (fil1 i eksemplet) bliver den aktuelle fil og læses i bufferen.

Når du er inde i editoren, skal du bruge kommandoen :next eller :n til at flytte til den næste fil, og kommandoen :prev eller :N skal vende tilbage til den forrige. For at skifte direkte til den første eller den sidste fil skal du bruge henholdsvis :bf og :bl kommandoer. For at åbne og begynde at redigere en anden fil, skal du bruge kommandoen :e med filnavnet som argument (brug den komplette sti, hvis filen ikke er til stede i den aktuelle mappe).

På ethvert tidspunkt, hvis det er nødvendigt at liste ned de aktuelt åbnede filer, skal du bruge kommandoen :ls . Se skærmbilledet vist nedenfor.

Bemærk, at "% a" repræsenterer filen i det aktuelle aktive vindue, mens "#" repræsenterer filen i det forrige aktive vindue.

2. Spar tid med auto fuldført

Vil du spare tid og forbedre nøjagtigheden? Brug forkortelser. De kommer til nytte, mens du skriver lange, komplekse ord, der ofte gentager hele filen. Vim-kommandoen for forkortelser er ab . For eksempel, når du kører kommandoen

 : Så snart som muligt, så hurtigt som muligt 

Hver forekomst af ordet "asap" erstattes automatisk af "så hurtigt som muligt", som du skriver.

På samme måde kan du også bruge forkortelser til at rette op på almindelige typefeil. For eksempel kommandoen

 : ab modtage modtage 

vil automatisk rette stavningsfejlen, når du skriver. Hvis du vil forhindre ekspansion / korrektion på en bestemt begivenhed, skal du bare skrive "Ctrl + V" efter ordet sidste tegn og derefter trykke på mellemrumstasten.

Hvis du vil gemme den forkortelse, du har oprettet, så den er tilgængelig for dig, næste gang du bruger Vim-editoren, skal du tilføje den komplette ab kommando (uden det oprindelige kolon) til "/ etc / vim / vimrc" -filen. For at fjerne en bestemt forkortelse kan du bruge kommandoen una . For eksempel :una asap

3. Split windows for nemt at kopiere / indsætte

Der er tidspunkter, hvor du vil kopiere et stykke kode eller en del af tekst fra en fil til en anden. Mens processen er let, når du arbejder med GUI-redaktører, bliver det lidt kedelig og tidskrævende, mens du arbejder med en kommandolinjeditor. Heldigvis tilbyder Vim en måde at minimere den tid og den indsats, der kræves for at gøre dette.

Åbn en af ​​de to filer og divider derefter Vim-vinduet for at åbne den anden fil. Dette kan gøres ved at bruge split kommandoen med filnavnet som argument. For eksempel,

 : split test.c 

vil dele vinduet og åbne "test.c".

Vær opmærksom på, at kommandoen deler Vim-vinduet vandret. Hvis du vil dele vinduet lodret, kan du gøre det ved hjælp af kommandoen vsplit . Når begge filer er åbnet, skal du kopiere emnerne fra en fil, trykke på "Ctrl + w" for at skifte kontrol til en anden fil og indsætte.

4. Gem en fil, du redigerede uden de nødvendige tilladelser

Der er tidspunkter, når du indser, at en fil kun er skrivebeskyttet, efter at der er foretaget en masse ændringer til den.

Selvom du lukker filen og genåbner den med de nødvendige tilladelser, er det en udvej, det er et stort spild af tid, hvis du allerede har lavet mange ændringer, da alle vil gå tabt under processen. Vim giver dig mulighed for at håndtere denne situation ved at lade dig ændre filtilladelser fra editoren, inden du gemmer den. Kommandoen til dette er:

 : w! sudo tee% 

Kommandoen vil bede dig om adgangskoden, ligesom sudo gør på kommandolinjen, og gemmer derefter ændringerne.

En relateret tip : For at få hurtig adgang til kommandoprompten, mens du redigerer en fil i Vim, skal du køre kommandoen :sh fra editoren. Dette vil placere dig i en interaktiv skal. Når du er færdig, skal du køre exit kommandoen for hurtigt at vende tilbage til din Vim-session.

5. Bevar indrykning under kopiering / indsættelse

De fleste af de erfarne programmører arbejder på Vim med automatisk indrykning aktiveret. Selv om det er en tidsbesparende praksis, skaber det et problem, mens du indsætter en allerede indrykket kode. Dette er for eksempel det, der skete, da jeg indsatte en allerede indrykket kode i en fil, der blev åbnet i Vim-editor med automatisk indrykning på.

Løsningen på dette problem er pastetoggle indstillingen. Tilføj linjen

 indstil pastetoggle = 

til din vimrc-fil, og tryk F2 i indsætningsmodus lige før du indsætter koden. Dette bør bevare den oprindelige indrykning. Bemærk, at du kan erstatte F2 med en anden nøgle, hvis den allerede er kortlagt til en anden funktionalitet.

Konklusion

Den eneste måde, du kan forbedre dine Vim editor-færdigheder yderligere, er at bruge kommandolinjeditoren til dit daglige arbejde. Bare noter ned de handlinger, der tager tid, og prøv derefter at finde ud af, om der er en editorkommando, der vil gøre handlingerne hurtigere.