Rilasciata Fish Shell 4.3: novità per scripting, terminale e completamento automatico migliorato

Fish Shell, nota anche semplicemente come fish, è una shell a riga di comando progettata per offrire un’esperienza utente intuitiva, potente e personalizzabile. Nata come alternativa moderna e facile da usare alle shell tradizionali come Bash, Zsh o Ksh, fish si distingue per la sua sintassi semplice, il completamento automatico avanzato, la gestione intelligente della cronologia dei comandi e un sistema di configurazione accessibile anche agli utenti meno esperti. Il progetto è open source e distribuito sotto licenza GNU GPLv2, garantendo trasparenza e libertà di modifica e distribuzione.
Fish Shell è disponibile per una vasta gamma di sistemi operativi, tra cui nativamente per GNU/Linux, BSD e macOS mentre per Windows attraverso il sottosistema WSL (Windows Subsystem for Linux) o Cygwin/MSYS (ambiente che permette di eseguire applicazioni e strumenti GNU/Linux su Windows), rendendola una soluzione versatile per sviluppatori, amministratori di sistema e utenti privati che cercano un ambiente di lavoro efficiente e personalizzabile. La shell è particolarmente apprezzata per la sua capacità di suggerire comandi in tempo reale, basandosi sulla cronologia e sui pattern di utilizzo, e per il supporto nativo a 24-bit true color, che consente una resa grafica avanzata nei terminali moderni.
Fish Shell 4.3 è stata rilasciata ufficialmente il 28 dicembre 2025, mentre la versione stabile precedente, Fish 4.2, risale ai primi di novembre 2025. Questo aggiornamento rappresenta un ulteriore passo avanti nell’evoluzione della shell, con particolare attenzione al miglioramento delle funzionalità di scripting, all’integrazione con il terminale e alla gestione delle configurazioni utente.
Novità in Fish Shell 4.3
Fish Shell 4.3 introduce una serie di miglioramenti significativi, sia per gli utenti finali che per gli sviluppatori. Tra le novità principali spiccano:
- Gestione avanzata delle configurazioni: Le variabili universali non vengono più impostate automaticamente al primo avvio. Le variabili comunemente utilizzate, come quelle relative ai colori (
fish_color_*) e ai binding dei tasti (fish_key_bindings– associazioni tra una specifica combinazione di tasti della tastiera e un’azione o un comando che la shell deve eseguire quando quella combinazione viene premuta), sono ora definite nello scope globale ovvero accessibili ovunque nella sessione di fish. Al primo avvio dopo l’aggiornamento, fish esegue una migrazione automatica, congelando il tema e i binding attuali in file all’interno della cartella~/.config/fish/conf.d/. Gli sviluppatori consigliano di rimuovere questi file generati automaticamente e di gestire le configurazioni direttamente nel fileconfig.fishper mantenere un ambiente pulito e prevedibile. Gli utenti possono comunque optare per l’utilizzo delle variabili universali, anche se questa scelta limita la possibilità di cambiare dinamicamente il tema. - Miglioramenti nello scripting: È stato introdotto il nuovo comando
status language, che permette di visualizzare e modificare la lingua utilizzata per i messaggi di fish senza dover intervenire sulle variabili d’ambiente. Questo rende più semplice la gestione multilingua e la personalizzazione dell’interfaccia. - Completamento automatico e interattività: Il completamento automatico in sessioni non interattive è stato corretto, garantendo che il comando
commandline --cursorsi comporti come previsto. Inoltre, la tracciatura è stata estesa: impostandofish_trace=all, ora è possibile monitorare anche i binding dei tasti, gli handler degli eventi e le funzioni del prompt. L’accuratezza del completamento è stata migliorata per i percorsi che contengono caratteri speciali come=o:, e il matching dei prefissi è ora case-insensitive. Gli autosuggerimenti visualizzano contenuti con a capo automatico, mentre il comportamento del completamento dei comandi su Cygwin e MSYS è stato allineato per corrispondere meglio ai nomi degli eseguibili e ai loro metadati. - Navigazione ed editing: La gestione dei percorsi nella riga di comando è stata notevolmente migliorata, sia per quanto riguarda i binding dei tasti che le funzionalità di editing. In particolare la combinazione di tasti
Ctrl+W, tradizionalmente utilizzata per cancellare la parola precedente al cursore, ora gestisce correttamente anche gli spazi escapati (ad esempio, spazi preceduti dal carattere\). Questo significa che, quando si elimina una parte di un percorso contenente spazi o caratteri speciali, la shell li interpreta in modo accurato, evitando errori o comportamenti imprevisti. - Nuove funzioni di editing “path-aware”: Sono state introdotte funzionalità specifiche per la manipolazione dei percorsi del filesystem. Queste permettono di:
- Navigare all’interno di un percorso (ad esempio, spostarsi tra cartelle o modificare nomi di file) direttamente dalla riga di comando, senza dover ricorrere a strumenti esterni.
- Modificare i percorsi con maggiore precisione, ad esempio rimuovendo, sostituendo o estraendo componenti specifici (come il nome di una cartella o l’estensione di un file) in modo rapido e intuitivo.
- Supporto dinamico ai temi e integrazione con il terminale: I temi di fish possono ora reagire dinamicamente agli schemi di colore del terminale, definendo sezioni separate per modalità chiara e scura. Diversi temi predefiniti sono già stati aggiornati per supportare questa funzionalità. L’integrazione con il terminale è stata migliorata grazie a una segnalazione OSC (Operating System Command) più coerente, che include la segnalazione accurata della cartella di lavoro e confini del prompt più chiari per i terminali che supportano l’integrazione con la shell. La segnalazione del focus è ora abilitata di default, e una nuova feature flag permette di disabilitare le soluzioni specifiche per il terminale quando non sono necessarie.
- Correzioni di regressioni: Questa versione risolve numerosi problemi presenti nelle versioni precedenti, tra cui crash legati alle variabili di colore, autosuggerimenti Unicode, gestione della larghezza delle emoji su macOS, casi limite di input multiriga e problemi di completamento su sistemi non-glibc.
Riferimenti ufficiali e download
Per approfondire tutte le novità introdotte in Fish Shell 4.3, è possibile consultare il changelog (registro delle modifiche) ufficiale. Ad oggi il team di Fish Shell ha rilasciato la versione Fish Shell 4.3.1 (changelog), una versione di manutenzione che introduce alcune correzioni e miglioramenti minori rispetto alla 4.3. Le modifiche includono fix mirati alla stabilità, alla gestione dei percorsi e al comportamento di alcune funzioni interne.
Fish Shell 4.3 può essere installato attraverso i repository software ufficiali delle principali piattaforme, che forniscono pacchetti software già pronti e integrati nei rispettivi sistemi di gestione. È disponibile anche su Flathub, che permette l’installazione tramite Flatpak sulle distribuzioni GNU/Linux che supportano questo formato; va però ricordato che su Flathub è presente una versione comunitaria e non aggiornata alla serie 4.3. Al momento non esiste una versione ufficiale in formato AppImage.
Gli sviluppatori mettono a disposizione binari autonomi per GNU/Linux direttamente nella pagina del repository GitHub, utili per chi preferisce eseguire il programma senza installarlo in modo tradizionale oppure compilare il programma partendo dal codice sorgente, disponibile nel repository software ufficiale del progetto.
Per iniziare a utilizzare Fish Shell 4.3, è sufficiente seguire le istruzioni di installazione specifiche per la propria piattaforma, disponibili sul sito ufficiale. La documentazione completa, inclusi tutorial e guide per la configurazione avanzata, è accessibile alla pagina fishshell.com/docs.
Fonte: https://github.com/fish-shell/fish-shell/releases/tag/4.3.0
Fonte: https://www.phoronix.com/news/Fish-4.3-Released
Fonte: https://linuxiac.com/fish-shell-4-3-released-with-scripting-and-terminal-improvements/
Se vuoi sostenermi, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che ho nel mio sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul mio negozio online, quelle mancanti possono essere comunque richieste.
Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!
Hai dubbi o problemi? Ti aiutiamo noi!
Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.
























