markdown-it-references
v2.1.0-alpha.3
Published
MarkdownIt Plugin for (ordered) id reference injection
Maintainers
Readme
markdown-it-references
Ordered reference injection for markdown-it.
Example
# References

<<the-stormtroopocat>> shows an example.<h1>References</h1>
<p>
<figure id="the-stormtroopocat">
<img src="https://octodex.github.com/images/stormtroopocat.jpg" alt="Stormtroopocat" title="The Stormtroopocat" />
<figcaption>
<a href="#the-stormtroopocat" class="anchor">§</a><a href="#the-stormtroopocat" class="label">Figure 1</a>: The
Stormtroopocat
</figcaption>
</figure>
</p>
<p><a href="#the-stormtroopocat" class="figure-reference">Figure 1</a> shows an example.</p>
<h2 id="list-of-figures" class="list">List of Figures</h2>
<ol class="list">
<li class="item"><a href="#the-stormtroopocat" class="label">Figure 1</a>: The Stormtroopocat</li>
</ol>Usage
Works with the following packages in conjunction:
// Figures
const md = require("markdown-it")()
.use(require("markdown-it-figure-references"), { ns: "figures" })
.use(require("markdown-it-references"), opts);
// Tables
const md = require("markdown-it")()
.use(require("markdown-it-table-references"), { ns: "tables" })
.use(require("markdown-it-references"), opts);
// Attributions
const md = require("markdown-it")()
.use(require("markdown-it-attribution-references"), { ns: "attributions" })
.use(require("markdown-it-references"), opts);
// All
const md = require("markdown-it")()
.use(require("markdown-it-figure-references"), { ns: "figures" })
.use(require("markdown-it-table-references"), { ns: "tables" })
.use(require("markdown-it-attribution-references"), { ns: "attributions" })
.use(require("markdown-it-references"), opts);See a demo as JSFiddle.
The opts object can contain:
| Name | Description | Default |
| -------- | ------------------------------ | ------------------------------ |
| labels | Array of label configurations. | [ { see below }, { }, .. ] ] |
An object in the labels array must contain:
| Name | Description | Example |
| ------------- | ----------------------------- | -------------------- |
| ns | Namespace. | "figures" |
| text | Reference label text. | "Figure #" |
| placeholder | Reference number placeholder. | "#" |
| class | Reference label class | "figure-reference" |
By default, markdown-it-references contains similar configuration for figures, tables, and attributions, in that order.
NOTE
Label order resolves naming conflicts.
However, the same id shouldn't occur in the same document more than once.
