Answers:
您实际上可以从上下文菜单中删除本机MacOS项。...但是很遗憾,它似乎没有出现,您可以删除上面指示的项。无论如何,如果您想看一看,请前往
系统偏好>键盘>键盘快捷键>服务
然后取消选中菜单上不需要的项目。
不幸的是,您无法删除所有这些文件。但这至少可以帮助您摆脱一些混乱。
我已经为此解决了一个问题,(到目前为止)适用于默认的 Finder右键菜单上下文项(例如Burn to disk
和)Burn "^1" to disc
。这正是OP请求的目标。
通过以Applescript或可执行插件的形式安装服务还有另一种上下文菜单膨胀。
这些很容易摆脱。无论它们的名字是什么,只要在磁盘上搜索该字符串即可。即Inject Potatos!
服务最终将在名为的文件中找到Inject Potatos!.<something>
。它们可能还有其他形状和尺寸,但是它们是易于解决的问题,超出了OP的范围。
对于非英语用户:此解决方案与语言无关。我们利用了将默认字符串+ args转换为带有扩展变量的本地化字符串的本地化功能。
我不确定它的Objective-C内部原理,但是我怀疑与此类似。
snprintf(str, 0, "", var1, var2, ..);
没有格式字符串(即“”),因此您总是以str
零长度结尾。
如果str的长度为零,则本地化解析器将在树上向后走,以找到有效的祖先格式模板。只要将该消息类的所有祖先置零,它最终将耗尽模板并将零长度的字符串返回给本地化请求者。
上下文菜单渲染器识别出它的长度为零,并从上下文菜单列表项中将其省略了,从而获得了更苗条的上下文菜单。
我知道NSString格式与C不同,但是如果您不是Objective-C的人,并且需要从printf的角度来考虑它,那么以下示例在此练习中也基本上相同。
"Throw ^1 into the ^2"
"Throw %s into the %s", arg1, arg2
。如果您进行了修改,并且在重新启动Finder之后似乎没有生效-您可能在右键单击上下文菜单以外的其他区域修改了本地化字符串。恢复您的更改,重新启动Finder,然后重试。如果跳过此步骤,您可能最终会修改上下文菜单以外的内容,直到几天后才意识到。
了解这基本上是一种hack,它可能无法按照您希望或期望的方式工作。值得一试的是,我至少在过去的几个星期中一直在进行这些更改(以及更多更改),并且没有遇到不良影响。
首先,让我们看一下来自OP帖子的“之前”图像,该图像向我们展示了一个充满膨胀的典型默认Finder上下文菜单。
可怕!
大多数Apple设备甚至不再附带DVD刻录机,但Burn "^1" to disc
占用了宝贵的空间。
且不说同样没用Quick Look
,Duplicate
,Make Alias
,Copy ^1
,等。
尽我所能剥离下来。请记住,如果我们选择一个文件,我们将拥有默认
Open
和Open with..
菜单项。
除非您忽略它,否则您不会丢失任何东西。
如果您愿意,可以使事情变得相当稀疏。
cd /System/Library/CoreServices/Finder.app/Contents/Resources/English.lproj
plutil -convert xml1 Localizable.strings
,将Localizable.strings转换为纯文本XML plist文件在纯文本/代码编辑器中打开Localizable.strings(vi,pico,emacs,jed等-TextEdit.app无法保存* .txt文件,应避免使用)
找到您要隐藏的值。在我的情况下,这是“将“ ^ 1”刻录到磁盘”,这是密钥BC50_V2。
<key>BN50_V1</key> <string>Burn to Disc…</string> <key>BN50_V2</key> <string>Burn “^1” to Disc…</string>
我的第一个尝试是完全删除键值对,但是这导致BC50_V1的字符串显示在菜单中。
如果存在某些格式字符串,它们将退回到更通用的模板中。在这种情况下,您必须将多个值归零。
您可以通过BC50_V2看到此行为,该行为回落到BC50_V1。
由于我想完成摆脱所有Burn...
菜单项的操作,因此我也必须将BC50_V1归零。
还有其他具有多个后备值的键值对,但是它们通常很容易识别,因为它们具有相同的前缀BC50_
和数字递增的后缀_V1, _V2, _V..
您可以通过在XML注释内保留原始键/值对XML片段的副本来注释更改。
我制作了要更改的片段的副本,用描述注释掉了旧片段,并对副本进行了修改。这样,我可以轻松还原,而不必使用版本控制或拥有多个文件副本。
<!-- OLD Burn.*to Disc... <key>BN50_V1</key> <string>Burn to Disc…</string> <key>BN50_V2</key> <string>Burn “^1” to Disc…</string> --> <!-- NEW Burn.*to Disc --> <key>BN50_V1</key> <string></string> <key>BN50_V2</key> <string></string>
^<number>
。然后数字代表第n个参数。如果您感觉特别浮躁,可以将其修改Burn "^1" to Disc
为Archive "^1" forever utilizing an optical disk!
。killall -HUP Finder
重新启动Finderopen .
在当前工作目录中打开Finder窗口。右键单击以打开上下文菜单,确认一切看起来都不错。