Versie 4.0.6 van fish is uitgekomen, als opvolger van versie 4.0.2. Fish, wat staat voor 'friendly interactive shell', is een Unix-shell met een focus op interactiviteit en gebruikersvriendelijkheid. Het kan bijvoorbeeld worden gebruikt als vervanger van Bash. Downloads zijn beschikbaar voor macOS, Linux, BSD en onder Windows is het ook in de Windows Subsystem for Linux te gebruiken. De changelog voor deze uitgave kan hieronder worden gevonden.
This release of fish fixes a number of issues identified in fish 4.0.2:
- fish now properly inherits $PATH under Windows WSL2 (#11354)
- Remote filesystems are detected properly again on non-Linux systems
- the printf builtin no longer miscalculates width of multi-byte characters (#11412)
- For many years, fish has been "relocatable" -- it was possible to move the entire
CMAKE_INSTALL_PREFIX
and fish would use paths relative to its binary. Only gettext locale paths were still determined purely at compile time, which has been fixed- the commandline builtin failed to print the commandline set by a
commandline -C
invocation, which broke some completion scripts. This has been corrected (#11423)- To work around terminals that fail to parse Operating System Command (OSC) sequences, a temporary feature flag has been added. It allows you to disable prompt marking (OSC 133) by running (once)
set -Ua fish_features no-mark-prompt
and restarting fish (#11749)- The routines to save history and universal variables have seen some robustness improvements
- builtin status current-command no longer prints a trailing blank line
- A crash displaying multi-line quoted command substitutions has been fixed (#11444)
- Commands like
set fish_complete_path ...
accidentally disabled completion autoloading, which has been correctednmcli
completions have been fixed to query network information dynamically instead of only when completing the first time- Git completions no longer print an error when no git-foo executable is in
$PATH
- Custom completions like
complete foo -l long -xa ...
that use the output ofcommandline -t
. on a command-line likefoo --long=
have been invalidated by a change in 4.0; the completion scripts have been adjusted accordingly (#11508)- Some completions were misinterpreted, which caused garbage to be displayed in the completion list. This has been fixed
- fish no longer interprets invalid control sequences from the terminal as if they were
alt-[
oralt-o
key strokes- bind has been taught about the
printscreen
andmenu
keysalt-delete
now deletes the word right of the cursorctrl-alt-h
erases the last word again (#11548)alt-left
alt-right
were misinterpreted because they send unexpected sequences on some terminals; a workaround has been added. (#11479)- Key bindings like
bind shift-A
are no longer accepted; usebind shift-a
orbind A
- Key bindings like
bind shift-a
take precedence overbind A
when the key event included the shift modifier- Bindings using shift with non-ASCII letters (such as
ctrl-shift-ä
) are now supported- Bindings with modifiers such as
bind ctrl-w
work again on non-Latin keyboard layouts such as a Russian one.
This is implemented by allowing key events such asctrl-ц
to match bindings of the corresponding Latin key, using the kitty keyboard protocol's base layout key (#11520)- Vi mode: The cursor position after pasting via
p
has been corrected- Vi mode: Trying to replace the last character via
r
no longer replaces the last-but-one character (#11484)