unified

Project: remarkjs/remark-lint

Package: remark-lint-no-undefined-references@2.0.1

  1. Dependencies: 4·Dependents: 20
  2. remark-lint rule to warn when references to undefined definitions are found
  1. remark 205
  2. lint 76
  3. rule 71
  4. remark-lint-rule 64
  5. definition 14
  6. reference 9

remark-lint-no-undefined-references

Build Coverage Downloads Size Sponsors Backers Chat

Warn when references to undefined definitions are found.

Options: Object, optional.

The object can have an allow field, set to an array of strings that may appear between [ and ], but that should not be treated as link identifiers.

Presets

This rule is included in the following presets:

PresetSetting
remark-preset-lint-recommended

Example

ok.md
In
[foo][]

Just a [ bracket.

Typically, you’d want to use escapes (with a backslash: \\) to escape what
could turn into a \[reference otherwise].

Just two braces can’t link: [].

[foo]: https://example.com
Out

No messages.

not-ok.md
In
[bar]

[baz][]

[text][qux]

Spread [over
lines][]

> in [a
> block quote][]

[asd][a

Can include [*emphasis*].

Multiple pairs: [a][b][c].
Out
1:1-1:6: Found reference to undefined definition
3:1-3:8: Found reference to undefined definition
5:1-5:12: Found reference to undefined definition
7:8-8:9: Found reference to undefined definition
10:6-11:17: Found reference to undefined definition
13:1-13:6: Found reference to undefined definition
15:13-15:25: Found reference to undefined definition
17:17-17:23: Found reference to undefined definition
17:23-17:26: Found reference to undefined definition
ok-allow.md

When configured with { allow: [ '...', '…' ] }.

In
> Eliding a portion of a quoted passage […] is acceptable.
Out

No messages.

Install

npm:

npm install remark-lint-no-undefined-references

Use

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

 …
 "remarkConfig": {
   "plugins": [
     …
     "lint",
+    "lint-no-undefined-references",
     …
   ]
 }
 …

Or use it on the CLI directly

remark -u lint -u lint-no-undefined-references 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-no-undefined-references'))
   .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