Skip to content



Repository files navigation

Sophisticated LaTeX Paper Template

Build Status Build Status

Executive Summary

Open to download a generated LaTeX template.


During their studies most PhD students will be faced to the situation to write a paper or other publications. Fortunately, one can find many hints, tipps, and checklist on the Internet.

This project aims to provide a template that includes the above mentioned instructions and is basically following the article Tipps zum Schreiben von Konferenzpapieren.

Core Features

  • PDF support: hyperlinks, ToC, annotations, native and XMP meta-data
  • Language support: UTF8 encoding, support for CJK and German
  • Integration: graphviz, gnuplot, R, aspell
  • Validation: orthography (incl. project dictionary), hyphens, commas, references, todos, best practices, l2tabu, latex/bibtex warnings
  • Media: examples for images, multiple images, equations, tables, algorithms
  • Bibliography: multiple files, link to the source page, show unreferenced items
  • Other: side notes, line numbering, support
  • Build system:
    • clean : Delete temporary files
    • all : Create the PDF file (run everything needed)
    • full : Create the PDF file (run LaTeX and BibTeX only)
    • quicker : Update the PDF file (just run LaTeX twice)
    • quick : Update the PDF file (just run LaTeX once)
    • bib : Update the bib file (just run BibTeX/biber once)
    • bibchk : Run some checks (e.g. biber, bibtex-check)
    • verify : Run some checks (e.g. l2tabu)
    • spell : Check for spelling errors (aspell)
    • eval : Run evaluation scripts (e.g. R)
    • generate : Generate images (gnuplot, R, dot/graphviz, ...)
    • deploy : Deploy the PDF file to a directory (e.g. for automated builds)
    • update : Get the latest sources (incl. latest library)
    • open : Opens the output file using 'open'
    • ci : Continuous Integration - watch for changes an rebuild everything
    • rename : Rename project
    • unicode : Find incompatible unicode characters
    • optimize : Optimize output (e.g. optipng)
    • sign : Sign the PDF using an X.509 certificate
    • preflight : Test for PDF/A and PDF/X compatibility
    • fix : Give some hints on how to fix the current setup
    • todo : Find open todos
    • debug : Compile and stop on error and show line number
    • updating : Keep updating in the background to avoid conflicts
    • ieee : Enable IEEE Transaction style
    • llncs : Enable LLNCS style
    • content : Answer basic questions to bootstrap your paper
    • count : Count number of words, figures, tables, captions, ...



# Installs all TexLive packages and tools (aspell graphviz gnuplot r-base plantuml)
make deps-lin


Full installation (5.5 GB)

# Installs complete TexLive and tools (aspell graphviz gnuplot r-base plantuml)
make deps-mac

Minimal installation (400 MB)

brew cask install basictex
tlmgr install texliveonfly biber collection-fontsrecommended IEEEtran xindy
make deps

Getting Started

  • Work with the paper
git clone --recursive git:// && cd Paper && make
  • Create a new paper
make rename
make clean full
make open
  • Create a new paper manually
pdflatex template && pdflatex template && biber template && pdflatex template && pdflatex template
  • Create a paper at
    • Create new ZIP file: git clone --recursive git:// && zip -r Paper/
    • Open Overleaf and upload
    • Open project and define template.tex as main file (should work)
    • Clone project via git
    • Run chmod +x && make debug && make clean full open (should work)


Feel free to fork, push enhancements and create error reports and feature requests.


I've an issue generating the bibliography

  • Symptom: read_file '/var/XXX/cache-XXX/inc/lib/Biber/LaTeX/recode_data.xml' - sysopen: No such file or directory at /var/XXX/cache-XXX/ line 112.
  • Cause: Weird biber bug
  • Solution: Run rm -rf $(biber --cache)

I've an issue with the make command or compiling not finding a file

  • Symptom: An error similar to: File 'lib/resources/XXX' not found
  • Cause: You forgot to checkout the repository with the --recursive option. E.g. you downloaded the ZIP file.
  • Solution: Checkout the repository as stated in the command above. Or run make once without any parameters. Or run @git submodule update --init --recursive. Or run git clone lib.



No releases published


No packages published


  • TeX 91.7%
  • Shell 3.2%
  • Gnuplot 2.5%
  • Makefile 1.4%
  • Roff 0.8%
  • R 0.2%
  • Java 0.2%