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.
<style> table { width: 100%;} td:first-child {width: 15%;} td:last-child {width: 45%;} </style>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.