Troubleshooting

Keep up indentation

When you edit any YAML configs, always need to keep up indents.
Currently, in all Hexo and NexT configuration files parameters uses 2 spaces indents from parent option.

For example, we want to change NexT scheme from standart Muse to Gemini and want to use Data Files feature with Hexo way option.

We open theme config file and under the «Scheme Settings» section copy next parameters:

next/_config.yml
1
2
3
4
5
6
7
8
# —————————————————————
# Scheme Settings
# —————————————————————

scheme: Muse
#scheme: Mist
#scheme: Pisces
#scheme: Gemini

Then we open site config file and paste these parameters under theme_config section:

hexo/_config.yml
1
2
3
4
5
6
theme_config:

#scheme: Muse
#scheme: Mist
#scheme: Pisces
scheme: Gemini


Here will nothing happen because indentation not keeped up. Hexo just can’t see these parameters because subparameters (children parameters of theme_config parameter) are not exists. Let’s see same configuration with indents.

hexo/_config.yml
1
2
3
4
5
6
theme_config:

#scheme: Muse
#scheme: Mist
#scheme: Pisces
scheme: Gemini


And here Hexo can read these parameters as theme_config.scheme: Gemini in same way, as NexT can read scheme: Gemini parameter. So, with 2 spaces indents from parent option(s) Hexo must loaded any NexT parameters and worked fine.

Backtick Code Block in Tags

When backtick code block(s) exists inside other tags (like blockquote, note, tabs), that code block will be generated as «undefined» string in HTML. There are several ways to resolve this:

Instead of Backtick Code Block you also can use tagged Code Block.
But in rare cases standard code block can obtain errors inside other tags.

Use HTML tags instead of Hexo tags: <pre><code>.
In this case you can’t add code syntax highlighting.

Here is pull with bugfix for use backtick code block inside tags (from Dec 2016 still not merged).
So, for this moment you can merge it manually, if you need to use backtick code block inside tags.


Sometimes during generate you can see «Error: Unmatched placeholder remains!» message.
This mean somewhere in your posts, blocks with tags was commented with {# and #} symbols:

1
2
3
{#
{% label error@Unmatched placeholder remains! %}
#}
1
2
3

{% label error@Unmatched placeholder remains! %}


Favicon Set but Doesn’t Work (Need to redocs)

Put your favicon under site's source dir. If you find that your Favicon doesn’t work, please clean your browser’s cache first and then visit your Favicon’s URL directly, which should be http(s)://your-domain.com/favicon.ico.

If your site is in a subdirectory please set it to favicon: favicon.ico.

Cannot Find Module XXX

NexT’s tag plugin uses some submodules of Hexo, like hexo-util. NPM uses new module install mode in version 3, NexT will use this mode which means if you are using a old NPM will find this error. So if you find error like “Cannot find module XXX”, please use npm -v to check your NPM version.

  • Version > 3: Still not work? Please remove node_modules directory and reinstall using npm install.
  • Version < 3:
    • You can update your NPM
    • Or can install modules (and their dependences) manually: npm install --save hexo-util; where hexo-util is a example, please replace it with module name in the error.