Rilasciata Fish Shell 4.5: correzioni per la modalità Vi e miglioramenti nella ricerca della cronologia

Fish Shell, spesso indicata semplicemente come fish, è una shell a riga di comando moderna, progettata per offrire un’esperienza d’uso più intuitiva rispetto alle shell tradizionali come Bash (Bourne Again SHell), Zsh (Z Shell) o Ksh (Korn Shell). Si tratta di un progetto open source, completamente libero, pensato per semplificare la vita sia agli utenti alle prime armi sia a chi utilizza quotidianamente il terminale per lavoro.
Uno degli aspetti che rendono Fish Shell particolarmente interessante è la sua sintassi chiara, accompagnata da un completamento automatico avanzato, una gestione intelligente della cronologia dei comandi e un sistema di configurazione accessibile anche a chi non ha familiarità con script complessi. A differenza di molte altre shell, Fish Shell non richiede la conoscenza di linguaggi di scripting articolati per essere personalizzata, caratteristica che la rende una scelta ideale per chi desidera un ambiente potente ma privo di complicazioni inutili.
Il progetto fish nasce nel 2005 grazie a Axel Liljencrantz, con l’obiettivo di creare una shell che fosse allo stesso tempo potente, semplice da usare e coerente nel comportamento. Nel corso degli anni, Fish Shell ha conquistato una comunità sempre più ampia grazie alla sua attenzione all’usabilità e alla produttività, diventando una delle alternative più apprezzate nel panorama delle shell moderne.
La shell era storicamente sviluppata in C++, ma con l’arrivo della versione 4.0 il progetto ha completato una riscrittura totale in Rust. Questa transizione, iniziata con i primi moduli sperimentali e culminata nella piena adozione di Rust con la versione Fish Shell 4.0, ha permesso di ottenere un codice più sicuro, più stabile e più semplice da mantenere. Rust, grazie alla sua gestione rigorosa della memoria e alla sua architettura moderna, rappresenta oggi la base tecnologica dell’intera shell, su cui si fondano tutte le versioni successive della serie 4.x.
Fish Shell è compatibile con la maggior parte delle distribuzioni GNU/Linux, con macOS e con altri sistemi Unix-like, ed è distribuita sotto licenza GNU GPLv2 (GNU General Public License versione 2) , come indicato nel repository software ufficiale, una licenza libera che garantisce agli utenti il diritto di utilizzare, modificare e ridistribuire il software.
Il pubblico ideale di Fish Shell è composto da utenti che cercano una shell moderna, veloce e dotata di funzionalità avanzate. È particolarmente apprezzata da sviluppatori, amministratori di sistema e da chi trascorre molte ore al terminale, ma rappresenta anche un’ottima scelta per chi si avvicina per la prima volta al mondo delle shell e desidera un’esperienza più guidata e meno ostica.
La versione Fish Shell 4.5 è stata rilasciata ufficialmente il 17 febbraio 2026 come aggiornamento di manutenzione successivo alla versione 4.4, rilasciata nel dicembre 2025. Questa nuova versione si concentra principalmente sulla correzione di regressioni nella modalità Vi (modalità ispirata al comportamento dell’editor di testo vi) e sul miglioramento della ricerca nella cronologia dei comandi, rendendo l’esperienza complessiva più coerente e reattiva.
Novità in Fish Shell 4.5
Fish Shell 4.5 si concentra principalmente sulla correzione di regressioni e sul miglioramento dell’esperienza utente, soprattutto per chi utilizza la modalità Vi e la ricerca nella cronologia dei comandi. Di seguito, le novità più rilevanti introdotte in questa versione:
Correzioni nella modalità Vi
La modalità Vi, che permette di utilizzare Fish Shell con i comandi e le sequenze di tasti tipiche dell’editor Vi/Vim, aveva subito alcune regressioni nella versione 4.4. Fish 4.5 risolve questi problemi, ripristinando il corretto funzionamento dei binding (associazioni di tasti) e correggendo comportamenti anomali. In particolare:
- Il binding
d,f(cancella fino al carattere specificato) è stato ripristinato e ora funziona come previsto. - Il binding
c,w(cambia parola) non cancella più spazi finali in modo errato. - È stato risolto un crash che si verificava premendo
c,i,wdopo aver accettato un autosuggerimento. - La funzione
fish_vi_key_bindingsora accetta correttamente l’argomentomodesenza generare errori.
Miglioramenti nella ricerca della cronologia
La ricerca nella cronologia dei comandi è stata ottimizzata per offrire un’esperienza più affidabile e intuitiva:
- Premere
Ctrl-Lnon annulla più la ricerca nella cronologia, ripristinando il comportamento atteso. - Il posizionamento del cursore durante la ricerca ora funziona correttamente anche con caratteri di larghezza variabile (come le emoji o i caratteri Unicode complessi), migliorando l’usabilità su terminali moderni.
Cambamenti architetturali e rimozione di dipendenze
Fish Shell 4.5 finalizza un cambiamento architetturale iniziato nelle versioni precedenti: la shell non legge più il database terminfo per adattare il proprio comportamento in base alla variabile d’ambiente TERM e non dipende più da ncurses o terminfo. Questa modifica, introdotta come feature flag nella versione 4.1 e ora resa permanente, elimina una chiamata non necessaria a ncurses ad ogni avvio, migliorando le prestazioni su hardware moderno. Tuttavia, Fish Shell potrebbe non funzionare correttamente su terminali molto datati, come il Data General Dasher D220 o il Wyse WY-350, ma rimane pienamente compatibile con tutti i terminali moderni rilasciati nel XXI secolo.
Altre correzioni e miglioramenti minori
- È stato ripristinato il supporto per la compilazione su Illumos, risolvendo un problema presente sin dalla serie 4.0.
- Sono state apportate correzioni minori alla gestione degli autosuggerimenti e alla visualizzazione delle pagine di manuale (man) su OpenBSD 7.8.
Riferimenti e download
Per approfondire tutte le novità, consultare il changelog (registro delle modifiche) completo sulla pagina ufficiale GitHub del progetto..
La documentazione aggiornata è disponibile sul sito ufficiale.
Fish Shell può essere installata tramite i repository software ufficiali delle principali distribuzioni GNU/Linux, oppure scaricando i pacchetti software precompilati o il codice sorgente disponibili nella pagina delle versioni su GitHub del progetto. Per le istruzioni di installazione specifiche per la propria piattaforma, è sempre consigliabile consultare la documentazione ufficiale, che fornisce indicazioni aggiornate per GNU/Linux, macOS e altri sistemi Unix-like.
Fonte: https://github.com/fish-shell/fish-shell/releases/tag/4.5.0
Fonte: https://linuxiac.com/fish-shell-4-5-fixes-vi-mode-regressions-and-improves-history-search/
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.
























