mirror of
https://github.com/Wandmalfarbe/pandoc-latex-template.git
synced 2025-02-11 21:45:19 +00:00
* feat: Merge changes from pandoc 3.5 LaTeX template * feat: create single file templates (latex and beamer) * feat: use `sed` differently on macOS than on other systems * feat: update copyright year * feat: release compressed archives without version number * docs: explain versions of the template (the different files) * ci: build with pandoc 3.5 * chore: add changelog for version 3.0.0
127 lines
4.1 KiB
Plaintext
Executable File
127 lines
4.1 KiB
Plaintext
Executable File
\usepackage{iftex}
|
|
\ifPDFTeX
|
|
\usepackage[$if(fontenc)$$fontenc$$else$T1$endif$]{fontenc}
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage{textcomp} % provide euro and other symbols
|
|
\else % if luatex or xetex
|
|
$if(mathspec)$
|
|
\ifXeTeX
|
|
\usepackage{mathspec} % this also loads fontspec
|
|
\else
|
|
\usepackage{unicode-math} % this also loads fontspec
|
|
\fi
|
|
$else$
|
|
\usepackage{unicode-math} % this also loads fontspec
|
|
$endif$
|
|
\defaultfontfeatures{Scale=MatchLowercase}$-- must come before Beamer theme
|
|
\defaultfontfeatures[\rmfamily]{Ligatures=TeX,Scale=1}
|
|
\fi
|
|
$if(fontfamily)$
|
|
$else$
|
|
$-- Set default font before Beamer theme so the theme can override it
|
|
\usepackage{lmodern}
|
|
$endif$
|
|
$-- User font settings (must come after default font and Beamer theme)
|
|
$if(fontfamily)$
|
|
\usepackage[$for(fontfamilyoptions)$$fontfamilyoptions$$sep$,$endfor$]{$fontfamily$}
|
|
$endif$
|
|
\ifPDFTeX\else
|
|
% xetex/luatex font selection
|
|
$if(mainfont)$
|
|
$if(mainfontfallback)$
|
|
\ifLuaTeX
|
|
\usepackage{luaotfload}
|
|
\directlua{luaotfload.add_fallback("mainfontfallback",{
|
|
$for(mainfontfallback)$"$mainfontfallback$"$sep$,$endfor$
|
|
})}
|
|
\fi
|
|
$endif$
|
|
\setmainfont[$for(mainfontoptions)$$mainfontoptions$$sep$,$endfor$$if(mainfontfallback)$,RawFeature={fallback=mainfontfallback}$endif$]{$mainfont$}
|
|
$endif$
|
|
$if(sansfont)$
|
|
$if(sansfontfallback)$
|
|
\ifLuaTeX
|
|
\usepackage{luaotfload}
|
|
\directlua{luaotfload.add_fallback("sansfontfallback",{
|
|
$for(sansfontfallback)$"$sansfontfallback$"$sep$,$endfor$
|
|
})}
|
|
\fi
|
|
$endif$
|
|
\setsansfont[$for(sansfontoptions)$$sansfontoptions$$sep$,$endfor$$if(sansfontfallback)$,RawFeature={fallback=sansfontfallback}$endif$]{$sansfont$}
|
|
$endif$
|
|
$if(monofont)$
|
|
$if(monofontfallback)$
|
|
\ifLuaTeX
|
|
\usepackage{luaotfload}
|
|
\directlua{luaotfload.add_fallback("monofontfallback",{
|
|
$for(monofontfallback)$"$monofontfallback$"$sep$,$endfor$
|
|
})}
|
|
\fi
|
|
$endif$
|
|
\setmonofont[$for(monofontoptions)$$monofontoptions$$sep$,$endfor$$if(monofontfallback)$,RawFeature={fallback=monofontfallback}$endif$]{$monofont$}
|
|
$endif$
|
|
$for(fontfamilies)$
|
|
\newfontfamily{$fontfamilies.name$}[$for(fontfamilies.options)$$fontfamilies.options$$sep$,$endfor$]{$fontfamilies.font$}
|
|
$endfor$
|
|
$if(mathfont)$
|
|
$if(mathspec)$
|
|
\ifXeTeX
|
|
\setmathfont(Digits,Latin,Greek)[$for(mathfontoptions)$$mathfontoptions$$sep$,$endfor$]{$mathfont$}
|
|
\else
|
|
\setmathfont[$for(mathfontoptions)$$mathfontoptions$$sep$,$endfor$]{$mathfont$}
|
|
\fi
|
|
$else$
|
|
\setmathfont[$for(mathfontoptions)$$mathfontoptions$$sep$,$endfor$]{$mathfont$}
|
|
$endif$
|
|
$endif$
|
|
$if(CJKmainfont)$
|
|
\ifXeTeX
|
|
\usepackage{xeCJK}
|
|
\setCJKmainfont[$for(CJKoptions)$$CJKoptions$$sep$,$endfor$]{$CJKmainfont$}
|
|
$if(CJKsansfont)$
|
|
\setCJKsansfont[$for(CJKoptions)$$CJKoptions$$sep$,$endfor$]{$CJKsansfont$}
|
|
$endif$
|
|
$if(CJKmonofont)$
|
|
\setCJKmonofont[$for(CJKoptions)$$CJKoptions$$sep$,$endfor$]{$CJKmonofont$}
|
|
$endif$
|
|
\fi
|
|
$endif$
|
|
$if(luatexjapresetoptions)$
|
|
\ifLuaTeX
|
|
\usepackage[$for(luatexjapresetoptions)$$luatexjapresetoptions$$sep$,$endfor$]{luatexja-preset}
|
|
\fi
|
|
$endif$
|
|
$if(CJKmainfont)$
|
|
\ifLuaTeX
|
|
\usepackage[$for(luatexjafontspecoptions)$$luatexjafontspecoptions$$sep$,$endfor$]{luatexja-fontspec}
|
|
\setmainjfont[$for(CJKoptions)$$CJKoptions$$sep$,$endfor$]{$CJKmainfont$}
|
|
\fi
|
|
$endif$
|
|
\fi
|
|
$if(zero-width-non-joiner)$
|
|
%% Support for zero-width non-joiner characters.
|
|
\makeatletter
|
|
\def\zerowidthnonjoiner{%
|
|
% Prevent ligatures and adjust kerning, but still support hyphenating.
|
|
\texorpdfstring{%
|
|
\TextOrMath{\nobreak\discretionary{-}{}{\kern.03em}%
|
|
\ifvmode\else\nobreak\hskip\z@skip\fi}{}%
|
|
}{}%
|
|
}
|
|
\makeatother
|
|
\ifPDFTeX
|
|
\DeclareUnicodeCharacter{200C}{\zerowidthnonjoiner}
|
|
\else
|
|
\catcode`^^^^200c=\active
|
|
\protected\def ^^^^200c{\zerowidthnonjoiner}
|
|
\fi
|
|
%% End of ZWNJ support
|
|
$endif$
|
|
% Use upquote if available, for straight quotes in verbatim environments
|
|
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
|
|
\IfFileExists{microtype.sty}{% use microtype if available
|
|
\usepackage[$for(microtypeoptions)$$microtypeoptions$$sep$,$endfor$]{microtype}
|
|
\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
|
|
}{}
|
|
|