generator-latex-template 0.2.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.md +24 -9
  2. package/generators/app/index.js +198 -106
  3. package/generators/app/templates/Dockerfile.dante +9 -0
  4. package/generators/app/templates/Dockerfile.reitzig +35 -0
  5. package/generators/app/templates/Makefile +0 -13
  6. package/generators/app/templates/README.en.md +68 -27
  7. package/generators/app/templates/Texlivefile +128 -0
  8. package/generators/app/templates/acronyms.de.tex +6 -0
  9. package/generators/app/templates/acronyms.en.tex +5 -0
  10. package/generators/app/templates/acronyms.example.de.tex +24 -0
  11. package/generators/app/templates/acronyms.example.en.tex +24 -0
  12. package/generators/app/templates/acronyms.preamble.en.tex +15 -0
  13. package/generators/app/templates/biblatex.preamble.de.tex +9 -0
  14. package/generators/app/templates/biblatex.preamble.en.tex +61 -0
  15. package/generators/app/templates/bibliography.bib +11 -0
  16. package/generators/app/templates/cleveref.example.en.tex +1 -1
  17. package/generators/app/templates/diagbox.example.en.tex +1 -1
  18. package/generators/app/templates/dot.dockerignore +429 -0
  19. package/generators/app/templates/figure.example.en.tex +5 -5
  20. package/generators/app/templates/font.preamble.en.tex +9 -6
  21. package/generators/app/templates/{dot.latexmkrc → latexmkrc} +11 -9
  22. package/generators/app/templates/main.de.tex +135 -11
  23. package/generators/app/templates/main.en.tex +244 -87
  24. package/generators/app/templates/microtype.preamble.en.tex +5 -0
  25. package/generators/app/templates/mindflow.example.en.tex +9 -0
  26. package/generators/app/templates/mindflow.preamble.en.tex +5 -0
  27. package/generators/app/templates/natbib.preamble.en.tex +1 -1
  28. package/generators/app/templates/scientific-thesis-cover.preamble.de.tex +12 -0
  29. package/generators/app/templates/scientific-thesis-cover.preamble.en.tex +12 -0
  30. package/generators/app/templates/siunitx.preamble.en.tex +0 -5
  31. package/generators/app/templates/subfloat.example.en.tex +4 -4
  32. package/generators/app/templates/url.preamble.en.tex +2 -0
  33. package/package.json +12 -12
  34. package/CHANGELOG.md +0 -58
  35. package/generators/app/templates/bibliography.bib.bak +0 -37
  36. package/generators/app/templates/main.de.pdf +0 -0
  37. package/generators/app/templates/main.de.synctex.gz +0 -0
  38. package/generators/app/templates/main.en.aux +0 -3
  39. package/generators/app/templates/main.en.fdb_latexmk +0 -38
  40. package/generators/app/templates/main.en.fls +0 -52
  41. package/generators/app/templates/main.en.log +0 -251
  42. package/generators/app/templates/main.en.pdf +0 -0
  43. package/generators/app/templates/main.en.synctex.gz +0 -0
@@ -0,0 +1,429 @@
1
+ Dockerfile
2
+
3
+ main.pdf
4
+ main-*.pdf
5
+ graphics/*.pdf_tex
6
+ democode.tex
7
+
8
+ # plantuml
9
+ *-plantuml.latex
10
+ *-plantuml.txt
11
+
12
+ # latexindent
13
+ *.bak
14
+ *.bak?
15
+ *.bak??
16
+
17
+ # tex4ht
18
+ *.4ct
19
+ *.4tc
20
+
21
+ # configured in packages_and_options.tex
22
+ *.code
23
+
24
+ # IntelliJ
25
+ .idea/
26
+
27
+
28
+
29
+
30
+ # Created by https://www.gitignore.io/api/code,latex,linux,emacs,jabref,windows,libreoffice,microsoftoffice
31
+ # Edit at https://www.gitignore.io/?templates=code,latex,linux,emacs,jabref,windows,libreoffice,microsoftoffice
32
+
33
+ ### Code ###
34
+ .vscode/*
35
+ !.vscode/settings.json
36
+ !.vscode/tasks.json
37
+ !.vscode/launch.json
38
+ !.vscode/extensions.json
39
+
40
+ ### Emacs ###
41
+ # -*- mode: gitignore; -*-
42
+ *~
43
+ \#*\#
44
+ /.emacs.desktop
45
+ /.emacs.desktop.lock
46
+ *.elc
47
+ auto-save-list
48
+ tramp
49
+ .\#*
50
+
51
+ # Org-mode
52
+ .org-id-locations
53
+ *_archive
54
+
55
+ # flymake-mode
56
+ *_flymake.*
57
+
58
+ # eshell files
59
+ /eshell/history
60
+ /eshell/lastdir
61
+
62
+ # elpa packages
63
+ /elpa/
64
+
65
+ # reftex files
66
+ *.rel
67
+
68
+ # AUCTeX auto folder
69
+ /auto/
70
+
71
+ # cask packages
72
+ .cask/
73
+ dist/
74
+
75
+ # Flycheck
76
+ flycheck_*.el
77
+
78
+ # server auth directory
79
+ /server/
80
+
81
+ # projectiles files
82
+ .projectile
83
+
84
+ # directory configuration
85
+ .dir-locals.el
86
+
87
+ # network security
88
+ /network-security.data
89
+
90
+
91
+ ### JabRef ###
92
+ # JabRef - https://www.jabref.org/
93
+ *.bak
94
+ *.sav
95
+
96
+ ### LaTeX ###
97
+ ## Core latex/pdflatex auxiliary files:
98
+ *.aux
99
+ *.lof
100
+ *.log
101
+ *.lot
102
+ *.fls
103
+ *.out
104
+ *.toc
105
+ *.fmt
106
+ *.fot
107
+ *.cb
108
+ *.cb2
109
+ .*.lb
110
+
111
+ ## Intermediate documents:
112
+ *.dvi
113
+ *.xdv
114
+ *-converted-to.*
115
+ # these rules might exclude image files for figures etc.
116
+ # *.ps
117
+ # *.eps
118
+ # *.pdf
119
+
120
+ ## Generated if empty string is given at "Please type another file name for output:"
121
+ .pdf
122
+
123
+ ## Bibliography auxiliary files (bibtex/biblatex/biber):
124
+ *.bbl
125
+ *.bcf
126
+ *.blg
127
+ *-blx.aux
128
+ *-blx.bib
129
+ *.run.xml
130
+
131
+ ## Build tool auxiliary files:
132
+ *.fdb_latexmk
133
+ *.synctex
134
+ *.synctex(busy)
135
+ *.synctex.gz
136
+ *.synctex.gz(busy)
137
+ *.pdfsync
138
+
139
+ ## Build tool directories for auxiliary files
140
+ # latexrun
141
+ latex.out/
142
+
143
+ ## Auxiliary and intermediate files from other packages:
144
+ # algorithms
145
+ *.alg
146
+ *.loa
147
+
148
+ # achemso
149
+ acs-*.bib
150
+
151
+ # amsthm
152
+ *.thm
153
+
154
+ # beamer
155
+ *.nav
156
+ *.pre
157
+ *.snm
158
+ *.vrb
159
+
160
+ # changes
161
+ *.soc
162
+
163
+ # comment
164
+ *.cut
165
+
166
+ # cprotect
167
+ *.cpt
168
+
169
+ # elsarticle (documentclass of Elsevier journals)
170
+ *.spl
171
+
172
+ # endnotes
173
+ *.ent
174
+
175
+ # fixme
176
+ *.lox
177
+
178
+ # feynmf/feynmp
179
+ *.mf
180
+ *.mp
181
+ *.t[1-9]
182
+ *.t[1-9][0-9]
183
+ *.tfm
184
+
185
+ #(r)(e)ledmac/(r)(e)ledpar
186
+ *.end
187
+ *.?end
188
+ *.[1-9]
189
+ *.[1-9][0-9]
190
+ *.[1-9][0-9][0-9]
191
+ *.[1-9]R
192
+ *.[1-9][0-9]R
193
+ *.[1-9][0-9][0-9]R
194
+ *.eledsec[1-9]
195
+ *.eledsec[1-9]R
196
+ *.eledsec[1-9][0-9]
197
+ *.eledsec[1-9][0-9]R
198
+ *.eledsec[1-9][0-9][0-9]
199
+ *.eledsec[1-9][0-9][0-9]R
200
+
201
+ # glossaries
202
+ *.acn
203
+ *.acr
204
+ *.glg
205
+ *.glo
206
+ *.gls
207
+ *.glsdefs
208
+
209
+ # uncomment this for glossaries-extra (will ignore makeindex's style files!)
210
+ # *.ist
211
+
212
+ # gnuplottex
213
+ *-gnuplottex-*
214
+
215
+ # gregoriotex
216
+ *.gaux
217
+ *.gtex
218
+
219
+ # htlatex
220
+ *.4ct
221
+ *.4tc
222
+ *.idv
223
+ *.lg
224
+ *.trc
225
+ *.xref
226
+
227
+ # hyperref
228
+ *.brf
229
+
230
+ # knitr
231
+ *-concordance.tex
232
+ # TODO Comment the next line if you want to keep your tikz graphics files
233
+ *.tikz
234
+ *-tikzDictionary
235
+
236
+ # listings
237
+ *.lol
238
+
239
+ # luatexja-ruby
240
+ *.ltjruby
241
+
242
+ # makeidx
243
+ *.idx
244
+ *.ilg
245
+ *.ind
246
+
247
+ # minitoc
248
+ *.maf
249
+ *.mlf
250
+ *.mlt
251
+ *.mtc[0-9]*
252
+ *.slf[0-9]*
253
+ *.slt[0-9]*
254
+ *.stc[0-9]*
255
+
256
+ # minted
257
+ _minted*
258
+ *.pyg
259
+
260
+ # morewrites
261
+ *.mw
262
+
263
+ # nomencl
264
+ *.nlg
265
+ *.nlo
266
+ *.nls
267
+
268
+ # pax
269
+ *.pax
270
+
271
+ # pdfpcnotes
272
+ *.pdfpc
273
+
274
+ # sagetex
275
+ *.sagetex.sage
276
+ *.sagetex.py
277
+ *.sagetex.scmd
278
+
279
+ # scrwfile
280
+ *.wrt
281
+
282
+ # sympy
283
+ *.sout
284
+ *.sympy
285
+ sympy-plots-for-*.tex/
286
+
287
+ # pdfcomment
288
+ *.upa
289
+ *.upb
290
+
291
+ # pythontex
292
+ *.pytxcode
293
+ pythontex-files-*/
294
+
295
+ # tcolorbox
296
+ *.listing
297
+
298
+ # thmtools
299
+ *.loe
300
+
301
+ # TikZ & PGF
302
+ *.dpth
303
+ *.md5
304
+ *.auxlock
305
+
306
+ # todonotes
307
+ *.tdo
308
+
309
+ # vhistory
310
+ *.hst
311
+ *.ver
312
+
313
+ # easy-todo
314
+ *.lod
315
+
316
+ # xcolor
317
+ *.xcp
318
+
319
+ # xmpincl
320
+ *.xmpi
321
+
322
+ # xindy
323
+ *.xdy
324
+
325
+ # xypic precompiled matrices
326
+ *.xyc
327
+
328
+ # endfloat
329
+ *.ttt
330
+ *.fff
331
+
332
+ # Latexian
333
+ TSWLatexianTemp*
334
+
335
+ ## Editors:
336
+ # WinEdt
337
+
338
+ # Texpad
339
+ .texpadtmp
340
+
341
+ # LyX
342
+ *.lyx~
343
+
344
+ # Kile
345
+ *.backup
346
+
347
+ # KBibTeX
348
+ *~[0-9]*
349
+
350
+ # auto folder when using emacs and auctex
351
+ ./auto/*
352
+ *.el
353
+
354
+ # expex forward references with \gathertags
355
+ *-tags.tex
356
+
357
+ # standalone packages
358
+ *.sta
359
+
360
+ ### LaTeX Patch ###
361
+ # glossaries
362
+ *.glstex
363
+
364
+ ### LibreOffice ###
365
+ # LibreOffice locks
366
+ .~lock.*#
367
+
368
+ ### Linux ###
369
+
370
+ # temporary files which can be created if a process still has a handle open of a deleted file
371
+ .fuse_hidden*
372
+
373
+ # KDE directory preferences
374
+ .directory
375
+
376
+ # Linux trash folder which might appear on any partition or disk
377
+ .Trash-*
378
+
379
+ # .nfs files are created when an open file is removed but is still being accessed
380
+ .nfs*
381
+
382
+ ### MicrosoftOffice ###
383
+ *.tmp
384
+
385
+ # Word temporary
386
+ ~$*.doc*
387
+
388
+ # Word Auto Backup File
389
+ Backup of *.doc*
390
+
391
+ # Excel temporary
392
+ ~$*.xls*
393
+
394
+ # Excel Backup File
395
+ *.xlk
396
+
397
+ # PowerPoint temporary
398
+ ~$*.ppt*
399
+
400
+ # Visio autosave temporary files
401
+ *.~vsd*
402
+
403
+ ### Windows ###
404
+ # Windows thumbnail cache files
405
+ Thumbs.db
406
+ Thumbs.db:encryptable
407
+ ehthumbs.db
408
+ ehthumbs_vista.db
409
+
410
+ # Dump file
411
+ *.stackdump
412
+
413
+ # Folder config file
414
+ [Dd]esktop.ini
415
+
416
+ # Recycle Bin used on file shares
417
+ $RECYCLE.BIN/
418
+
419
+ # Windows Installer files
420
+ *.cab
421
+ *.msi
422
+ *.msix
423
+ *.msm
424
+ *.msp
425
+
426
+ # Windows shortcuts
427
+ *.lnk
428
+
429
+ # End of https://www.gitignore.io/api/code,latex,linux,emacs,jabref,windows,libreoffice,microsoftoffice
@@ -9,23 +9,23 @@ Figure~\ref{fig:label} shows something interesting.
9
9
 
10
10
  \begin{figure}
11
11
  \centering
12
- \includegraphics[width=.8\columnwidth]{example-image-golden}
12
+ \includegraphics[width=.8\linewidth]{example-image-golden}
13
13
  \caption[Simple Figure]{Simple Figure. Based on <% if (available.citet) { %>\citet<% } else { %>Scharrer~\cite<% } %>{mwe}.}
14
14
  \label{fig:label}
15
15
  \end{figure}
16
16
  <%- eexample %>
17
17
  <%- include('floatflt.example.en.tex', this); %>
18
-
19
18
  <% if (documentclass == 'ieee') { -%>
19
+
20
20
  One can span a figure across mulitple columns by using \verb+\begin{figure*}+.
21
21
  See <% if (cleveref) { %>\cref<% } else { %>Fig.~\ref<% } %>{fig:16x9} as an example.
22
22
 
23
23
  <%- bexample %>
24
24
  \begin{figure*}
25
25
  \centering
26
- % note that \textwidth is used instead of \columnwidth
27
- % This ensures that the graphics width is 60% of the "page", and not just 60% of the current text column
28
- % See https://tex.stackexchange.com/a/16956/9075 for details
26
+ % note that \textwidth is used instead of \linewidth
27
+ % This ensures that the graphics width is 60% of the "page" (text block), and not just 60% of the current text column
28
+ % See https://tex.stackexchange.com/a/17085/9075 for details
29
29
  \includegraphics[width=.6\textwidth]{example-image-16x9}
30
30
  \caption{16x9 Figure}
31
31
  \label{fig:16x9}
@@ -45,14 +45,12 @@ lualatex
45
45
  \setmonofont[StylisticSet={1,3},Scale=.9]{Inconsolatazi4}
46
46
  <% } -%>
47
47
  <% break; default: -%>
48
- <% if (texlive == 2019) { -%>
49
- <%# no special configuration required for lualatex to use the LaTeX default font.
50
- See https://tex.stackexchange.com/a/423225/9075 for details
51
- } else if (documentclass === 'ieee' { -%>
48
+ <% if (documentclass === 'ieee') { -%>
52
49
  <%# The default font configuration of the IEEE template is used -%>
53
50
  <% } else { -%>
54
51
  <%# Default LaTeX Font and LuaLaTeX -%>
55
52
  <%# -%>
53
+ <% if (texlive >= 2021) { -%>
56
54
 
57
55
  % Typewriter font (for source code etc)
58
56
  % Use New Computer Modern font (Computer Modern is the default LaTeX font; this is the implemented modern variant)
@@ -76,12 +74,18 @@ BoldItalicFont=NewCMMono10-BoldOblique.otf,%
76
74
  SmallCapsFeatures={Numbers=OldStyle}]{NewCMMono10-Regular.otf}
77
75
 
78
76
  \setmathfont{NewCMMath-Regular.otf}
77
+ <% } -%>
79
78
  <% } break; } -%>
80
79
 
81
80
  % Enable proper ligatures
82
81
  % For more information see https://ctan.org/pkg/selnolig
83
82
  % language "english" or "ngerman" is passed to selnolig by the document class
84
83
  \usepackage{selnolig}
84
+ <% if (documentclass == 'scientific-thesis') { -%>
85
+
86
+ \usepackage{setspace}
87
+ \setstretch{1.2}
88
+ <% } -%>
85
89
  <% } else { -%><%#
86
90
  ###########################################################################
87
91
  pdflatex
@@ -109,9 +113,8 @@ pdflatex
109
113
  % use nicer font for code
110
114
  \usepackage[zerostyle=b,scaled=.75]{newtxtt}
111
115
  <% } else { -%>
112
- <%# Default LaTeX Font and LuaLaTeX -%>
116
+ <%# Default LaTeX Font and pdflatex -%>
113
117
  <%# -%>
114
-
115
118
  % This is the modern package for "Computer Modern".
116
119
  % In case this gets activated, one has to switch from cmap package to glyphtounicode (in the case of pdflatex)
117
120
  \usepackage[%
@@ -1,6 +1,6 @@
1
- #`-file-line-error` is similar to `--interaction nonstopmode`, but shows the concrete line number
2
- #Remove it, it you want lualatex to stop on errors
3
- $pdflatex = '<%= latexcompiler %> <% if (requiresShellEscape) { %>--shell-escape <% } %>-file-line-error --synctex=-1 %O %S';
1
+ # `-file-line-error` is similar to `--interaction nonstopmode`, but shows the concrete line number
2
+ # Remove it, it you want lualatex to stop on errors
3
+ $pdflatex = '<%= latexcompiler %> <% if (requiresShellEscape) { %>--shell-escape <% } %>--interaction nonstopmode --synctex=-1 %O %S | texlogsieve';
4
4
 
5
5
  #Use SumatraPDF instead of the default PDF viewer
6
6
  $pdf_previewer = 'start "C:\Program Files\SumatraPDF\SumatraPDF.exe"';
@@ -11,21 +11,23 @@ $preview_mode = 0;
11
11
  #automatically call lualatex/pdflatex (instead of latex)
12
12
  $pdf_mode = 1;
13
13
 
14
+ # enable deletion of *.bbl when calling "latexmk -c"
15
+ $bibtex_use = 2;
16
+
17
+ # Glossaries inclusion inspired by https://tex.stackexchange.com/a/44316/9075
14
18
  add_cus_dep('glo', 'gls', 0, 'run_makeglossaries');
15
19
  add_cus_dep('acn', 'acr', 0, 'run_makeglossaries');
16
20
 
17
21
  sub run_makeglossaries {
18
22
  if ( $silent ) {
19
- system "makeglossaries", "-q", $_[0];
23
+ # we use -lite to avoid an installation of perl
24
+ system "makeglossaries-lite", "-q", $_[0];
20
25
  }
21
26
  else {
22
- system "makeglossaries", $_[0];
27
+ system "makeglossaries-lite", $_[0];
23
28
  };
24
29
  }
25
30
 
26
- # enable deletion of *.bbl when calling "latexmk -c"
27
- $bibtex_use = 2;
28
-
29
31
  #remove more files than in the default configuration
30
- @generated_exts = qw(acn acr alg aux code ist fls glg glo gls glsdefs idx ind lof lot out thm toc tpt wrt upa upb synctex);
32
+ @generated_exts = qw(acn acr alg aux code fls glg glo glo-abr gls glsdefs idx ind ist lof lol lot out run.xml synctex thm toc tpt upa upb wrt);
31
33
  $clean_ext .= ' %R.ist %R.xdy';