Príkazový shell Fish shell, populárny medzi používateľmi terminálov, sa aktualizoval na verziu 4.0, ktorá priniesla významné zmeny a vylepšenia.
Hlavná novinka spočíva v tom, že Fish shell je teraz úplne prepísaný v programovacom jazyku Rust. Pre bežných používateľov však táto zmena bude prakticky nepozorovateľná: príkazy, nastavenia a bežné interakcie zostanú rovnaké.
Ďalšie významné zmeny
- Nový systém priraďovania kláves. Fish shell 4.0 predstavuje aktualizovaný systém priraďovania kláves a hlbšiu kompatibilitu s terminálmi. Teraz je možné nahradiť neintuitívne esc sekvencie čitateľnejšími príkazmi, ako napríklad bind ctrl-right. Vďaka podpore klávesového protokolu Kitty môže Fish rozlišovať sekvencie riadenia, ktoré predtým vyzerali identicky, ako napríklad bind ctrl-i, bind ctrl-I a bind tab.
- Integrácia s možnosťami terminálu. Fish teraz automaticky používa sekvencie OSC 133 pre nápovedy a výstup príkazov, čo prispieva k hladšej synchronizácii s rôznymi terminálmi, ktoré predtým vyžadovali ďalšie skripty pre integráciu shellu.
- Vylepšené spracovanie dlhých príkazov. Shell teraz presnejšie spracováva dlhé príkazové riadky, prerolling ich namiesto nesprávneho zobrazenia. Akékoľvek zmeny spôsobené priradeniami príkazového riadku sú okamžite viditeľné, čo zabezpečuje intuitívnejší zážitok.
- História príkazov. Pager histórie príkazov, prvýkrát predstavený vo Fish 3.6, bol prepracovaný. Teraz je možné použiť glob syntax pre presnejšie filtrovanie histórie, napríklad vyhľadávanie pomocou * glob syntax — git*HEAD vráti všetko, kde sa nachádza git a HEAD presne v tomto poradí.
- Nová téma predvolená. V novej verzii bola predvolená téma jemne upravená: príkazy sú teraz zobrazené v "normálnej" farbe terminálu namiesto ťažko čitateľnej "modrej". Existujúci používatelia si zachovajú svoje aktuálne nastavenia, pokiaľ tému manuálne neobnovia cez fish_config.
- Samoinštalačné zostavy. Nová funkcia samoinštalačných zostáv môže byť skutočným prielomom pre používateľov, ktorí často pracujú cez SSH na serveroch bez administratívnych privilégií. Po kompilácii Fish je možné spustiť jeden samostatný binárny súbor, ktorý extrahuje všetko potrebné — funkcie, stránky príručky a dokonca aj webový nástroj nastavenia — do domáceho adresára.
- Vylúčenie príkazov z histórie. Konečne sa objavila dlho očakávaná funkcia, ktorá umožňuje vylúčiť určité príkazy z histórie. Určením používateľskej funkcie fish_should_add_to_history môžete presne určiť, ktoré príkazy sa budú ukladať.
- Vylepšenia pre skriptovanie:
- string match teraz podporuje možnosť —max-matches, ktorá umožňuje obmedziť počet spracovaných zhôd;
- cykly for už nebudú pamätať lokálne premenné z predchádzajúcej iterácie;
- set dostáva možnosť —no-event na potlačenie udalostí zmeny premenných;
- time začína meranie skôr, zachytávajúc trvanie akýchkoľvek substitúcií príkazov pred ich vykonaním;
- complete —erase úplne deaktivuje automatické načítanie dokončení pre určené príkazy.
Zdroj: linux.org.ru
