Objavljen Fish Shell 4.3 s poboljšanjima skriptiranja i terminala


Fish Shell 4.3 uvodi pametnije teme, poboljšano automatsko dovršavanje, bolju integraciju s terminalom i mnoge promjene u skriptiranju i interaktivnim značajkama.

Fish, popularni i jednostavan komandni ljuska, objavio je verziju 4.3, novo izdanje koje nadograđuje seriju 4.0.

Jedna od najznačajnijih promjena tiče se načina na koji Fish upravlja zadanim postavkama konfiguracije. Univerzalne varijable više se ne postavljaju automatski. Umjesto toga, često korištene varijable poput fish_color_*, fish_pager_color_* i fish_key_bindings sada su definirane u globalnom opsegu.

Pri prvom pokretanju nakon nadogradnje, Fish izvršava jednokratnu migraciju, zamrzavajući trenutnu temu i tipkovne prečace u datotekama unutar ~/.config/fish/conf.d/. Preporuka razvojnog tima je ukloniti te generirane datoteke i upravljati temama izravno u config.fish kako bi konfiguracije ostale čiste i predvidljive. Korisnici se još uvijek mogu odlučiti za univerzalne varijable ako je potrebno, iako to ima ograničenja za dinamičku promjenu teme.

Što se tiče mogućnosti skriptiranja, nova naredba status language omogućuje korisnicima da pregledaju i promijene jezik koji se koristi za poruke fish bez mijenjanja varijabli okoline.

Rukovanje dovršetkom u neinteraktivnim sesijama je popravljeno tako da commandline --cursor sada radi ispravno, a praćenje je prošireno tako da fish_trace=all uključuje tipkovničke prečace, rukovatelje događaja i funkcije prompta.

Interaktivna upotreba donosi nekoliko poboljšanja. Početni upit sada se ispravno prikazuje kada unos počne odmah nakon pokretanja, a točnost dovršetka poboljšana je za putove koji sadrže = ili :. Dovršavanje sada podržava podudaranje prefiksa bez obzira na velika i mala slova, auto-sugestije prikazuju sadržaj koji se omata, a ponašanje dovršetka naredbi na Cygwin i MSYS bolje usklađuje nazive izvršnih datoteka s pripadajućim metapodacima.

Ponašanje tipki za prečace također je poboljšano. Prečac ctrl-w sada uklanja escapirane razmake prilikom brisanja dijelova puta, a uvedene su nove funkcije uređivanja koje prepoznaju put kako bi se putovi datotečnog sustava mogli preciznije kretati i mijenjati s naredbenog retka.

Što se tiče podrške za terminal, Fish teme sada mogu dinamički reagirati na sheme boja terminala definiranjem zasebnih svijetlih i tamnih dijelova. Nekoliko zadanih tema već je ažurirano da podrži ovo ponašanje.

Integracija naredbenog retka poboljšana je kroz dosljednije OSC signaliziranje, uključujući točno izvještavanje o radnom direktoriju i jasnije granice naredbenog retka za terminale koji podržavaju značajke integracije ljuske. Izvještavanje fokusa sada je omogućeno prema zadanim postavkama, a nova zastavica značajke omogućuje korisnicima da onemoguće specifična rješenja za terminale kada nisu potrebna.

Napokon, ovo izdanje također rješava više regresija iz ranijih verzija, uključujući padove povezane s varijablama boja, Unicode automatskim prijedlozima, rukovanjem širinom emojija na macOS-u, rubnim slučajevima višerednog unosa i problemima s dovršavanjem na sustavima koji nisu glibc.

Za više informacija, pogledajte zapisnik promjena.