![LSHandlerContentType 的苹果文档?](https://linux22.com/image/1509855/LSHandlerContentType%20%E7%9A%84%E8%8B%B9%E6%9E%9C%E6%96%87%E6%A1%A3%EF%BC%9F.png)
我正在尝试将 SublimeText 设置为任何未知扩展的默认编辑器。
我知道我可以为给定的扩展名定义打开的应用程序,但我想为扩展名未知的情况设置一个默认应用程序(如果您手动命名文件扩展名,这种情况会经常发生)。
对我来说,显而易见的解决方案是使用已知扩展名(如 txt)来命名新文件,但为了知道是否有可能为所有文件设置一个默认应用程序,我在谷歌中寻找 LSHandlerContentType 键,但找不到任何苹果文档页面解释该键的作用。
所以我的问题是:LSHandlerContentType 的官方文档页面在哪里?
(我试过谷歌,但没有成功)
答案1
LSHandler 是针对各个项目按内容类型设置的。没有万能的解决方案。您需要运行mdls
一个并查看kMDItemContentType
是什么,然后按照以下思路适当地设置 LSHandler:
defaults write com.apple.LaunchServices LSHandlers -array-add '{LSHandlerContentType=xxxType;LSHandlerRoleAll=xxx.yyy.sublime;}'
例如,如果内容类型是纯文本文件,则如下所示:
defaults write com.apple.LaunchServices LSHandlers -array-add {LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.sublimetext.2;}
您可以在这里查看有关 lsregister 的更多信息:http://krypted.com/mac-security/lsregister-associating-file-types-in-mac-os-x/