Citations and bibliographies in Markdown
Markdown has no way of its own to cite a source. So citing in Markdown has meant Pandoc, a .bib file, a style file and a command line. Grasmere, a Mac app, does it with something Markdown does have, the link.
How citations in Markdown usually work
Pandoc added a citation syntax to Markdown, and most tools follow it. You keep your references in a BibTeX file, cite them by key, and name a CSL file for the style you want.
---
bibliography: refs.bib
csl: apa.csl
---
Starters are alive [@field2019, p. 12].
Run pandoc --citeproc and the key becomes “(Field, 2019, p. 12)”, with a reference list at the end. It’s a good system, with thousands of styles. Its cost is the set-up, and that a key such as @field2019 means nothing to any other Markdown app.
In Grasmere, a citation is a link
Each source is a Markdown document in your project’s research folder, with the details a reference needs at the top.
---
title: The Living Loaf
author:
- Field, Rosa
- Tom Baker
published: 2019
publisher: Riverbank Press
place: London
edition: 2
type: book
---
To cite it, type [@ and pick it from the list by author, title or year. Grasmere writes an ordinary link.
Starters are alive [Field 2019](../research/The%20Living%20Loaf.md).
Because it’s a link, it works everywhere links do. It opens the source when you click it, it follows the source if the file is renamed, and it reads sensibly in any other Markdown editor or on GitHub.
Adding sources
- A paper, by its DOI. Grasmere looks it up at doi.org.
- A book, by its ISBN, looked up at Open Library.
- A web page, saved as Markdown with its author, site and the day you accessed it.
- A PDF dropped into the research folder, found by the DOI or arXiv number in its first pages.
- A whole library, from a BibTeX or CSL JSON file. See Using Zotero with Markdown.
Pages, and authors in the sentence
A page goes after a comma inside the brackets. Ranges, chapters, paragraphs and sections work the same way, and each is written as the style wants it.
[Field 2019, p. 12](…)
[Field 2019, pp. 12–14](…)
[Field 2019, ch. 3](…)
To name the author in your sentence, put the year in brackets inside the link. [Field (2019)](…) argues exports as “Field (2019) argues”.
Several sources can share brackets of your own. (see [Field 2019](…), p. 4; [Abbott 2021](…)) becomes “(see Field, 2019, p. 4; Abbott, 2021)”.
The four styles
When you export to Word, PDF or a website, each citation is written in the project’s style and the sources you cited are listed at the end.
| Style | In the text | The book in the list |
|---|---|---|
| APA 7 | (Field, 2019, p. 12) | Field, R. (2019). The Living Loaf (2nd ed.). Riverbank Press. |
| Harvard | (Field, 2019, p. 12) | Field, R. (2019) The Living Loaf. 2nd edn. London: Riverbank Press. |
| Chicago author-date | (Field 2019, 12) | Field, Rosa. 2019. The Living Loaf. 2nd ed. London: Riverbank Press. |
| MLA 9 | (Field 12) | Field, Rosa. The Living Loaf. 2nd ed., Riverbank Press, 2019. |
The list is headed References, or Works Cited in MLA. Two works by the same authors in one year get letters, 2019a and 2019b. A source with no date is cited “n.d.”. You choose the style when you export, and it’s APA until you choose another.
Quoting
Select a passage in a source and choose Copy as Quotation. Pasted into your draft, it arrives as a block quote with its citation after the last words.
> Starters are alive, and they are hungry. [Field 2019](../research/The%20Living%20Loaf.md)
Checking before you publish
A link that reads like a citation but points at a document that isn’t a source is flagged as you write. Before you publish, Grasmere says how many sources are cited and whether every citation resolves. It also lists the sources you gathered and never cited.
Coming from Pandoc
Import your .bib file, then choose Project ▸ Convert Pandoc Citations. Every [@field2019, p. 12] becomes a citation link, and @field2019 argues becomes the author-in-the-sentence form. A sheet shows what will change first, and the whole conversion can be undone.
What isn’t supported
- Footnote styles, such as Chicago notes and bibliography or OSCOLA.
- Numbered styles, such as Vancouver and IEEE, and journals’ house styles.
- Citing an editor in place of an author, and translators.
If you need one of those, Pandoc with a CSL file is the tool for it.
Questions
Do I need Pandoc or a reference manager?
No. Sources, citing and the formatted reference list are all in the app.
Can a footnote hold a citation?
Yes. A citation inside a footnote is written in the project’s style like any other.
Where is the list of my sources?
Grasmere keeps a table of them in research.md, with each one’s author, year, type and how many documents cite it.
Cite as you write.
Add a source by its DOI and type [@. The trial is free for 14 days.
Download for macOS Free for 14 days, then $14.99 once · macOS 26+