Mathjex的转义问题

Issue

  • 下角标 _ 无效
  • matrix无效

Markdown本身的特殊符号与Latex中的符号会出现冲突

Solution

nodes_modules/lib/marked/lib/marked.js文件中,

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

改为:

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

and

1
em: /^\b_((?:[^_]|__)+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,

改为:

1
em:/^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,

Hexo默认使用marked.js去解析Markdown,比如一些符号,_代表斜体,会被处理为<em>标签,
比如x_i在开始被渲染的时候,处理为x<em>i</em>,这个时候MathJax就无法渲染成下标了。