解决 hexo 渲染的页面中有 br 的问题

解决 hexo 渲染的页面中有 br 的问题

October 26, 2017
设计 ,

hexo 的 markdown 有毒

今天在移植主题和以前的一些页面数据的时候发现 hexo 生成的页面文件会出现很多奇怪的 <br> 符号。搞的我之前在 ghost 上写的很多内嵌有 html 的代码都出现了这个问题

排版混乱

我自己估摸着是 markdown 的解析出了问题,之后在知呼的 markdown 回车换行?中发现有网友解答过这个问题。

mark

hexo 支持的 md 语法规格为 Github Flavored Markdown 的方案,好像不是标准的 md 解析方案,所以在其他编辑器上写的文章会出现奇怪的问题。
后来我尝试按照第二楼朋友的回答解决这个问题,发现我完全不知道代码该怎么放到 hexo 的 markdown 里,后来想到一个解决办法就是干掉 hexo 默认的 md 解析器,使用一个支持双空格换行的编辑器..

在 github 上找到了 hexo-renderer-kramed 这个解析器,先写在原来的解析器,再安装新的 (如果命令行删不掉就直接去 node_modules 里删掉名称为 hexo-renderer-marked 的文件夹就可以了)

$ npm uninstall hexo-renderer-marked --save
$ npm install hexo-renderer-kramed --save

安装好后在 hexo 根目录下的_config.yml 里增加如下配置段后即可解决这个问题。

kramed:
  gfm: true
  pedantic: false
  sanitize: false
  tables: true
  breaks: true
  smartLists: true
  smartypants: true

有一件挺崩溃的事情 —— 在我做完这一切后 hexo 群里的一个朋友跟我原生的编辑器也可以解决这个换行问题,只需要在_config.yml 里增加如下配置即可

marked: 
  breaks: false

是真的难受呀....

加入评论