我一直在寻找一个脚本解决方案,将默认情况下将OS X菜单栏更改为Dark主题。我知道您可以从“系统偏好设置”>中访问此设置。一般>使用黑暗主题复选框,但打开系统偏好设置需要花费一点时间。此外,我通常在夜间运行Flux,但在白天杀死它,并且Flux会自动强制将菜单栏更改回默认灯光样式(这就是为什么我经常更改它,以及为什么我需要更快的解决方案)
我查看了man defaults
Apple OS X系统的读/写命令,我终于找到了相关的设置:
$ defaults read "Apple Global Domain" AppleInterfaceStyle
返回
Dark
如果样式设置为暗,或
The domain/default pair of (kCFPreferencesAnyApplication, AppleInterfaceStyle) does not exist
如果不是(这似乎很奇怪,默认只是一个空属性)。
所以我试过了:
$ defaults write "Apple Global Domain" AppleInterfaceStyle Dark
此命令“有效”(它返回时没有错误,退出代码0,尝试defaults read
声称已经设置了“黑暗”主题)但是没有在视觉上将菜单栏或Sherlock样式更改为黑暗的主题。当我检查系统偏好设置>一般情况下,复选框仍未选中:即使重新启动Finder也不会重绘具有黑色主题的菜单栏。
我应该使用不同的命令吗?我已经检查了defaults domains
,但似乎没有其他相关的域名我应该修改。是否有命令强制重绘Finder我不知道?或者这是一个失败的原因?
谢谢!
答案 0 :(得分:8)
您可以使用 AppleScript 来执行此操作:
这是在终端中使用的命令(此命令在正常模式和黑暗模式之间切换):
osascript -e 'tell application "System Events" to tell appearance preferences to set dark mode to not dark mode'
另一种解决方案: