Download Latest Version fish 4.9.3 source code.zip (7.0 MB) Google Add to Preferred Sources
Home / 4.9.0
Name Modified Size InfoDownloads / Week
Parent folder
fish-4.9.0.app.zip 2026-09-03 17.0 MB
fish-4.9.0.pkg 2026-09-03 23.8 MB
fish-4.9.0.tar.xz.asc 2026-09-03 687 Bytes
fish-4.9.0-linux-aarch64.tar.xz 2026-09-03 2.9 MB
fish-4.9.0-linux-x86_64.tar.xz 2026-09-03 3.2 MB
fish-4.9.0.tar.xz 2026-09-03 2.6 MB
fish 4.9.0 source code.tar.gz 2026-09-03 6.2 MB
fish 4.9.0 source code.zip 2026-09-03 7.0 MB
README.md 2026-09-03 3.4 kB
Totals: 9 Items   62.8 MB 0

This release exists mainly to work around an issue with the Konsole terminal which would cause shift-pageup to stop working.

This release brings 151 new commits since 4.8.1, contributed by 26 authors, 18 of which are new faces.

Interactive improvements

  • To mitigate issues in Konsole version v26.07.80’s implementation of the kitty keyboard protocol, fish no longer requests that protocol on Konsole. The omit-term-workarounds feature flag can be turned on to enable the kitty keyboard protocol on Konsole again (#12948).
  • On some terminals like kitty, keys like shift-space and space can now be mapped independently (#12898).
  • Fixed slow tab completion in directories that contain slow-to-resolve symlinks (e.g. links to network-mounted files) (#12905).
  • Abbreviations can now be given a description, which will be displayed in the completion pager (#11291).
  • Vi mode commands like cF and cT now work correctly (#12947).

Scripting improvements

  • List indexing can now be nested in more cases; for example $foo[$bar[1] 2] is now allowed (#12903).
  • Escaped square brackets (e.g. \133 for [) are no longer considered a slicing operator (#7969).
  • Variables containing a closing square brackets and used to index into another variable will no longer close the slice early (#12819).
  • Builtin help pages now respect an override of the man function (#12886).
  • Commands like status=123 echo $status now throw an error instead of silently ignore the variable override (#7790).

Regression fixes:

  • (From 4.6.0) Chinese and Japanese translation of error messages owned by the C library were broken (#12895).
  • (From 4.3.2) Erasing read-only variables with set --erase was accidentally allowed.
  • (From 4.0.0) Builtin fg was not working on NetBSD (#12929).

Thanks to everyone who contributed through issue discussions, code reviews, or code changes.

Welcome our new committers: AbhinavMir, Aelin, Alex Le Blanc, Alexia, Guflly, MeGaurav4, Philipp Jungkamp, SR0725, Tommi Virtanen, Vaibhav Srivastava, Valentyn Yefimov, avbest, developic, hazel, nekoside, orpheus6678, tianrking, yakakay

Welcome back our returning committers: David Adam (zanchey), Fabian Boehm, Ilya Grigoriev, Johannes Altmanninger, Michael Jarvis, Nahor, Peter Ammon, Wes Higbee


A GPG signature for fish-4.9.0.tar.xz using this key is available as fish-4.9.0.tar.xz.asc.

The files called fish-4.9.0-linux-*.tar.xz contain standalone fish binaries for any Linux with the given CPU architecture.

Source: README.md, updated 2026-09-03