Hexo: Error: expected end of comment, got end of file

Created on 30 Jul 2016  ·  4Comments  ·  Source: hexojs/hexo

Environment Info

node 版本 v6.3.0, hexo 版本

hexo: 3.2.2
hexo-cli: 1.0.2
os: Darwin 15.6.0 darwin x64
http_parser: 2.7.0
node: 6.3.0
v8: 5.0.71.52
uv: 1.9.1
zlib: 1.2.8
ares: 1.10.1-DEV
icu: 57.1
modules: 48
openssl: 1.0.2h

hexo 配置:

我新建了一个目录,执行的 hexo init,然后没有做任何修改,执行 hexo new post test

test.md 里面的内容如下

title: test
date: 2016-07-30 16:48:25
tags:

---

test `{#test}`

Plugin version(npm ls --depth 0)

├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
└── [email protected]

执行 hexo server 错误信息如下

$ hexo server
INFO  Start processing
FATAL Something's wrong. Maybe you can find the solution here: http://hexo.io/docs/troubleshooting.html
Template render error: (unknown path)
  Error: expected end of comment, got end of file
    at Object.exports.prettifyError (/Users/wd/test/node_modules/nunjucks/src/lib.js:34:15)
    at Obj.extend.render (/Users/wd/test/node_modules/nunjucks/src/environment.js:468:27)
    at Obj.extend.renderString (/Users/wd/test/node_modules/nunjucks/src/environment.js:326:21)
    at /Users/wd/test/node_modules/hexo/lib/extend/tag.js:66:9
    at Promise._execute (/Users/wd/test/node_modules/bluebird/js/release/debuggability.js:272:9)
    at Promise._resolveFromExecutor (/Users/wd/test/node_modules/bluebird/js/release/promise.js:475:18)
    at new Promise (/Users/wd/test/node_modules/bluebird/js/release/promise.js:77:14)
    at Tag.render (/Users/wd/test/node_modules/hexo/lib/extend/tag.js:64:10)
    at Object.tagFilter [as onRenderEnd] (/Users/wd/test/node_modules/hexo/lib/hexo/post.js:253:16)
    at /Users/wd/test/node_modules/hexo/lib/hexo/render.js:65:19
    at tryCatcher (/Users/wd/test/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/Users/wd/test/node_modules/bluebird/js/release/promise.js:504:31)
    at Promise._settlePromise (/Users/wd/test/node_modules/bluebird/js/release/promise.js:561:18)
    at Promise._settlePromise0 (/Users/wd/test/node_modules/bluebird/js/release/promise.js:606:10)
    at Promise._settlePromises (/Users/wd/test/node_modules/bluebird/js/release/promise.js:685:18)
    at Async._drainQueue (/Users/wd/test/node_modules/bluebird/js/release/async.js:138:16)
    at Async._drainQueues (/Users/wd/test/node_modules/bluebird/js/release/async.js:148:10)
    at Immediate.Async.drainQueues (/Users/wd/test/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:566:20)
    at tryOnImmediate (timers.js:546:5)
    at processImmediate [as _immediateCallback] (timers.js:525:5)
FATAL (unknown path)
  Error: expected end of comment, got end of file
Template render error: (unknown path)
  Error: expected end of comment, got end of file
    at Object.exports.prettifyError (/Users/wd/test/node_modules/nunjucks/src/lib.js:34:15)
    at Obj.extend.render (/Users/wd/test/node_modules/nunjucks/src/environment.js:468:27)
    at Obj.extend.renderString (/Users/wd/test/node_modules/nunjucks/src/environment.js:326:21)
    at /Users/wd/test/node_modules/hexo/lib/extend/tag.js:66:9
    at Promise._execute (/Users/wd/test/node_modules/bluebird/js/release/debuggability.js:272:9)
    at Promise._resolveFromExecutor (/Users/wd/test/node_modules/bluebird/js/release/promise.js:475:18)
    at new Promise (/Users/wd/test/node_modules/bluebird/js/release/promise.js:77:14)
    at Tag.render (/Users/wd/test/node_modules/hexo/lib/extend/tag.js:64:10)
    at Object.tagFilter [as onRenderEnd] (/Users/wd/test/node_modules/hexo/lib/hexo/post.js:253:16)
    at /Users/wd/test/node_modules/hexo/lib/hexo/render.js:65:19
    at tryCatcher (/Users/wd/test/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/Users/wd/test/node_modules/bluebird/js/release/promise.js:504:31)
    at Promise._settlePromise (/Users/wd/test/node_modules/bluebird/js/release/promise.js:561:18)
    at Promise._settlePromise0 (/Users/wd/test/node_modules/bluebird/js/release/promise.js:606:10)
    at Promise._settlePromises (/Users/wd/test/node_modules/bluebird/js/release/promise.js:685:18)
    at Async._drainQueue (/Users/wd/test/node_modules/bluebird/js/release/async.js:138:16)
    at Async._drainQueues (/Users/wd/test/node_modules/bluebird/js/release/async.js:148:10)
    at Immediate.Async.drainQueues (/Users/wd/test/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:566:20)
    at tryOnImmediate (timers.js:546:5)
    at processImmediate [as _immediateCallback] (timers.js:525:5)
stale wontfix

Most helpful comment

查了一下,{# 是 nunjucks 的注释标记, http://mozilla.github.io/nunjucks/templating.html#comments

所以只有半个的话,就挂了。

所以解决办法是 {% raw %}{#{% endraw %} 但是这样 post 内容就不是纯的 markdown 了。

All 4 comments

查了一下,{# 是 nunjucks 的注释标记, http://mozilla.github.io/nunjucks/templating.html#comments

所以只有半个的话,就挂了。

所以解决办法是 {% raw %}{#{% endraw %} 但是这样 post 内容就不是纯的 markdown 了。

楼上的朋友有没有碰到过linux装不上3.x版本

This issue has been automatically marked as stale because lack of recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Since I'm not using hexo now, and I didn't know if this issue is still there, so close it.

Was this page helpful?
0 / 5 - 0 ratings