github sxyazi/yazi v25.2.26

latest release: nightly
14 hours ago

Breaking Changes

  • separator_open and separator_close have been replaced with the new sep_left and sep_right. #2313
  • The [completion] component has been renamed to [cmp]. #2399

Deprecated

  • MANAGER, PREVIEW, PLUGIN, and THEME have been deprecated in favor of the new rt and th. #2389
  • ya.manager_emit() has been deprecated in favor of the new ya.mgr_emit(). #2397

Built-in Previewer Improvements

  • The JSON previewer will now respect the user's wrap setting to support automatic JSON line wrapping. #2337, thanks @boydaihungst
  • The PDF previewer will now respect the user's max_width setting to address the issue of previewing content that is too small. #2331
  • The ImageMagick previewer will now respect the user's image_alloc setting to limit memory usage. #2403

New Search Engine: rga

#2383 (thanks @paperbenni) has added a new ripgrep-all search engine.

It is a wrapper around ripgrep that supports additional file formats (such as PDF, docx, epub, etc.).

You can use it with the search --via=rga command.

Allow to Specify Layer for Keymap Commands

With #2399, you'll now be able to assign commands from different layers to a keybinding in keymap.toml.

This opens up the possibility of interacting with any other component, such as accessing commands from the manager ([manager]) within the input component ([input]):

[[input.prepend_keymap]]
on   = "<Esc>"
run  = [ "close", "mgr:escape --filter" ]
desc = "Close input and cancel the filter"

When you press Esc in the input box to exit the filter view (triggered by the f key), the filter will be canceled as the input is closed.

More Flexible Status Bar Customization

#2313 (thanks @PFiS1737) introduces sep_left and sep_right to replace the previous separator_open and separator_close settings, allowing different separators to be set for the left and right sides:

status-sep-explain

Support for Setting Spotter Table Styles

#2391 introduces two new settings, tbl_col and tbl_cell, in theme.toml to configure the styles for spotter table columns and cells, respectively.

What's Changed

  • feat!: allow different separators to be applied individually to the left and right sides of the status bar by @PFiS1737 in #2313
  • fix: load mount points with the best effort even if the /dev/disk/by-label directory does not exist by @sxyazi in #2326
  • feat: CSI-based Vim and Neovim built-in terminal detection for better accuracy by @sxyazi in #2327
  • feat: respect the user's max_width setting for the built-in PDF preloader by @sxyazi in #2331
  • feat: respect the user's wrap setting for the built-in JSON previewer by @boydaihungst in #2337
  • refactor: consistent naming for enum variants by @sxyazi in #2339
  • feat: new external and removable fields in the fs.partitions() API by @sxyazi in #2343
  • feat: terminal response detection under async stdin by @sxyazi in #2347
  • fix: incorrect kebab-case for the notify level enum by @hankertrix in #2349
  • fix: add maximum preview limit under /proc virtual file system by @sxyazi in #2355
  • feat: add a link to the debugging instructions in yazi --debug by @sxyazi in #2365
  • fix: didn't reset previous Cha when loading directories in chunks by @sxyazi in #2366
  • feat: make incompatible version message more clear by @sxyazi in #2377
  • feat: bump trash and libc versions to support NetBSD by @sxyazi in #2388
  • feat: new rt and th allow to access user configuration and theme scheme in sync/async plugins consistently by @sxyazi in #2389
  • feat: new tbl_col and tbl_cell in theme system for spotter table styling by @sxyazi in #2391
  • feat: add ripgrep-all support for search by @paperbenni in #2383
  • feat: new cf.args to access startup arguments by @sxyazi in #2392
  • refactor: rename cf to rt by @sxyazi in #2393
  • feat: expose mode field in Cha by @sxyazi in #2394
  • refactor: rename rt.manager to rt.mgr, and th.manager to th.mgr by @sxyazi in #2397
  • feat!: allow to specify layer for keymap commands by @sxyazi in #2399

New Contributors

Full Changelog: v25.2.11...v25.2.26

Don't miss a new yazi release

NewReleases is sending notifications on new releases.