Code Monkey home page Code Monkey logo

chandlerlester / unofficial-uoregon-grad-school-dissertation-latex-markdown-apa-format Goto Github PK

View Code? Open in Web Editor NEW

This project forked from unofficial-uoregon-dissertation-formats/unofficial-uoregon-grad-school-dissertation-latex-markdown-apa-format

0.0 1.0 0.0 93 KB

A dissertation LaTeX stylesheet with Markdown support for the University of Oregon using APA format (This repository is not officially associated with the University of Oregon).

License: Other

TeX 62.67% Shell 33.35% R 3.67% Makefile 0.31%

unofficial-uoregon-grad-school-dissertation-latex-markdown-apa-format's Introduction

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 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.

Current Administrator

The current person who administrates this repository is Jacob Levernier, [email protected].

History of this Repository

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 I 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).

Contributing to this Repository

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:

  1. 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).
  2. If you feel comfortable using Git: 1. Make a fork of this repository (from this repository's page on GitHub, click "Fork"). 1. 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). 1. Make a pull request through GitHub (from your copy of the repository in GitHub, click "New Pull Request").
  3. 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.

Using the Files in this Repository

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). I have only tested this in Linux; I'm not sure whether the OSX version of Bash has Perl installed by default (it will need to be if you use the Markdown build script).

If you want to write in raw (La)TeX:

General overview

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):

  1. pdflatex file.tex
  2. bibtex
  3. pdflatex file.tex
  4. pdflatex file.tex
  5. pdflatex file.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:

  1. 0_uothesisapa_preamble.tex
  2. 1_uothesisapa_prefatory_pages.tex
  3. 2_uothesisapa_begin_main_body_of_document.tex
  4. Your dissertation .tex file, with each chapter having a heading that looks like this: \chapter{Chapter name goes here} (e.g., \chapter{Methods})
  5. 5_uothesisapa_bibliography.tex
  6. 6_uothesisapa_end_of_document.tex
Example implementation 1: Build script

The Example_Raw_LaTeX_Build_Script.sh script in this repository provides an example for automating this process. The steps in it generally follow the Markdown_to_LaTeX_PDF_Build_Script.sh script from this repo. starting at line 254; I've pulled out just the TeX-relevant portions of that script.

For further discussion of this example, please see the discussion in Issue #1 in this repository.

Example implementation 2: Makefile

If you have GNU Make and latex tools pdflatex and bibtexinstalled 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.

If you want to write in (R)markdown:

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 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).

Installing the necessary LaTex Packages on your System

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 16.10, e.g., you will need to install texlive-bibtex-extra (for the apacite LaTeX package) and texlive-fonts-extra (for the bbm LaTeX package).

Rendering "Draft" vs. "Final" Versions of your Dissertation

In the file "0_uothesisapa_preamble.tex", you will find a line toward the top like this:

\documentclass[dissertation, copyright, approved, final]{uothesisapa}

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 to draftcopy 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 (in final mode, this can result in an error (the error would say "overfull hbox"), so draftcopy 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]{uothesisapa}).
    • 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]{uothesisapa}).

Explanation of Some Files

The file "3_uothesisapa_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).

The same is true of the file "4_uothesisapa_appendix_examples.tex".

The file "5_uothesisapa_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 "Bibliography.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 "abstract.tex" and "acknowledgements.tex" do something similar.

The files "cover.tex" and "cv.tex" need to be edited by you for your dissertation.

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 file "uothesisapa.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).

Contributors

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 Li (2017)
  • Jacob Levernier (2016)
  • Tyler Matta (2016)
  • Kellie Geldreich (2016, offering formatting advice)

unofficial-uoregon-grad-school-dissertation-latex-markdown-apa-format's People

Contributors

publicus avatar shaomeng avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.