A package for dissertation writing at the University of Arizona based off the thesisdown R package and the UA Latex dissertation template from drakeasberry/UA_Dissertation_Template.
Strong thanks to the data science commmunity at the University of Arizona. Specifically, shout out to @drakeasberry who has provided ample testing of the package and the base latex template and to @karendelarosa who designed our beautiful hex sticker. We are still open to contributors to tackle the open issues and help maintain the package and the graduate college produces future requirements. Reach out if you'd like to be involved!
Using beardown has some prerequisites which are described below. To compile PDF documents using R, you are going to need to have LaTeX installed. By far the easiest way to install LaTeX on any platform is with the tinytex R package:
install.packages(c('tinytex', 'rmarkdown'))
tinytex::install_tinytex()
# after restarting RStudio, confirm that you have LaTeX with
tinytex:::is_tinytex()
To use beardown from RStudio:
-
Ensure that you have already installed LaTeX and the fonts described above, and are using the latest version of RStudio. You can use
beardown
without RStudio. For example, you can write the Rmd files in your favourite text editor (e.g. Atom, Notepad++). But RStudio is probably the easiest tool for writing both R code and text in your thesis. It also provides a nice way to build your thesis while editing. We'll proceed assuming that you have decided to use the RStudio workflow. -
Install the bookdown and beardown packages. Note that beardown is not available on CRAN which is why
install.packages("beardown")
won't work. Useremotes::install_github()
as shown below instead to install the package.
if (!require("remotes")) install.packages("remotes", repos = "https://cran.rstudio.org")
remotes::install_github("rstudio/bookdown")
remotes::install_github("kelseygonzalez/beardown")
Note that you may need to restart RStudio at this point for the following dialog to show up.
- Use the New R Markdown dialog to select Thesis:
Note that this will currently only Knit if you name the directory index
as shown above. This guarantees that index.html
is generated correctly for the Gitbook version of the thesis.
- After choosing which type of output you'd like in the YAML at the top of index.Rmd, Knit the
index.Rmd
file to get the book in PDF or HTML formats.
You need to edit the individual chapter R Markdown files to write your thesis. It's recommended that you version control your thesis using GitHub if possible. RStudio can also easily sync up with GitHub to make the process easier. While writing, you should git commit
your work frequently, after every major activity on your thesis. For example, every few paragraphs or section of text, and after major step of analysis development. You should git push
at the end of each work session before you leave your computer or change tasks. For a gentle, novice-friendly guide to getting starting with using Git with R and RStudio, see https://happygitwithr.com/.
To render your thesis into a PDF, open index.Rmd
in RStudio and then click the "knit" button. To change the output formats between PDF, gitbook and Word , look at the output:
field in index.Rmd
and comment-out the formats you don't want.
The PDF file of your thesis will be deposited in the _book/
directory, by default.
The following components are ones you should edit to customize your thesis:
This is the main configuration file for your thesis. You can change the name of your outputted file here for your thesis and other options about your thesis here.
This file contains all the meta information that goes at the beginning of your
document. You'll need to edit the top portion of this file (the YAML) to put your name on the first page, the title of your thesis, etc. Note that you need to have at least one chapter start in the index.Rmd
file for the build to work. For the template, this is done with # Introduction
in the example from the template.
These are the Rmd files for each chapter in your dissertation. Write your thesis in these. If you're writing in RStudio, you may find the wordcount addin useful for getting word counts and readability statistics in R Markdown documents.
Store your bibliography (as bibtex files) here. We recommend using the citr addin and Zotero to efficiently manage and insert citations.
Specific style files for bibliographies should be stored here. A good source for citation styles is https://github.com/citation-style-language/styles#readme.
Store your figures and data here and reference them in your R Markdown files. See the bookdown book for details on cross-referencing items using R Markdown.