1. 程式人生 > >處理hexo部落格中mathjax與marked.js衝突

處理hexo部落格中mathjax與marked.js衝突

  • 針對下劃線的問題,我決定取消作為斜體轉義,因為marked.js中*也是斜體的意思,所以取消掉的轉義並不影響我們使用markdown,只要我們習慣用*作為斜體字標記就行了。
  • 針對marked.js與Mathjax對於個別字元二次轉義的問題,我們只要不讓marked.js去轉義\,{,}在MathJax中有特殊用途的字元就行了。
    具體修改方式,用編輯器開啟marked.js(在./node_modules/marked/lib/中)

Step 1:

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

這一步是在原基礎上取消了對\,{,}的轉義(escape)

Step 2:

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

這樣一來MathJax就能與marked.js共存了。重啟一下hexo看一下吧