Overleaf, or how I learned to embrace the lack of a local compiler

Written on

You might remember me describing my workflow when it came to LaTeX and referencing. It involved a local install of MikTeX or TeXLive, Sublime 3 and Mendeley. It still does, but it is being used substantially less.

I have been corrupted by the ever growing digital entity that is eating everything not online. All my papers and reports are in the cloud, snuggled within Overleaf’s embrace (warning: that link has my ref id in it). All of my LaTeX work is done online now (well, almost all of my work).

So, what’s Overleaf? It’s LaTeX in a browser. It takes your LaTeX document and makes it a beautiful pdf, as if you compiled it on your own machine! And it keeps track of all your changes automatically, via Git. It also helps manage all your documents with tags and archive support. Also, if multiple people are working on the same document, collaborative tools.

But, to describe it better, I will compare it to my previous pipeline.


Editor - Overleaf’s JS Editor vs Sublime 3

Sublime is the better editor, hands down. The things one can do in it are amazing. The speed is great, the plugins are many (spell-checking, Git, indentation, multiple line selection, project management, etc), the text just flows and it is not dependent on whether your browser wants to be cranky.

However, that doesn’t mean the Overleaf editor is bad. It has spell-checking, colour coding and a work-in-progress WYSIWYG editor. It does its job and it won’t get in your way.

Referencing - Desktop vs Online

With the local setup, I had to have Mendeley open to sync my .bib file. Then wait for Sublime to cache the new .bib, or force that action myself. Afterwards, \cite{} does its magic, with brilliant filtering of entries.

Overleaf has built-in support for both Mendeley and Zotero. It can import your bibliography and then you can do the same \cite{} to find your much-wanted citation. It does not, however, have the same level of filtering. References show up only by their citation key. However, with the Mendeley bookmarklet, I rarely, if ever, need to start the desktop version of the software. This makes it much more accessible for those (currently still few) times I want to work from my phone (via Continuum) or from someone else’s PC.

If you’re a fan of keeping track of your .bib files manually, either option will be just as good to you.

Tracking changes

Whenever you make a change on Overleaf, it becomes a git commit. There’s also a nice historic view of all the changes you made. And, if you still need to make changes to your article locally, it’s as simple as git clone url, edit, then commit your changes. They will show up immediately online. With a local setup, you still need to set up a repository, but you also have to commit your changes manually and then make sure to sync between your machines.

I’ve been using the Git interface to add multiple files filled with data to my LaTeX projects. Convenient!

Previewing

Make a change in the editor and the preview pane refreshes with the newer version. Keep writing and the preview pane tries to stay up to date. It’s not the fastest refresh (LaTeX’s fault), but it’s still faster than doing it manually.

Miscellaneous

The Overleaf mascot is a green duck. And, according to a couple of my office colleagues, talking to ducks is helpful. My custom setup has no mascot. I wish it had a mascot. Also, my office (and, through extension, my colleagues) has no mascot or duck. Doing a PhD (shameless plug) is hard.


At the end of the day, Overleaf makes most LaTeX related tasks easier. One can use it exclusively, or as an extension to their usual style of work. It can only enhance the process and it’s why I feel good recommending it.

Of course, it’s worth remembering: Overleaf is online only. If you don’t have the internets, this might not be the best solution for you. Then again, work locally, make a commit, push when connected.

And my latest paper was written entirely on Overleaf. So that’s something. And it made me forget to constantly CTRL-S, which was really frustrating during the writing of this article.