我想在Sublime Text 3中使用新的字符编码保存多个文件。
我尝试使用以下键命令来实现这一点,但没有运气。当我按下组合键时基本没有任何反应。
<script>
var tarih=new Date();
var st = tarih.getHours();
var dk = tarih.getMinutes();
var sn = tarih.getSeconds();
var search = st+":"+dk+":"+sn;
var place=0;
$.get('can.txt', function(data) {
var lines = data.split("\n\g");
$.each(lines, function(n, elem) {
place = elem.indexOf(search,place);
place2= elem.lastIndexOf(search);
if(place != -1)
{
getX=elem.substring(place-500,place2);//i get all value in a second
//in here i must find and get x and y value in getX
//how can i get these values easyly?
//if i run code half hours , the can.txt file size is avarege 10-15 mb.
// i wanted use regex but it doesn't work :/
if (getX.match(/^x":[0-9]$/))
$('#div').append('<div>' getX+'</div>');
}
});
});
setTimeout(bak(),1000);
</script>
<div id="div"> </div>
如果我使用{
"keys" : ["ctrl+alt+s"],
"command" : "save_all", "args" :{"encoding" : "Western (Windows 1252)"}
}
检查控制台中的键绑定,我可以看到键绑定正在运行,因为它返回sublime.log_commands(True)
但是Sublime Text仍未将文件保存为Western(Windows 1252) 。如果我重新打开文件,则会显示UTF-8。
这是完全可能还是我使用的键绑定可能有问题?
答案 0 :(得分:10)
我猜想save_all
命令不支持encoding
参数。
您可以使用不同的编码使用简短的python代码保存所有打开的文件。
一次性使用,您只需在Sublime的python控制台中运行以下命令:
[view.run_command('save', { "encoding": "Western (Windows 1252)" }) for view in window.views()]
创建键绑定:
Tools
菜单Developer
New Plugin...
使用以下内容替换新文件的内容:
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)
将其保存为save_all_with_encoding.py
文件夹中的Packages/User
(当它显示另存为对话框时,它应默认为此文件夹...)
然后你的键绑定需要看起来像这样:
{
"keys" : ["ctrl+alt+s"],
"command" : "save_all_with_encoding", "args" : {"encoding" : "Western (Windows 1252)" }
}