让Hexo完美兼容LeTeX公式

Hexo中的Markdown对于大部分的公式都可以渲染成功,然而对于部分公式,由于Markdown语法和LeTeX语法有冲突,因此造成部分公式内容被marked先转义,导致公式渲染失败,经过权衡,决定放弃部分Markdown功能,确保LeTeX的正确。该冲突主要是由于对\和_的转义造成的。找到marked脚本文件

C:\Users\maple\AppData\Roaming\npm\node_modules\hexo\node_modules\marked\lib\marked.js,先备份一下,然后修改

escape: /^\\([\\`*{}\[\]()# +\-.!_>])/,

修改为:

escape: /^\\([`*\[\]()# +\-.!_>])/,
return '<em>' + text + '</em>';

修改为:

return '_' + text + '_';

经测试,我需要用到的所有公式都可以显示,且未发现Markdown有明显变化。说明此种方法切实可行。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在Hexo中渲染MathJax数学公式 在用markdown写技术文档时,免不了会碰到数学公式。常用的Markdo...
    ShallowLearner阅读 29,581评论 22 31
  • 前言 作为一位程序猿,最近迷上了Markdown的写作。于是找了一些笔记、博客的软件来测试,包括(为知笔记、有道笔...
    采姑娘的小魔钴阅读 3,940评论 0 0
  • 经过各种找资料,踩过各种坑,终于搭建好了hexo,域名是在万维网上买的,我的hexo是3.1.1版本,hexo不同...
    iplaycodex阅读 786评论 0 0
  • 我很享受坐在客厅里,透过阳台的落地窗的外面暖暖绿灯下的公路,我冥想。每个人都会有一种让自己更新的方式,我的方式就是...
    丁小它阅读 437评论 2 1
  • 1、栈(stack)是存放方法的局部变量的内存空间,每个方法都会分配一块内存空间frame,方法一旦执行完成,fr...
    Veteor阅读 2,068评论 2 3