%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % 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[hyphens]{url} \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}} \RequirePackage{synthslant}% to fake slanted comments in inconsolata \RequirePackage{metalogox}% should be loaded after the fonts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % 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 brackets \@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} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Doc blurb % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \newcommand{\packagename}[1]{\def\@packagename{#1}} \NewDocumentCommand\blurb{s}{% This package is work in progress, therefore I would be happy to hear your feedback and ideas how to improve the package. The development version of the source code can be found at \url{https://github.com/samcarter/\@packagename}, including an issue tracker. \IfBooleanF#1{% A more stable version of the package can be found on \CTAN (\url{https://ctan.org/pkg/\@packagename}) and is included in both \texlive and \miktex as \texttt{\@packagename}. }% If you seek any other assistance (not bug reports/feature requests), I suggest asking at \url{https://topanswers.xyz/tex}. Copyright {\footnotesize\textcopyright} \texttt{samcarter}. Permission is granted to copy, distribute and\slash or modify this software under the terms of the LaTeX project public licence, version 1.3c or later \url{https://www.latex-project.org/lppl.txt}. }