如何在 Sublime Text 中查看文件的当前编码?
Posted
技术标签:
【中文标题】如何在 Sublime Text 中查看文件的当前编码?【英文标题】:How do I see the current encoding of a file in Sublime Text? 【发布时间】:2013-04-18 05:35:50 【问题描述】:这似乎是一件非常简单的事情,但搜索并没有产生太多效果。任何指针将不胜感激!
【问题讨论】:
相关:如果您需要转换您的编码文件rishida.net/tools/conversion 【参考方案1】:由于此线程在 google 搜索中很受欢迎,因此以下是 sublime text 3 build 3059+ 的方法: 在用户偏好中,添加以下行:
"show_encoding": true
【讨论】:
单击新的状态栏面板还可以方便地更改它或以不同的编码重新打开文件。 我没有那个设置,但是每次我保存文件时,ST3 都会在状态栏上的名称旁边显示编码。 @bfred.it:是的,如Gregordy's answer 中所述,但重要的是要注意该信息仅显示大约 4 秒。 这有效,并且永久显示在状态栏中。由于您对 编码 感兴趣,因此您可能还对 行尾 感兴趣。 (unix, windows) 激活它:"show_line_endings": true,
.
为什么默认不启用这个... +1【参考方案2】:
如果您不想使用插件,另一种选择:
Ctrl+` 或
View -> Show Console
在控制台输入以下命令:
view.encoding()
如果您想要更具侵入性的内容,可以选择创建执行以下命令的快捷方式:
sublime.message_dialog(view.encoding())
【讨论】:
@calumbrodie 你有打开文件吗?我正在使用 ST3,它工作正常。只有当我执行命令并且没有打开文件(或选项卡)时,我才会得到“未定义”。 是的,但它只发生在特定文件上。我想如果文件没有定义的编码可能。 在调用 view.encoding() 时,我得到了UTF-8
,但在从 Python 调用 print sys.stdin.encoding
时,我得到了 None
@calumbrodie 你可以试试我的解决方案伙伴,在我看来要快得多; )
'Undefined'
似乎暗示:(a) 文件没有 BOM(字节顺序标记),(b) 文件只包含单字节 ASCII 字符,(c) 文件有在此会话中尚未被 Sublime Text 保存。一旦被ST保存,它就会报告'UTF8'
直到关闭(重新打开猜测重新开始)。【参考方案3】:
使用EncodingHelper 插件,您可以在状态栏上查看文件的编码。您还可以转换文件的编码并扩展其他功能。
【讨论】:
【参考方案4】:就我而言,没有任何插件,只需从“文件”菜单或使用键盘快捷键保存文件
CTRL + S(Windows、Linux)或 CMD + S(Mac OS)
在编辑器窗口底部的状态栏中简要地显示当前编码 - 在括号之间。此建议适用于 Sublime Text 2 和 3。
请注意,Sublime Text 3 状态栏右侧显示的编码,如果您尝试使用不能代表文件中所有字符的编码保存文件,可能会显示文件的错误编码. 在这种情况下,您会看到一个信息对话框,并且 Sublime 告诉您它正在回退到 UTF-8。情况可能并非如此,所以要小心。
【讨论】:
最大的问题是为什么 Sublime Text 不允许您在这种情况下轻松地强制或转换编码。我宁愿 Sublime 只是删除有问题的字符而不是更改编码,因为我必须使用我首先使用的编码。编码开关使我所有的工作都变得毫无用处。【参考方案5】:ShowEncoding 是另一个简单的插件,可以在状态栏中显示编码。就是这样,要在编码之间进行转换,请使用内置的“使用编码保存”和“使用编码重新打开”命令。
【讨论】:
【参考方案6】:插件ConverToUTF8也有这个功能。
【讨论】:
以上是关于如何在 Sublime Text 中查看文件的当前编码?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 sublime-text 中隐藏和取消隐藏项目文件夹树
如何设置Mac OS X下的Sublime Text 3配置文件