Writing Academic papers using Pandoc and Scrivener

I have been on an off with Scrivener for the past year. I really love Scrivener (for Windows) and I have tried it for my Ph.D. thesis and for various other research papers. However, I always prematurely abandon it and swap over to word. The main problem I have is with citations!

However, I have been using an externally installed Pandoc to add the correct citations and bibliography. I have noticed there are Pandoc compile options, and I was just wondering how can I use these without using an external Pandoc installation to compile?

I have looked around the internet, with dozens of people’s personal workarounds (requiring heaps of different programs). But since it seems already installed with Scrivener, I was wondering if there is a more streamlined approach?

Well firstly, it sounds like you are using the beta version since the stable version wouldn’t have these options. The big thing to keep in mind with it right now is that I wouldn’t say the beta version is “production ready” for Pandoc or Markdown in general. There are still a few key blocking bugs with it that make it really difficult to even work around them.

That disclaimer aside, we don’t ship Pandoc with Scrivener, mainly because it’s too big, it would increase the download by around 50%. So what it does is check for a locally installed copy and if one is found, it unlocks these additional options. In practice that’s not too big of a problem though—yeah you need a separate install, but it integrates with it so you can kind of ignore that, just like those making Kindle ebooks can ignore that they have KindleGen installed to make it work.

The next problem is the workflow. This is one of those areas where the beta doesn’t have the components you’d need to truly make it streamlined yet. There will be an additional pane in the compile format designer called “Processing”, where you can plug in a custom Pandoc command-line and have it use that instead of the prefab settings. You’ll even be able to write your own .bat files to do more than just that if you need to. You’ll need that because none of the prefabs address a citation-based workflow directly. It would be difficult to do that given the wide variety of specific use cases that exist for this way of working. Again though, it’s one of those things where you may have to invest some time to set it up, but once you do it’s kind of “one click” so long as your needs don’t change.

So that is the theory anyway, and what you can look forward to, once all of the pieces of the puzzle are implemented and working together properly. In the meanwhile it will be easiest to continue working as you have.

As someone else has already asked me, and I do now have a Windows machine, I did give a go at trying to set up my Scrivomatic workflow for Windows.

Windows has surely changed. There are several routes for installing Pandoc, in addition to manual installer, there are package managers like Chocolately, as well as the amazing windows subsystem for Linux (WSL). I got Pandoc easily installed in both (though citeproc was not symlinked properly with chocolatey). As I use Pandocomatic, I then installed Ruby. I really don’t know how to handle Powershell, and so my idea is to get WSL to be the most productive cross-platform route to Scrivener+Pandoc post-processing, but I ran out of time so never got any further. But I suspect it will only be minor tweaks to get everything working via WSL (and work out the trick to get post-processing to call a WSL script). If you could implement a folder watcher in Windows, you could even trigger automatic Pandoc conversion whenever Scrivener compiled to a specific folder, even before post-processing compiler panel loses its MIA status. Anyway, in theory Windows users should be able to run the same expansive and flexible Pandoc workflows that macOS users enjoy.

Now if only there was a reference manager for windows as powerful and well supported as Bookends for macOS is…