Browsed by
Tag: utf-8

Bitbucket/Mercurial在Debain8上的一点小问题

Bitbucket/Mercurial在Debain8上的一点小问题

由于Debian 7已经被无情地终结了生命周期,因此不得不将部分生产环境升级到Debian 8。总体上还比较顺利,在mercurial库方面遇到点问题,记录如下:

问题1:UnicodeDecodeError: ‘ascii’ codec can’t decode

这是Python脚本编码的问题。一个好的py脚本,应该在脚本起始处就标明编码方式,可惜mercurial的很多脚本没有这么做。Debian 8采用Python 2.7.9,默认是ascii编码,需要修改为默认utf-8编码。注意,Debian 8安装了多个Python版本,首先要确认默认版本号:

python -V

接着修改“/etc/python2.7/sitecustomize.py”文件(如果没有的话,可以手工创建一个),在文件起始处添加以下代码:

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

问题2: [SSL: WRONG_VERSION_NUMBER] wrong version number

Bitbucket网站禁止了有缺陷的TLSv1,TLSv1.1加密方式,奇怪的是mercurial为什么没有根据协商采用SSL或者TLSv1.2? 修改方式也简单,强制mercurial禁止掉TLS。修改“/etc/mercurial/hgrc”,增加以下内容:

[ui]
tls=False
character encoding

character encoding

最近学习Vue框架,在Firefox中调试demo时,经常遇到以下告警:

The character encoding of the HTML document was not declared

最直接的后果就是中文信息乱码。由于是直接在vim中编写html文件,检查了vim默认的文件是utf-8编码:

set fileencoding

在网络上搜索了一下,HTML默认采用us-ancii编码格式,如果采用utf-8格式,需在head域明确声明:

<meta charset="UTF-8">