
Achtergrond
Homebrew voor MacOS: Hoe je de terminal kunt veranderen in een kleurrijke dierentuin
van Florian Bodoky

De nieuwe Spotlight zoekfunctie irriteert me. Ik gebruik mijn eigen mapnavigatie om in het dagelijks leven sneller door mappen en bestanden te gaan. Dit is hoe ik het heb ingesteld.
Als je regelmatig met veel verschillende mappen en paden werkt, ken je het probleem: de Finder wordt een labyrint. Je moet er steeds weer doorheen klikken. Apple heeft een oplossing gevonden: Spotlight zoeken is veel beter in macOS 26. Je kunt acties uitvoeren, apps starten, het klembord doorzoeken en zelfs iPhone-inhoud opnemen. Maar dat is ook meteen het nadeel: het doorzoekt alles, laat alles zien, mengt apps, bestanden, webinhoud en acties - maar is niet gespecialiseerd in het razendsnel brengen naar de plekken waar je echt elke dag werkt.
Met Homebrew kun je je eigen mapnavigator maken die automatisch leert welke mappen je het meest gebruikt. Het herkent je werkpatronen in je werkstijl en leidt je met een kleine toetscombinatie naar de exacte mappen waar je naartoe wilt. Omdat deze oplossing zich aanpast aan jouw gebruik, organiseert het de resultaten in de loop van de tijd op basis van jouw persoonlijke relevantie (zonder dat je het zonder Spotlight hoeft te doen). En zo stel je het in:
Om te beginnen moet je Homebrew installeren als je dat nog niet hebt. Dit is een pakketbeheerder. Start de terminal (met adminrechten), typ het volgende commando en druk op Enter. Je wordt gevraagd om het wachtwoord dat je gebruikt om in te loggen op je Mac:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Na afloop moet je het pad voor Homebrew instellen zodat de terminal de manager later kan vinden - dit pad is geldig sinds MacOS Catalina.
echo 'eval "$(/opt/«Homebrew»/bin/brew shellenv)"' >> ~/.zprofile eval "$(/opt/«Homebrew»/bin/brew shellenv)"

Deze twee tools zijn essentieel voor de zelfgemaakte mapnavigator. Autojump onthoudt welke mappen je vaak gebruikt en laat je daarheen springen met een kort commando. fzf staat voor «fuzzy finder» en is een terminal zoekprogramma. Open nu de terminal opnieuw en typ het volgende (gevolgd door Enter) om de twee tools te installeren:
brew install autojump fzf

Tijdens de installatie worden je verschillende dingen gevraagd, bijvoorbeeld: «Wil je fuzzy auto-completion inschakelen?» Typ de letter y voor Ja en druk op Enter.
Daarna moet je fzf initialiseren zodat het goed werkt. Typ hiervoor:

$(brew --prefix)/opt/fzf/install
Bevestig dit met Enter.
Aan het einde van deze gereedschapsmarathon moet je Autojump activeren. Typ hiervoor de volgende regels in en druk op Enter.
open -e ~/.zshrc
De teksteditor wordt geopend. Voeg nu de volgende regel in de tekst in en sla het bestand op:
[ -f /opt/homebrew/etc/profile.d/autojump.sh ] && . /opt/homebrew/etc/profile.d/autojump.sh
Dit controleert of Autojump aanwezig is en laadt het.
Voeg nu het volgende commando toe aan de terminal zodat het zshrc-bestand wordt geladen met de nieuwe commando's erin.
bron ~/.zshrc
Nu komt de snelle actie (hiermee kun je processen starten met sneltoetsen die anders meerdere keren moeten worden geklikt). De QA opent een zoekvenster en de geselecteerde map in de Autojump-lijst.

Open Automator, selecteer het item «Nieuw document». Selecteer «Nieuw document» en «Snelle actie» en vul het masker in met de volgende waarden:

Zoek de links in de lijst Acties «Voer shellscript» uit en voeg ze toe door te dubbelklikken. Voeg dan het volgende in:
Vervang vervolgens de standaardtekst door dit script (start fzf in de terminal):
export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"
SCRIPT="/tmp/jump_fzf.sh"
cat << 'EOS' > "$SCRIPT"
export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"
bron /opt/homebrew/etc/profile.d/autojump.sh
KEUZE=$(autojump -s<br /> | cut -d: -f2- ¢
| sed 's/^ *//'<br /> | fzf --prompt='Zoek map → ' --hoogte=50% -rand)
Als [[ -n "$CHOICE" ]]; dan
open "$CHOICE"
fi
verlaat
EOS
chmod +x "$SCRIPT"
osascript <<EOF
vertel applicatie "Terminal"
doe script "zsh $SCRIPT"
activeer
einde vertellen
EOF
Klik nu op «Bestand» en dan op «Opslaan»; geef het een betekenisvolle naam zoals «Mapnavigator».
Eindelijk kun je een sneltoets definiëren om je persoonlijke navigator op te roepen. Ga hiervoor naar de systeeminstellingen en vervolgens naar het toetsenbordmenu. Selecteer «Toetsenbordsnelkoppelingen» en klik links op «Diensten». Zoek in deze lijst onder «Algemeen» naar «Mapnavigatie». Dubbelklik nu en stel een toetscombinatie in - natuurlijk een die niet is toegewezen aan iets anders dat je vaker nodig hebt. Klik op «Gereed».

Als je nu op deze combinatie drukt, verschijnt er een klein tekstvenster. Begin met het typen van de naam van de map. Na verloop van tijd zal de navigator je zoekopdracht voltooien en gaandeweg wordt deze steeds beter en nauwkeuriger.
In het begin zal de nieuwe Navigator relatief weinig items vinden. Je kunt de navigator een basis «» set van paden geven zodat het in het begin niet te vervelend is. Om dit te doen, maak je een nieuw shellscript in de Automator, net als eerder. Voeg vervolgens dit script toe, dat de verschillende macOS standaardmappen invoegt in de zoekopdracht. Geef het ook een betekenisvolle naam.

#!/bin/zsh
export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"
SCRIPT="/tmp/jump_fzf.sh"
cat << 'EOS' > "$SCRIPT"
export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"
bron /opt/homebrew/etc/profile.d/autojump.sh
FAVORIETEN=(
"$HOME"
"$HOME/Desktop"
"$HOME/Downloads"
"$HOME/Documenten"
"$HOME/Movies"
"$HOME/Muziek"
"$HOME/Pictures"
)
TMP_LIST="/tmp/jump_fzf_list.txt"
> "$TMP_LIST"
for d in "${FAVORITES[@]}"; do
[-d "$d" ] && echo "$d" >> "$TMP_LIST"
gedaan
autojump -s<br /> | cut -d: -f2- Þ
| sed 's/^ *//' >> "$TMP_LIST"
KEUZE=$(sort -u "$TMP_LIST"<br /> | fzf --prompt='Zoek map → ' --hoogte=50% -rand)
Als [[ -n "$CHOICE" ]]; dan
open "$CHOICE"
fi
verlaat
EOS
chmod +x "$SCRIPT"
osascript <<EOF
vertel applicatie "Terminal"
doe script "zsh $SCRIPT"
activeer
einde vertellen
EOF
Nu is het tijd om de nieuwe mapnavigator ijverig te gebruiken en hem tegelijkertijd beter te maken.
Sinds ik ontdekt heb hoe ik beide telefoonkanalen op de ISDN kaart kan activeren voor meer bandbreedte, ben ik aan het knutselen met digitale netwerken. Ik knutsel al met analoge netwerken sinds ik kan praten. Winterthur door keuze met een rood-blauw hart. En koffie - voor, na, tussendoor en tijdens.
Interessante feiten uit de wereld van producten, een kijkje achter de schermen van fabrikanten en portretten van interessante mensen.
Alles tonen