Skip to content

muziejus/novel-maps-of-ny-2017

Repository files navigation

Novel Maps of NY 2017

This is the syllabus for the course “Digital Literary Studies: Novel Maps of NY,” offered in Autumn 2017 at New York University.

This repository is an attempt to use MultiMarkdown to generate both a handsome webpage and a handsome pdf of the syllabus at the same time. This is (not) surprisingly rather tricky. However, this is also a template for future syllabi, and I encourage others to tweak this work.

Structure

The main file in this syllabus is syllabus.mmd. This is a MultiMarkdown file setting all of the metadata and building up the structure of the syllabus. Very little actual text is in this file, as that is all delegated to the files in the folder sections/.

The metadata include calls to three LaTeX files (available in latex-support/), but it also has an html header and html footer set, which provide html-specific text that gets skipped for LaTeX. Most importantly, at the end of html footer, there are a few jQuery commands that go back through the html as it exists and fill in text strings.

Usage

git clone https://github.com/muziejus/novel-maps-of-ny.git
cd novel-maps-of-ny
sh process-mmd.sh
biber syllabus
xelatex syllabus.tex ; xelatex syllabus.tex

The process-mmd.sh script relies on MultiMarkdown. Fletcher Penney describes how to install it on the official site, but for Mac, assuming you have homebrew installed, it’s as easy as:

brew install --HEAD multimarkdown

A new version of mmd is required, because functionality like html footer is a recent addition.

process-mmd.sh processes the syllabus.mmd file with mmd and then adds a little more post-processing to the tex file, like suppressing section numbering and cleaning up MultiMarkdown’s best guess at how to handle slashes. It then runs the new .tex version of the syllabus through xelatex.

xelatex is XeLaTeX. It is installed as part of TeX Live and/or MacTeX. biber is Biber, a replacement for BibTeX that formats the bibliography for the printed version of the document.

The html version

The process script also runs mmd syllabus.mmd, and that creates a file, syllabus.html, which is a self-contained version of the syllabus, styled with Bootstrap. As a result, it has a pleasant, generic look, a functioning navbar, responsive layout, and a spy that updates the navbar based on where you are scrolling. The navbar is built in sections/navbar.html, and it is only transcluded when outputting to html. However, traces of its presence remain when outputting to TeX.

Some html-specific stuff is done in the metadata, but the html version cannot make use of the metadata in the same way the TeX version can. As a result, the navbar and jQuery commands in html footer might need to be edited by hand.

The TeX/pdf version

The pdf version is generated by XeLaTeX, as noted above. XeLaTeX uses the fontspec package to set its fonts. In this repository, the fonts are set explicitly in latex-support/second-header.tex. If you don’t have EB Garamond or DejaVu installed, XeLaTeX will throw a fit. Of course, you could comment out those lines from latex-support/second-header.tex or install the fonts. They are free.

The bibliography is built using a .bib file and Biber. Explaining how to build that is way beyond the scope of this document.

Issues / roadmap

This works exactly as I want it to. Any more messing about will simply go into the post-processing script, possibly including a wrapper script that performs all of the commands.

The Bibliography support can be formalized, but as far as I can tell, there’s no clean way to make an html bibliography out of BibTeX/Biber, so it might get put off for a later time.

Credits

This is a fork of a previous syllabus for a course I taught at NYU, “English 101” in spring 2017.

In order to get the syllabus to sound “NYUish,” I copied (sometimes very heavily) from a syllabus prepared by my colleague at NYU, Jini Watson. She was also helpful in giving me a sense of what kinds of assignments and homework students could expect at this university. Useful info for someone who’s not taught in a US context in over half a decade!

The bravery to create a LaTeX syllabus using the memoir class was fueled by Kieran Healy’s custom LaTeX templates. I’ve greatly simplified his setup, however.

This structure of this GitHub syllabus was once based on Mark Sample's Videogame Studies syllabus, in how it is presented on GitHub.

If you would like to know more about GitHub and syllabi, here are a few ProfHacker articles:

License

Novel Maps of NY 2017 by Moacir P. de Sá Pereira is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/

About

Novel Maps of New York 2017

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published