hexo把英文引号渲染成中文引号的问题

其实这个问题我早就发现了,但一直没太在意,今天写博客的时候又看到这个难看的引号,终于忍不住想看看到底出了什么问题。

首先我试了中文的单引号和英文的单引号,发现渲染效果都一样,然后想看看当我分别打中文单引号和英文单引号的时候,hexo 的渲染结果到底是不是一样。

打开 chrome 开发工具,发现页面上的英文单引号统一被渲染成了中文的单引号。

然后我手动修改页面看了下英文单引号是什么样子,发现样式确实很不一样。

那么问题就确定了:hexo 把英文引号渲染成了中文引号。

谷歌搜了一下:hexo 渲染 单引号 中文单引号,得到几条不错的结果:

对于我所使用的kramed,只需要在_config.yml中配置:

1
2
kramed:
smartypants: false

问题的原因是 markdown 渲染器把英文引号渲染成了中文引号,但这其实是可以配置的,所以解决起来比较简单。

在解决这个问题的过程中,如果你想顺利的解决问题,你需要的知识点有:

  • 字符集的知识
  • Chrome 开发工具使用经验
  • 前端开发知识
  • 好的搜索习惯
  • 一定的英语水平
  • 查阅文档的意识和习惯

如果你已经具备了以上前提,那么就能比较轻松愉快的解决这个问题了。