ZSH die "bessere" Shell

Das die Z-Shell viele coole Features besitzt ist sicher vielen bekannt und wird im Netz ausreichend verbreitet, darum möchte ich hier nicht noch einmal darauf eingehen. Auch das Projekt oh-my-zsh ist sicher vielen ein Begriff. Mir persönlich war jedoch die Einrichtung der zahlreichen Themes und Plugins immer zu viel Aufwand und auch die Frage "do you want to update zsh" hat bei mir stets mehr Frust als Nutzen verursacht. Darum möchte ich hier nochmal eine Alternative zsh Konfiguration vorstellen: die grml .zshrc. Diese kommt standardmäßig schon mit einigen netten Features daher und kann mit dem Paket zsh-completitions noch zusätzlich erweitert werden.

Nenneswerte Verbesserungen

Was mir besonders gut gefällt, ist ein Feature was (zumindest bei mir) erst kürzlich hinzugekommen ist, eine interaktive Vorschau für die Suche, die wie gewohnt mit Ctrl-R angestossen wird:
asciicast

Hier lassen sich dann mit den gängigen vim Tastenkürzeln Ctrl-P und Ctrl-N oder auch den Hoch/Runter Pfeiltasten durch die Suchergebnisse navigieren. Nach einem Druck auf Enter wird der entsprechende Befehl zunächst übernommen und kann dann entweder bearbeitet oder durch erneutes Bestätigen mittels Enter ausgeführt werden.

Vim everywhere

Das ich ein großer Vim Fan bin, habe ich schon das ein oder andere Mal hier erwähnt. Manchmal kann es bei längeren Befehlen nützlich sein, einen richtigen Editor (z.B. Vim) zum Ändern der Parameter einzusetzen. Dafür stellt die grml Konfiguration das Keybinding Alt+E bereit, welches den aktuellen Befehl in vim öffnet und automatisch zur Kommandozeile nach dem Beenden des Editors zurückkehrt. Weiterhin ist es durch den Eintrag

bindkey -v  

in der .zshrc möglich auch direkt im normalen "Shell" Modus die ESC Taste drücken zu können und vim Befehle wie daw ausführen zu können.

Vieles mehr...

Wer sich noch intensiver mit der Anpassung der Z-Shell beschäftigen möchte kann sich noch zplug anschauen, ein Plugin Manager für zsh der z.B. Funktionen wie einen vim Visual Mode durch ein Plugin bereitstellen kann.