remark-lint/packages/remark-preset-lint-markdown-style-guide
2020-08-22 15:33:21 +02:00
..
index.js Refactor prose 2020-03-24 11:35:17 +01:00
package.json Publish a patch version for all packages 2020-07-02 12:54:10 +02:00
readme.md Add Discussions 2020-08-22 15:33:21 +02:00

remark-preset-lint-markdown-style-guide

Build Coverage Downloads Size Sponsors Backers Chat

remark preset to configure remark-lint with settings that the Markdown Style Guide recommends.

This uses the following Style Guide option system: wrap:space, header:atx, list-marker:hyphen, list-space:mixed, and code:fenced.

space-sentence

Both space-sentence:1 and space-sentence:2 are not supported by remark-lint. You could set-up remark-retext with retext-sentence-spacing to check this though.

wrap

wrap:inner-sentence and wrap:sentence are not supported by remark-lint.

The default is wrap:space. To use wrap:no, turn off remark-lint-maximum-line-length like so:

 "plugins": [
   …
   "preset-lint-markdown-style-guide",
+  ["lint-maximum-line-length", false]
   …
 ]
header

The default is header:atx. To use header:setext, change the setting for remark-lint-heading-style like so:

 "plugins": [
   …
   "preset-lint-markdown-style-guide",
+  ["lint-heading-style", "setext"]
   …
 ]
list-marker

The default is list-marker:hyphen. For list-marker:asterisk or list-marker:plus, change the setting for remark-lint-unordered-list-marker-style like so:

 "plugins": [
   …
   "preset-lint-markdown-style-guide",
+  ["lint-unordered-list-marker-style", "*"]
   …
 ]
list-space

The default is list-space:mixed. For list-space:1, change the setting for remark-lint-list-item-indent like so:

 "plugins": [
   …
   "preset-lint-markdown-style-guide",
+  ["lint-list-item-indent", "space"]
   …
 ]
code

The default is code:fenced. For code:indented, change the setting for remark-lint-code-block-style like so:

 "plugins": [
   …
   "preset-lint-markdown-style-guide",
+  ["lint-code-block-style", "indented"]
   …
 ]

Rules

This preset configures remark-lint with the following rules:

Rule Setting
file-extension 'md'
no-file-name-mixed-case
no-file-name-articles
no-file-name-irregular-characters
no-file-name-consecutive-dashes
no-file-name-outer-dashes
no-consecutive-blank-lines
maximum-line-length 80
no-shell-dollars
hard-break-spaces
heading-style 'atx'
heading-increment
no-duplicate-headings
no-multiple-toplevel-headings
maximum-heading-length
no-heading-punctuation ':.'
blockquote-indentation 2
no-blockquote-without-marker
unordered-list-marker-style '-'
ordered-list-marker-style '.'
ordered-list-marker-value 'one'
list-item-indent 'mixed'
list-item-content-indent
list-item-spacing
code-block-style 'fenced'
fenced-code-flag {allowEmpty: false}
fenced-code-marker '`'
rule-style '---'
no-table-indentation
table-pipes
table-pipe-alignment
table-cell-padding 'padded'
no-inline-padding
no-shortcut-reference-image
no-shortcut-reference-link
final-definition
definition-case
definition-spacing
link-title-style '"'
strong-marker '*'
emphasis-marker '*'
no-emphasis-as-heading
no-literal-urls
no-auto-link-without-protocol

Install

npm:

npm install remark-preset-lint-markdown-style-guide

Use

You probably want to use it on the CLI through a config file:

 …
 "remarkConfig": {
+  "plugins": ["preset-lint-markdown-style-guide"]
 }
 …

Or use it on the CLI directly

remark -u preset-lint-markdown-style-guide readme.md

Or use this on the API:

 var remark = require('remark')
 var report = require('vfile-reporter')

 remark()
+  .use(require('remark-preset-lint-markdown-style-guide'))
   .process('_Emphasis_ and **importance**', function (err, file) {
     console.error(report(err || file))
   })

Contribute

See contributing.md in remarkjs/.github for ways to get started. See support.md for ways to get help.

This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

License

MIT © Titus Wormer