Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Highlightjs has a sublanguages feature which allows some languages to incorporate and highlight another language inside it. When I use a sublanguage in Hexo, it doesn't work:
This PR make the sublanguages functional:
The sublanguage feature requires that the sublangage definition is loaded. But Hexo only load the definition of the main language of the code chunk. I suggest to always load all language definitions, like it's done in highlightjs library and in hexo-util tests (so the tests are currently not totally right since the definitions loaded in tests are not the same as the definitions actually loaded by hexo-utils).
Also, it could be possible to dynamically load sublanguages but it will make hexo-util too closely coupled with hightlighjs IMHO.