Shell-ul de comandă Fish Shell, popular printre utilizatorii de terminale, a fost actualizat la versiunea 4.0, care aduce modificări și îmbunătățiri semnificative.
Principala noutate este că Fish Shell a fost complet rescris în limbajul de programare Rust. Cu toate acestea, pentru utilizatorii obișnuiți, această tranziție va fi practic invizibilă: comenzile, setările și interacțiunile tipice vor rămâne aceleași.
Alte modificări semnificative
- Un nou sistem de legare a tastelor. Fish Shell 4.0 introduce un sistem actualizat de legare a tastelor și o compatibilitate mai profundă cu terminalele. Acum este posibil să înlocuiești secvențele esc neintuitive cu comenzi mai ușor de înțeles, cum ar fi bind ctrl-right. Datorită suportului pentru protocolul de tastatură Kitty, Fish poate distinge secvențele de control care anterior păreau identice, de exemplu bind ctrl-i, bind ctrl-I și bind tab.
- Integrarea cu funcționalitățile terminalului. Fish utilizează acum automat secvențele OSC 133 pentru sugestii și ieșiri de comenzi, ceea ce contribuie la o sincronizare mai fluidă cu diverse terminale care anterior depindeau de scripturi suplimentare pentru integrarea shell-ului.
- Îmbunătățirea gestionării comenzilor lungi. Shell-ul acum gestionează mai atent liniile lungi de comenzi, derulându-le în loc de a le afișa greșit. Orice modificări aduse prin legăturile de comandă sunt vizibile imediat, ceea ce asigură o experiență de utilizare mai intuitivă.
- Istoricul comenzilor. Paginarea istoricului comenzilor, introdusă pentru prima dată în Fish 3.6, a fost revizuită. Acum poți folosi sintaxa glob pentru o filtrare mai precisă a înregistrărilor istoricului, de exemplu, căutarea după * glob syntax — git*HEAD va returna tot ce conține git și HEAD exact în această ordine.
- O nouă temă implicită. În noua versiune, tema implicită a fost ușor modificată: comenzile sunt acum afișate în culoarea 'normală' a terminalului în loc de 'albastrul' dificil de citit. Utilizatorii existenți își vor păstra setările actuale, cu excepția cazului în care reîncărcă tema manual prin fish_config.
- Construiri auto-instalabile. Noua funcție de construcție auto-instalabilă poate reprezenta o adevărată inovație pentru utilizatorii care lucrează frecvent prin SSH. servere fără privilegii administrative. După compilarea Fish, se poate rula un singur fișier binar auto-suficient care extrage tot ce este necesar - funcții, pagini de ghid și chiar un instrument web de configurare - în directorul personal.
- Excluderea comenzilor din istoric. În sfârșit, a apărut mult așteptata funcție care permite excluderea unor comenzi specifice din istoric. Definind funcția personalizată fish_should_add_to_history, se poate decide exact ce comenzi vor fi păstrate.
- Îmbunătățiri pentru scripting:
- string match acum suportă opțiunea —max-matches, care permite limitarea numărului de potriviri procesate;
- ciclurile for nu vor mai reține variabilele locale din iterațiile anterioare;
- set primește opțiunea —no-event pentru a suprima evenimentele de modificare a variabilelor;
- time începe măsurarea mai devreme, capturând durata oricăror substituții de comenzi înainte de execuția lor;
- complete —erase dezactivează complet autocompletarea pentru comenzile specificate.
Sursa: linux.org.ru
