## Useful LaTeX Tools

LaTeX is a great typeset software in writing academic papers.

Here I give out some useful tools bundled with LaTex (details can be found via `man` in Linux/Unix systems).

### `latexmk` – generate LaTeX document

`latexmk -c` Clean up (remove) all regeneratable files generated by latex and bibtex or biber except dvi, postscript and pdf.

### `latexdiff` – determine and markup differences between two latex files

A typical usage of `latexdiff` is
`latexdiff old.tex new.tex > diff.tex`
Before running the command, do not forget to run `bibtex` to generate bbl files if you use bibtex. If you have multiple files with main.tex files, you can run the following command,
`latexdiff --append-safecmd=subfile v1/main.tex v2/main.tex --flatten > diff.tex`
Finally, you can typeset `diff.tex` and see the differences. This functionality is extremely useful if you work with others.