Slide 1

Slide 1 text

The LaTeX Template Generator Dr. Oliver Kopp JabRef Maintainer https://github.com/koppor/

Slide 2

Slide 2 text

2 About Me  LaTeX since beginning of 2000  JabRef developer since 2011  Maintainer of JabRef  Maintainer of LaTeX templates

Slide 3

Slide 3 text

3 Scientific Thesis Template http://latextemplates.github.io/scientific-thesis-template/

Slide 4

Slide 4 text

4 LNCS Template https://latextemplates.github.io/LNCS/

Slide 5

Slide 5 text

5 IEEE https://latextemplates.github.io/IEEE/

Slide 6

Slide 6 text

6 University of Stuttgart Dissertation Template

Slide 7

Slide 7 text

7 University of Applied Sciences Esslingen

Slide 8

Slide 8 text

8 Template Confusion https://github.com/johannesbottcher/templateConfusion

Slide 9

Slide 9 text

9 Creative CV Template

Slide 10

Slide 10 text

10 What about minimal working examples for each package?

Slide 11

Slide 11 text

11 Proposed Solution

Slide 12

Slide 12 text

12 Roles and Artifacts of Proposed Solution microtype hyperref cmap selnolig babel hypcap LNCS IEEE Master Thesis Dissertation main.tex README.md .latexmkrc .gitignore package expert tooling expert template expert content expert latexmk

Slide 13

Slide 13 text

14 User Experience

Slide 14

Slide 14 text

15 Installation  Install NodeJS  Windows with Chocolatey: choco install nodejs  npm install -g yo generator-latex-template

Slide 15

Slide 15 text

16 User experience: Start generator

Slide 16

Slide 16 text

17 User experience: Choice of LaTeX Compiler

Slide 17

Slide 17 text

18 User experience: Choice of BibTeX tool

Slide 18

Slide 18 text

19 User experience: Document language

Slide 19

Slide 19 text

20 User experience: Use Cleveref?

Slide 20

Slide 20 text

21 User experience: File generation

Slide 21

Slide 21 text

22 LaTeX Compilation

Slide 22

Slide 22 text

23 Implementation How to Contriute?

Slide 23

Slide 23 text

24 Technical Details: Use Yeoman As Template Generator Context and Problem Statement We want to generate the template automatically Considered Options  Yeoman - proposed by @miwurster. Currently in use in different projects  Andi-Lo/generator-latex  LeoColomb/generator-latex  Jinja2 - recommended by @mfa, also because of http://eosrei.net/articles/2015/11/latex-templates-python-and-jinja2-generate-pdfs  Cheetah - recommended at tex.stackexchange.com/q/41875/9075  Apache Velocity - recommended by http://tex-talk.net/2012/03/generating-latex-code- with-a-template-engine  lualatex - recommended by @Stefan-Kottwitz at http://tex- talk.net/2012/03/generating-latex-code-with-a-template-engine/#comment-231 Decision Outcome Chosen option: “Yeoman”, because it seems to be the most easy to use generator.

Slide 24

Slide 24 text

25 Templates for README.md README.en.md README.de.md Template syntax: https://ejs.co/

Slide 25

Slide 25 text

26 Template for main.tex

Slide 26

Slide 26 text

27 Template: cleveref.en.preamble.tex

Slide 27

Slide 27 text

28 Template: figure.en.example.tex

Slide 28

Slide 28 text

29 Questions: Listed in index.js

Slide 29

Slide 29 text

30 Result: main.tex

Slide 30

Slide 30 text

31 Summary and Outlook

Slide 31

Slide 31 text

32 Roles and Artifacts of Proposed Solution microtype hyperref cmap selnolig babel hypcap LNCS IEEE Master Thesis Dissertation main.tex README.md .latexmkrc .gitignore package expert tooling expert template expert content expert latexmk

Slide 32

Slide 32 text

33 Summary and Outlook https://github.com/latextemplates/generator-latex-template | https://github.com/koppor/

Slide 33

Slide 33 text

34 Summary and Outlook https://github.com/latextemplates/generator-latex-template | https://github.com/koppor/ • First MVP • Release on npm • Support • LNCS • IEEE • LNI • Dissertation • Scientific Thesis Template