Unofficial Dissertation Stylesheet for Markdown + LaTeX using APA Format for the University of Oregon
This repository contains template files and sample text for rendering a dissertation using APA format (by default, others supported) and conforming to the University of Oregon's Graduate School's fomatting requirements.
This repository is not officially associated with the University of Oregon. It is currently graduate-student run.
The current person who administrates this repository is Sam Pollard, (email: sam dot d dot pollard at gmail dot com)
As of June 2021, this has all the correct prefatory pages and administrative jargon that the graduate school needs. However, Summer 2022 and beyond, there is a new style guide. Most things are compatible but if there are changes, please let me know!
In 2014 or before, the Graduate School, apparently in consultation with CMET, officially supported a LaTeX stylesheet for theses and dissertations. In 2016, however, the Graduate School ended its dedicated position for a thesis and dissertation editor, and with it, it seems, official support for LaTeX (technical support can go through CMET, but there's no official expectation of tech. support).
In 2016, Tyler Matta updated the existing Grad School stylesheet to comply with APA format, and generously passed it on to several other graduate students in Psychology. Since then, I've made additional formatting corrections, and have also added support for writing using Markdown (including RMarkdown).
Given the amount of work that Tyler and then Jacob Levernier had to put in to get the dissertation formatted correctly for the Grad School, I've created this repository. I envision it being grad-student run, though CMET or the Grad School may ask to administrate it at some point. Contributions are welcome (see below).
I've made this repository public so that changes that future grad students are required to make can be saved in one place and thus made more accessible to everyone.
We also welcome contributions to this Readme -- if there are things that you had to work a lot to understand (for example, how to even run the build script in the first place), write up and contribute an explanation! Pay it forward : )
If you use these files and are asked to make changes by the Grad. School, and are willing to contribute them back, please follow these steps:
- Only contribute formatting or other large-scale changes, rather than changes in content. "Formatting" changes include things like indentation, bibliography formatting, etc. They do not include things like changing the license text on your Copyright page or replacing the example text in the Markdown files with text from your own dissertation (changes like those are less useful to share, because almost everyone will make small content adjustments for their own dissertations).
- If you feel comfortable using Git:
- Make a fork of this repository (from this repository's page on GitHub, click "Fork").
- Create a single commit that contains all of the changes that you would like to share (either by "squashing" your commits (see here, for example), or by just copying your altered files into a fresh copy of this repository).
- Make a pull request through GitHub (from your copy of the repository in GitHub, click "New Pull Request").
- If you do not feel comfortable using Git: Send an email to the person who's currently running this repository (see above); we'll work together to get your changes incorporated, with gratitude for you being willing to share them.
All .sh
files in this repository are expected to be run in a Bash shell (i.e., the "Terminal" in Linux or Mac OSX (or Cygwin or Bash for Windows on Windows). This has been tested in Linux and MacOS Big Sur (11.6).
Currently, markdown conversions are not supported (that is, the files Run_Tests_to_Make_Sure_that_Everything_Builds.sh
and those in markdown_draft_examples
currently don't work).
You can ignore the Markdown files and build script, and just use the .tex and .cls files directly, using the normal pdflatex build process (if you're doing everything fully manually / not using a tool like RStudio):
pdflatex main.tex
bibtex
pdflatex main.tex
pdflatex main.tex
pdflatex main.tex
(This is one run more than normal, but seems to be necessary to get page numbers to render correctly -- without it, page numbers were off by one for me)
In this case, pdflatex
should be run on a .tex
file that is a combined version of all of the .tex
files in this repo. and your dissertation's .tex
files, in this order:
0_uothesis_preamble.tex
1_uothesis_prefatory_pages.tex
2_uothesis_begin_main_body_of_document.tex
- Your dissertation
.tex
file, with each chapter having a heading that looks like this:\chapter{Chapter name goes here}
(e.g.,\chapter{Methods}
) 5_uothesis_bibliography.tex
6_uothesis_end_of_document.tex
Using the provided Makefile, or simply compiling with main.tex
is sufficient for LaTeX, since each of the requisite files are input into the main one.
If you have GNU Make
and latex tools pdflatex
and bibtex
installed on your computer, you can cd
(i.e., go into) the latex_files
directory of this repository, and type make
to generate a pdf file named "main.pdf." Alternatively, make short
skips the step of re-generating the bibliography database and compiling the PDF file for multiple times. make clean
cleans every intermediate file.
In general, I recommend searching the .tex and .cls files for lines that begin with \usepackage
, and then making sure that those packages are installed.
If you are running Ubuntu e.g., you will need to install texlive-bibtex-extra
(for the apacite
LaTeX package) and texlive-fonts-extra
(for the bbm
LaTeX package).
If you use Macports, we recommend port install texlive-latex-full
, which is every package. It may work if you just do port install texlive-latex-recommended texlive-bibtex-extra texlive-fonts-extra
. If you use Homebrew or no command line package manager, try MacTex.
On windows: MikTex is the most stable LaTeX build system we've found.
In the file 0_uothesis_preamble.tex
, you will find a line toward the top like this:
\documentclass[dissertation, copyright, approved, final]{uothesis}
This line controls how the dissertation is rendered. It has several options:
- You can remove
approved
to remove the page in the rendered PDF that states that the Committee and Grad School have approved the dissertation. - You can change
final
todraftcopy
to get a copy that has line numbers and that does not contain the prefatory pages (this is useful to give to Committee members, especially in early drafts, for getting comments, since they can refer to the page and line numbers).draftcopy
mode not only enables line numbering, but also puts black bars where there is text that overflows a line where latex can't figure out how to break it onto another line (infinal
mode, this can result in an error (the error would say "overfull hbox"), sodraftcopy
mode is a good way of spotting these).
- If you are rendering a Masters thesis, you can use
\documentclass[msthesis]
, along with the other options listed above (e.g.,\documentclass[msthesis, approved, final]{uothesis}
).- If your Masters thesis does not include a Committee, you can add
lackscommittee
to the list of options (e.g.,\documentclass[msthesis, lackscommittee, approved, final]{uothesis}
).
- If your Masters thesis does not include a Committee, you can add
The file 3_uothesis_chapter_template.tex
is an example bare-bones TeX template to help you test your system. It's not necessary for rendering an actual dissertation, except that it shows how chapters are started (with a \chapter{Chapter Name}
line). If you want to add more chapers, you can either add directly to this file, or make a new file (it doesn't have to start with a 3_
, and include it in main.tex
.
The same is true of the file 4_uothesis_appendix_examples.tex
.
The file 5_uothesis_bibliography.tex
lists all BibTeX (.bib) files that contain the citation information for your References Cited page. \bibliography{Bibliography_File}
, for example, means "Look in the same folder as this file for Bibliography_File.bib
." Programs such as Zotero and Mendeley can export citations in .bib format for you (I especially recommend using Zotero with the free Better Bib(La)TeX plugin, linked from here). The files in this repository are currently set up to look for a file called "main.bib" (an example file is included).
The file "appendices.tex" currently looks for an external file (for my dissertation, it was called R_Package_Version_Numbers_AUTOMATICALLY_GENERATED_DO_NOT_EDIT_MANUALLY.md.tex
and adds it as an appendix if it is found.
The files "cover.tex" and "cv.tex" need to be edited by you for your dissertation.
The file "uothesis.cls" is the main LaTeX style sheet for the dissertation. It has one section that you might wish to edit: the Copyright page. Search the file for "All rights reserved." and replace that text if you'd like to use a different license (for example, a Creative Commons license).
NOTE: This is currently not working after general bitrot and Samuel Pollard's 2021 overhaul which simplified the building of bare LaTeX at the expense of breaking Markdown-based generators.
I've included example Markdown sections from my own dissertation (which is free to adapt under a CC-BY license), as well as a build script that takes the Markdown, turns it into TeX using Pandoc, and then compiles a PDF using LaTeX.
You will need to have perl, pandoc, and pandoc-citeproc installed for converting the Markdown text into TeX. See also the note above about the shell/terminal itself in which to run the build script.
You can replace the example Markdown text with Pandoc-style Markdown (see, e.g., here (search for "Citation Syntax") for how to automatically render citations using Pandoc-style Markdown).
The file Markdown_to_LaTeX_PDF_Build_Script.sh
has a "Settings" section at the top, where you can change its settings. This is also the case for the scripts in the optional_additional_files
directory, Get_All_R_Library_Version_Numbers_and_Create_Draft_From_Them.sh
and Get_All_R_Library_Version_Numbers_and_Create_Draft_From_Them_R_Script_Portion.R
.
The following people have contributed to this repository. Please pay their work forward by contributing any changes you're asked to make to your own dissertation by the Grad School!
- Samuel Pollard (2021)
- Samuel Li (2017)
- Jacob Levernier (2016)
- Tyler Matta (2016)
- Kellie Geldreich (2016, offering formatting advice)