Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time


Slides for an introductory course on LaTeX. The slides and their LaTeX source code are provided in this github repository under a permissive MIT license.

The aim is to get students writing in LaTeX as quickly as possible. The material is presented as a set of examples, and broader concepts and techniques are explained as they arise. Each part includes exercises that can be completed on Overleaf, the free online LaTeX editor, so you don't have to worry about getting LaTeX and related tools installed on everyone's computers.

These slides were originally used to deliver two two-hour workshops, but there is probably enough material for three workshops, so there are three parts:

  1. The Basics: ideas, syntax, equations, environments, packages

  2. Structed Documents & More: titles, sections, cross-references, figures, tables, bibliographies.

  3. Not Just Papers: Presentations & More: recap exercise, presentations with beamer, drawings with tikz.

Feel free to use however you like --- contributions welcome!


Translations in this repo:

  • fr French (thanks to Yannis Haralambous)

Translations available outside of this repository:

If you translate these slides, please feel free to open a pull request to either add a link or add your files in a subfolder --- whichever you prefer.


You may need to install some extra LaTeX packages and system packages in order to build the slides yourself.

  1. The minted package provides syntax highlighting. It is installed by default in recent versions of TeX Live.

  2. The minted package calls out to the pygments syntax highlighter, which is written in python. The relevant package is python-pygments in Debian / Ubuntu (sudo apt-get install python-pygments).

  3. There is a simple Makefile that manages the build. To use it, you'll probably need to be on Linux, and you will need make.

The slides include links to exercises that open in Overleaf. The exercise source files are hosted on github. If you want to use exercise files in another location, you can fork this github repository and then change the \fileuri macro in preamble.tex:


so that instead of pointing to jdleesmiller/latex-course, it points to your-github-user-name/latex-course. Then, once you've pushed your changed exercise files to github, the slides will load them up in Overleaf.

The script builds the slides using the Makefile and copies the slides over to the gh-pages branch, which is available at thanks to github pages.


The slides and source are released under the MIT license. See the LICENSE file.


  • Emily G -- clarify summation bound in exercise 2
  • Diana A -- found that exercise links had broken
  • Sana A -- pointed out an error in part 1
  • Andy Roberts -- an earlier version of this course used an image from one of his articles
  • Ruby Trinh -- for organising the original short courses