Highlight code blocks
Syntax highlight code blocks in the input stream using source-highlight.
npm i mkhighlight --save
For the command line interface install mkdoc globally (npm i -g mkdoc
).
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);
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
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
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.
through
module for subclassing streams.ast
module for working with ast nodes.opts
options passed to thetransform
function.
src
String source language, overrides info string.out
String output format.alias
Object map of info string languages to source languages.lines
Boolean number lines in highlighted output.preserve
Boolean Keep a<code>
element in the result.
MIT
Created by mkdoc on February 6, 2017