以编程方式更改 OS X 菜单栏
Programmatically changing OS X Menu Bar
我一直在研究将 OS X 菜单栏从默认设置更改为深色主题的脚本解决方案。我知道您可以从“系统偏好设置”>“常规”>“使用深色主题”复选框访问此设置,但打开“系统偏好设置”对我来说需要花费太多时间。此外,我通常 运行 Flux 在夜间使用,但在白天将其关闭,Flux 会自动强制将菜单栏更改回默认灯光样式(这就是为什么我经常更改它,以及为什么我需要更快的解决方案)。
Apple OS X system read/write命令我看了man defaults
,终于找到相关设置:
$ defaults read "Apple Global Domain" AppleInterfaceStyle
returns或者
Dark
如果样式设置为深色,或者
The domain/default pair of (kCFPreferencesAnyApplication, AppleInterfaceStyle) does not exist
如果不是(默认值只是一个空属性,这似乎很奇怪)。
所以我尝试了:
$ defaults write "Apple Global Domain" AppleInterfaceStyle Dark
此命令 'works'(它 returns 没有错误,退出代码 0,尝试 defaults read
声称已设置 "Dark" 主题)但没有在视觉上将菜单栏或 Sherlock 风格更改为深色主题。当我选中“系统偏好设置”>“常规”时,该复选框仍未选中:即使重新启动 Finder 也不会使用深色主题重绘菜单栏。
我应该使用其他命令吗?我查看了 defaults domains
,但似乎没有我应该修改的其他相关域。是否有强制重绘我不知道的 Finder 的命令?或者这是一个失败的原因?
谢谢!
您可以使用 AppleScript 来做到这一点:
这是在终端中使用的命令(此命令在正常模式和黑暗模式之间切换):
osascript -e 'tell application "System Events" to tell appearance preferences to set dark mode to not dark mode'
另一个解决方案:
- 请参阅 this page 以启用键盘快捷键
(Command+Option+Control+t)到在深色模式和浅色模式之间切换。
我一直在研究将 OS X 菜单栏从默认设置更改为深色主题的脚本解决方案。我知道您可以从“系统偏好设置”>“常规”>“使用深色主题”复选框访问此设置,但打开“系统偏好设置”对我来说需要花费太多时间。此外,我通常 运行 Flux 在夜间使用,但在白天将其关闭,Flux 会自动强制将菜单栏更改回默认灯光样式(这就是为什么我经常更改它,以及为什么我需要更快的解决方案)。
Apple OS X system read/write命令我看了man defaults
,终于找到相关设置:
$ defaults read "Apple Global Domain" AppleInterfaceStyle
returns或者
Dark
如果样式设置为深色,或者
The domain/default pair of (kCFPreferencesAnyApplication, AppleInterfaceStyle) does not exist
如果不是(默认值只是一个空属性,这似乎很奇怪)。
所以我尝试了:
$ defaults write "Apple Global Domain" AppleInterfaceStyle Dark
此命令 'works'(它 returns 没有错误,退出代码 0,尝试 defaults read
声称已设置 "Dark" 主题)但没有在视觉上将菜单栏或 Sherlock 风格更改为深色主题。当我选中“系统偏好设置”>“常规”时,该复选框仍未选中:即使重新启动 Finder 也不会使用深色主题重绘菜单栏。
我应该使用其他命令吗?我查看了 defaults domains
,但似乎没有我应该修改的其他相关域。是否有强制重绘我不知道的 Finder 的命令?或者这是一个失败的原因?
谢谢!
您可以使用 AppleScript 来做到这一点:
这是在终端中使用的命令(此命令在正常模式和黑暗模式之间切换):
osascript -e 'tell application "System Events" to tell appearance preferences to set dark mode to not dark mode'
另一个解决方案:
- 请参阅 this page 以启用键盘快捷键 (Command+Option+Control+t)到在深色模式和浅色模式之间切换。