Over the last year, for university, I’ve written two essays and two lab reports. This was without struggling at all with deadlines, ideas, referencing or any other typical point of friction in a process like this.
This is because I built a workflow to make this writing as painless as possible, and I want to share it with you today.
It’s based in Obsidian, and makes use of another couple of other apps, which help with reading papers and exporting the written script into a presentable format.
As well as telling you the apps and plugins involved, I’m going to drop in some other tips and advice that I’ve learned through building this process. Let’s get started…
Tools used:
This workflow uses a couple of apps, as well as plugins within these apps, but once this has been setup, it requires very little maintenance and saves a lot of time when writing. I’m going to go through the process in order so that it’s easier for you to keep track…
Search engine:
First, I have to locate the material related to the topic that I’m writing about. I use either Google Scholar or my university library’s search engine mostly here.
Quick Tip: I’ve had some struggles coming up with effective search queries for tools like this. To solve this I’ve used AI to suggest suitable search queries, which has worked very well in finding new and relevant resources. You simply prompt the AI something like ‘give a search query for Google Scholar to show relevant sources about (your topic here)’.
Zotero:
Zotero is an open-source reference manager. It’s extendable with plugins (like Obsidian) and is my tool of choice when managing all of my resources.
You can organise all of your resources in folders and sub-folders. As well as in Obsidian, I use the PARA method of organisation from Building a Second Brain to organise my resources in Zotero.
Obsidian:
This is my second brain, where I manage all of the knowledge, and also where I put together the manuscript of the piece that I want to produce.
I can have resources, as well as notes in separate panes to the manuscript for easy reference when I’m writing. Inserting citations and other information in the document is extremely customisable and simple to understand too.
Pandoc:
This is a universal document converter, supporting many formats. It’s especially useful if you submit your work somewhere that has a specified format for submission.
If you want to export to PDF format like I do using the tools in this guide, you also need a LaTeX distribution installed. This is because Pandoc takes the .md file, converts it to .tex and onwards to .pdf format. I use the MikTeX distribution and it serves all my needs fine.
Setup and usage:
You install the Zotero Browser Extension first. This will allow you import documents and document metadata into your Zotero library from the page of a resource in a single click. You obviously have to check the metadata when it’s imported, but it’s normally very accurate.
In Zotero I use two plugins which add powerfully to the function of Zotero:
- Zotfile: this plugin allows me to manage the PDFs attached to the resources that I’m reading during research. It assigns each resource a citekey as well for easy citation insertion when writing the script. This plugin also allows you to manage your attachments (i.e. PDFs) externally so they can be synced to many devices.
- Better BibTeX: this plugin allows you to export your current library to a .bib file that many softwares can read. It continually updates this file too, to keep your library in sync with it.
Within Zotero, you can access the PDFs of all the resources. You can open them and annotate how you want. I like to highlight relevant passages, figures and references for this.
Once you’ve finished reading through, Zotero allows you to export the highlights to a note, which is saved along with the file metadata in the .bib file exported by the Better BibTeX plugin.
The next step is to set up your plugins in Obsidian. The Citations plugin draws the information about your reference library from the .bib file that the Better BibTeX plugin exports, therefore you have to specify its location in Citations’ settings.
After this, you can create literature notes in Obsidian that import your highlights that you’ve put in a note in Zotero. This is useful to reference key points you’ve taken from resources, side-by-side with your manuscript when you’re writing.
This plugin also allows you insert markdown citations into your manuscript. This is a lot easier than having to actually write the citations yourself.
As well as this, with the help of the next plugin I’m going to describe, you can create an output with fully formatted citations in any citation style language you want, with a complete auto-generated bibliography at the end of the piece…
It’s the Pandoc Plugin that I’m talking about here. You require Pandoc to be installed on your computer, but aside from this, you don’t have to pre-configure much. I’ll go into more detail about how you add the settings later (because we do this on a by-document basis, using YAML metadata). You add the filter citeproc
, which is going to tell Pandoc to generate the citations and bibliography, and that’s about all.
Within your script, you must specify some settings to make sure that the outputted document has all the necessary information:
In the YAML of the document, you can add several properties, including title
, author
and date
. Pandoc will then render them neatly at the head of your output document.
There are a couple more important settings to add to the YAML too. If you’re required to submit using a specific citation style language, it’s in the YAML that you specify the location of the .csl file under the property csl
. It’s also here that you specify the bibliography
property by pointing to the .bib file that Better BibTeX syncs your library to.
You can configure many things in YAML metadata, from font size to writing the entire abstract, so it’s important to check out some other settings that you can use here.
Once you have all of these steps in place, you can run the command for export to the format you require from the Pandoc Plugin within the Command Palette. I normally submit PDFs, so I choose the PDF (via LaTeX) option. Check the folder you’ve specified for output within Pandoc Plugin’s settings, and your file should be there!
I know this workflow seems long-winded, but it works a treat once set up, and will save you a lot of time, should you require writing more than a couple of academic pieces.
I hope you’ve learned something actionable you can take away from this article and try, and, as always, thanks for reading!
1 comment