.. | ||
index.js | ||
package.json | ||
readme.md |
remark-lint-checkbox-character-style
Warn when list item checkboxes violate a given style.
Options: Object
or 'consistent'
, default: 'consistent'
.
'consistent'
detects the first used checked and unchecked checkbox
styles and warns when subsequent checkboxes use different styles.
Styles can also be passed in like so:
{ checked: 'x', unchecked: ' ' }
Fix
remark-stringify
formats checked checkboxes using x
and unchecked checkboxes as ``.
See Using remark to fix your markdown on how to automatically fix warnings for this rule.
Presets
This rule is included in the following presets:
Preset | Setting |
---|---|
remark-preset-lint-consistent |
'consistent' |
Example
valid.md
When configured with { checked: 'x' }
.
In
- [x] List item
- [x] List item
Out
No messages.
valid.md
When configured with { checked: 'X' }
.
In
- [X] List item
- [X] List item
Out
No messages.
valid.md
When configured with { unchecked: ' ' }
.
In
Note: ·
represents a space.
- [ ] List item
- [ ] List item
- [ ]··
- [ ]
Out
No messages.
valid.md
When configured with { unchecked: '\t' }
.
In
Note: »
represents a tab.
- [»] List item
- [»] List item
Out
No messages.
invalid.md
In
Note: »
represents a tab.
- [x] List item
- [X] List item
- [ ] List item
- [»] List item
Out
2:4-2:5: Checked checkboxes should use `x` as a marker
4:4-4:5: Unchecked checkboxes should use ` ` as a marker
invalid.md
When configured with { unchecked: '!' }
.
Out
1:1: Invalid unchecked checkbox marker `!`: use either `'\t'`, or `' '`
invalid.md
When configured with { checked: '!' }
.
Out
1:1: Invalid checked checkbox marker `!`: use either `'x'`, or `'X'`
Install
npm install remark-lint-checkbox-character-style
Usage
You probably want to use it on the CLI through a config file:
...
"remarkConfig": {
"plugins": [
...
"lint",
+ "lint-checkbox-character-style",
...
]
}
...
Or use it on the CLI directly
remark -u lint -u lint-checkbox-character-style readme.md
Or use this on the API:
var remark = require('remark');
var report = require('vfile-reporter');
remark()
.use(require('remark-lint'))
+ .use(require('remark-lint-checkbox-character-style'))
.process('_Emphasis_ and **importance**', function (err, file) {
console.error(report(err || file));
});