屏幕顶部的那一条就是 Omarchy 栏。它不是外挂的状态栏,而是 Omarchy Shell 的一部分——那个长期运行的单一 Quickshell 进程,同时也负责绘制菜单、通知、OSD 弹窗和锁屏。正因如此,它才能与其它一切完美地应用同一主题,面板也能瞬间打开,而不是去启动一个新应用程序。
它也是桌面环境中唯一始终显示在屏幕上的部分,所以值得了解那些小图标各自的作用。
默认包含的内容
Section titled “默认包含的内容”顶部栏分为三个区域。左侧是 Omarchy 徽标(菜单启动器)和工作区指示器。中间是状态指示器、时钟、键盘布局、天气以及 Omarchy 更新徽章。右侧是系统托盘、agents、蓝牙、网络、音频、显示器和电源。
其中有些只会在有内容要显示时才出现。键盘布局仅在你配置了多个布局时才会显示。更新徽章仅在有待处理的 Omarchy 更新时出现。而 agents 图标会在 Omarchy 首次发现机器上有 AI 编码使用记录时出现(参见 AI)。
几乎每个小组件在左键点击、右键点击和中键点击时都会执行操作,还有几个会响应滚动。这正是人们容易忽略的地方——右键和中键里藏着很多好东西。
| 小组件 | 左键 | 右键 | 中键 / 滚动 |
|---|---|---|---|
| 菜单 | Omarchy 菜单 | 新建终端 | — |
| 工作区 | 聚焦该工作区 | — | — |
| 时钟 | 日历弹窗 | 循环切换标签格式 | 中键:时区选择器 |
| 天气 | 预报弹窗 | 以通知形式显示完整天气 | 中键:刷新 |
| 音频 | 音频面板 | 静音 | 中键:面板 · 滚动:音量 |
| 麦克风 | 麦克风静音 | — | 中键:音频面板 · 滚动:输入音量 |
| 网络 | 网络面板 | — | — |
| 蓝牙 | 蓝牙面板 | 切换无线电 | — |
| 显示器 | 显示器面板 | — | 滚动:亮度 |
| 电源 | 电源面板 | 切换电池百分比显示 | — |
| 媒体 | 播放/pause | 封面图弹窗 | 中键:下一首 · 滚动:上一首/next |
| Agents | Agents 面板 | 启动你的 agent | 中键:下一个订阅 |
| 托盘 | 悬停展开抽屉 | 在箭头上右键点击进行管理 | — |
| Omarchy 更新 | 运行更新 | — | — |
表格中的内容并非开箱即用地全部出现在你的顶部栏上。媒体小组件(MPRIS 正在播放,带滚动显示曲目和艺术家)和麦克风小组件都是内置的,但默认关闭——如果需要,可以按下面的说明添加。
点击顶部栏图标会打开一个面板,它是一个带有滑块、列表和键盘导航的正式弹窗,而不是工具提示。每个面板也都有快捷键,所以你永远不必去瞄准一个 16 像素的小图标:
| 快捷键 | 面板 |
|---|---|
Super + Ctrl + A |
音频 |
Super + Ctrl + W |
网络 |
Super + Ctrl + B |
蓝牙 |
Super + Ctrl + D |
显示器 |
Super + Ctrl + P |
电源 |
Super + Ctrl + Alt + D |
日历 |
Super + Ctrl + 1-9 |
切换右侧区域中的第 n 个面板 |
这些面板不只是只读显示。它们是你真正执行操作的地方:
- 音频 有主音量滑块、输出设备选择器和按应用程序混音器,因此你可以单独调低某个浏览器标签页的音量,而不影响其它一切。
- 网络 扫描 Wi-Fi、显示信号强度、进行连接,并允许你选择 DNS 提供商。
- 蓝牙 列出你的设备,包含连接/disconnect和电池电量。
- 电源 显示电池统计信息、切换电源配置文件(它会分别记住电池和 AC 电源下的选择),并打印一些系统信息。
- 显示器 包含亮度滑块、文字大小、显示器缩放预设,以及——当你有多个屏幕时——按显示器控制。更深入的说明请参见 monitors。
- 时钟 打开一个带有 ISO 周数和月份切换的月历网格。
每个面板都支持键盘和鼠标操作:方向键移动,Return 激活,Tab 切换到相邻面板,Escape 关闭。
Super + Ctrl + 1-9 按从左到右的顺序计算右侧区域中的面板,跳过托盘,因为托盘没有自己的面板。因此编号与你指向的图标一致。
Tailscale 和 Dropbox
Section titled “Tailscale 和 Dropbox”另外两个小组件只有在从 Install → Service 安装对应服务后才会出现在顶部栏上,两者都值得了解,因为它们的功能不止于报告状态。
Tailscale 面板可以连接和断开 tailnet、在账户之间切换,并选择出口节点(你自己的机器和 Mullvad 区域都会出现在该列表中)。它还可以浏览你的机器——选中一台后,s 通过 Taildrop 向其发送文件,这是把文件传到手机或另一台笔记本电脑的最快方式。c 复制该机器的 IP,n 复制其名称,d 复制其完整 DNS 名称。每台机器的行上也有一个发送按钮,如果你更愿意点击的话。在终端中执行同样操作的命令是 omarchy tailscale send <machine> [file...]。
Dropbox 面板处理登录、显示已使用的存储空间,并列出最近同步的文件。
移除任一服务都会将其小组件从顶部栏上移除。
中间那一小簇就是指示器小组件。它们是针对你已开启模式的状态图标:勿扰模式、夜间模式、排队的提醒、正在进行的屏幕录制、保持唤醒以及听写。它们在模式激活时亮起,否则不会打扰你——将鼠标悬停在顶部栏中央可以查看未激活的指示器。点击某个指示器会切换该模式。
如果你希望它们始终可见,可以在该小组件上将 alwaysShow 设置为 true。如果你只关心其中一部分,可以在 items 中列出你想要的:["Dnd", "Reminder", "NightLight"]。你可以拥有多个指示器小组件,因此不同区域可以显示不同的子集。
重新排列顶部栏
Section titled “重新排列顶部栏”顶部栏会自行配置。你无需打开配置文件就能移动内容。
抓住顶部栏中央附近的空白区域,将其拖向另一个屏幕边缘,顶部栏就会移动到那里——左、右、上、下都可以,而且每个小组件都会自适应(垂直栏会回退为紧凑的纯图标形式)。按住不放也会开始同样的拖动。双击同一块空白区域可以切换透明度。拖动任意小组件可以重新排序或将其扔到另一个区域。
如果你更愿意从菜单中选择,Style → Menu Bar 中同时有位置和透明度选项。
同样的操作也有命令,这正是 dotfiles 配置所需要的:
omarchy bar position bottomomarchy bar transparent toggleomarchy bar move omarchy.clock --section center --index 0omarchy bar set omarchy.clock format "HH:mm"omarchy bar defaults # back to the shipped layout要完全添加或移除某个小组件,请使用插件命令。omarchy plugin list 会打印 Shell 已知的每个小组件及其 id,然后:
omarchy plugin enable omarchy.media --section centeromarchy plugin disable omarchy.weatherSuper + Shift + Space 可以在不杀死 Shell 的情况下关闭和重新打开顶部栏——面板和快捷键继续工作,你只是拿回了那些像素。它也在菜单的 Trigger → Toggle → Menu Bar 下。
所有内容都存储在 ~/.config/omarchy/shell.json 中的 bar 键下。以下是一个精简版本:
{ "version": 1, "bar": { "position": "top", "transparent": false, "centerAnchor": "omarchy.clock", "layout": { "left": [{ "id": "omarchy.menu" }, { "id": "omarchy.workspaces" }], "center": [{ "id": "omarchy.clock", "format": "HH:mm" }], "right": [{ "id": "omarchy.audio" }, { "id": "omarchy.power" }] } }}每个小组件都是三个布局数组之一的条目,其设置就内联在该条目上——没有单独的设置文件,也没有 config 子对象。时钟的 format、formatAlt(右键点击循环切换到的内容)和 verticalFormat 都直接位于 { "id": "omarchy.clock" } 上。
centerAnchor 指定了那个被固定到屏幕正中央的中间小组件,其它小组件则分列两侧。这就是为什么即使天气和更新徽章来来去去,时钟也能始终保持在正中央。将其设置为空字符串,中间列表就会作为一个整体居中。
有一条规则值得牢记:一旦你有了自己的 shell.json,它就是权威的。在你进行任何自定义之前,Shell 读取的是 Omarchy 的默认文件。你拖动小组件、运行 omarchy bar 或自己编辑文件的那一刻起,它就归你所有了——不存在深度合并,因此未来 Omarchy 版本中新增的默认小组件不会自动出现在你的顶部栏上。omarchy bar defaults 可以在你想要一个干净起点时恢复随附的布局。
同一个文件还在顶层、bar 键之外保存了你的空闲计时:idle.screensaver 和 idle.lock,两者都以你进入空闲状态后的秒数计。因此默认屏保在 150 秒时启动,锁屏在 300 秒时启动。
⟦OMARCHY_BODY_END⟧