Managing references for research

Alex Hollingsworth
8 January 2021

When I was a student I was always shocked at how long it took to create a formatted bibliography after finishing a paper. This was a task that I dreaded and usually left for the last minute. As I continued on as a graduate student, I learned about the wonders of Latex, which with the natbib package and a .bib file containing formatted citation data—both of which we will discuss later on—can automatically create a bibliography for you.

While this was quite the time saver, it still meant that for every paper I had to maintain a .bib file with all of the correct and up-to-date reference material. This was in addition to saving and managing the pdf copies of papers I was citing. This material quickly became scattered across my computer. In short, this was a chaotic, disorganized approach that was laborious, error prone, and not conducive to coauthoring or working across multiple machines.

Organizing this chaos and is where reference managers shine. Think of a reference manager as a nerdy version of iTunes. It’s a single place where you can put all of your documents, organize/update metadata (e.g., authors, journal, year, title), and create custom “playlists” (i.e., folders) for each project you’re working on without physically duplicating any material. Most reference managers will synchronize across multiple machines and allow for sharing with coauthors. And many reference managers will capture annotations as well as other material (e.g., an appendix).

This article will outline one approach to setting up the free reference manager Zotero that can be easily integrated with Latex. While I use Latex and Zotero, there are of course other (and likely better) workflows. Certainly a similar set-up can be created using many different software combinations (e.g., Microsoft Word + EndNote). This is only meant as an introduction to see what’s possible. With the goal of reducing the cost of writing and producing research papers.

You can find links to the remaining content below in case you want to jump around.

  1. Choosing a reference manager
  2. Setting up Zotero
    A. Downloading and installing
    B. Zotfile
    C. Better Bibtex
  3. Importing your first paper
  4. Adding and extracting annotations
  5. Making a formatted bibliography file
  6. Using a formatted bibliography file with Latex

Choosing a reference manager

A goal of this article is to outline a free method of managing your references. Not necessarily the best method. So the first requirement is that the reference manger be freely available. Second, since I use Latex to write papers, another requirement is that the reference manager can quickly produce a .bib file that works well with Latex’s natbib package. Third, I’d like to be able to synchronize highlights and notes on pdfs across multiple machines. Fourth, I use an iPad with an Apple Pencil so I’d like to access and annotate pdfs as seamlessly as possible on this device.

The best manager I know of that meets these criteria is Zotero. Zotero is freely available, open source, cross-platform, and offers free (up to 300 MB) synchronization and collaboration. When coupled with two plug-ins, it meets all of my reference manager needs. It even has a Microsoft Word plug-in. As such it will be the focus of this article. But before we dive into it it’s worth it to list other alternatives.

You can find a more complete list of alternative reference managers here, but the some contenders are BibDesk, Mendeley, EndNote, RefWorks, Paperpile, and Papers. Some of these cost money, some are not cross-platform, and others do not allow for the simple export of annotations on pdfs. I used Papers for a long time, followed by Mendeley, but I’ve recently shifted towards Zotero due to recent changes to Mendeley’s software. Many of these other managers have fantastic features that may not available in Zotero. For example, Paperpile integrates really well with Google Docs. So if you use Google Docs as your primary way of writing, this may be the reference manager for you.

Setting up Zotero on a desktop

Setting up Zotero is quite simple and involves four simple steps.

  1. First: Download Zotero on your computer using this link.

  2. Follow the instructions on your machine to install Zotero. Once you’re done, open the program. It should look like this.

    The left pane is your file manager, the middle pane will show your files (which is blank since we haven’t imported any files yet), and the right pane shows the metadata for a selected file (again blank until we import something).

    You should also register with Zotero using your email account. This will give you access to your synchronized files online or on other machines that you’re logged into. We’re going to skip this step here and get Zotero set up on our machine.

    Before importing documents. We’re going to add two “add-ons” that will greatly improve our experience.

  3. Install and configure the zotfile add-on.

    The zotfile add-on will allow you to automatically rename files, extract annotations, and manage pdfs on a tablet.

    Go to http://zotfile.com and click the download button. Follow the instructions and download the .xpi file onto your computer.

    After you’ve downloaded the .xpi file. You’ll need to install it into Zotero. Do this by clicking Tools -> Add-ons

    In the resulting screen, click the right gear in the top-right and select Install Add-on From File. Then navigate to the location where you downloaded the .xpi file and select it. You will then need to restart Zotero.

    Once you restart Zotero, you will be able to configure your preferences related to renaming and tablet import/export in the Tools -> ZotFile Preferences menu.

    Select preference and then set-up your file naming preferences. Be sure to select Use Zotero to Rename.

    Next, navigate to the Tablet Settings. Be sure to select Use ZotFile to send and get files from tablet and to select a folder that is available on your table. I use iCloudDrive to sync with my iPad so I sync to a folder I’ve placed there called zotero. You could use Dropbox, Google Drive or anything else.

  4. Install and configure the better bibtex add-on.

The better bibtex add on allows you to make your own text citation keys. This is really nice since often these keys are not identifiable solely by their text (e.g., they may be a DOI number or a random string of text). That is, using something like ruhmRecessionsHealth2000 to identify a citation within a text is much better than DOI:10.1162/003355300554872.

Go to the better bibtex add-on homepage here.

Click the download button, which will take you to a GitHub page. There download the .xpi file to your computer. Install it as before by going to Tools -> Add-ons and then selecting the right gear and the Install Add-on From File option on the resulting screen. Then navigate to the location where you downloaded the .xpi file and select it. You may need to restart Zotero.

You should next be directed through a series of set-up questions.

Be sure to select Use the BBT default citekey format, which will automatically create citations keys that are more like the lastnameTITLEyear format (e.g., ruhmRecessionsHealth2000).

Now when you start Zotero you should see a Better BibTex initializing message in the lower right hand corner.

Congratulations. You’re now ready to start using Zotero.

Downloading and importing our first paper

Now that everything is set-up. Let’s import a paper. We will start with this great new paper by Tatyana Deryugina and David Molitor, “Does When You Die Depend on Where You Live? Evidence from Hurricane Katrina”. You can download the paper and appendix here.

You could use Zotfile to set-up a watched folder that always imports new additions into Zotero. But for this example, we’re going to keep it simple and just drag the main pdf (titled aer.20181026.pdf) into our library.

Zotero will automatically try to import the metadata. If it doesn’t automatically import the metadata or if it imports the wrong metadata, there’s an easy fix for articles with a DOI. Simple click the Add Item(s) by Identifier button and enter the DOI. This will create a new item hopefully containing the correct bibliographic data, which you can merge with the pdf you just imported. If you’d still like to make changes to the metadata, you can do so manually. A common thing I correct is the capitalization (sometimes its in ALL CAPS!) of paper titles.

Once you’ve successfully imported your pdf and are happy with the metadata, your library should look something like this.

If you want to add additional items (like an Appendix) to the “parent” item, it’s really easy to do. You can simply drag the item into your library. You can also add notes or other file types if you’d like. I changed the name of the file to be appendix, using the far right info pane.

Making annotations on a tablet

Now it’s time to move our file onto a tablet and to make some annotations. To do this just select the Parent item and right click. Then navigate to Manage Attachments -> Send to Tablet. This will push the files to the folder you selected earlier.

You will see a notification in the bottom right that it is pushing a copy of the files to your pre-selected folder.

Once on your tablet you can edit the document as you see fit. I use PDF Expert, but many applications would work fine. I highlighted the first few sentences of the abstract.

When you are done editing on your tablet. Go back to the desktop version of zotero, right click your parent item and then navigate to Manage Attachments -> Get from Tablet. This will pull the updated files from the folder you selected earlier.

If you highlighted the document or made notes, the Zotfile plug-in will now extract those notations. This is a really helpful thing. Especially since these annotations are exportable in plain text. You can see a notification of this extraction in the bottom right.

We can also confirm that this worked by examining the pdf document with my highlights and the “extracted annotation” file that was created in this process.

Exporting a formatted bibliography file

Ok. Now that we’ve finished annotating the document. We’re ready to create a .bib file so it can be used in Latex. If you’re a word user, now would be the time to check out the Microsoft Word plug-in.

This is really simple to do. All you need to do is to right click on the parent item or on a folder, which can be a collection of parent items (i.e., all the papers you plan to cite in your project). Then click Export Collection and export in your desired format. I use latex so I will export as better bibtex or .bib.

Save this file in the same folder (or in a subdirectory of the folder) containing your .tex file. This will allow it to be used within latex using realtive file paths, which is much simpler than specifying the full file path. Here I saved the collection as best-paper-ever.bib to signify how good the paper we’d write is going to be :)

This is what the file looks like. If we had more than one paper, there would be more than one item.

Using the formatted bibliography file with latex

Assume that, we saved our .bib file in a subdirectory called references. We can then tell latex and create our bibliography by using the natbib package and placing this text where we’d like our references to be made.

    \bibliographystyle{chicago}
    \bibliography{references/best-paper-ever.bib}{}

We can then cite the text within our latex document quite easily.

Here are a few different ways to cite a paper \citet{deryuginaDoesWhenYou2020}, \citep{deryuginaDoesWhenYou2020}, \citet[e.g.,]{deryuginaDoesWhenYou2020}.

Producing this well formated document with Chicago citation style.

Here is a great “cheat” sheet for citing within Latex using the natbib package. I had this printed out and taped to my grad cubby (along with a list of US state FIPS codes). It explains in more detail the many different citation options.

Many default citation styles like Chicago and APA are built right and it even allows for custom citation/reference styles like the wonderful econ.bst.