修复 TypeScript 文件的快速查找
Posted
技术标签:
【中文标题】修复 TypeScript 文件的快速查找【英文标题】:Fix Quick Look for TypeScript files 【发布时间】:2015-06-20 05:52:57 【问题描述】:我的 Mac 将 .ts 扩展名识别为 MPEG-2 传输流,而我更经常将其用作 TypeScript 文件。因为 Quick Look 不会显示 .ts 文件的内容。
我在 *** 上发现我应该能够为文本编辑器分配自定义扩展,但我不确定如何。
【问题讨论】:
右击文件 -> 打开方式... -> 选择应用程序 -> 选择您的文本编辑器 -> 勾选“始终使用此应用程序”。 (在我看来,实际文字可能会有所不同) 这只会改变打开文件的关联而不是扩展类型本身。它仍然不能快速工作(我安装了 ql-colorcode)。 【参考方案1】:QLColorCode 是一个非常不错的 Quick Look 插件,它允许您为想要的 ANY 扩展文件设置语法高亮。
1.安装 QLColorCode Quick Look 插件
如果你有Homebrew,你可以安装它:
brew cask install qlcolorcode
否则,您只需将QLColorCode.qlgenerator
从release 复制/粘贴到您的~/Library/QuickLook/
文件夹即可。
2。添加 .ts 和 .tsx 语法高亮支持
首先获取你想用插件快速查看的扩展的kMDItemContentType:mdls -name kMDItemContentType /path/to/any/file.ts
在插件设置列表中添加一个带有上一个命令返回的字符串的条目——对于.ts
文件,这应该是public.mpeg-2-transport-stream
。为此,只需使用任何文本编辑器打开文件 ~/Library/QuickLook/QLColorCode.qlgenerator/Contents/Info.plist
(它不是编译文件),然后在部分 CFBundleDocumentTypes > Item 0 > LSItemContentTypes
(~第 15 行)中添加如下一行:
<string>public.mpeg-2-transport-stream</string>
您可以在项目README.md 中找到有关如何为插件添加语言类型支持的更多信息。
这是original post,我在这里找到了所有这些有用的信息。
【讨论】:
macOS Catalina,我在 plist 中找不到 CFBundleDocumentTypes 节点。 有谁知道是否有办法让 QuickLook 将任何文件扩展名预览为文本?就像一网打尽。 QLStephen 仅适用于没有任何扩展名的文件 MacOS Big Sur 的命令是brew install --cask qlcolorcode
【参考方案2】:
根据这个article,还有一个解决办法:
1) 删除文件类型定义:/System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plist
您需要在恢复模式下执行此操作。
215 =>
"UTTypeConformsTo" => "public.movie"
"UTTypeDescription" => "MPEG-2 Transport Stream"
"UTTypeIdentifier" => "public.mpeg-2-transport-stream"
"UTTypeTagSpecification" =>
"public.filename-extension" => [
0 => "ts"
]
2) 然后运行
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill
【讨论】:
谢谢。这个对我有用。很少有人认为值得一提。首先,我必须使用 xcode.app 打开这个文件,否则我的任何编辑器都无法识别编码。其次,我必须为自己添加对 Info.plist 文件以及包含它的文件夹的写入权限。第三 - 我只需从“public.filename-extension”数组中删除“ts”值就足够了,无需删除整个记录。 @Ihor 您是否在恢复模式下编辑了文件?你是如何在恢复模式下启动 XCode.app 的? @jbandi,没有。我在正常的 Mac OS 运行期间编辑了这个文件。但要能够编辑此文件 - 请确保您拥有正确的权限。见我之前的评论。或者如果您有任何其他问题 - 请详细说明。【参考方案3】:我设法让 QuickLook 将 .ts 文件显示为纯文本。
必要的步骤是从目录/System/Library/QuickLook
中删除Movie.qlgenerator
。
缺点是,QuickLook 不能再预览任何类型的电影了...
2016 年 4 月 12 日更新:
在 OSX El Capitan 中,似乎不可能简单地从 /System/Library/QuickLook
中删除文件(可能是因为 System Integrity Protection)。
我设法通过以下步骤删除了Movie.qlgenerator
:
-
先备份文件
启动进入恢复模式:重启并按住 Cmd-R
打开终端
禁用 SIP:
csrutil disable
cd /Volumes/Macintosh HD/System/Library/QuickLook
(您的卷名可能不同)
rm -rf Movie.qlgenerator
csrutil enable
csrutil status
-> 再次验证 SIP 是否开启
重启
完成上述步骤后,我可以快速查看我的.ts
文件。
最好的部分:我将第一步备份的Movie.qlgenerator
放入~/Library/QuickLook
,现在我还可以快速预览电影...
【讨论】:
你是如何删除Movie.qlgenerator
的(尝试使用 sudo rm -R
不行)
@Manu:在 OSX El Capitan 的答案中查看我的更新以上是关于修复 TypeScript 文件的快速查找的主要内容,如果未能解决你的问题,请参考以下文章