#4089·yazi

Reload separate configurations based on terminal size and on resize events

Author: Fjinna-LyraCreated Jun 27, 2026Updated Jun 27, 2026
Labelsfeature

ya env output

bash
Yazi
    Version: 26.5.6 (ea7fa21 2026-06-06)
    Debug  : false
    Triple : x86_64-unknown-linux-gnu (linux-x86_64)
    Rustc  : 1.96.0 (ac68faa2 2026-05-25)
    Backtrace: None

Ya
    Version: 26.5.6 (ea7fa21 2026-06-06)
    Debug  : false
    Triple : x86_64-unknown-linux-gnu (linux-x86_64)
    Rustc  : 1.96.0 (ac68faa2 2026-05-25)

Config
    Init             : /home/akiyama/.config/yazi/init.lua (No such file or directory (os error 2))
    Yazi             : /home/akiyama/.config/yazi/yazi.toml (No such file or directory (os error 2))
    Keymap           : /home/akiyama/.config/yazi/keymap.toml (No such file or directory (os error 2))
    Theme            : /home/akiyama/.config/yazi/theme.toml (No such file or directory (os error 2))
    VFS              : /home/akiyama/.config/yazi/vfs.toml (No such file or directory (os error 2))
    Package          : /home/akiyama/.config/yazi/package.toml (No such file or directory (os error 2))
    Dark/light flavor: ArcSwapAny("") / ArcSwapAny("")

Emulator
    TERM                : Some("xterm-kitty")
    TERM_PROGRAM        : None
    TERM_PROGRAM_VERSION: None
    Brand.from_env      : Some(Kitty)
    Emulator.detect     : Emulator { kind: Left(Kitty), version: "kitty(0.47.1)", light: false, csi_16t: (9, 20), force_16t: false }

Adapter
    Adapter.matches    : Kgp
    Dimension.available: Dimension { cols: 76, rows: 38, width: 684, height: 760 }

Desktop
    XDG_SESSION_TYPE           : Some("wayland")
    WAYLAND_DISPLAY            : Some("wayland-1")
    DISPLAY                    : Some(":0")
    NIRI_SOCKET                : None
    SWAYSOCK                   : None
    HYPRLAND_INSTANCE_SIGNATURE: Some("39d7e209c79d451efab1b21151d5938289da838d_1782537735_501413172")
    WAYFIRE_SOCKET             : None

SSH
    shared.in_ssh_connection: false

WSL
    WSL: false

Variables
    SHELL              : Some("/bin/bash")
    EDITOR             : None
    VISUAL             : None
    YAZI_FILE_ONE      : None
    YAZI_CONFIG_HOME   : None
    YAZI_ZOXIDE_OPTS   : None
    SSH_AUTH_SOCK      : None
    FZF_DEFAULT_OPTS   : None
    FZF_DEFAULT_COMMAND: None

Text Opener
    default     : Some(OpenerRule { id: Id(3), run: NonEmptyString("${EDITOR:-vi} %s"), block: true, orphan: false, desc: "$EDITOR", for: Unix, spread: true })
    block-create: Some(OpenerRule { id: Id(3), run: NonEmptyString("${EDITOR:-vi} %s"), block: true, orphan: false, desc: "$EDITOR", for: Unix, spread: true })
    block-rename: Some(OpenerRule { id: Id(3), run: NonEmptyString("${EDITOR:-vi} %s"), block: true, orphan: false, desc: "$EDITOR", for: Unix, spread: true })

Multiplexers
    TMUX               : false
    tmux version       : No such file or directory (os error 2)
    tmux build flags   : enable-sixel=Unknown
    ZELLIJ_SESSION_NAME: None
    Zellij version     : No such file or directory (os error 2)

Dependencies
    file          : 5.47
    ueberzugpp    : No such file or directory (os error 2)
    ffmpeg/ffprobe: 8.1.1 / 8.1.1
    pdftoppm      : 26.05.0
    magick        : 7.1.2-25
    fzf           : 0.72.0
    fd/fdfind     : No such file or directory (os error 2) / No such file or directory (os error 2)
    rg            : 15.1.0
    chafa         : No such file or directory (os error 2)
    zoxide        : No such file or directory (os error 2)
    7zz/7z        : No such file or directory (os error 2) / 26.01
    resvg         : 0.47.0
    jq            : 1.8.1

Clipboard
    wl-copy/paste: 2.3.0 / 2.3.0
    xclip        : No such file or directory (os error 2)
    xsel         : 1.2.1

Routine
    `file -bL --mime-type`: text/plain

Please describe the problem you're trying to solve

Having the preview pane is nice on a wide terminal, but on a narrow terminal it takes up valuable space. I can manually toggle it on or off, but when you keep resizing the terminal, it gets annoying.

Would you be willing to contribute this feature?

  • Yes, I'll give it a shot

Describe the solution you'd like

When the terminal is resized, load a ratio configuration based on the terminal size. Like, if the terminal width is less that X cells (~75 in my case) then the ratio should [4 6 0] otherwise it should be the default

Additional context

No response

Checklist

  • I have searched the existing issues/discussions
  • The latest nightly build doesn't already have this feature