Guides

Citations

Cite a bibliography entry of the Document with the inline cite node: insert it with /zitat, read it as (Autor Jahr), and keep it through Markdown export and import.

A Cite is an inline node (cite) that names one Bibliographic record of the Document by its citation key. The Bibliographic record is the CSL-JSON in meta.bib of a Typed block (a paper, a document, a report). The Cite shows the short form of that record, (Autor Jahr), and, when it has a locator, (Autor Jahr, S. 12).

A Cite is not a reference chip. The reference chip ([@<block id>]) points at a Block and shows its title or short citation; a Cite points at a Bibliographic record and always reads as a citation in running text. Both nodes live in the composites schema, because the Markdown export needs them on the server too.

Insert a citation

Type /zitat (in the slash menu: „Zitat einfügen“) or type [cite: by hand. A picker lists the bibliography entries of the open Document: every Typed block with meta.bib whose short citation, full citation or citation key contains what you typed. Choose one and the Cite is inserted, followed by a space.

The Cite has the attributes key and locator:

AttributeMeaning
keythe citation key of the entry. It is the key that bibtexOf writes into the .bib entry: the first author's family name, the year and the first word of the title, in lowercase ASCII (lecun2015deep)
locatorthe position inside the cited work (S. 12); null cites the work as a whole

The key is derived from the record. When two entries of one Document derive the same key, the first one in document order is the one a Cite resolves to.

What the chip shows

The chip resolves its key against the entries of the Document on every change of the Document. It shows the short form from citeShort (Doe 2024, Doe & Roe 2024, Doe et al. 2024; the first 40 characters of the title when the entry has no author) and the full form from citeFull as its tooltip. If the author, the year or the title of the entry changes, the chip changes with it.

ActionResult
Clickreveals the bibliography entry in the Document
Double click or right clickopens a field for the locator („Stelle“) in an editable editor
Key without an entrythe chip shows (key), greyed and struck through, with the tooltip „Literaturangabe nicht gefunden“

Markdown

A Cite is written as [cite:<key>] or, with a locator, [cite:<key>, <locator>]. A ] inside the locator is written \].

Deep learning works [cite:lecun2015deep, S. 12] and has been replicated [cite:doe2020other].

The token is not Pandoc's [@key]: [@ belongs to the reference chip and to mentions. [cite: parses straight back into the node when Markdown is imported, edited in source mode or written by an AI; there is no second step that checks the key. A key that names no entry is kept and shows as a gone chip.

The Block index text of a Block that holds a Cite contains [cite:<key>], so a search for the key finds the Block.

Framework bindings

The Vue and React compositeFeature give the node its view (CiteView, also exported from @skaile/forge-editor/composites/vue and @skaile/forge-editor/composites/react). A binding that supplies no cite node view (CompositeNodeViews.cite is optional) shows the static form (key, locator). Servers build their schema with compositeSchemaExtensions(), which includes the node.

ExportUse
CiteNode, CITE_NODE, CITE_TRIGGERthe node, its name and the popup trigger [cite:
citeMarkdown, citeAttrsOfthe Markdown form of a Cite and its typed attributes
citeEntriesOf(doc), resolveCite(editor, key), citeText(label, locator)the entries a Cite can name, what a Cite shows now, and the chip text
citeSuggestion(t)the options of the [cite: popup
Copyright © 2026