fish shell
Smart and user-friendly command line shell
Four minor versions in five months, and the shell's remaining work is almost all interaction detail.
◆Recent moves
- 25d ago
fish 4.8.1 restores word-wise alt keybindings off macOS
The now-standard cleanup pass after a minor: alt-backspace and friends go back to operating on words rather than tokens off macOS, and the Konsole prompt-marking workaround becomes opt-out via a feature flag instead of a hardcoded exception. Also splits builtin and function coloring into separate variables.
View source ↗ - 1mo ago
fish 4.8.0 moves Rust-side translations to Fluent
234 commits from 39 authors, and the structural piece is the translation toolchain: Rust-defined messages move to Fluent with a new fluent-ftl-tools library, leaving script-defined messages on gettext for now. Consistent with the project's pattern of retiring C-era infrastructure a layer at a time.
View source ↗ - 3mo ago
fish 4.7.1 fixes fish_config failing to start
A one-line patch for a 4.7.0 regression that stopped fish_config from starting. Another instance of the minor-then-patch cadence that runs through this whole window.
View source ↗ - 3mo ago
fish 4.7.0 stops setting the theme in non-interactive shells
198 commits, weighted toward interactive correctness: repaints no longer blow away the completion pager and other transient UI state, and history stops being corrupted with NUL bytes on SIGTERM or SIGHUP. The default theme also stops applying in non-interactive shells, a small scoping fix with visible consequences for scripts.
View source ↗ - 4mo ago
fish 4.6.0 defaults emoji width to 2, adds run0 prompt vars
Picks up SHELL_PROMPT_PREFIX, SHELL_PROMPT_SUFFIX and SHELL_WELCOME, which systemd's run0 sets — fish adapting to its environment rather than the reverse. Emoji width flips to 2 by default, and set_color gains individual attribute toggles. Spanish and Japanese translations land alongside.
View source ↗ - 4mo ago
fish 4.4.0 aligns vi-mode word movement with Vim
Brings vi-mode word movement largely in line with Vim and adds a dozen new input functions plus count support to back it. Substantial enough that 4.5.0 became mostly a patch release for the vi regressions it introduced.
View source ↗