当我在 Finder 中使用“快速查看”查看文本文件时,它不可避免地会呈现乱码,因为它将其视为 MacRoman。
我可以做些什么让它总是使用 UTF-8,或者更好的是,让它在编码检测方面变得稍微聪明一些吗?
<rant>
也许我的文本文件并非全部都是 UTF-8。但我敢肯定没有一个是 MacRoman。我猜 Apple 的某些人仍在使用 OS 9。
</rant>
答案1
这是文件属性问题。请参见最后的两个链接来解释这个问题:http://discussions.apple.com/thread.jspa?threadID=1479441&tstart=120
基本上,如果您执行此操作:xattr -w com.apple.TextEncoding 'UTF-8;134217984' yourfile.txt
您的文件将正确显示在 QuickLook 中。
在我看来,它与编辑器及其保存文件的方式的关系比与 QuickLook 的关系更密切。
答案2
我写了一个小脚本,当文件保存在我的家中时,它会点击 fsevents 并设置 xattr。
我还透露了文件的扩展名,这与这个问题无关。
在这里查看脚本:http://gist.github.com/506382
该脚本必须持续运行,因此最受欢迎的是启动作业文件。
另外,请参阅我关于使用的评论~/.CFUserTextEncoding
这里。