makestatic-highlight v1.0.2
Highlight
Syntax highlight code blocks
Make your code pretty using highlightjs.
Install
yarn add makestatic-highlightAPI
Highlight
For each HTML file with an AST syntax highlight code blocks that have a class name indicating the source code language.
See Also
Highlight
new Highlight(context, options)Create a Highlight plugin.
The default selector when none is given is code[class].
The options specific to highlight.js are equivalent to the default
values except that classPrefix is set to the empty string so class names
will not contain the hljs- prefix.
contextObject the processing context.optionsObject plugin options.
Options
selectorString query for code blocks.languageFunction extract language from class names.highlighterFunction override the default highlighter.classPrefixString highlight.jsclassPrefixoption.tabReplaceString highlight.jstabReplaceoption.useBRBoolean highlight.jsuseBRoption.languagesArray highlight.jslanguagesoption.
.getLanguage
Highlight.prototype.getLanguage(file, element)Default implementation to extract a language identifier for an element.
Use the language option to supply an alternative implementation.
Finds the first lang- or language- class name on the element and
returns the language identifier.
Returns string language identifier.
fileObject the current file.elementObject the matched element.
.highlight
Highlight.prototype.highlight(file, element, lang, text)Default implementation to highlight code blocks.
Use the highlighter option to supply an alternative implementation.
Returns string highlighted code.
fileObject the current file.elementObject the matched element.langString the language identifier.textString content of the code block.
.sources
Highlight.prototype.sources(file, context, options)For each file with an HTML AST find elements that match the selector
option. Call the language function for each matched element and if a
language string is returned call the highlighter function.
Use the return value from the highlighter function as a DOM document
fragment and update the code block with the new child nodes.
fileFile the current file.contextObject the processing context.optionsObject plugin options.
License
MIT
Created by mkdoc on March 16, 2017