Sublime Text 3 编辑器默认不支持GBK的编码格式,因此打开GBK的代码文件,如果里面有中文的话,就会乱码。
Package Control包,是一个用来安装其他插件的包,要装其他插件,首先要先装这个包才行。
按ctrl+~快捷键,调出一个小文本款,然后粘贴以下代码:
import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
安装完后重启下Sublime Text 3,在perferences选项一栏下面就会多了个Package Control。
点击Package Control,上面会出来一个输入框,我们输入install,就会自动有提示那个install package,我们点击一下install package,输入框会消失,稍等一下又会弹出个输入框。
这时输入需要安装的那个插件包(ConvertToUTF8)。
安装好这个包之后,重启下Sublime Text 3,可以发现打开GBK编码格式下的中文也不会乱码了。
使用Sublime打开后,注意看sublime的左下角,除了行列信息并无其他,一般而言,说明sublime是按照UTF8编码打开的文件。
为了解决编码问题,需要安装ConvertToUTF8插件,打开sublime的“package control“,输入inp,可以看到install package选项。
点击install package,在弹出的输入框中输入“Convert”,可以看到会检索出包括ConvertToUTF8在内的一些组件,相关功能都有描述。点击“ConvertToUTF8”进行安装即可。
安装完成后,点击Sublime左上角的“file”按钮,可以看到下拉菜单中多出了两个选项Set File Encode to 和 Reload whit Encode。通过新增的选项可以对文件编码进行转换。此时,再次打开GBK编码格式文件,会发现中文显示正常,同时,sublime左下角显示出了GBK字样,表明该文件的编码是GBK。
首先要明白什么是编码?
简单来说,编码就是从我们日常使用的字符转换成数字的过程,因为计算机里存储的只是二进制的数字。所以编码和解码分别是字符转换成数字和数字转换成字符的行为。而不同的编码规则之间,往往是不能互通的,比如学习计算机时最早接触的ASCII码,用于显示现代英语和其他西欧语言,里面根本没有汉字的编码规则!
后来各个国家和组织推出了自己的编码规则,我国则有GB2312、GBK等编码规范,繁体字则有BIG5,以及国际上最通用的UTF-8编码等等。这些编码规范有的兼容,有的则不兼容,当用不兼容的编码规范去解码显示文件时,就会出现乱码问题!所以对于乱码,最好的办法是切换解码规则。
在sublime中,我们可以使用“Reopen with Encoding”菜单选择使用不同的编码规范打开文件,或者是使用刚刚安装的插件带来的“Reload with Encoding”中的编码方式重新打开。
当发现乱码时,不要盲目的使用“Save with Encoding”等功能,往往会造成编码规则更加混乱和无序。
统一的编码规范相当重要。