Prettyprint Marko template files in the syntax and with the options of your choice.
Global install of the command line utility:
npm install marko-prettyprint --global
Local project install:
npm install marko-prettyprint --save
marko-prettyprint template.marko --syntax html
marko-prettyprint . --syntax html
var prettyPrintFile = require('marko-prettyprint').prettyPrintFile;
var templatePath = require('path').join(__dirname, 'template.marko');
var options = {
syntax: 'html'
};
var prettySrc = prettyPrintFile(templatePath, options);
eol
- The EOL sequence (defaults torequire('os').EOL
)filename
- The path to the template being pretty printed (required unlessprettyPrintFile(filename, options)
is used)indent
- The indent string (defaults to aString
with four spaces)maxLen
- The max line length (defaults to80
, set to-1
to disable)configFiles
- Should search for.marko-prettyprint
/.editorconfig
files? (defaults totrue
)syntax
- The syntax to use. Can either be"html"
or"concise"
(defaults to"html"
)
When pretty printing a Marko template, marko-prettyprint
will search up the directory tree looking for a .marko-prettyprint
file. This file should be in the JSON format. For example:
my-project/.marko-prettyprint:
{
"indent": "\t",
"syntax": "concise",
}
marko-prettyprint
also supports EditorConfig files for configuring maxLen
, indent
and eol
. For example:
my-project/.editorconfig:
root = true
[*.marko]
indent_style = space
indent_size = 8
end_of_line = lf
To recursively prettyprint all Marko v3 templates in a directory to use the HTML syntax:
marko-prettyprint . --syntax html
To recursively prettyprint all Marko v3 templates in a directory to use the HTML syntax:
marko-prettyprint . --syntax concise
Individual files and directories can also be prettyprinted:
marko-prettyprint src/ foo/
marko-prettyprint template1.marko template2.marko
The maximum line length (defaults to 80
) can be also be set:
marko-prettyprint . --syntax html --max-len 120