A guide to writing with free & open-source tools

Let’s start with a list of the tools I currently use for writing:

As you can see, my current workflow is focussed on writing in markdown in Visual Studio Code, with Pandoc as tool to convert everything into a document file (pdf, docx, …) and Zotero as a reference manager. Aside from specialty applications to create graphs and/or figures, this is all that you’ll ever need (for now).

Visual Studio Code is a text and markdown editor as well as a lightweight IDE (integrated development environment). Here’s how the writing setup looks:

Visual Studio Code example

The most important parts in VSCode (for writing purposes) are the explorer section on the left and the actual editor on the right. In the image below, I split the editor section to accommodate one part for writing (left) and the other part to look at references, images, etc. (right). The explorer can will show the contents of the folder with all files in your project.

VS Code annotated

Visual Studio Code is okay by itself, but it can be significantly extended by installing extensions. These can be installed by clicking on the button highlighted in the image above (in red, middle left) and searching for the respective extension. The most important extensions to install for writing purposes are:

  • Word Count
  • Table Formatter
  • Spell Right
  • Markdownlint
  • Citation Picker for Zotero

Citations, figures and tables

Most importantly for scientific writing is the ability to handle citations as well as figure & table references, including automatic bibliography-generation and numbering. Since pandoc, the software used to convert markdown files, uses LaTex under the surface this is a breeze, and even easier with markdown than it is in LaTex in the first place.