Tekstverwerkers, hoewel misschien niet het meest sexy onderwerp ter wereld, zijn erg belangrijk. Een van de krachtigste tekstverwerkers, en daarom ook een van de populairste, is Vim (kort voor “Vi Improved”).
Hoewel Vim een scherpe leercurve heeft (die kan worden overwonnen door uren te spelen met de interactieve Vim tutorial), en intimiderend kan zijn voor nieuwe gebruikers, zijn ontwikkelaars er dol op. Dat komt omdat het hen in staat stelt om productiever te zijn, en omdat het eindeloos kan worden aangepast. Dit wordt gedaan door het Vim configuratiebestand, bekend als de “dotfile”, te bewerken.
De kracht van de dotfile
De dotfile is verbazingwekkend krachtig, en kan bijna elk deel van de Vim ervaring regelen. De jouwe bewerken is heel eenvoudig. Eerst moet je controleren of je er wel een hebt. Dit kun je doen door te draaien:
cat ~/.vimrc
Als er niets is, moet je het gewoon maken:
touch ~/.vimrc
Nu bent u klaar om Vim aan te passen. Om dat te doen, moet je het openen in je favoriete tekst editor. Dit kan Vim zijn, of Nano, of zelfs Gedit. Zolang het maar een platte tekst editor is.
De Vim dotfile heeft zijn eigen programmeertaal, genaamd VimScript. Dat is wat we gaan gebruiken in de rest van dit artikel. Maar maak je geen zorgen. Het is heel eenvoudig te begrijpen. Om je op weg te helpen, zijn hier enkele nuttige regels om aan je configuratiebestand toe te voegen.
Laat de inspringing voor je afhandelen
Vorige maand publiceerde ik een artikel over hoe je schone, leesbare code kunt schrijven. Een van de punten die ik maakte was om altijd het gebruik van ‘soft tabs’ te vermijden, omdat verschillende tekst editors ze op verschillende manieren interpreteren, en het kan problemen introduceren in programmeertalen die streng zijn over inspringing, zoals Ruby en Python.
Gelukkig kun je met een paar regels VimScript elke tab veranderen in een voorgedefinieerd aantal spaties. Voeg gewoon het volgende toe aan je Vim dotfile.
set expandtabset tabstop=4
set softtabstop=4
set shiftwidth=4
Python gebruikers zouden vier spaties moeten gebruiken, zoals wordt aanbevolen door de PEP-8 standaard. Voor andere talen kunt u het beste de relevante stijlgids lezen, of uw eigen oordeel vellen.
U kunt het ook zo instellen dat het automatisch inspringt waar nodig. Nogmaals, voeg de volgende regels code toe aan je dotfile. De tweede regel code zorgt ervoor dat geen enkele regel ooit langer kan zijn dan 80 karakters.
set autoindentset textwidth=80
Verander Vim in een afleidingsvrije tekstverwerker
Hoewel Vim een geweldige tekstverwerker is voor ontwikkelaars, is het ook geweldig voor diegenen die een vereenvoudigde, aanpasbare en toch afleidingsvrije omgeving willen om te schrijven.
Met een paar regels code, kun je vim zo instellen dat het overschakelt naar een “tekstverwerker” modus wanneer dat nodig is. Dit verandert hoe tekst wordt geformatteerd in de editor, en introduceert dingen zoals spellingscontrole.
Maak eerst een functie genaamd WordProcessorMode, en voeg de volgende regels code toe.
func! WordProcessorMode()setlocal textwidth=80
setlocal smartindent
setlocal spell spelllang=en_us
setlocal noexpandtab
endfu
Vervolgens moet u definiëren hoe u de functie wilt activeren. Met de volgende regel code kunt u een commando maken. Als u in de opdrachtmodus “WP” aanroept, wordt de tekstverwerkingsmodus geactiveerd.
com! WP call WordProcessorMode()
Om te testen of het werkt, opent u een nieuw tekstbestand in VIM, en drukt u op escape. Typ dan “WP”, en druk op enter. Type dan wat tekst, met enkele woorden opzettelijk verkeerd gespeld. Als VIM ze als fout markeert, dan weet je dat je het correct hebt geïnstalleerd.
Installeer Vundle
Vundle is een package manager voor Vim, niet al te verschillend van de Ubuntu package manager. Het staat je toe om de functionaliteit uit te breiden, door pakketten van derden te installeren. Veel van deze zijn gericht op programmeurs; anderen zijn meer algemene productiviteitstools.
Het installeren van Vundle is eenvoudig. Eerst moet je het Git versiebeheersysteem installeren. Als je het nog niet hebt, installeer het. Het commando daarvoor op Ubuntu is:
sudo apt-get install git
Daarna moet je de Vundle repository klonen op je lokale machine. Dat is eenvoudiger dan het klinkt. Voer gewoon het volgende commando uit, en onthoud dat het hoofdlettergevoelig is.
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
Voeg dan de volgende regels toe aan je 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
Tussen “Vundle#Begin()” en “Vundle#End()” voeg je de pakketten toe die je wilt installeren. De enige verplichte is “VundleVim/Vundle.vim”, maar ik heb besloten om ook “L9” te installeren om te illustreren hoe je third-party packages installeert.
Zodra deze regels zijn toegevoegd aan je Vim config bestand, moet je nog één ding doen. Verlaat uw Vim dotfile, en open een nieuw tekst document. In commando mode, voer “:PluginInstall” uit.
Als het gelukt is, ziet het er ongeveer zo uit.
Verander hoe het eruit ziet
Veel tekst editors (zoals een van mijn persoonlijke favorieten – iA Writer) laten je schakelen tussen een donkere, ‘nacht’ modus, en een dagmodus. Vim is daarop geen uitzondering.
Om het kleurenschema te veranderen, voeg je “colorscheme” toe aan je dotfile, met het thema dat je wenst te gebruiken. Het zou er als volgt uit moeten zien.
colorscheme darkblue
Hier gebruik ik “darkblue”, zoals voorgesteld door Wyatt Andersen op Twitter. Natuurlijk, er zijn er tientallen om uit te kiezen.
Om te zien of het werkte, heropen Vim, en bevestig visueel.
Slap on some SPF13
Als je je niet zeker genoeg voelt om Vim dotfile aan te passen, is er een eenvoudigere manier. SPF13 is een distributie van Vim die voorgebouwd is met de plugins en dotfile-aanpassingen die je nodig hebt om een productieve ontwikkelaar te zijn. Het installeren ervan op Linux, FreeBSD en OS X is opmerkelijk eenvoudig. Open gewoon een terminal en voer uit:
curl http://j.mp/spf13-vim3 -L -o - | sh
Dan, laat doen wat het moet doen. Als het klaar is, heb je een turbo-charged Vim installatie. Als u Windows gebruikt, lees dan de instructies op de SPF13 website.
Het gebruik van SPF13 weerhoudt je er echter niet van om Vim te configureren zoals jij dat wilt. Bewerk gewoon het .vimrc dotfile zoals vereist.
Fouten gebeuren
Het is de moeite waard om op te merken dat als je een fout maakt in je Vim dotfile, Vim je dat laat weten met een aantal handige debug boodschappen.
Als je moeite hebt om ze te begrijpen, is een geweldige plek om hulp te vragen StackOverflow en de Vim-subreddit. Let op dit eenvoudige advies om de kans te vergroten dat je vraag wordt beantwoord.
Over To You
Vim is een opmerkelijke teksteditor. Een van de geweldige dingen ervan is dat je het naar hartelust kunt configureren. Je kunt ook functies van andere tekstverwerkers toevoegen aan Vim. Als je meer inspiratie wilt, raad ik je aan het uitstekende boek Learn VimScript The Hard Way van Steve Losh te lezen.