跳转至

菜单栏

屏幕顶部那条横栏就是 OmarOS 菜单栏。它不是外加的状态栏,而是 OmarOS shell 的一部分——后者是那个长期运行的 Quickshell 进程,也负责绘制菜单、通知、OSD 弹出框和锁屏。这就是为什么它与其他一切完美契合主题,以及为什么面板能立刻打开而无需启动新应用。

它也是桌面上唯一始终在屏幕上的部分,所以值得了解那些小字形都做什么。

默认包含什么

该栏有三个部分。左侧是 OmarOS 徽标(菜单启动器)和工作区指示器。中间有状态指示器、时钟、Elsewhen(世界时钟)、天气和 OmarOS 更新徽章。右侧有:键盘布局(当配置了多个时)、系统托盘、智能体、蓝牙、网络、音频、显示和电源。

其中一些只在有内容要说时才出现。键盘布局仅在你配置了多个布局时出现。更新徽章仅在有 OmarOS 更新等待时出现。智能体图标在 OmarOS 首次在机器上发现 AI 编程使用情况时出现(参见 AI)。

点击操作

几乎每个小组件在左键、右键和中键点击时都会做点什么,而且有几个还会响应滚动。这是人们容易错过的部分——右键和中键按钮是很多好东西藏身之处。

小组件 左键 右键 中键 / 滚动
菜单 OmarOS 菜单 新终端 —
工作区 聚焦该工作区 — 滚动:下一个/上一个工作区
时钟 日历弹出框 循环标签格式 中键:时区选择器
天气 天气预报弹出框 以通知形式显示完整天气 中键:刷新
音频 音频面板 静音 中键:面板 · 滚动:音量
麦克风 静音麦克风 — 中键:音频面板 · 滚动:输入音量
网络 网络面板 — —
蓝牙 蓝牙面板 切换无线电 —
显示 显示面板 — 滚动:亮度
电源 电源面板 切换电池百分比 —
媒体 播放/暂停 封面弹出框 中键:下一首 · 滚动:上一首/下一首
智能体 智能体面板 启动你的智能体 中键:下一个订阅
托盘 悬停以显示抽屉 在 V 形标记上右键单击进行管理 —
OmarOS 更新 运行更新 — —

并非表格中的所有内容都开箱即在你的栏中。媒体小组件(MPRIS 正在播放,带有滚动的曲目和艺术家)和麦克风小组件都是内置的,但默认关闭——如果你想要它们,请按如下所述添加。

面板

单击栏图标会打开一个面板,这是一个带有滑块、列表和键盘导航的正式弹出框,而不是工具提示。每个面板也有快捷键,这样你就不必瞄准 16 像素的字形:

快捷键 面板
Super + Ctrl + A 音频
Super + Ctrl + W 网络
Super + Ctrl + B 蓝牙
Super + Ctrl + D 显示
Super + Ctrl + P 电源
Super + Ctrl + Alt + D 日历
Super + Ctrl + Alt + E 世界时钟
Super + Ctrl + 1-9 切换右侧部分中的第 n 个面板

这些面板不是只读显示。它们是你实际操作的地方:

  • 音频有主音量滑块、输出设备选择器和按应用混合器,这样你就可以调低那一个浏览器选项卡的音量,而不影响其他所有内容。
  • 网络扫描 Wi-Fi、显示信号强度、连接,并让你选择 DNS 提供商。
  • 蓝牙列出你的设备及连接/断开连接和电池电量。
  • 电源显示电池统计信息,切换电源配置文件(它会记住电池和交流电源的不同选择),并打印一些系统信息。
  • 显示带有亮度滑块、文本大小、显示器缩放预设,以及——当你有多个屏幕时——按显示器的控件。有关更深入的故事,请参见显示器。
  • 时钟打开带有 ISO 周编号和月份步进功能的月份网格。

每个面板都接受键盘和鼠标:箭头移动,Return 激活,Tab 步进到相邻面板,Escape 关闭。

Super + Ctrl + 1-9 从左到右计算右侧部分中的面板,跳过托盘,因为它没有自己的面板。所以数字与你指向的图标匹配。

指示器

中间那一小簇是指示器小组件。这些是你打开的模式的状态字形:勿扰、夜灯、排队的提醒、正在进行的录屏、保持唤醒和听写。当模式处于活动状态时它们会亮起,否则会保持不碍事——将鼠标悬停在时钟左侧(在垂直栏上是上方)可窥视非活动的那些。单击指示器可切换该模式。还有一个仅为状态:当有人通过 gliff 连接到此机器时,远程会话会亮起红色。

如果你希望它们始终可见,请将小组件上的 alwaysShow 设置为 true。如果你只关心其中一些,请在 items 中列出你想要的:["Dnd", "Reminder", "NightLight"]。你可以拥有多个指示器小组件,这样不同的部分就可以显示不同的子集。

重新排列栏

栏会自行配置。你不必打开配置文件来移动东西。

抓住栏中心周围的一块空白处,将其拖向另一个屏幕边缘,栏就会移到那里——左、右、顶部或底部都可以,每个小组件都会适应(垂直栏会退回到紧凑的仅图标形式)。单击并按住也会开始同样的拖动。双击同一空白处可循环栏背景,从透明到玻璃效果再到不透明。拖动任何小组件可重新排序它或将其扔到另一部分。

想保留但不想始终露在外面的小组件,可以放进托盘的抽屉里:把它拖到托盘上,抽屉就会打开接纳它。它会排在应用图标之后,抽屉展开时随之出现,而且其面板打开期间会让所在的抽屉保持展开。把它拖回栏上即可放回原处。

如果你更喜欢从菜单中选择,触发 → 外观 → 菜单栏中有位置,栏背景可选择栏的绘制方式:不透明栏、玻璃栏(半透明,其后面的内容模糊)或透明栏。

同样的事情也有命令,这正是你在 dotfiles 设置中想要的:

omaros bar position bottom
omaros bar background glassy  # opaque, glassy, none, or cycle
omaros bar move omaros.clock --section center --index 0
omaros bar move omaros.bluetooth --section tray  # into the tray's drawer
omaros bar set omaros.clock format "HH:mm"
omaros bar defaults          # back to the shipped layout

要完全添加或删除小组件,请使用插件命令。omaros plugin list 打印 shell 知道的所有小组件及其 ID,然后:

omaros plugin enable omaros.media --section center
omaros plugin disable omaros.weather

隐藏栏

Super + Shift + Space 可在不终止 shell 的情况下关闭和重新打开栏——面板和快捷键继续工作,你只是收回了像素。它也位于菜单的触发 → 外观 → 菜单栏 → 隐藏栏下。

配置文件

所有这些都存储在 ~/.config/omaros/shell.json 中,位于 bar 键下。这是一个精简版:

{
  "version": 1,
  "bar": {
    "position": "top",
    "background": "opaque",
    "centerAnchor": "omaros.clock",
    "layout": {
      "left": [{ "id": "omaros.menu" }, { "id": "omaros.workspaces" }],
      "center": [{ "id": "omaros.clock", "format": "HH:mm" }],
      "right": [{ "id": "omaros.audio" }, { "id": "omaros.power" }]
    }
  }
}

每个小组件都是三个布局数组之一中的一个条目,其设置内联在该条目上——没有单独的设置文件,也没有 config 子对象。时钟的 format、formatAlt(右键单击循环到的内容)和 verticalFormat 都位于 { "id": "omaros.clock" } 上。

centerAnchor 命名一个被固定到屏幕正中央的中间小组件,其他小组件位于其两侧。这就是为什么即使天气和更新徽章来来去去,时钟也能保持在正中央。将其设置为空字符串,中心列表就只会作为一个组居中。

有一条规则值得内化:一旦你有了自己的 shell.json,它就是规范的。在你自定义任何东西之前,shell 读取 OmarOS 的默认文件。一旦你拖动小组件、运行 omaros bar 或自己编辑文件,你就拥有它了——没有深度合并,所以未来 OmarOS 版本中的新默认小组件不会自动出现在你的栏上。omaros bar defaults 可在你想要干净状态时恢复出厂布局。

同一个文件也在顶层、bar 键之外保存你的空闲计时:idle.screensaver 和 idle.lock,都是自你空闲以来的秒数。所以默认屏保在 150 秒时启动,锁屏在 300 秒时启动。