Hexo: 一个由Markdown渲染引起的Bug

Created on 8 Mar 2019  ·  4Comments  ·  Source: hexojs/hexo

Environment Info

Node version(node -v):
v8.11.3

Hexo and Plugin version(npm ls --depth 0):
hexo 和主题都是最新版未经修改过_config.yml

For BUG

For question


无法渲染如下公式,甚至我把这段公式用<!-- -->注释都仍然报错,也就是说,注释之后这段公式仍然会被莫名奇妙处理:

$$
u_A=\frac{1}{N_A}*{\sum_{{i,j}\in{A}}{f(i,j)}}\\
u_B=\frac{1}{N_B}*{\sum_{{i,j}\in{B}}{f(i,j)}}
$$

报错信息如下:

abao@abao-PC:~/Documents/blog% hexo server --debug
16:34:42.351 DEBUG Writing database to /home/abao/Documents/blog/db.json
16:34:42.367 DEBUG Hexo version: 3.8.0
16:34:42.368 DEBUG Working directory: ~/Documents/blog/
16:34:42.444 DEBUG Config loaded: ~/Documents/blog/_config.yml
16:34:42.483 DEBUG Plugin loaded: hexo-deployer-git
16:34:42.485 DEBUG Plugin loaded: hexo-generator-archive
16:34:42.486 DEBUG Plugin loaded: hexo-generator-category
16:34:42.488 DEBUG Plugin loaded: hexo-generator-index
16:34:42.489 DEBUG Plugin loaded: hexo-generator-tag
16:34:42.491 DEBUG Plugin loaded: hexo-renderer-ejs
16:34:42.495 DEBUG Plugin loaded: hexo-renderer-marked
16:34:42.496 DEBUG Plugin loaded: hexo-renderer-stylus
16:34:42.545 DEBUG Plugin loaded: hexo-server
16:34:42.548 DEBUG Script loaded: themes/landscape/scripts/fancybox.js
16:34:42.554 DEBUG Loading database.
16:34:42.560 INFO  Start processing
16:34:42.621 DEBUG Processed: images/favicon-16x16.png
//中间省略了一些无关的日志输出
16:34:42.730 DEBUG Processed: languages/pt.yml
16:34:42.730 DEBUG Processed: languages/ru.yml
16:34:42.730 DEBUG Processed: languages/zh-CN.yml
16:34:42.731 DEBUG Processed: languages/zh-TW.yml
16:34:42.732 DEBUG Processed: categories/index.md
16:34:42.760 DEBUG Processed: _posts/plot-with-matplotlib.md
16:34:42.816 DEBUG Processed: images/background.png
16:34:43.113 FATAL Something's wrong. Maybe you can find the solution here: http://hexo.io/docs/troubleshooting.html
Template render error: (unknown path) [Line 36, Column 28]
  expected variable end
    at Object._prettifyError (/home/abao/Documents/blog/node_modules/nunjucks/src/lib.js:36:11)
    at Template.render (/home/abao/Documents/blog/node_modules/nunjucks/src/environment.js:542:21)
    at Environment.renderString (/home/abao/Documents/blog/node_modules/nunjucks/src/environment.js:380:17)
    at Promise.fromCallback.cb (/home/abao/Documents/blog/node_modules/hexo/lib/extend/tag.js:62:48)
    at tryCatcher (/home/abao/Documents/blog/node_modules/bluebird/js/release/util.js:16:23)
    at Function.Promise.fromNode.Promise.fromCallback (/home/abao/Documents/blog/node_modules/bluebird/js/release/promise.js:180:30)
    at Tag.render (/home/abao/Documents/blog/node_modules/hexo/lib/extend/tag.js:62:18)
    at Object.onRenderEnd (/home/abao/Documents/blog/node_modules/hexo/lib/hexo/post.js:282:20)
    at Promise.then.then.result (/home/abao/Documents/blog/node_modules/hexo/lib/hexo/render.js:65:19)
    at tryCatcher (/home/abao/Documents/blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/home/abao/Documents/blog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/home/abao/Documents/blog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/home/abao/Documents/blog/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/home/abao/Documents/blog/node_modules/bluebird/js/release/promise.js:694:18)
    at _drainQueueStep (/home/abao/Documents/blog/node_modules/bluebird/js/release/async.js:138:12)
    at _drainQueue (/home/abao/Documents/blog/node_modules/bluebird/js/release/async.js:131:9)
    at Async._drainQueues (/home/abao/Documents/blog/node_modules/bluebird/js/release/async.js:147:5)
    at Immediate.Async.drainQueues [as _onImmediate] (/home/abao/Documents/blog/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:810:20)
    at tryOnImmediate (timers.js:768:5)
    at processImmediate [as _immediateCallback] (timers.js:745:5)
16:34:43.131 DEBUG Database saved

Most helpful comment

{{ will be recognized as nunjucks code, thus causing problems

All 4 comments

do u solve the q? bro?

{{ will be recognized as nunjucks code, thus causing problems

how do avoid it? i search a way by using {% raw %} {% endraw %} wrap my math formula, Can it be effective?

but I have written forty more math formulas, I do not want to modify it, Is there a better way? Looking forward to mogul's reply!

Was this page helpful?
0 / 5 - 0 ratings