v0.74.1

junegunn/fzfv0.74.1Jul 18, 2026by junegunn

AI Summary

Rendering improvements including synchronized updates and fixes for cursor restoration in Neovim.

Key Highlights

  • Each frame is now wrapped in synchronized update mode (mode 2026) to reduce flickering
  • Reduced rendering output by 10-23% by skipping redundant SGR sequences
  • Fixed cursor restoration on exit with `--height --no-clear` inside Neovim terminal
  • Fixed nushell deprecation error for `str downcase`
  • Added `.deb` packages for easy installation

New Features

  • Synchronized update mode for rendering
  • Reduced SGR output
  • Debian packages

Full Release Notes

- The default separator on the info line is no longer shown when the input section is already visually separated from the list section by a border line
  ```sh
  # No separator shown below the header border
  fzf --style full --input-border none --header foo

  # Separator shown; no border separates the input section from the list section
  fzf --style full --input-border none --header foo --no-header-border

  # No separator below the border of the preview window at 'next' position
  fzf --preview : --preview-window next

  # Conversely, separator is now shown when the input border does not draw
  # a line facing the list section
  fzf --input-border bottom
  ```
- Rendering improvements
    - Each frame is now wrapped in synchronized update mode (mode 2026) to reduce flickering on supported terminals
    - Reduced rendering output by 10-23% by skipping redundant SGR sequences
    - Fixed ghost characters and misplaced colors inside Zellij by using CHA instead of CR + CUF for horizontal cursor movement (#4858, zellij-org/zellij#5370)
    - Fixed cursor restoration on exit with `--height --no-clear` inside Neovim terminal by using DECSC/DECRC instead of `CSI s`/`CSI u`
- nushell: fixed deprecation error of `str downcase` on nushell 0.114.0 or above (#4857) (@sim590)
- Each release now includes `.deb` packages for easy installation on Debian-based distros (#4859)