Skip to content

static-dev/spike-html-standards

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spike HTML Standard Plugin Pack

npm tests dependencies coverage

Spike html standards plugin pack for reshape

⚠️ This package is locked and in maintenance mode -- see reshape/standard for future updates! ⚠️

Installation

npm install spike-html-standards -S

Usage

This is nothing more than a light wrapper around a reshape configuration object. Options are filtered into their appropriate plugins internally. All are optional.

const reshape = require('reshape')
const htmlStandards = require('spike-html-standards')

reshape(htmlStandards(/* options */))
  .process(someHtml)
  .then((res) => console.log(res.output()))

By default, the html standard plugin pack includes:

Based on the way they are ordered there are a couple limitations to keep in mind:

  • You cannot use a layout block/extend inside of an include
  • Any expression delimiters rendered from a content or retext transform will be output as plaintext, not as an expression
  • Output from a content transform will be processed by retext in that order

Any of these plugins can be customized by passing options described below.

Options

Name Description Default
root Root path used to resolve layouts and includes
filename Name of the file being compiled, used for error traces and as the include/layout root if not otherwise provided
addDependencyTo Object with addDependency method that will get file paths for tracked deps from includes/layouts
webpack Shortcut for webpack users to set the root and addDependencyTo options more easily. Pass webpack loader context.
delimiters Delimiters used for html-escaped expressions ['{{', '}}']
unescapeDelimiters Delimiters used for unescaped expressions ['{{{', '}}}']
markdown Options passed in to markdown-it constructor { typographer: true, linkify: true }
content Options passed to the reshape-content plugin { md: renderMarkdown }
parser custom html parser if desired. pass false to use the default html parser sugarml
retext Plugins to be passed to the reshape-retext plugin [smartypants] (ref)
locals Added directly to the output object, used when compiling a reshape template to html {}
alias Alias option to be passed to the include plugin
parserRules Alias option to be passed to the include plugin
minify Minifies the html output by removing excess spaces and line breaks false

License & Contributing