ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

niri 配置完整避坑指南:多屏、工作区与动画一次配好

niri 配置完整避坑指南:多屏、工作区与动画一次配好 niri 配置完整避坑指南多屏、工作区与动画一次配好【免费下载链接】niriA scrollable-tiling Wayland compositor.项目地址: https://gitcode.com/GitHub_Trending/ni/niriniri 是一款可滚动平铺的 Wayland 合成器窗口像一列列横向排开、还能无限滚动。niri 配置全部写在一个 KDL 文件里默认~/.config/niri/config.kdl改完即时生效、不用重启。下面不讲从依赖到更新的流水账而是按你最容易卡住的几个点来讲黑屏、多屏、命名工作区、键位、动画每条都给你能直接验证的做法。先确认 niri 适不适合你配置文件在哪niri 的列式滚动对写代码、看文档这类长窗口很友好但你得接受它没有传统桌面的固定窗口位置——窗口按列排布靠快捷键和手势来挪。如果你主要用浮窗、拖拽定位它可能不是最省心的选择。配置文件路径固定~/.config/niri/config.kdl。建议养成习惯每次改完先验证再热加载避免一个语法错误让整份配置失效。装完黑屏先把启动命令和显卡模式跑对多数人装完 niri 卡在黑屏八成不是配置错而是启动方式或显卡没进正确模式。有显示管理器GDM 等登出后在会话里选 Niri 再登录即可。没有显示管理器在 TTY 里跑niri-sessionsystemd/dinit或niri --session后者会把环境变量和 D-Bus 服务一并拉起来。NVIDIA通常需要开启内核模式设置在启动参数里加nvidia-drm.modeset1并确保驱动新到支持 GBM否则 TTY 启动可能黑屏。装好能进桌面后记住一条排查命令niri msg outputs它会列出所有输出名如eDP-1、HDMI-A-1、可用分辨率和刷新率后面多屏配置全靠它。niri 多显示器配置mode、scale、position 一次写对多屏踩坑最常见的是位置对不上和刷新率写错。输出按连接名或厂商 型号 序列号匹配名字用niri msg outputs查。这段配置解决副屏刷新率低、双屏光标跨不过去、分辨率被自动挑低三个问题output HDMI-A-1 { // 刷新率要和 niri msg outputs 里看到的三位小数完全一致 mode 2560x1440143.912 // 逻辑尺寸 物理尺寸 / scaleposition 按逻辑像素算 position x1920 y0 transform normal } output eDP-1 { scale 2 // 多块屏都写时按配置出现的顺序决定开机聚焦谁 focus-at-startup }配完效果副屏跑到它支持的最高刷新率两块屏在同一个坐标空间里紧挨着光标能直接从主屏滑到副屏focus-at-startup保证开机焦点落在那块屏上而不是永远落在字母序第一块。niri 支持在每块屏里单独覆盖布局参数layout {}比如给超宽屏设更窄的默认列宽、给更多预设宽度这样宽屏不会被单列撑满。niri 命名工作区让软件自动落到指定屏普通工作区是动态的、空了就会消失命名工作区workspace 名字则永远存在还能绑到固定输出。适合浏览器永远在副屏、聊天窗口永远在主屏这种固定分工。这段配置解决每次开机都要手动把窗口拖回原位的问题workspace browser { open-on-output HDMI-A-1 } // 启动时按 app-id 把 Fractal 自动放到 chat 工作区 window-rule { match at-startuptrue app-idr#^org\.gnome\.Fractal$# open-on-workspace chat }配完效果命名工作区即使没窗口也留着focus-workspace、move-column-to-workspace都能按名字调用配合窗口规则符合匹配条件的程序启动即自动落位不用再手挪。niri 快捷键先背下默认键位再自定义niri 自带一套完整默认键位够你先跑起来ModT开终端alacritty、ModD开启动器fuzzel、ModQ关窗、ModM最大化、ModShiftF全屏、ModV在平铺/浮窗间切换、ModI/U上下切工作区、ModShiftE退出。注意在 TTY 里 Mod 是 Super在窗口模式里是 Alt。理解一个通用规律就够了凡是切换/聚焦到某处的键加上 Ctrl 就变成把当前窗口/列移过去。比如ModL聚焦右侧列ModCtrlL就是把当前列移到右侧。想改键就写binds例如把终端改成你自己的、并把方向键绑定到焦点binds { ModReturn spawn(alacritty) ModQ close-window ModH focus-column-left ModL focus-column-right ModJ focus-window-down ModK focus-window-up }配完效果键位符合你的肌肉记忆且加 Ctrl 即移动这条规律全程通用不用逐个去记。niri 动画与手势调参弹簧曲线和边缘滚动动画用弹簧曲线描述两个参数决定手感damping-ratio越小回弹越明显mass越大越沉。想顺滑不拖沓一般把 damping-ratio 调到 0.7 左右即可嫌卡顿就先把某个动画设成none关掉别一上来堆参数。手势部分最实用的是 DnD 边缘滚动拖窗口/拖文件到屏幕边缘时自动滚动视图和热角鼠标顶到角落弹概览。trigger-width是触发区宽度、max-speed是最大滚动速度嫌不灵敏就把这两项调大animations { open-window spring(damping-ratio: 0.7, mass: 1.0) window-movement spring(damping-ratio: 0.7, mass: 1.0) } gestures { dnd-edge-view-scroll { trigger-width 100 max-speed 3000 } hot-corners { top-left } }配完效果窗口开合/移动有自然回弹不抖动拖到屏幕边缘能快速翻页顶到左上角即弹出概览。niri 配置不生效或报错两个自查手段配置写错最直接的信号是改了没反应——这通常是一个语法错误让整份文件没被加载而不是那一条没生效。两个自查手段按顺序用niri --check-config纯语法校验不连桌面也能跑先把格式错误挡在热加载之前。niri msg outputs确认你写的输出名、分辨率、刷新率跟系统实际报告的一致mode 的刷新率必须精确到三位小数。如果验证通过但仍黑屏再回到启动命令和显卡模式那一节查nvidia-drm.modeset1之类的基础项。改完保存即可热加载。接下来可以试着加一条window-rule把你最常用的程序固定到某个命名工作区或者调preset-column-widths给超宽屏多备几个列宽档位慢慢把默认键位换成你自己的习惯。【免费下载链接】niriA scrollable-tiling Wayland compositor.项目地址: https://gitcode.com/GitHub_Trending/ni/niri创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表