mkhighlight
v1.0.3
Published
Syntax highlight code blocks
Downloads
57
Readme
Syntax Highlight
Highlight code blocks
Syntax highlight code blocks in the input stream using source-highlight.
Install
npm i mkhighlight --save
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
[email protected]
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.
through
module for subclassing streams.ast
module for working with ast nodes.opts
options passed to thetransform
function.
Options
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.
License
MIT
Created by mkdoc on February 6, 2017