remark-lint/packages/remark-lint-fenced-code-marker
2017-08-17 15:18:04 +02:00
..
index.js Refactor readme.mds 2017-08-17 13:52:59 +02:00
package.json Publish packages 2017-08-17 14:00:27 +02:00
readme.md Fix options in presets in documentation 2017-08-17 15:18:04 +02:00

remark-lint-fenced-code-marker

Warn for violating fenced code markers.

Options: '`', '~', or 'consistent', default: 'consistent'.

'consistent' detects the first used fenced code marker style and warns when subsequent fenced code-blocks use different styles.

Presets

This rule is included in the following presets:

Preset Setting
remark-preset-lint-consistent 'consistent'
remark-preset-lint-markdown-style-guide '`'

Example

valid.md
In
Indented code blocks are not affected by this rule:

    bravo();
Out

No messages.

invalid.md
In
        ```alpha
        bravo();
        ```

        ~~~
        charlie();
        ~~~
Out
5:1-7:4: Fenced code should use ` as a marker
valid.md

When configured with '`'.

In
        ```alpha
        bravo();
        ```

        ```
        charlie();
        ```
Out

No messages.

valid.md

When configured with '~'.

In
        ~~~alpha
        bravo();
        ~~~

        ~~~
        charlie();
        ~~~
Out

No messages.

invalid.md

When configured with '!'.

Out
1:1: Invalid fenced code marker `!`: use either `'consistent'`, `` '`' ``, or `'~'`

Install

npm install remark-lint-fenced-code-marker

Usage

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

 ...
 "remarkConfig": {
   "plugins": [
     ...
     "lint",
+    "lint-fenced-code-marker",
     ...
   ]
 }
 ...

Or use it on the CLI directly

remark -u lint -u lint-fenced-code-marker 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-fenced-code-marker'))
   .process('_Emphasis_ and **importance**', function (err, file) {
     console.error(report(err || file));
   });

License

MIT © Titus Wormer