Die Version 3.2.0 der interaktiven Kommandozeile fish (friendly interactive shell) wurde veröffentlicht, die sich als benutzerfreundlichere Alternative zu bash und zsh entwickelt. Fish unterstützt Funktionen wie Syntax-Hervorhebung mit automatischer Fehlererkennung, Vorschläge möglicher Eingaben basierend auf der Historie vorheriger Befehle, automatisches Vervollständigen von Optionen und Befehlen unter Verwendung ihrer Beschreibungen in man-Seiten, sofortige Einsatzbereitschaft ohne zusätzliche Konfiguration, eine vereinfachte Skriptsprache, Unterstützung für die X11-Zwischenablage und bequeme Suchfunktionen im Verlauf ausgeführter Befehle. Der Quellcode des Projekts wird unter der GPLv2-Lizenz veröffentlicht. Fertige Pakete sind für Ubuntu, Debian, Fedora, openSUSE und RHEL verfügbar.
Zu den neuen Funktionen gehören:
- Die Unterstützung für Rückgängig (Undo) und Wiederholen (Redo) beim Bearbeiten der Eingabezeile wurde hinzugefügt. Undo wird über die Tastenkombination Strg+Z und Redo über Alt+/ aufgerufen.
- Eingebaute Befehle führen jetzt die Verarbeitung in Echtzeit durch, beispielsweise beginnt die Ersetzungsoperation sofort mit der Ausgabe, ohne auf alle Eingabedaten zu warten. Eingebaute Befehle können jetzt auch in Befehlsketten verwendet werden, die Daten über unbenannte Kanäle übertragen, z.B. „dmesg -w | string match ‘*usb*'“.
- Wenn der Pfad in der Eingabeaufforderung nicht in die Breite des Terminalfensters passt, wird er jetzt teilweise abgeschnitten und nicht mehr durch „>“ ersetzt.
- Die Funktionalität der Tab-Vervollständigung wurde verbessert (bei mehrdeutigen Ergänzungen wird jetzt sofort eine Liste von Ersetzungen angezeigt, ohne dass die Tabulatortaste ein zweites Mal gedrückt werden muss).
- Eine neue Hilfsfunktion „fish_add_path“ wurde hinzugefügt, um einen Pfad zur Umgebungsvariablen $PATH hinzuzufügen, die automatisch Duplikate herausfiltert.
- Es wurde eine übersichtlichere Fehlermeldung bei der Ausführung des Befehls test bereitgestellt.
- Im Ausdruck „$x[$start..$end]“ ist es jetzt erlaubt, die Werte $start oder $end wegzulassen, die standardmäßig als 1 und -1 definiert sind. Zum Beispiel entspricht echo $var[..] $var[1..-1] und führt zur Ausgabe vom ersten bis zum letzten Element.
- Die Leistung vieler Funktionen wurde erheblich verbessert. Die Möglichkeiten der Verarbeitung von Zeichenfolgen wurden erweitert.
Quelle: opennet.ru
