Files
nirion/TODO.md
T

1.9 KiB
Raw Blame History

TODO

窗口横向贴左 / 贴右键位

状态:搁置(等上游支持后再做)

需求

当前 Super+C(Mod+C { center-column; })用于将窗口横向居中。 希望能再分别设置横向贴左、贴右,例如:

键位 动作
Mod+C 居中(现状)
Mod+Ctrl+C 横向贴左
Mod+Shift+C 横向贴右

卡点

  • niri 26.04 没有 左/右对齐动作,只有 center-column / center-window / center-visible-columns。
  • niri 没有插件 API:外部工具(含 piri 这类"插件系统")只能监听事件流 + 调用已有 action,无法新增合成器内部动作;而横向对齐需要改内部 view offset,因此纯外部方案无法真正实现。
  • 上游 align-column / align-window 仍是未合并 PR(#3033、#4417)。
  • 注意:Mod+Ctrl+C 目前已被 center-visible-columns 占用,届时需处理冲突。

触发条件与届时做法

上游 PR #4417 合并进 niri 后,本需求退化为纯配置问题,在 dms/binds.kdl 增加:

Mod+Ctrl+C { align-column horizontal="left"; }
Mod+Shift+C { align-column horizontal="right"; }

(如保留 center-visible-columns,需为其换一个不冲突的键位)

已评估但暂时放弃的替代方案

方案 放弃原因
薄 patch + 自定义 PKGBUILD 每次上游更新需维护/rebase patch
AUR niri-git 滚动版,且上游尚未合并该特性
niri_tweaks 的 niri_right_align.sh dummy 窗口会导致终端闪烁,对窗口操作不可接受;且只能贴右
piri 插件系统 只有状态驱动的自动对齐,无法手动贴左/贴右

参考