Sublimetext3 用升华文本3中的新编码保存打开的文件
我想用新的字符编码将多个文件保存在Sublime Text 3中 我曾尝试使用以下关键命令来实现这一点,但运气不佳。当我按下组合键时,基本上什么都没有发生Sublimetext3 用升华文本3中的新编码保存打开的文件,sublimetext3,Sublimetext3,我想用新的字符编码将多个文件保存在Sublime Text 3中 我曾尝试使用以下关键命令来实现这一点,但运气不佳。当我按下组合键时,基本上什么都没有发生 { "keys" : ["ctrl+alt+s"], "command" : "save_all", "args" :{"encoding" : "Western (Windows 1252)"} } 如果我使用sublime.log_命令(True)检查控制台中的密钥绑定,我可以看到密钥绑定正在工作,因为它返回command:sav
{
"keys" : ["ctrl+alt+s"],
"command" : "save_all", "args" :{"encoding" : "Western (Windows 1252)"}
}
如果我使用sublime.log_命令(True)
检查控制台中的密钥绑定,我可以看到密钥绑定正在工作,因为它返回command:save_all{“encoding”:“Western(Windows 1252)”}
但sublime Text仍然没有将文件保存为Western(Windows 1252)。如果我重新打开文件,它会显示UTF-8
这是可能的还是我使用的密钥绑定可能有问题?我猜
save\u all
命令不支持encoding
参数
您可以使用一个简短的python代码段以不同的编码保存所有打开的文件
对于单次使用,您只需在Sublime的python控制台中运行以下命令:
[view.run_command('save', { "encoding": "Western (Windows 1252)" }) for view in window.views()]
要创建键绑定,请执行以下操作:
- 转到
菜单工具
Developer
新插件…
import sublime, sublime_plugin
class SaveAllWithEncodingCommand(sublime_plugin.TextCommand):
def run(self, edit, **kwargs):
for view in self.view.window().views():
view.run_command('save', kwargs)
将其另存为Packages/User
文件夹中的Save\u all\u with_encoding.py
(当它显示另存为对话框时,应默认为该文件夹…)
然后,您的密钥绑定需要如下所示:
{
"keys" : ["ctrl+alt+s"],
"command" : "save_all_with_encoding", "args" : {"encoding" : "Western (Windows 1252)" }
}
你怎么知道的?这是某种文档吗?很抱歉问了这么愚蠢的问题太好了,你救了我一天。。。。你知道我在哪里可以得到
“encoding:“xxx”
对中所有有效编码值的完整列表吗?@faithreper是的,只需使用查看软件包/Default/Main.sublime菜单
文件-ST支持的所有编码都是文件->用编码重新打开
菜单的一部分。这真是太棒了。顺便说一句,它也适用于《崇高的文本2》。