最近看到开发圈某热点,做了个小工具,总结下最近的几个 CocoaApp 上的功能,仅做练手。现在只包含了两个开关:切换系统主题和隐藏桌面 icon 的功能。

Swwwitch-c500

功能点

  1. 切换系统主题
  2. 显式或者印象桌面图标
  3. 完全的 Menu Only 应用
  4. 开机自启动

关于第三点的实现在另外一篇文章有讲过,第四点的实现在 这一篇 中有讲。

系统主题切换

关于系统主题切换主要是基于 AppleScript 所写,

1
2
3
4
5
tell application "System Events"
	tell appearance preferences
		set dark mode to not dark mode
	end tell
end tell

你完全可以自行执行这段 Apple Script 来切换主题,你可以点击下面链接尝试。

Click Here to run

显式/隐藏桌面图标

关于隐藏桌面图标,实际上是执行系统的 Command 来实现的,Cocoa 应用可以显式使用 Process(也就是 NSTask)来执行任务,我们也是通过 NSTask 执行了一段如下的命令行达到的目的:

1
2
defaults write com.apple.finder CreateDesktop false
killall Finder

你可以自行点击以下链接尝试。

Click here to hide Desktop Icons

Click here to show Desktop Icons

感兴趣可以去看下代码,领会意思即可。 Releases

TODO

  1. Add more switch
  2. Add User-Customized switch setting

Checkout all command lines macOS Support