杂项
本页记录了所有没有单独设页的顶级层级(top-level)配置选项。
以下是所有这些选项的概览:
spawn-at-startup "waybar"
spawn-at-startup "alacritty"
spawn-sh-at-startup "qs -c ~/source/qs/MyAwesomeShell"
prefer-no-csd
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
environment {
QT_QPA_PLATFORM "wayland"
DISPLAY null
}
cursor {
xcursor-theme "breeze_cursors"
xcursor-size 48
hide-when-typing
hide-after-inactive-ms 1000
}
overview {
zoom 0.5
backdrop-color "#262626"
workspace-shadow {
// off
softness 40
spread 10
offset x=0 y=10
color "#00000050"
}
}
xwayland-satellite {
// off
path "xwayland-satellite"
}
clipboard {
disable-primary
}
hotkey-overlay {
skip-at-startup
hide-not-bound
}
config-notification {
disable-failed
}
spawn-at-startup#
添加类似这样的行,以便在 niri 启动时启动进程。
spawn-at-startup 接受程序二进制文件的路径作为第一个参数,后跟程序的参数。
此选项的工作方式与 spawn 键绑定动作相同,因此请阅读该处以了解其所有细节。
请注意,将 niri 作为 systemd 会话运行时,默认就支持 xdg-desktop-autostart,这可能更方便使用。
得益于此,您在 GNOME 中配置为自启动的应用,在 niri 中也将“正常工作”,无需任何手动的 spawn-at-startup 配置。
spawn-sh-at-startup#
添加类似这样的行,以便在 niri 启动时运行 shell 命令。
该参数是一个纯字符串,会原封不动地传递给 sh。
因此,您可以如常使用 shell 变量、管道、~ 展开以及其他所有功能。
请参阅 spawn-sh 按键绑定动作文档中的详细描述。
prefer-no-csd#
此标志将使 niri 请求应用程序省略其客户端装饰。
如果应用程序明确请求 CSD,则该请求将被接受。 此外,客户端将被告知它们处于平铺状态,从而移除一些圆角。
设置 prefer-no-csd 后,通过 xdg-decoration 协议使用服务器端装饰的应用,将只绘制焦点环和边框,而不会有纯色背景。。
Note
与大多数其他选项不同,更改 prefer-no-csd 不会完全生效于正在运行的应用程序。
它会使某些窗口变为矩形,但去不掉标题栏。
这主要是因为 niri 为了绕过 SDL2 中的一个 Bug,该 Bug 会阻止 SDL2 应用程序启动。
在配置中更改 prefer-no-csd 后,请重启应用程序以完全应用更改。
screenshot-path#
设置截图保存的路径。
开头的 ~ 将被展开为用户主目录。
该路径使用 strftime(3) 进行格式化,以便为您提供截图的日期和时间。
如果路径的最后一个文件夹不存在,Niri 将会创建它。
您也可以将此选项设置为 null 以禁用将截图保存到磁盘。
environment#
覆写由 niri 启动的进程的环境变量。
请注意,这些环境变量不会传播到 systemd 全局环境中,因此由 systemd 启动的工具和应用程序无法识别到这些变量。 具体来说,如果您通过 systemd 启动一个桌面 shell,例如 DankMaterialShell,然后使用其内置的应用程序启动器,那么这些应用程序将无法获取到这些环境变量。
如果您希望所有进程都能识别到这些环境变量,您可以改为在登录 shell 的配置中设置它们(即 ~/.bash_profile)。
niri-session 这个 shell 脚本会通过登录 shell 运行,并在启动 niri 之前将所有环境变量导入到 systemd 中。
需要注意的是,所有合成器都能获取到在登录 shell 中设置的变量,而不仅仅是 niri。
cursor#
通过设置 XCURSOR_THEME 和 XCURSOR_SIZE 环境变量,来更改光标的主题和大小。
hide-when-typing#
如果设置,则在按下键盘上的键时隐藏光标。
Note
此设置可能会干扰在原生 Wayland 模式下运行并使用鼠标视角的 Wine 游戏,例如第一人称游戏。 如果当您同时按键和移动鼠标时,角色的视角会向下跳转,请尝试禁用此设置。
hide-after-inactive-ms#
如果设置,则自上次光标移动起经过此毫秒数后,光标将自动隐藏。
overview#
桌面概览中的设置。
zoom#
控制在概览中工作区缩小的程度。
zoom 的范围从 0 到 0.75,值越小,所有内容就越小。
backdrop-color#
设置概览中工作区背后的背景色。 在切换工作区时,工作区之间也会显示此背景色。
此颜色的 Alpha 通道将会被忽略。
您也可以在输出配置中为每个输出单独设置颜色。
workspace-shadow#
控制在概览中可见的工作区背后的阴影。
此处的配置项照抄了布局部分中常规的 shadow 配置,因此请查看那里的文档说明。
工作区阴影是先按高度为 1080 像素的标准工作区配置的,然后再随工作区一起缩放。 因此这意味着实际使用时,您需要相较于窗口阴影设置更大的扩散、偏移和柔和度。
xwayland-satellite#
与 xwayland-satellite 集成的设置。
当检测到足够新的 xwayland-satellite 时,niri 会创建 X11 套接字并设置 DISPLAY,之后,一旦有 X11 客户端尝试连接,niri 便会自动启动 xwayland-satellite。
如果 Xwayland 崩溃,niri 会继续监听 X11 套接字,并在需要时重启 xwayland-satellite。
这与其他合成器中内置 Xwayland 的工作方式非常相似。
off 禁用集成:niri 不会创建 X11 套接字,也不会设置 DISPLAY 环境变量。
path 用于设置 xwayland-satellite 二进制文件的路径。
默认情况下,该值就是 xwayland-satellite,因此会像查找其他非绝对路径的程序名一样来搜索它。
// 使用 xwayland-satellite 的自定义构建。
xwayland-satellite {
path "~/source/rs/xwayland-satellite/target/release/xwayland-satellite"
}
clipboard#
剪贴板设置。
设置 disable-primary 标志以禁用主剪贴板(中键粘贴)。
切换此标志将仅适用于之后启动的应用程序。
hotkey-overlay#
“重要快捷键”覆盖层的设置。
skip-at-startup#
如果您不想在 niri 启动时看到快捷键帮助,请设置 skip-at-startup 标志。
hide-not-bound#
默认情况下,niri 仍会显示最重要的动作,即使它们未绑定到任何键,以防混淆。
如果您想隐藏所有未绑定到任何键的动作,请设置 hide-not-bound 标志。
您可以使用 hotkey-overlay-title 属性自定快捷键覆盖层显示的绑定。
config-notification#
配置创建/失败时通知的设置。
设置 disable-failed 标志,可以禁用“解析配置文件失败”的通知。
比如,如果您已用自己的方式来处理这类错误。