Nog窗口规则配置实例:自动管理特定应用窗口的完整方案
【免费下载链接】nogA tiling window manager for Windows项目地址: https://gitcode.com/gh_mirrors/no/nog
Nog是一款专为Windows设计的平铺窗口管理器(tiling window manager),通过窗口规则配置可以实现对特定应用的自动化管理,显著提升工作效率。本文将详解如何通过简单配置让Nog自动识别、分类和管理各类应用窗口,即使是新手也能快速上手。
什么是窗口规则?
窗口规则是Nog的核心功能之一,它允许你通过正则表达式匹配窗口标题或可执行文件名,为不同应用设置专属行为。例如,让浏览器自动进入特定工作区,让音乐播放器始终悬浮显示,或让代码编辑器使用自定义标题栏。
官方文档中对规则的定义如下:"Rules are used to add special handling to windows that match a regex pattern"(book/src/configuration/rules.md)。通过规则配置,你可以告别手动调整窗口的繁琐操作,让Nog成为你的智能窗口管家。
基础配置文件结构
Nog的窗口规则配置主要通过rules.ns文件实现,项目示例中提供了完整的配置模板:example/rules.ns。基础结构如下:
import nog.rules.ignore import nog.rules.match export fn init(ignored) { ignored.for_each(ignore) match("应用可执行文件名", #{ 配置项1: 值1, 配置项2: 值2 }) }其中match函数是核心,第一个参数是应用的可执行文件名(如firefox.exe),第二个参数是具体规则配置。
常用窗口规则配置项
根据book/src/configuration/rules.md的说明,规则支持以下关键配置项:
| 配置项 | 类型 | 说明 |
|---|---|---|
has_custom_titlebar | 布尔值 | 启用自定义标题栏(适合VSCode等自带标题栏的应用) |
workspace_id | 数字 | 指定窗口自动移动到的工作区ID |
action | 字符串 | 窗口创建时的行为:Ignore(忽略)、Manage(管理)、Pin(固定)等 |
chromium/firefox | 布尔值 | 启用浏览器专属优化(如Chrome/Edge/Firefox) |
实用配置实例
1. 浏览器自动归类到工作区2
将Chrome和Firefox浏览器自动移动到工作区2,并启用自定义标题栏:
match("chrome.exe", #{ has_custom_titlebar: true, workspace_id: 2, chromium: true }) match("firefox.exe", #{ has_custom_titlebar: true, workspace_id: 2, firefox: true })2. 聊天应用固定显示
让Discord始终固定在屏幕上(不受平铺布局影响):
match("Discord.exe", #{ has_custom_titlebar: true, action: "Pin" -- 固定窗口 })3. 代码编辑器专属配置
为VSCode启用自定义标题栏并自动管理:
match("Code.exe", #{ has_custom_titlebar: true, action: "Manage" -- 自动纳入平铺管理 })4. 媒体播放器忽略管理
让Spotify保持原生窗口模式,不参与平铺:
match("Spotify.exe", #{ has_custom_titlebar: true, action: "Ignore" -- 忽略窗口 })配置文件位置与生效方法
配置文件路径:项目默认配置位于assets/default_config.lua,用户自定义规则建议放在
rules.ns中。应用配置:修改后需重启Nog或通过热重载功能使配置生效。热重载功能可通过配置文件中的
hot_reloading选项启用(twm/src/config/hot_reloading.rs)。
高级技巧:正则表达式匹配
规则支持通过正则表达式匹配窗口标题,例如匹配所有包含"文档"的Notepad窗口:
match("notepad.exe", #{ title_pattern: ".*文档.*", -- 匹配标题含"文档"的窗口 workspace_id: 3 })总结
通过Nog的窗口规则配置,你可以轻松实现:
- 🚀 应用自动分类到指定工作区
- 🖥️ 浏览器/编辑器专属优化
- 📌 固定常用工具窗口
- 🧩 忽略无需管理的应用
只需简单编辑example/rules.ns文件,即可打造个性化的窗口管理方案。更多配置细节可参考官方文档book/src/configuration/rules.md,让Nog成为你高效工作的得力助手!
【免费下载链接】nogA tiling window manager for Windows项目地址: https://gitcode.com/gh_mirrors/no/nog
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考