As an academic, I spend a lot of time writing. Switching to a Mac in 2008 was one of the best productivity hacks of my life. But there has always been this one nagging problem: Microsoft Word. I loathe Microsoft Word. Especially the Mac version.

Word has many flaws, but the most irritating is its amazing ability to hang or crash. It happens all the time, but especially when exchanging documents that have “track changes” enabled with colleagues on PCs. I still remember vividly one night when I was working on a paper that Word crashed more than 30 times.

So infuriating.


Enter Scrivener

My frustration with Word drove me to experiment with many other word processors like Pages, OpenOffice, LibreOffice, and Google Docs. Although it wasn’t first on my list to try, I kept hearing rave reviews of a program called Scrivener from accomplished writers like Michael Hyatt and Jeff Goins. Scrivener isn’t a word processor. It’s a writing studio.

Like them, once I gave Scrivener a try, there was no turning back.

Although I fell in love with Scrivener’s writer-friendly layout, organization features, and distraction free writing, the thing that kept tripping me up was citations. Writing scientific papers means using citations, and lots of them. To avoid the massive pain of manually numbering references to other scientific papers, most people use reference managers like EndNote, Mendeley, or Zotero.

The only problem is that while all of these reference managers have plugins for Word (and many for OpenOffice or LibreOffice), none of them have plugins for Scrivener.

After lot of experimenting and digging around, I’ve finally found a straightforward process for using Scrivener to write scientific papers. This processes uses the wonderful (and free) Zotero reference manager so you can still create perfectly formatted bibliographies and inline citations. It also depends on having either OpenOffice or LibreOffice. This isn’t a problem for me, because I keep LibreOffice around specifically for grant reports that I need to submit as Section 508-compliant pdfs. (OpenOffice and LibreOffice both support adding alt-text to images, but I could never figure out how to do that with Word or Pages).

With a little bit of upfront setup, you can reap the many rewards of using Scrivener as your primary writing environment.

Let’s walk through the process.

Setup your tools

  1. Install Scrivener and Zotereo. Scrivener is available as a desktop application for both Mac and Windows. Obviously, I use the Mac version. There is discounted pricing on an Educational license (Mac | Windows) for faculty and students available too. Zotero is free and available as a plugin for Firefox or a standalone application. I use the standalone application.
  2. Install the RTF/ODF-Scan for Zotero. This add-in is the secret sauce in the process. It reads citation markers that you insert into any document saved as .odt format (which Scrivener does beautifully) and then converts those into active Zotero citations. To install this in the Standalone version of Zotero:
    • Once you’ve downloaded the file, go to Tools –> Add-ons.  Click on the little gear icon in the upper right, and select Install Add-on From File.
    • Browse to the downloaded rtf-odf-scan-for-zotero.xpi file,  select it, and you’re in business.
    • Now, in Zotero when you fire up the “RTF scan” process it’ll work on .odt files as well.
  3. Set Zotero’s default output format to Scannable Cite. Under Zotero–>Preferences, find the Export tab. Under the “Default Output Format” setting, choose “Scannable Cite”.  Now, you insert citation markers by either draging & dropping items or by using ctrl+alt+c (cmd+shift+c on Mac) to copy them to your clipboard and the paste them using ctrl/cmd+v or the right-click context menu.zotero-preferences-export
  4. Get the Zotero Style file for the journal citation format you’ll need [optional]. Journals vary a great deal in terms of the citation format they expect your manuscript to use.
    • If Zotero doesn’t have the citation format you need already, browse the the Zotero Style Repository for your target journal.
    • Once you’ve downloaded a CSL style file from the repository, you can install it by double clicking the file while your Zotero client is running. (See the Zotero documentation if you’re having trouble getting your style to show up).

Sit down and write!

Now, time to do your thing. When writing scientific papers, I use a custom Scrivener template that I developed based on one created by Nermin Salkic, MD, PhD. My Scrivener template lays out the framework for a typical scientific paper. Inside the binder there are separate documents for each of the major sections of the paper, as well as placeholders for tables and figures. Here’s what the template looks like:


I’ve found that isolating each section helps me stay focused as I’m writing.

As you’re writing, insert citations from Zotero into your Scrivener document with a copy and paste:

  • Copy from Zotero with Cmd+Shift+C to get the citation
  • Paste it into Scrivener with the usual Cmd+V

No doubt, inline citations that look like { | Vreeman, et al., 2007 | | |zu:1095885:VDJ4V4NC} are a bit ugly. But, I’ve gotten used to them.

Export to ODT

When you’ve finished writing your manuscript in Scrivener, it’s time to compile your document into ODT format.


Scrivener has tons of options available to fine tune the compiling (exporting) process. The key ones for me are:

  1. Choosing the output format to Compiling For OpenOffice (.odt).
  2. Choosing which sections/components of the paper to export.
  3. Choosing which sections/components should have page breaks before them.
  4. Choosing the output fonts. I love writing in fonts like Baskerville or Crimson Text, but sadly journals and reviewers don’t necessarily have those fonts on their computers.  So I export my paper in plain ole Times New Roman.

Run RTF Scan (In Zotero)

  1. Once you’ve compiled (exported) your document as an ODT file. Flip over to Zotero and start the RTF scan under the menu Tools -> RTF Scanrtf-scan-600
  2. Choose File Type: “ODF (to citations)”.
  3. Select your Input File (i.e. the file you just exported from Scrivener).
  4. Select your Output File. I typically just click on the Input File and append “- with citations” to the end of it.
  5. Choose Continue

Insert Bibliography

Sweet! Now we’ve got our manuscript setup in ODT format. To create a Bibliography (e.g. a References page):

  1. Open up the ODT file in LibreOffice (or OpenOffice). When you see all the “scannable citations” they still look ugly. But don’t worry. Once we create our bibliography, that will all get cleaned up.manuscript-scannablecites
  2. Scroll down to your “References” section and delete any placeholder text you may have put in there.
  3. Choose the Insert Bibliography icon from your Zotero toolbar.
  4. Choose your journal format (here I’m preparing for submission to the Journal of the American Medical Informatics Association) and other options here and you’re done! Now, you’ve got a nicely formatted bibliography and all those ugly citations in the text are turned into number references.references-formattedmanuscript-numbered-cites

Save as a Word Document

Ugh. I hate to say it, but few journals (well, at least the ones I submit to) will accept submissions in ODT format. Fortunately, LibreOffice makes it dead simple to “Save as” a Word document. Do this, and you’re ready to submit!

Get Published!

That’s it, your moment of glory has arrived. Go submit your manuscript and get published!


Disclosure of Material Connection

Some of the links in the post above are “affiliate links.” This means if you click on the link and purchase the item, I will receive an affiliate commission. Regardless, I only recommend products or services I use personally and believe will add value to my readers. I am disclosing this in accordance with the Federal Trade Commission’s 16 CFR, Part 255: “Guides Concerning the Use of Endorsements and Testimonials in Advertising.”