Selv om tekstredigeringsprogrammer måske ikke er det mest sexede emne i verden, er de virkelig vigtige. Et af de mest kraftfulde tekstredigeringsprogrammer, og derfor et af de mest populære, er Vim (en forkortelse for “Vi Improved”).
Selv om Vim har en skarp indlæringskurve (som kan overvindes ved at bruge timer på at lege med den interaktive Vim-tutorial) og kan være skræmmende for nye brugere, elsker udviklere det. Det skyldes, at det giver dem mulighed for at være mere produktive, og fordi det kan tilpasses i det uendelige. Dette gøres ved at redigere Vim-konfigurationsfilen, kendt som “dotfile”.
Dotfilens kraft
Dotfilen er utrolig kraftfuld og kan styre næsten alle dele af Vim-oplevelsen. Det er virkelig nemt at redigere din egen. Først skal du kontrollere, at du rent faktisk har en. Det kan du gøre ved at køre:
cat ~/.vimrc
Hvis der ikke er noget der, skal du blot oprette den:
touch ~/.vimrc
Nu er du klar til at begynde at tilpasse Vim. For at gøre det skal du åbne det i din foretrukne teksteditor. Det kan være Vim, eller Nano, eller endda Gedit. Bare så længe det er en klartekst editor.
Vim dotfilen har sit eget indlejrede programmeringssprog, kaldet VimScript. Det er det, som vi vil bruge i resten af denne artikel. Men du skal ikke være bekymret. Det er virkelig simpelt at forstå. For at komme i gang, er her nogle nyttige linjer, som du kan tilføje til din konfigurationsfil.
Håndter indrykning for dig
I sidste måned offentliggjorde jeg en artikel om, hvordan man skriver ren, læsbar kode. En af de punkter, jeg gjorde opmærksom på, var, at man altid skal undgå at bruge “bløde faner”, da forskellige tekstredigeringsprogrammer fortolker dem på forskellige måder, og det kan skabe problemer i programmeringssprog, der er strenge med hensyn til indrykning, såsom Ruby og Python.
Heldigvis kan du med et par linjer VimScript forvandle hver tabulator til et foruddefineret antal mellemrum. Du skal blot tilføje følgende til din Vim dotfil.
set expandtabset tabstop=4
set softtabstop=4
set shiftwidth=4
Python-brugere bør bruge fire mellemrum, som det anbefales i PEP-8-standarden. For andre sprog er det bedst, hvis du enten læser den relevante stilvejledning eller bruger dit bedste skøn.
Du kan også indstille den til automatisk indrykning, hvor det er nødvendigt. Igen skal du blot tilføje følgende kodelinjer til din dotfil. Den anden kodelinje sikrer, at ingen linje nogensinde kan være længere end 80 tegn.
set autoindentset textwidth=80
Gør Vim til en distraktionsfri tekstbehandler
Selv om Vim er en fantastisk teksteditor for udviklere, er det også fantastisk for dem, der ønsker et forenklet, tilpasseligt, men alligevel distraktionsfrit miljø til at skrive.
Med et par linjer kode kan du konfigurere vim til at skifte til en “tekstbehandler”-tilstand, når det er nødvendigt. Dette ændrer, hvordan teksten formateres i editoren, og introducerer ting som stavekontrol.
Først skal du oprette en funktion kaldet WordProcessorMode og inkludere følgende kodelinjer.
func! WordProcessorMode()setlocal textwidth=80
setlocal smartindent
setlocal spell spelllang=en_us
setlocal noexpandtab
endfu
Derefter skal du definere, hvordan du vil aktivere den. Den følgende kodelinje giver dig mulighed for at oprette en kommando. Hvis du kalder “WP”, når du er i kommando-tilstand, aktiveres tekstbehandlingstilstanden, hvis du kalder “WP”.
com! WP call WordProcessorMode()
For at teste, at det virker, skal du åbne en ny tekstfil i VIM og trykke på escape. Skriv derefter “WP”, og tryk på enter. Skriv derefter noget tekst, hvor nogle ord bevidst er stavet forkert. Hvis VIM fremhæver dem som ukorrekte, så ved du, at du har installeret det korrekt.
Installer Vundle
Vundle er en pakkehåndtering for Vim, der ikke er alt for forskellig fra Ubuntu-pakkehåndteringen. Den giver dig mulighed for at udvide funktionaliteten af den, ved at installere tredjepartspakker. Mange af disse er rettet mod programmører; andre er mere generaliserede produktivitetsværktøjer.
Det er nemt at installere Vundle. Først skal du installere Git-versionskontrolsystemet. Hvis du ikke allerede har det, skal du installere det. Kommandoen til det på Ubuntu er:
sudo apt-get install git
Derefter skal du klone Vundle-repositoriet på din lokale maskine. Det er nemmere, end det lyder. Du skal bare køre følgende kommando, og husk, at der er forskel på store og små bogstaver.
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
Derefter skal du tilføje følgende linjer til din Vim dotfile.
set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'L9'
call vundle#end()
filetype plugin indent on
Mellem “Vundle#Begin()” og “Vundle#End()” er der, hvor du skal tilføje de pakker, du ønsker at installere. Den eneste nødvendige er “VundleVim/Vundle.vim”, men jeg besluttede også at installere “L9” for at illustrere, hvordan man installerer pakker fra tredjeparter.
Når disse linjer er blevet tilføjet til din Vim-konfigurationsfil, skal du gøre en ting mere. Afslut din Vim dotfil, og åbn et nyt tekstdokument. I kommandomodus skal du køre “:PluginInstall”.
Hvis det har virket, vil det se nogenlunde sådan her ud.
Skift hvordan det ser ud
Mange tekstredigeringsprogrammer (som en af mine personlige favoritter – iA Writer) giver dig mulighed for at skifte mellem en mørkere, ‘nat’-tilstand og en dagtilstand. Vim er ingen undtagelse.
For at ændre farveskemaet skal du blot tilføje “colorscheme” til din dotfil, med det tema du ønsker at bruge. Den skal se således ud.
colorscheme darkblue
Her bruger jeg “darkblue”, som foreslået af Wyatt Andersen på Twitter. Der er naturligvis snesevis af andre at vælge imellem.
For at se, om det virkede, skal du genåbne Vim og bekræfte det visuelt.
Smæk noget SPF13 på
Hvis du ikke føler dig sikker nok til at ændre Vim dotfile, er der en enklere måde. SPF13 er en distribution af Vim, der leveres færdigbygget med de plugins og dotfile-modifikationer, du har brug for for at være en produktiv udvikler. Det er bemærkelsesværdigt enkelt at installere den på Linux, FreeBSD og OS X. Du skal bare åbne en terminal og køre:
curl http://j.mp/spf13-vim3 -L -o - | sh
Derefter skal du lade den gøre, hvad den skal gøre. Når den er færdig, har du en turboladet Vim-installation. Hvis du er på Windows, skal du læse vejledningen på SPF13-webstedet.
At bruge SPF13 forhindrer dig dog ikke i at konfigurere Vim, som du vil have det. Du skal blot redigere .vimrc dotfilen efter behov.
Fejl sker
Det er værd at bemærke, at hvis du laver en fejl i din Vim-dotfil, vil Vim lade dig vide det med nogle nyttige fejlfindingsmeddelelser.
Hvis du har problemer med at forstå dem, er et godt sted at bede om hjælp på StackOverflow og Vim-subreddit. Du skal blot være opmærksom på disse enkle råd for at øge chancen for, at dit spørgsmål bliver besvaret.
Over To You
Vim er en bemærkelsesværdig teksteditor. En af de fantastiske ting ved den er, hvordan den lader dig konfigurere den efter dit hjertes indhold. Du kan også tilføje funktioner fra andre tekstredigeringsprogrammer til Vim. Hvis du vil have mere inspiration, kan jeg varmt anbefale at du læser den fremragende Learn VimScript The Hard Way af Steve Losh.