diff --git a/.gitignore b/.gitignore index b7fead4..7943deb 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ # tags is created by vim plugin gutentags with universal-ctags # hence ignore it since it is automatically created tags +*synctex(busy) diff --git a/README b/README index 702d088..91a58be 100644 --- a/README +++ b/README @@ -18,5 +18,3 @@ Man kann jede Datei im Ordner /tex einzeln kompilieren. Dafür sind einige Hürd • If you work with gitlab you can use the CI. For this there is the .gitlab-ci.yml file that tells gitlab to compile the main file and make it avaiable as an artifact. Then it is avaiable under the api link https://your.gitlab.instance.de/api/v4/projects/your-project-id/jobs/artifacts/master/raw/main.pdf?job=compiling You get the project id visible on the main page of your project. master is the branch you want to use for that continous compiling and compiling is the name of the job, specified in the .gitlab-ci.yml. main.pdf is the name of the file generated, specified via the main tex-file name and the .latexmkrc. -For example this gives: -https://gitlab.mn.tu-dresden.de/api/v4/projects/44/jobs/artifacts/master/raw/out/skript-numerik-sander.pdf?job=compiling diff --git a/scripts/maindircreate.py b/scripts/maindircreate.py index 73dc195..86ff708 100755 --- a/scripts/maindircreate.py +++ b/scripts/maindircreate.py @@ -19,6 +19,9 @@ import errno # (sehr gut!) # os.walk verändert nicht den aktuellen Ordner for (path, directories, files) in os.walk(os.curdir): + if ".git" in directories: + # do not traverse git directory. There we do not need .maindir links + directories.remove(".git") try: # relpath gibt den Pfad vom aktuellen Ordner relativ zum Ordner # in den wir den Link tun möchten diff --git a/tex/bibliography.bib b/tex/bibliography.bib new file mode 100644 index 0000000..e69de29 diff --git a/tex/header/preamble.tex b/tex/header/preamble.tex index bbce9ed..fb9196d 100644 --- a/tex/header/preamble.tex +++ b/tex/header/preamble.tex @@ -8,6 +8,12 @@ % \RedeclareSectionCommand % [beforeskip=-1.5ex plus -.1ex minus -.1ex, % afterskip=.5ex plus .1ex minus .1ex]{subsection} + +% cannot happen in packages since it has to work during package loading: +% (and it is really not a fault of the packages but the calling) +\usepackage{silence} % Package that lets ignore warnings and errors for using packages in subdirectories +\WarningFilter{latex}{You have requested package `.maindir/tex/header/} + \usepackage[tikz]{.maindir/tex/header/stdmath} % , scriptLetters \setmainfont{Latin Modern Roman} @@ -16,6 +22,17 @@ \setmathfont{Latin Modern Math} \addbibresource{.maindir/tex/bibliography.bib} + +\hypersetup{ + pdftitle={Latexwisdom}, + pdfauthor={Felix Hilsky}, + pdfsubject={LaTeX use}, + pdfcreator={LuaLaTeX}, + pdfproducer={LuaLaTeX via latexmk}, + pdfkeywords={}, + pdfdisplaydoctitle={true}, + pdfencoding=auto +} % Abkürzunngen % weitere Befehle diff --git a/tex/header/specialChars.sty b/tex/header/specialChars.sty index 23318fe..f4dfa57 100644 --- a/tex/header/specialChars.sty +++ b/tex/header/specialChars.sty @@ -20,7 +20,7 @@ % \setsansfont{Computer Modern Sans Serif} % \setmonofont{Computer Modern Typewriter} -\RequirePackage{unicode-math} +\RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} \RequirePackage{silence} % Package that lets ignore warnings and errors for unicodechar redefining \WarningFilter{newunicodechar}{Redefining} diff --git a/tex/header/stdmath.sty b/tex/header/stdmath.sty index ae8f5ca..06ff81a 100644 --- a/tex/header/stdmath.sty +++ b/tex/header/stdmath.sty @@ -10,7 +10,7 @@ % standard is bibliography.bib % tikz -% also loads tikz +% also loads tikz and pgfplots % graphicx OR pictures % also loads package graphicx (for picture handling) @@ -51,8 +51,16 @@ \ProcessOptions\relax \ifopt@pics\RequirePackage{graphicx}\fi -\ifopt@tikz\RequirePackage{tikz}\RequirePackage{tikz-cd}\fi -\ifopt@script\RequirePackage{mathrsfs}\newcommand{\scr}[1]{\mathscr{#1}}\fi % for script A (sigma-Algebra-A) +\ifopt@tikz% + \RequirePackage{tikz}% + \RequirePackage{tikz-cd}% + \RequirePackage{pgfplots}% + \pgfplotsset{compat=1.18}% mentioned in a warning, should remove it +\fi +\ifopt@script% + \RequirePackage{mathrsfs}% + \newcommand{\scr}[1]{\mathscr{#1}} +\fi % for script A (sigma-Algebra-A) % --------- % Packages @@ -66,28 +74,38 @@ % maybe that works one day: % \RequirePackage{polyglossia} % \ifopt@german{\setdefaultlanguage{german}}\else{\setdefaultlanguage{english}}\fi -\RequirePackage[\ifopt@german ngerman \else english \fi]{babel} +\ifopt@german% + \RequirePackage[english,ngerman]{babel}% +\else% + \RequirePackage[ngerman,english]{babel}% +\fi + \RequirePackage{amsmath, amsfonts} \RequirePackage{aligned-overset} % for nicely aligned text over relation symbols % with \overset{\text{Definition}}&{=} instead of &\stackrel{\text{Definition}}= \RequirePackage{mathtools} % for := (defined as) \RequirePackage{amsthm} % for theorems environments \RequirePackage{enumerate} % for different kind of numbering in enumerations +\RequirePackage[version=4]{mhchem} % chemical formulars. Provides \ce +\RequirePackage[per-mode=fraction, +exponent-product=\cdot]{siunitx} % provides nice typesetting for units and numbers % bibliography -\newcommand{\bibfile}{bibliography.bib} +\newcommand{\bibfile}{.maindir/tex/bibliography.bib} \RequirePackage{csquotes} \RequirePackage[backend=biber, style=alphabetic, + maxnames=99, % it is not fair if people with names + % late in the alphabet are never mentioned backref=true, autocite=inline, - sortlocale=de_DE.UTF-8, - % sortlocale=en_GB, sorting=nty]{biblatex} \addbibresource{\bibfile} \AtEndDocument{\printbibliography} - +% to allow links to break over lines at hyphens +% must be loaded before hyperref because hyperref loads package url +\PassOptionsToPackage{hyphens}{url} \RequirePackage [ % colorlinks=true, @@ -104,6 +122,14 @@ pdfencoding=auto ]{hyperref} %\parindent0.0em % = Einrueckungsweite des ersten Satzes eines Absatzes +% is necessary to let babel work with appendix: +% see https://tex.stackexchange.com/a/67636 +\RequirePackage{bookmark} +\RequirePackage[toc,page]{appendix} +\ifopt@german \renewcommand{\appendixpagename}{Anhänge} + \renewcommand{\appendixname}{Anhang} + \renewcommand{\appendixtocname}{Anhänge} +\fi % --------------------------------------------------------------- % Custom commands, rougly grouped @@ -162,8 +188,9 @@ \newcommand{\scaProd}[1]{\left\langle #1 \right\rangle} % scalar product \newcommand{\conj}[1]{#1^{*}} % (complex) conjugation -\newcommand{\D}{\ensuremath{d}} % d in \D x \D z ... at integrals -% \newcommand{\D}{\ensuremath{\mathrm{d}}} % +% correct according to https://tex.stackexchange.com/a/84308: +\newcommand{\D}{\ensuremath{\mathop{}\!d}} % d in \D x \D z ... at integrals +% \newcommand{\D}{\ensuremath{\mathop{}\!\mathrm{d}}} % \newcommand{\cl}[1]{\overline{#1}} % closure