Extensions
footnotes
The list the notes live in, kept as the last block by `insertFootnote`.
1 · Install
One package for every extension · there is no @matrajs/footnotes to install.
npm i @matrajs/core2 · Add it to the editor
Import it and put it in the extensions array. That array is the whole feature list:
what is not in it is not in your bundle and not in the document's schema.
import { createEditor, document, paragraph, text, footnotes } from '@matrajs/core'
const editor = createEditor({
extensions: [document, paragraph, text, footnotes],
element: document.querySelector('#editor'),
})3 · Use it
Nothing to call · this one works once it is in the array. The list the notes live in, kept as the last block by `insertFootnote`.
Styling
This one needs CSS to look right, and ships the minimum as a string rather than a file · nothing loads unless you load it, and you can ignore it and write your own.
import { footnotesCSS } from '@matrajs/core'
const style = document.createElement('style')
style.textContent = footnotesCSS
document.head.append(style)In the document
-
Reads
ol[data-footnotes]when HTML is pasted or loaded. -
Writes
olingetHTML()andrenderToHTML().