Een minimalistische Mac-terminal voor Linux-fans

Ik moet u iets bekennen: Ik ben nu al meer dan 10 jaar een Mac-gebruiker. In het begin schaamde ik me een beetje, gezien mijn sterke Linux-achtergrond, maar de Mac geeft me een Unix-achtige shell en een geweldige window manager. Door die geschiedenis heb ik een mix van functies die op macOS zullen draaien maar vertrouwd aanvoelen voor Linux-gebruikers. Er is geen reden waarom het niet kan worden overgezet naar Linux (en het heeft!).

Het gebruik van iTerm2 op een Mac

Voor een lange tijd was mijn voorkeursterminal de basis ingebouwde Terminal.app, maar ik ben onlangs overgestapt op iTerm2 omdat het veel betere aanpassings- en profielondersteuning heeft. Een van de belangrijkste voordelen voor mij is dat het gemakkelijk is om instellingen van Mac naar Mac over te zetten. Voor dagelijks gebruik geef ik de voorkeur aan het Solarized Dark thema, maar voor presentaties heb ik een apart profiel dat de tekst vergroot en een effen zwarte achtergrond met levendigere kleuren gebruikt.

Het eerste wat ik doe om iTerm2 bruikbaar te maken is het configureren van de Ctrl+Links en Ctrl+Rechts pijlen om het klassieke terminal gedrag te respecteren van het springen naar het begin en einde van een woord grens. Om dit te doen, navigeer naar Voorkeuren > Profielen > Uw Profiel > Toetsen en voer het volgende in.

  • Toetsenbordsnelkoppeling: ^←
  • Actie: Verzend Escape Sequence
  • Esc+: b

Dan de andere:

  • Toetsenbordsnelkoppeling: ^→
  • Actie: Send Escape Sequence
  • Esc+: f

Lees meer over wat u kunt doen met iTerm2 en geniet van de aangepaste ervaring.

Een eenvoudige commando prompt

Ik ben een van die saaie terminal prompt gebruikers. Ik gebruik geen Git directory of exit code, en ik gebruik maar een enkele regel. De enige fancy component die ik gebruik is kubectx, die de huidige Kubernetes-context bevat. Als een OpenShift Dedicated Site Reliability Engineer (SRE), moet ik commando’s uitvoeren met de juiste context, en kubectx maakt het gemakkelijk om te weten waar ik ben als ik aan het typen ben. Dus, mijn Bash PS1 is de saaie username@host cwd $, behalve voor de Kubernetes context prefix.

Er is geen twijfel dat ik aan de minimalistische kant ben, vergeleken met sommige fancy terminals die ik heb gezien. Sommige mensen houden van transparantie, en anderen geven de voorkeur aan veel informatie op hun prompts – van de tijd tot de exit-code en al het andere. Ik vind het afleidend in mijn terminals, dus ik geniet van die setups op afstand.

Mooi complexe dotfiles

Vergeleken met mijn minimalistische terminal, is het gemakkelijk om te zien waar ik mijn maximalistische inspanningen plaats: het implementeren van mijn dotfiles, inclusief mijn .bash_profile en mijn algemene Mac setup.

Ik gebruik een reeks Makefiles, gehost via GitHub, om mijn Mac setup te beheren. Dit haalt mijn dotfile-specifiek implementatiemechanisme binnen, dat ook in GitHub staat. Waarom al dat gereedschap rond beveiliging vraag je je af? Zowel IT professionals als hobbyisten hebben een robuuste manier nodig om beveiligde stukken data op nieuwe systemen te zetten. Misschien heb je liever dat je SSH configuratie verborgen blijft, of misschien implementeer je je credentials via een systeem van een derde partij. Ik vind het handig om mijn beveiligde gegevens bij al het andere te bewaren, en ik heb dit probleem opgelost met Ansible Vault. Al mijn geheimen zijn opgeslagen in Git, versleuteld met Ansible Vault. Decryptie wordt afgehandeld met Makefiles.

Of ik nu voor de eerste keer installeer of bestaande dotfiles bijwerk, ik moet (natuurlijk) Ansible Vault hebben, en om te voorkomen dat ik dat overal moet installeren, stop ik het in een container die ik met Docker draai, die ik wel overal geïnstalleerd heb. Ik zet de decryptie passphrase in een bestand, run make, en ruim alles op met make clean. (Je kunt meer te weten komen door de dotfiles te verkennen.)

Ik zal zeggen dat dit beheerschema misschien wat overdreven is, maar sommige mensen houden van ingewikkelde terminal prompts. Dus misschien maakt het alles goed.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.