%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Personal helper theme for package documentations % Copyright samcarter % % This file may be distributed and/or modified % under the LaTeX Project Public License 1.3c or later % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Usage: % ln ~/Life/latex/beamertheme-sam/themesam.sty package-doc-settings.sty % \usepackage[ % themecolor=samdblue % ]{\jobname-settings} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Colours % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \RequirePackage{xcolor} \definecolor{samyellow}{RGB}{246,193,65} \definecolor{samorange}{RGB}{241,147,45}% pgfplotsthemebeamer \definecolor{samred}{RGB}{191,26,46}% TikZbricks \definecolor{sammagenta}{RGB}{170,42,104}% TikZmarmots \definecolor{samviolet}{RGB}{136,46,114}% TikZlings \definecolor{samlila}{RGB}{101,67,159}% Rainbow beamer theme \definecolor{samdblue}{RGB}{0,51,134}% beamer theme \definecolor{samlblue}{RGB}{22,89,155}% TikZducks \definecolor{samteal}{RGB}{25,143,157}% Tcolorbox beamer theme \definecolor{samlgreen}{RGB}{68,170,153}% Jigsaw \definecolor{samdgreen}{RGB}{78,178,125} \definecolor{samlgray}{RGB}{160,160,185} \definecolor{samdgray}{RGB}{60,60,85} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Package options % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \RequirePackage{xkeyval} \DeclareOptionX{themecolor}[samdblue]{\colorlet{themecolor}{#1}} \DeclareOptionX{listingcolor}[samlblue]{\colorlet{listingcolor}{#1}} \ExecuteOptionsX{themecolor,listingcolor} \ProcessOptionsX %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Packages % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \@ifclassloaded{beamer}{}{% \RequirePackage[english]{babel} \RequirePackage[paper=a4paper,margin=2.9cm]{geometry} \RequirePackage{scrlayer-scrpage} \let\hrulefillx\hrulefill \RequirePackage[bitstream-charter]{mathdesign} \let\hrulefill\hrulefillx \RequirePackage[hang,flushmargin,bottom]{footmisc} \RequirePackage{footnotehyper} \makesavenoteenv{tcolorbox} \RequirePackage[all]{nowidow} \RequirePackage[colorlinks=true,breaklinks=true,allcolors=themecolor,hyperfootnotes=false]{hyperref} } \RequirePackage[T1]{fontenc} \RequirePackage{xspace} \RequirePackage{inconsolata}% mono font with bold, but italic is missing % \RequirePackage[scale=0.85]{cascadia-code} % \AddToHook{cmd/ttfamily/before}{\fontseries{sl}} \usepackage{synthslant}% to fake slented comments in inconsolata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Listings % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \RequirePackage[cachedir=./.minted]{minted} \AddToHook{env/MintedVerbatim/before}{% % optional arguments \@namedef{PYG@tok@na}{\def\PYG@tc##1{\textcolor{black}{##1}}}% % macros \@namedef{PYG@tok@k}{\def\PYG@tc##1{\textcolor{listingcolor}{\bfseries ##1}}}% % curly brakets \@namedef{PYG@tok@nb}{\def\PYG@tc##1{\textcolor{listingcolor}{\bfseries ##1}}}% % comments (italics won't work with the inconsolata font) \@namedef{PYG@tok@c}{\def\PYG@tc##1{\textcolor{gray}{\textsynthslant{##1}}}}% } \usemintedstyle{default} \setminted{ breaksymbolleft={}, tabsize=2, breaklines=true, } \newminted[samcode]{latex}{} \newmintinline[saminline]{latex}{} % use non-bold and all coloured for inline code in articles \ifdefined\insertaspectratio\else \patchcmd{\minted@inputpyg@inline}{\minted@input}{\color{listingcolor}\renewcommand\textcolor[3][]{##3}\renewcommand\bfseries{}\minted@input}{}{} \fi \RequirePackage[most]{tcolorbox} \tcbuselibrary{minted} \tcbset{% colframe=themecolor, fonttitle=\bfseries, sidebyside, center lower, righthand width=5.7cm, bottom=2pt, top=2pt, left=3pt, right=3pt, sidebyside gap=10pt, lower separated=false, listing engine=minted, minted language=latex, colback=themecolor!10, sharp corners, boxrule=0pt, before title={\strut} } % avoid page breaks right in front of the tcolorbox \@ifclassloaded{beamer}{}{ \tcbuselibrary{hooks} \tcbset{before pre={\nopagebreak[4]}} } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % document settings % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \@ifclassloaded{scrartcl}{% \KOMAoptions{parskip=half} \addtokomafont{sectioning}{\color{themecolor}} \addtokomafont{date}{\normalsize} \addtokomafont{author}{\normalsize} \setlength{\footnotemargin}{0.7em} }{} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Custom macros % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \providecommand*{\CTAN}{\textsc{CTAN}\xspace} \providecommand*{\TikZ}{Ti\emph{k}Z\xspace} \providecommand*{\miktex}{MiK\TeX\xspace} \providecommand*{\texlive}{\TeX{}Live\xspace} \providecommand*{\tikzbrick}{Ti\emph{k}Zbrick\xspace} \providecommand*{\tikzducks}{Ti\emph{k}Zducks\xspace} \providecommand*{\tikzlings}{Ti\emph{k}Zlings\xspace} \providecommand*{\tikzmarmots}{Ti\emph{k}Zmarmots\xspace} \providecommand*{\ConTeXt}{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt}