grunt-htmllint v0.3.0
grunt-htmllint
Unofficial html5 linter and validator.
Getting Started
This plugin requires Grunt ~0.4.5
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins.
It also goes into the process of using npm
and node
. If you haven't installed NodeJS before, now is the time. Go to NodeJS (linked from the Grunt site) to download.npm
is installed with node
.
Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-htmllint --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-htmllint');
The "htmllint" task
Overview
In your project's Gruntfile, add a section named htmllint
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
htmllint: {
your_target: {
options: {
force: false,
plugins: ['htmllint-plugin-name'],
/* htmllint options go here */
},
src: [
'path/to/yo/html_files'
]
}
},
});
Options
options.force
Type: Boolean
Default value: false
A boolean value that determines whether or not to fail the build on any lint error. If the value is true, lint errors will not fail the build.
options.plugins
Type: Array
Default value: []
An array of strings, each of which should be the name of an htmllint plugin to require and use.
options.htmllintrc
Type: Boolean
or String
Default value: false
If set to true, a .htmllintrc
file will be loaded (relative to your Gruntfile.js
) and
will override the options argument (options.force will no be overriden).
If set to a string, the file path contained in the string will be loaded.
options (excluding previous options)
Type: Object
Default value: {}
The object passed to htmllint as the opts
argument.
Usage Examples
Default Options
In this example the default options are used to lint the html files in test/fixtures
.
If any of the html files have any lint error, the task will fail and print the errors
on the screen.
grunt.initConfig({
htmllint: {
options: {},
src: [
'test/fixtures/*.html'
],
},
});
Custom Options
In this example, some custom options are passed. If any lint errors occur, they will not fail the task, but will still be printed. Also, no more than 5 lint errors will be reported. After hitting the maximum number of errors, no more files will be processed.
grunt.initConfig({
htmllint: {
options: {
force: true,
opts: { maxerr: 5 }
},
src: [
'test/fixtures/*.html'
],
},
});
Contributing
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
Release History
v0.2.7
htmllint
-> 0.2.4
v0.2.6
- changed
options.htmllintrc
to allow specifying path to an htmllintrc file (#11)
v0.2.5
htmllint
-> 0.2.3
v0.2.4
htmllint
-> 0.2.2
v0.2.3
htmllint
-> 0.2.1
v0.2.2
- added error codes to the output
- added
htmllintrc
option, allows users to specify configuration in a separate file
v0.2.1
- released a little too hastily... (fixed a compatibility issue)
v0.2.0
htmllint
-> 0.2.0- finally got version numbers to be the same >.>
v0.1.12
htmllint
-> 0.0.12
v0.1.11
htmllint
-> 0.0.11- added plugin support
v0.1.10
htmllint
-> 0.0.10- improved summary text
v0.1.9
htmllint
-> 0.0.9
v0.1.7
htmllint
-> 0.0.7
v0.1.6
htmllint
-> 0.0.6- fixed index errors on multiple files
- new
htmllint
fixes that stop throws on text elements
v0.1.5
htmllint
-> 0.0.5- decided to skip some versions to stay closer to the
htmllint
version number - should fix line,col output bug
- fixed result message saying that files were all clean
- fixed option passing
v0.1.2
htmllint
-> 0.0.4
v0.1.1
- added
opts.maxerr
option support - froze
htmllint
dependency
v0.1.0
- added a functional implementation, was too lazy to document it
7 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago