Bacon
Arnout van Kempen over rommelen in een digitale wereld.
De vorige keer hebben we nano vervangen door vim en daarbij vim zo ingesteld dat het een aantal hulpmiddelen geeft om beter met Rust te werken. Daar doen we vandaag nog een optie bij: bacon. Dit is een programmaatje dat parallel aan de editor meekijkt met je code en desgewenst foutmeldingen, warnings en aanwijzingen kan weergeven voor je code. Als je bijvoorbeeld op een Raspberry Pi werkt vanuit de GUI, dan kan je bacon starten in een terminal-venster en je vim in een ander venster. Je werkt zoals je gewend bent, maar intussen heb je in je andere venster de hulp van bacon. Je zal zien dat het min of meer dezelfde informatie geeft als de rust-compiler, maar overzichtelijker en zonder dat je daadwerkelijk moet compileren.
Eerst gaan we bacon installeren. Dat doe je vanuit de broncode op github, zodat het ook werkt op een Mac, of via Windows (wel even uitzoeken hoe dat precies werkt!). In de terminal geef je het commando
cargo install —locked bacon
(dat zijn twee streepjes voor locked!). Er wordt nu een hele reeks modules geladen en gecompileerd. Heb geduld, met name de laatste duurt gevoelsmatig bizar lang. Maar anders dan je wellicht denkt, is je computer niet vastgelopen. Gewoon, geduld.
Vanaf nu kan je bacon gebruiken, simpelweg door het te starten in een directory waarin je met cargo new je project hebt gemaakt. Dat is dus de directory met je projectnaam waarin src/main.rs staat. Als je wilt weten hoe het gaat, druk je in dat venster op t voor een beperkt overzicht, en op c voor een uitgebreid overzicht. Let wel op, bacon leest de code die op schijf staat. Dus in vim wel eerst even opslaan met :w voor je bacon aan het werk zet.
En als je nu denkt: "Ja, maar, ik weet nog niet eens hoe vim precies werkt?", dan heb je gelijk. Zelfstudie!
Heb je meer computers, dan kan je ook nog opteren voor een scherm waarmee je je werk doet, en een ander scherm voor je hulpmiddelen. Zo heb ik een Pi 4B die gekoppeld is aan mijn iPad en een Pi 400 met een eigen scherm en toetsenbord voor ondersteunende diensten. Om aan de slag te gaan doe ik het volgende:
- Blink op de iPad
- mosh pi4b in Blink.
- cd ~/prg/rust/project-van-de-dag
- vim src/main.rs
- Op de Pi 400 intussen:
- <dubbelklikken op ChatGPT> om ChatGPT te starten in een Chromium-window
- <klik op GitHub en op RustHandbook in Chromium>
- <klik op terminal>
- ssh pi4b in de terminal
- cd ~/prg/rust/project-van-de-dag
- bacon
Hiermee heb ik op mijn iPad vim open staan om code te schrijven. En intussen op het grote scherm van de Pi 400 alle hulpmiddelen die ik er graag bij hou.
Wie mee wil doen met #klooienmetcomputers kan dat doen via GitHub. Maak een account op 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.
Gerelateerd

De TSR en protected mode
Arnout van Kempen over rommelen in een digitale wereld.

IBM-pc en MS-DOS
Arnout van Kempen over rommelen in een digitale wereld.

Nogmaals ons programmaatje
Arnout van Kempen over rommelen in een digitale wereld.

De uitdagingen van de 8086
Arnout van Kempen over rommelen in een digitale wereld.

Programmeren van de 8080
Arnout van Kempen over rommelen in een digitale wereld.