Highlight code blocks
Syntax highlight code blocks in the input stream using source-highlight.
Install
For the command line interface install mkdoc globally (npm i -g mkdoc).
Usage
Pass the transform implementation to mktransform:
var highlight = require('mkhighlight') , ast = require('mkast') , tfm = require('mktransform'); ast.src('```javascript\nvar foo = "bar"\n```') .pipe(tfm(highlight)) .pipe(ast.stringify({indent: 2})) .pipe(process.stdout);
Example
To highlight code blocks in a document with ANSI escape sequences:
mkcat README.md | mkhigh -o esc | mkout
To highlight code blocks for a standalone HTML page:
mkcat README.md | mkhigh | mkpage | mkhtml > README.html
Number lines in the code blocks:
mkcat README.md | mkhigh --lines | mkpage | mkhtml > README.html
Help
Usage: mkhigh [-lph] [--lines] [--preserve] [--help] [--version] [--out=<val>]
[--src=<lang>] [--alias-[NAME]=<val...>]
Highlight code blocks.
Options
-o, --out=[VAL] Set output format (default: html)
-s, --src=[LANG] Source language (overrides info string)
--alias-[NAME]=[VAL...] Alias info strings to source languages
-l, --lines Number lines in output
-p, --preserve Keep code elements
-h, --help Display help and exit
--version Print the version and exit
mkhighlight@1.0.1
API
highlight
highlight(through, ast, opts)
For each code block with an info string call source-highlight(1) and rewrite the output nodes to include the highlighted response.
throughmodule for subclassing streams.astmodule for working with ast nodes.optsoptions passed to thetransformfunction.
Options
srcString source language, overrides info string.outString output format.aliasObject map of info string languages to source languages.linesBoolean number lines in highlighted output.preserveBoolean Keep a<code>element in the result.
License
MIT
Created by mkdoc on February 6, 2017