#Klooienmetcomputers

VIM

Arnout van Kempen over rommelen in een digitale wereld.

Tot nu toe hebben we steeds nano gebruikt als editor. Dat werkt goed, maar het kan beter. Een complexere, maar handige editor is vim. Onder Unix-gebruikers een klassieker, die eerst als Vi bekend stond en daar zijn verschillende varianten op gemaakt. Wij gaan vim gebruiken. Om te beginnen moeten we vim installeren, op de Raspberry Pi werkt dat eenvoudig met

sudo apt update
sudo apt install vim

Een groot voordeel van vim is het gebruik van plugins. Daarvoor installeren we meteen een populaire plugin-manager:

mkdir -p ~/.vim/autoload
curl -flo ~/.vim/autoload/plugin.vim https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

NB: vanaf curl is één regel!

Vervolgens moet je wat standaard-instellingen regelen. Hiertoe open je een configuratiebestand met de net geïnstalleerde editor:

vim ~/.vimrc

Je kan hierbij ook het bestand van mijn github halen. Ik heb het bestand hernoemd naar vimrc om het makkelijk vindbaar te houden, maar let op dat als je het bestand lokaal hebt gezet in je homedirectory, dat je het hernoemd en er een punt voor zet.

Deze configuratiefile zal een aantal instellingen handig zetten, maar zal vooral twee plugins laden die voor Rust handig zijn. De eerste keer dat je nu vim start, moet je in vim het commando :PlugInstall geven, zodat de plugins daadwerkelijk geïnstalleerd worden. Als alles goed is gegaan, zal je zien dat je in vim een aantal aardige commando’s hebt gekregen. Met name :ALELint en :ALEFix kan ik aanraden om eens te proberen.

Ook als je die commando's nooit gebruikt, zal je merken dat ieder Rust-bestand dat je maakt in vim automatisch netjes wordt opgemaakt bij opslaan. Verder zal je merken dat vim tabs automatisch omzet naar spaties, dat inspringen werkt zoals het hoort en dat je code met kleurcodering leesbaarder wordt gemaakt.

Tenslotte wijs ik nog graag op een verschijnsel waar je plezier van gaat hebben: In vim krijg je direct al waarschuwingen en foutmeldingen van de compiler te zien. Neem bijvoorbeeld de code uit aflevering 36, waar ik compound types liet zien. Daar zat toen een bewuste 'fout' in, die weliswaar door de compiler wel kon worden verwerkt, maar die wel een warning gaf: een ongebruikte variabele. Als je die code met cargo hebt gemaakt en opent in vim, dan krijg je direct te zien waar de warning betrekking op heeft; er staat een W voor de relevante regel. Dat is handig, als je na compiler-fouten en -warnings snel wil zien waar je iets moet verbeteren. Geen regelnummers meer onthouden zoals met nano dus, maar direct in vim zien wat er aan de hand is.

Mijn advies is wel wat te stoeien met vim voor je er echt op gaat vertrouwen. Anders dan nano heeft vim een aparte 'normale' modus waarin je commando's kan geven die beginnen met : en een 'insert' modus om tekst in te voeren. Het kan even zoeken zijn hoe alles werkt. Maar als het dan werkt, kan je vim ook volledig naar je hand zetten en laten werken zoals je wilt. Iets complexer dan nano, veel krachtiger.

Wie mee wil doen met #klooienmetcomputers kan dat doen via GitHub. Maak een account op www.github.com en zoek naar Abmvk/kmc. Het account Abmvk volgen kan ook. Lezers zijn vrij te gebruiken wat ze willen en om zelf zaken toe te voegen of aan te passen, vragen te stellen of commentaar te leveren.

Arnout van Kempen di CCO CISA is Senior manager Risk & Compliance bij Baker Tilly. Hij schrijft op persoonlijke titel. Hij is lid van de Commissie Financiƫle verslaggeving & Accountancy van de AFM en lid van de signaleringsraad van de NBA. Daarnaast is hij diaken van het bisdom 's-Hertogenbosch.

Gerelateerd

reacties

Reageer op dit artikel

Spelregels debat

    Aanmelden nieuwsbrief

    Ontvang elke werkdag (maandag t/m vrijdag) de laatste nieuwsberichten, opinies en artikelen in uw mailbox.

    Bent u NBA-lid? Dan kunt u zich ook aanmelden via uw ledenprofiel op MijnNBA.nl.