crêpe docs
systems programming in c++ minor project documentation
Please see style.md for writing style and contributing.md for coding and git standards. There is also an example document which may be used to copy/paste LaTeX snippets for specific formatting.
Compilation
Prerequisites:
- A LaTeX distribution that includes XeLaTeX and latexmk
- PlantUML (1.2024.7 or later!)
- Python 3
- Fonts (see see style.md for download links)
All documents are compiled using latexmk, and this repository contains additional configuration files for the following editors:
- Visual Studio Code + LaTeX Workshop
- (Neo)Vim + VimTeX
(source .vimrcto fix custom verb command highlighting)
Special files
- time.txtcontains tracked time for each team member. This file is automatically converted using time2tex when compiling timerep.tex.
- reqs.tomlcontains the project requirements. This file is converted using reqs2tex for requirements.tex and also generates an- .auxfile for cross-referencing the requirements from other documents.
- sources.bibcontains all bibliography entries / references
- glossary.bibcontains all glossary entries
PlantUML
To check if your PlantUML version is recent enough, run:
$ plantuml -versionTo upgrade PlantUML manually, download the latest (GPL) .jar from here, and overwrite the .jar file installed by your package manager:
$ curl -sLo- https://github.com/plantuml/plantuml/releases/download/v1.2024.7/plantuml-1.2024.7.jar > plantuml.jar
# mv plantuml.jar /usr/share/plantuml/plantuml.jar[!NOTE] Ubuntu, Debian and Mint all place PlantUML's .jar file under
/usr/share/plantuml/plantuml.jar, while it's under/usr/share/java/plantuml/plantuml.jaron Arch. Check the contents of the file returned bycommand -v plantumlto confirm this.