skip to content

Babble, [2025-08-28 Thu 08:53], Adding Org-cite to GnoponEmacs

This morning, I'm planning on adding Org-cite to GnoponEmacs. This is part of the 2025 Relaunch of emsenn.net, where I'm using my Omnibook (my new laptop) to finally get back to taking notes and writing the way I feel I should. (I'm still struggling to figure out how to term my work, beyond generally: I want some way to refer to this digital gardening that does something to hint at its orientation toward formalism, computability, and relational coherence.)

(Why Org-cite and not Org-ref? While newer, Org-cite is a native part of Org-mode, and aligns more closely with Org-mode conventions.)

The first step in adding Org-cite to GnoponEmacs is teaching my self about how Org-mode handles citations. Looking at the manual, it looks like Org-cite builds on concepts from LaTeX bibliographies, which I've used in the past, but not recently enough to remember much.

I have to make sure a file knows what bibliographies to check, which can be done (like most Org-mode configuration) through either local (#+bibliography: some-refs.bib) or global variables (org-cite-global-bibliography).

I keep the PDFs and such that I use as references in ./org/ref/; each file is named for its DOI or after its title, if there isn't a DOI. So, it makes sense (to me) to put a global bibliography file in that directory.

Checking, I apparently already have a line in GnoponEmacs that sets a global bibliography, just to the wrong path. But, that indicates that I was at least looking at using Org-cite at some point as recently as 2021, so maybe more will become familiar as I progress. (Seeing that is when Org-cite was released, so I guess I was hip, at the time.)

Reading through the rest of the relevant manual, I find no guide on how to actually format this .bib file. Searching the Web brought me to this blog post from 2022, which at a skim seems to be much more educational than the manual itself, which seems to presuppose a lot of knowledge I just don't have.

Notably, early on into reading the post, I see it say that while users can write their own BibTex bibliography (that's what a .bib file is), "the most common way is exporting a Zotero library).

Zotero is one of those softwares I've heard of from exposure to institutional academics, but I'll be honest: I don't actually know what it is or what it does. I'm continuing to read through this Balintona blog post, but it sounds like I might want to look at Zotero for building a bibliography.

I'm glad to read the following quote, as it conveys I'm more experienced with some tools than the author, but equally unfamiliar with the core packages at hand:

To those not familiar with another citation workflow (e.g. biblatex in LaTeX), it is quite daunting to leap into citations in Emacs. This was certainly the case for me: I leapt into org-mode citation integration with Zotero and LaTeX with no experience in org, Zotero, or LaTeX! Nonetheless, org-cite is quite simple once laid out.

Then, the author does me the great service of linking to the post announcing Org-cite, which does a lot to explain a lot!

The post explains that Org-cite is split into two parts: the part that interacts with citations, and the part that renders those citations. It goes into some detail about how this interacts with different citation processors: there's four things Org-cite uses them for:

The concept of "citation processors" has come up a few times this morning, and I've mostly skipped past, but here, I feel like I have enough context to start trying to understand it. As explained in the announcement post, there are four citation processors bundled in Org-mode:

basic
no dependencies, can do all the citation stuff (insert, edit, follow, fontify, export)
biblatex and natbib
exports, but only for LaTeX?
csl
exports using Citation Style Language(?), to HTML, LaTeX, Org, and plain text. Depends on citeproc.el?

It sounds like, because I am planning to export things to my website, I will need to look at Citation Style Language, but for now, I'm trying to stay focused on initializing my bibliography file, so I can start with some hands-on learning.

Luckily the next part of the announcement post gives an example orgcite.bib:

@article{OrgCitations,
         author={org, mode and Syntax, Citation and List, Mailing and Effort, Time},
         journal={Journal of Plain Text Formats},
         title={Elegant Citations with Org-Mode},
         year={2021},
         month={7},
         volume={42},
         number={1},
         pages={2-3}}  

I got down this rabbithole because I started reading A Two-Dimensionalist Guide to Conceptual Analysis, and wanted a way to start babbling or whatever about it, so lets make that our first entry:

@book{Kipper2012,
  author    = {Jens Kipper},
  title     = {A Two-Dimensionalist Guide to Conceptual Analysis},
  year      = 2012,
  publisher = {De Gruyter},
  series    = {Epistemic Studies},
  volume    = 25,
  isbn      = {978-3-11-032270-5},
  doi       = {10.1515/9783110322705},
  url       = {https://www.degruyterbrill.com/document/doi/10.1515/9783110322705/html},
  address   = {Berlin/Boston},
  keywords  = {conceptual analysis, epistemic opacity, two-dimensionalism}
}

Apparently, after that, I should be able to simply do [cite:@Kipper2012], and get… (Jens Kipper, 2012)

And if I want to insert the bibliography of this file, I can do #+print_bibliography:, and get…

Jens Kipper (2012). A Two-Dimensionalist Guide to Conceptual Analysis, De Gruyter.

Testing this as an export to a plain text file, that worked fine. So, I'm not sure (yet) what I'll need to do to care about the export processors: for now, how it works seems to be acceptable.

So, from here, there are two things to do:

  1. Figure out how I want to add citations to the bibliography
  2. Figure out how this integrates with Org-roam

That second one is actually the first one I'll do, because I suspect it will influence how I want to add citations. My thinking is, I suspect that unlike most folk using Org-cite, I have an Org-roam node for some entries that'll be in my bibliography.

The rest of the announcement post goes into detail about citation styles and other useful tools like Zotero, so I can put it aside for now, and it looks like the same is true for the other blog posts.

Instead, I can come back to Org-roam manual, where it talks about citations. As it explains it, I can simply add the unique citation link to a node's ROAM_REF properties.

Backlinks

Created: 2025-09-06 Sat 23:04