Ukazna lupina Fish Shell, priljubljen med uporabniki terminalov, je posodobljen na različico 4.0, ki prinaša pomembne spremembe in izboljšave.
Glavna novost je, da je Fish Shell zdaj popolnoma prepisan v programskem jeziku Rust. Vendar pa bo ta prehod za običajne uporabnike skoraj neopazen: ukazi, nastavitve in tipična interakcija ostajajo nespremenjeni.
Druge pomembne spremembe
- Nov sistem vezanja tipk. Fish Shell 4.0 predstavlja posodobljen sistem vezanja tipk in boljšo združljivost s terminali. Sedaj lahko zamenjate neprijetne sekvence esc z bolj razumljivimi ukazi, kot je bind ctrl-right. Zaradi podpore protokolu tipkovnice Kitty Fish lahko razlikuje med upravljalskimi sekvencami, ki so se prej zdele identične, na primer bind ctrl-i, bind ctrl-I in bind tab.
- Integracija z možnostmi terminala. Fish zdaj samodejno uporablja sekvence OSC 133 za namige in izhod ukazov, kar prispeva k bolj gladki sinhronizaciji z različnimi terminali, ki so se prej zanašali na dodatne skripte za integracijo lupine.
- Izboljšano obravnavanje dolgih ukazov. Lupina zdaj bolj skrbno obravnava dolge ukazne vrstice, se pomika namesto nezadostnega prikaza. Kakršne koli spremembe, ki jih povzročijo vezave ukazne vrstice, so takoj vidne, kar zagotavlja bolj intuitivno izkušnjo.
- Zgodovina ukazov. Pager zgodovine ukazov, prvič predstavljen v Fish 3.6, je bil dodelan. Sedaj lahko uporabite sintakso glob za natančnejše filtriranje zapisov zgodovine, na primer iskanje po * glob sintaksa — git*HEAD bo vrnilo vse, kar vsebuje git in HEAD v tem vrstnem redu.
- Nova privzeta tema. V novi različici je bila privzeta tema rahlo spremenjena: ukazi se sedaj prikazujejo v »normalni« barvi terminala namesto težko berljive »modre«. Obstoječi uporabniki bodo ohranili svoje trenutne nastavitve, razen če ne znova naložijo teme ročno prek fish_config.
- Samo namestitvene zbirke. Nova funkcija samo namestitvenih zbirk bi lahko predstavljala pravi preboj za uporabnike, ki pogosto delajo prek SSH na serverima brez administrativnih privilegijev. Po kompilaciji Fish lahko zaženete en samostojni izvršni datoteki, ki izlušči vse potrebno - funkcije, strani s smernicami in celo spletno orodje za nastavitve - v domači imenik.
- Izključitev ukazov iz zgodovine. Končno je prišla dolgo pričakovana funkcija, ki omogoča izločanje določenih ukazov iz zgodovine. S pridobitvijo uporabniške funkcije fish_should_add_to_history lahko natančno določite, kateri ukazi bodo shranjeni.
- Izboljšave za skriptiranje:
- string match zdaj podpira možnost —max-matches, ki omogoča omejitev števila obdelanih ujemanj;
- for zanke ne bodo več pomnile lokalnih spremenljivk iz prejšnje iteracije;
- set prejme opcijo —no-event za zavrnitev dogodkov spremembe spremenljivk;
- time začne merjenje prej, zajame trajanje vseh nadomestitev ukazov pred njihovo izvedbo;
- complete —erase popolnoma onemogoči samodejno dopolnjevanje zaključkov za določene ukaze.
Izvor: linux.org.ru
