What is remark-lint-no-undefined-references?
The `remark-lint-no-undefined-references` package is a plugin for `remark-lint` that checks for undefined references in Markdown files. It helps ensure that all reference links in your Markdown documents are defined, preventing broken links and improving document integrity.
What are remark-lint-no-undefined-references's main functionalities?
Check for undefined references
This feature checks for any undefined references in a Markdown file. The code sample demonstrates how to use `remark-lint-no-undefined-references` with `remark` to process a Markdown string and report any undefined references.
const remark = require('remark');
const lint = require('remark-lint');
const noUndefinedReferences = require('remark-lint-no-undefined-references');
remark()
.use(lint)
.use(noUndefinedReferences)
.process('[undefined]: https://example.com', function (err, file) {
console.error(report(err || file));
});
Other packages similar to remark-lint-no-undefined-references
remark-lint-no-unused-definitions
The `remark-lint-no-unused-definitions` package checks for unused definitions in Markdown files. While `remark-lint-no-undefined-references` ensures that all references are defined, `remark-lint-no-unused-definitions` ensures that all definitions are used. Both packages help maintain the integrity of Markdown documents by addressing different aspects of link and reference management.
remark-lint-no-dead-urls
The `remark-lint-no-dead-urls` package checks for dead URLs in Markdown files. It ensures that all URLs in the document are reachable, which complements `remark-lint-no-undefined-references` by ensuring that not only are references defined, but the URLs they point to are valid and accessible.
![Chat](https://img.shields.io/badge/chat-spectrum.svg)
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:
Example
ok.md
In
[foo][]
[foo]: https://example.com
Out
No messages.
not-ok.md
In
[bar][]
Out
1:1-1:8: 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