在 Dock 中显示/隐藏应用程序图标

在 Dock 中显示/隐藏应用程序图标

有没有办法切换 OS X Dock 中的应用程序图标?具体来说,我希望能够使用“deafults”命令切换给定应用程序中的某些内容。

答案1

如果要在应用程序未运行时删除图标:

单击并按住(拖动)Dock 中的图标,然后将其释放到其他地方。如果应用程序正在运行,图标将移回 Dock,但每次您退出应用程序时图标都会消失。如果应用程序未运行,图标将消失在“烟雾”中。

或者,右键单击 Dock 中的应用程序图标,然后选择选项,然后切换留在码头

如果您还想在应用程序运行时隐藏图标:

有一种方法,但是存在两个问题:

  1. 应用程序不再具有菜单栏
  2. 该应用程序不再出现在Cmd-Tab程序列表中
  3. (2023) 这会导致代码签名问题,因此可能不适用于大多数应用程序。

该应用程序仍然响应为菜单项定义的键盘快捷键,因此如果您习惯仅使用这些快捷键来控制应用程序,这是可能的。

它看起来有点像在帮助菜单中选择“[程序名称] 帮助”菜单项时打开的内容。


为了实现它

您需要编辑应用程序包中的文件Info.plist。为此,请右键单击应用程序并选择“显示包内容”。导航到Contents,然后编辑Info.plist

文件格式通常为 XML,您可以使用任何纯文本编辑器进行编辑,例如 TextWrangler、BBEdit、TextMate 甚至 TextEdit。

在包含 的行后直接插入以下行<dict>

<key>LSUIElement</key>
<true/>

保存文件并重新启动应用程序。


如果文件格式不是 XML,而是二进制(二进制文件以 开头bplist,后跟二进制“垃圾”),则需要属性列表编辑器,它是 Apple 开发者工具的一部分(当然,如果你安装了 PLE,你始终可以使用它)

在 PLE 中打开文件,然后选择“添加项目”。输入“应用程序是代理(UIElement)”,它将自动完成。选中值框,然后保存。

答案2

或者......(基于@Daniel Beck 的回答)......

在 Xcode 中打开相同的 Info.plist

  • 在顶层单击鼠标右键Information Property List键并选择Add Row
  • 类型Application is agent (UIElement)作为新钥匙
  • 将新键的值设置为YES
  • 节省
  • 重启相应应用程序即可看到结果

相关内容