This page describes some of the tools that I find useful for academic research and writing. I will present a brief description of the functionality that each tool provides. I will begin with Zotero which is an excellent reference management software and requires the least effort to learn. I will then discuss LaTeX along with the repository of resources that I maintain for using VSCodium to edit LaTeX and Markdown documents. I will conclude with the NeoVim configuration that I maintain for academic writing along with some brief remarks about the various utilities that this configuration provides.

Zotero

Even if you have no interest in using LaTeX, Zotero is a must for managing your PDF database as well as bibliographic data. Zotero is an open-source reference management software which does all the work for you of saving bibliographic data, PDFs, notes, or other files. Rather than ending up with a dizzying array of folders on your hard drive (or desktop!) crammed with documents, Zotero lets you easily create and destroy project folders without creating multiple versions of each paper (unless you want that). Additionally, Zotero will download and organize the associated PDF with the reference, all with the click of a single button in your web browser. That way, building your reference database is the passive result of sorting through papers that interest you online. Most importantly, this software allows you to generate bibliographies from any selected project folders or files, and is compatible with most word processors. I’ve given detailed instructions below on how to install Zotero.

VSCodium

An easy way to get started without spending too much time in configuration is to use an IDE like VSCodium to write LaTeX (this is the private, community maintained version of Microsoft’s VS Code). Using VSCodium is a huge step up from Overleaf and TexShop/TexMaker with not much more work required to get it configured to your needs. In order to streamline the process of configuring this tool, I have provided a number of resources with detailed installation instructions.

Git

Git is a powerful version control software which can help you manage your workflow, track changes as you work, leaving yourself or others notes, and backing up a complete history of your project as it progresses.

Annotation

Instead of hand typing quotes, or cutting and pasting quotes and notes from PDF files, pdfannots is a convenient utility for exporting all highlighted text and notes from a PDF to markdown, organised by page number. I have included a key-binding in my Vim config for using pdfannots in conjunction with vimtex which looks up and export all highlights and notes from the PDF corresponding to the citation-key that your cursor is hovering over, creating a new markdown file in an annotations folder in your project directory.

LaTeX

Writing formal symbols is by no means the only reason to use LaTeX, which is an extremely powerful and flexible typesetting tool, allowing you to separate composition from formatting. Additionally, by writing in LaTeX, you can take advantage of the extremely powerful tools included in text editors such as NeoVim and VSCodium (see below). In order to write in LaTeX, you will have to install a text editor. Although it is common to use Overleaf or TexShop/TexMaker, I recommend starting with VSCodium, which will make writing in LaTeX and Markdown a lot easier. Alternatively, see the section on NeoVim below.

NeoVim

Although an IDE like VSCodium or Sublime is much nicer to use than Overleaf or TexShop/TexMaker with not much more work required to get it configured to your needs, NeoVim (henceforth ‘Vim’) takes this a lot further, providing a lightweight and highly customization stock text editor which can be configured to your exact needs without including extra bells and whistles. As a result, Vim is much faster than Sublime and VSCodium. I have provided my configuration files on my GitHub repository along with extensive installation instructions so that you can recreate the Vim setup that I have optimized for writing LaTeX and Markdown without going through the difficulty of cobbling together a collections of plugins and settings for yourself. I also explain how to customize the config, tailoring the setup to your needs. You can preview that setup here.

Markdown

Instead of taking notes in LaTeX, Word, or some other note-taking application, you can recover some of the elegance of LaTeX without any of the trouble by writing in Markdown. The syntax for Markdown is designed to be as simple as possible while still producing a good looking document which you can then convert via Pandoc into other formats.

Pandoc

Pandoc is a convenient utility for converting between different text formats. I have included key-bindings for using Pandoc in my Vim config which I demonstrate here.