Pygments可以实现多种代码语法的高亮,在搭建Jekyll博客的过程中,可以利用python setuptools安装,比较方便。但在安装过程中会有UnicodeDecodeError
错误,解决方法可见本文第一部分。
本机环境:Windows 7 64位操作系统,python 2.7(32位),Jekyll 2.3.0
1. 安装 setuptools
1) 下载"ez_setup.py",网址为:https://pypi.python.org/pypi/setuptools#windows-7-or-graphical-install
2) 此时,用运行该脚本python ez_setup.py
,会出现错误:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xb3 in position 3: ordinal not in range(128)
解决方法:根据错误提示,找到python的lib目录中
default_encoding = sys.getdefaultencoding()
# 将该行代码改为:默认编码采用GBK而非UTF8
# default_encoding = sys.getdefaultencoding()
if sys.getdefaultencoding() != 'gbk':
reload(sys)
sys.setdefaultencoding('gbk')
default_encoding = sys.getdefaultencoding()
2. 安装 Pygments
安装完setuptools之后,保证环境变量中包含Python的Script文件夹(路径),运行命令:easy_install Pygments
,即可安装Pygments。
3. 使用Pygments实现语法高亮
Pygments提供了多种样式,可以在Pygments官网的Demo中选择某种语言的例子,体验不同的样式。另外,通过下面的命令可以查看当前支持的样式:
from pygments.styles import STYLE_MAP
STYLE_MAP.keys()
选择一种样式,如native,运行如下命令,生成样式文件pygments.css,并将其包含进网站样式表中。
pygmentize -S native -f html > pygments.css