|
|
|
# Git Presentation
|
|
|
|
|
|
|
|
This is a presentation about Git.
|
|
|
|
|
|
|
|
## Build
|
|
|
|
|
|
|
|
To build it, you will need make, pdflatex and ansi-to-svg and inkscape.
|
|
|
|
|
|
|
|
To build the main pdf, run:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
make main.pdf
|
|
|
|
```
|
|
|
|
|
|
|
|
To build with speaker notes:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
make with-notes.pdf
|
|
|
|
```
|
|
|
|
|
|
|
|
To only build the speaker notes:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
make only-notes.pdf
|
|
|
|
```
|
|
|
|
|
|
|
|
## Auto Images
|
|
|
|
|
|
|
|
The build system will generate certain types of graphics for the presentation as part of the build
|
|
|
|
system. The resultant files will always go in the `auto-images` folder. As a result, this folder is
|
|
|
|
not under version control.
|
|
|
|
|
|
|
|
In latex, all you need to do is
|
|
|
|
|
|
|
|
```latex
|
|
|
|
\includegraphics[<options>]{auto-<type>-<file>}
|
|
|
|
```
|
|
|
|
|
|
|
|
The types are documented below:
|
|
|
|
|
|
|
|
### XKCD
|
|
|
|
|
|
|
|
What is a presentation without an xkcd comic?
|
|
|
|
|
|
|
|
```latex
|
|
|
|
\includegraphics[<options>]{auto-xkcd-<id>.png}
|
|
|
|
```
|
|
|
|
|
|
|
|
If the above is included in the latex document, the XKCD comic with the specified ID will be
|
|
|
|
downloaded and embedded in the pdf.
|
|
|
|
|
|
|
|
### Shell Output
|
|
|
|
|
|
|
|
I am still not aware of aware of a reliable way to include ansi coloured shell output into a latex
|
|
|
|
document. I also don't want to include loads of high-res screenshots in my Git repo.
|
|
|
|
|
|
|
|
The work around I have come up with is to save the raw ansi output to a wile in `shell-output`. This
|
|
|
|
normally involves forcing an application to output in colour:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
git -c color.status=always status > shell-output/git-status.out
|
|
|
|
```
|
|
|
|
|
|
|
|
```latex
|
|
|
|
\includegraphics[<options>]{auto-shell-<filename>.pdf}
|
|
|
|
%E.g.
|
|
|
|
\includegraphics[<options>]{auto-shell-git-status.pdf}
|
|
|
|
```
|
|
|
|
|
|
|
|
The build system will convert the ansi output into an embeddable PDF that LaTeX will embed.
|
|
|
|
|
|
|
|
### Online images
|
|
|
|
|
|
|
|
In order to download an image from the internet and embed it in the presentation, you need do
|
|
|
|
provide the extension and the base64 encoded URL.
|
|
|
|
|
|
|
|
```latex
|
|
|
|
\includegraphics[<options>]{auto-download-<base64 encodede url>.png}
|
|
|
|
```
|
|
|
|
|
|
|
|
|