github fish-shell/fish-shell 2.6b1
fish 2.6b1 (released May 14, 2017)

latest releases: 3.7.1, 3.7.0, 3.6.4...
pre-release6 years ago

Notable fixes and improvements

  • Jobs running in the background can now be removed from the list of jobs with the new disown builtin, which behaves like the same command in other shells (#2810).
  • Command substitutions now have access to the terminal, like in other shells. This allows tools like fzf to work properly (#1362, #3922).
  • In cases where the operating system does not report the size of the terminal, the COLUMNS and LINES environment variables are used; if they are unset, a default of 80x24 is assumed.
  • New French (#3772 & #3788) and improved German (#3834) translations.
  • fish no longer depends on the which external command.

Other significant changes

  • Performance improvements in launching processes, including major reductions in signal blocking. Although this has been heavily tested, it may cause problems in some circumstances; set the FISH_NO_SIGNAL_BLOCK variable to 0 in your fish configuration file to return to the old behaviour (#2007).
  • Performance improvements in prompts and functions that set lots of colours (#3793).
  • The Delete key no longer deletes backwards (a regression in 2.5.0).
  • functions supports a new --details option, which identifies where the function was loaded from (#3295), and a --details --verbose option which includes the function description (#597).
  • read will read up to 10 MiB by default, leaving the target variable empty and exiting with status 122 if the line is too long. You can set a different limit with the FISH_READ_BYTE_LIMIT variable.
  • read supports a new --silent option to hide the characters typed (#838), for when reading sensitive data from the terminal. read also now accepts simple strings for the prompt (rather than scripts) with the new -P and --prompt-str options (#802).
  • export and setenv now understand colon-separated PATH, CDPATH and MANPATH variables.
  • bind supports a new --list-modes option (#3872).
  • bg will check all of its arguments before backgrounding any jobs; any invalid arguments will cause a failure, but non-existent (eg recently exited) jobs are ignored (#3909).
  • funced warns if the function being edited has not been modified (#3961).
  • printf correctly outputs "long long" integers (#3352).
  • status supports a new current-function subcommand to print the current function name (#1743).
  • string supports a new repeat subcommand (#3864). string match supports a new --entire option to emit the entire line matched by a pattern (#3957). string replace supports a new --filter option to only emit lines which underwent a replacement (#3348).
  • test supports the -k option to test for sticky bits (#733).
  • umask understands symbolic modes (#738).
  • Empty components in the CDPATH, MANPATH and PATH variables are now converted to "." (#2106, #3914).
  • New versions of ncurses (6.0 and up) wipe terminal scrollback buffers with certain commands; the C-l binding tries to avoid this (#2855).
  • Some systems' su implementations do not set the USER environment variable; it is now reset for root users (#3916).
  • Under terminals which support it, bracketed paste is enabled, escaping problematic characters for security and convience (#3871). Inside single quotes ('), single quotes and backslashes in pasted text are escaped (#967). The fish_clipboard_paste function (bound to C-v by default) is still the recommended pasting method where possible as it includes this functionality and more.
  • Processes in pipelines are no longer signalled as soon as one command in the pipeline has completed (#1926). This behaviour matches other shells mre closely.
  • All functions requiring Python work with whichever version of Python is installed (#3970). Python 3 is preferred, but Python 2.6 remains the minimum version required.
  • The color of the cancellation character can be controlled by the fish_color_cancel variable (#3963).
  • Added completions for:
  • caddy (#4008)
  • castnow (#3744)
  • climate (#3760)
  • flatpak
  • gradle (#3859)
  • gsettings (#4001)
  • helm (#3829)
  • i3-msg (#3787)
  • ipset (#3924)
  • jq (#3804)
  • light (#3752)
  • minikube (#3778)
  • mocha (#3828)
  • mkdosfs (#4017)
  • pv (#3773)
  • setsid (#3791)
  • terraform (#3960)
  • usermod (#3775)
  • xinput
  • yarn (#3816)
  • Improved completions for adb (#3853), apt (#3771), bzr (#3769), dconf, git (including #3743), grep (#3789), go (#3789), help (#3789), hg (#3975), htop (#3789), killall (#3996), lua, man (#3762), mount (#3764 & #3841), obnam (#3924), perl (#3856), portmaster (#3950), python (#3840), ssh (#3781), scp (#3781), systemctl (#3757) and udisks (#3764).

Download links:
To download the source code for fish, we suggest the file named "fish-2.6b1.tar.gz". The file downloaded from "Source code (tar.gz)" will not build correctly. The SHA-256 sum of this file is be36568dfebc0cb144b769e9ac09a570d09c528859e426480c9b4f96b0ccf001.

Don't miss a new fish-shell release

NewReleases is sending notifications on new releases.