2.0.0 • Published 7 years ago

marko-prettyprint v2.0.0

Weekly downloads
81
License
ISC
Repository
github
Last release
7 years ago

marko-prettyprint

Prettyprint Marko template files in the syntax and with the options of your choice.

Installation

Global install of the command line utility:

npm install marko-prettyprint --global

Local project install:

npm install marko-prettyprint --save

Usage

Pretty print a single file from the command line

marko-prettyprint template.marko --syntax html

Pretty print a directory tree from the command line

marko-prettyprint . --syntax html

Pretty print a file in a Node.js app

var prettyPrintFile = require('marko-prettyprint').prettyPrintFile;

var templatePath = require('path').join(__dirname, 'template.marko');
var options = {
    syntax: 'html'
};

var prettySrc = prettyPrintFile(templatePath, options);

Options

  • eol - The EOL sequence (defaults to require('os').EOL)
  • filename - The path to the template being pretty printed (required unless prettyPrintFile(filename, options) is used)
  • indent - The indent string (defaults to a String with four spaces)
  • noSemi - If set, will format JS without semicolons.
  • singleQuote - If set, will prefer single quotes.
  • maxLen - The max line length (defaults to 80, set to -1 to disable)
  • configFiles - Should search for .marko-prettyprint/.editorconfig files? (defaults to true)
  • syntax - The syntax to use. Can either be "html" or "concise" (defaults to "html")

Configuration files

.marko-prettyprint config file

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"
}

.editorconfig file

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

API

JavaScript API

require('marko-prettyprint')

prettyPrintSource(src, options)

prettyPrintFile(filename, options)

prettyPrintAST(ast, options)

Command Line

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
2.0.0

7 years ago

1.5.2

7 years ago

1.5.1

7 years ago

1.5.0

7 years ago

1.4.3

7 years ago

1.4.2

7 years ago

1.4.1

8 years ago

1.4.0

8 years ago

1.3.6

9 years ago

1.3.5

9 years ago

1.3.4

9 years ago

1.3.3

9 years ago

1.3.2

9 years ago

1.3.1

9 years ago

1.3.0

9 years ago

1.2.1

9 years ago

1.2.0

9 years ago

1.1.8

9 years ago

1.1.7

10 years ago

1.1.6

10 years ago

1.1.5

10 years ago

1.1.4

10 years ago

1.1.3

10 years ago

1.1.2

10 years ago

1.1.0

10 years ago

1.0.6

10 years ago

1.0.5

10 years ago

1.0.4

10 years ago

1.0.3

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago