metalsmith-html-validator
v1.1.1
Published
Metalsmith plugin for HTML validation, using the Nu Html Checker (v.Nu)
Downloads
11
Maintainers
Readme
metalsmith-html-validator
Metalsmith plugin for HTML validation, using the Nu Html Checker (v.Nu).
Requirements
This plugin requires Java 8 or above.
If the java
command does not exist on the system running this plugin, Java 8+ must be installed.
Install
npm install metalsmith-html-validator
CLI Usage
Install via npm and then add the metalsmith-html-validator
key to your metalsmith.json
plugin, like so:
{
"plugins": {
"metalsmith-html-validator": true
}
}
If you need to specify an options, set the options to the value of the metalsmith-html-validator
key.
{
"plugins": {
"metalsmith-html-validator": {
"pattern": "**/*.html"
}
}
}
See Metalsmith CLI for more details.
Javascript Usage
The simplest use is to omit the option.
const htmlValidator = require('metalsmith-html-validator');
metalsmith
.use(htmlValidator());
If you need to specify an options, set the options value.
const htmlValidator = require('metalsmith-html-validator');
metalsmith
.use(htmlValidator({
pattern: '**/*.html',
}));
If you want to use the files
variable or the default options value, you can specify the callback function that generates the options.
const htmlValidator = require('metalsmith-html-validator');
metalsmith
.use(htmlValidator(
(files, metalsmith, defaultOptions) => {
return {
pattern: [...defaultOptions.pattern, '!**/_*', '!**/_*/**'],
};
}
));
TypeScript Usage
For compatibility with the Metalsmith CLI, this package exports single function in CommonJS style.
When using with TypeScript, it is better to use the import = require()
statement.
import htmlValidator = require('metalsmith-html-validator');
metalsmith
.use(htmlValidator());
Options
The default value for options are defined like this:
const chalk = require('chalk'); // [email protected]
{
pattern: ['**/*.{html,htm}'],
logger: console.error,
chalk: chalk.stderr,
}
pattern
Specifies the Glob pattern that matches the file to be validated.
Specify a glob expression string or an array of strings as the pattern.
Pattern are verified using multimatch v4.0.0.
Default value (source):
['**/*.{html,htm}']
Type definition (source):
string | string[]
logger
Specify a logger function to process the validator result.
Default value (source):
console.error
Type definition (source):
(str: string) => void
chalk
Specifies the chalk instance that colors the validator result.
When false
or null
is specified, coloring is disabled.
Default value (source):
const chalk = require('chalk'); // [email protected]
chalk.stderr
Type definition (source):
// import chalk = require('chalk'); // [email protected]
chalk.Chalk | false | null
Debug mode
This plugin supports debugging output.
To enable, use the following command when running your build script:
DEBUG=metalsmith-html-validator,metalsmith-html-validator:* node my-website-build.js
For more details, please check the description of debug v4.1.1.
Tests
To run the test suite, first install the dependencies, then run npm test
:
npm install
npm test
Contributing
see CONTRIBUTING.md