latex-setup
My personal LaTeX setup 🦁️⚙️
beamerinnerthememetropolis.sty (9093B)
1 %% 2 %% This is file `beamerinnerthememetropolis.sty', 3 %% generated with the docstrip utility. 4 %% 5 %% The original source files were: 6 %% 7 %% beamerinnerthememetropolis.dtx (with options: `package') 8 %% --------------------------------------------------------------------------- 9 %% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of 10 %% contributors can be found at 11 %% 12 %% https://github.com/matze/mtheme/graphs/contributors 13 %% 14 %% and the original template was based on the HSRM theme by Benjamin Weiss. 15 %% 16 %% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 17 %% International License (https://creativecommons.org/licenses/by-sa/4.0/). 18 %% --------------------------------------------------------------------------- 19 \NeedsTeXFormat{LaTeX2e} 20 \ProvidesPackage{beamerinnerthememetropolis}[2017/01/23 Metropolis inner theme] 21 \RequirePackage{etoolbox} 22 \RequirePackage{keyval} 23 \RequirePackage{calc} 24 \RequirePackage{pgfopts} 25 \RequirePackage{tikz} 26 \pgfkeys{ 27 /metropolis/inner/sectionpage/.cd, 28 .is choice, 29 none/.code=\metropolis@disablesectionpage, 30 simple/.code={\metropolis@enablesectionpage 31 \setbeamertemplate{section page}[simple]}, 32 progressbar/.code={\metropolis@enablesectionpage 33 \setbeamertemplate{section page}[progressbar]}, 34 } 35 \pgfkeys{ 36 /metropolis/inner/subsectionpage/.cd, 37 .is choice, 38 none/.code=\metropolis@disablesubsectionpage, 39 simple/.code={\metropolis@enablesubsectionpage 40 \setbeamertemplate{section page}[simple]}, 41 progressbar/.code={\metropolis@enablesubsectionpage 42 \setbeamertemplate{section page}[progressbar]}, 43 } 44 \newcommand{\metropolis@inner@setdefaults}{ 45 \pgfkeys{/metropolis/inner/.cd, 46 sectionpage=progressbar, 47 subsectionpage=none 48 } 49 } 50 \setbeamertemplate{title page}{ 51 \begin{minipage}[b][\paperheight]{\textwidth} 52 \ifx\inserttitlegraphic\@empty\else\usebeamertemplate*{title graphic}\fi 53 \vfill% 54 \ifx\inserttitle\@empty\else\usebeamertemplate*{title}\fi 55 \ifx\insertsubtitle\@empty\else\usebeamertemplate*{subtitle}\fi 56 \usebeamertemplate*{title separator} 57 \ifx\beamer@shortauthor\@empty\else\usebeamertemplate*{author}\fi 58 \ifx\insertdate\@empty\else\usebeamertemplate*{date}\fi 59 \ifx\insertinstitute\@empty\else\usebeamertemplate*{institute}\fi 60 \vfill 61 \vspace*{1mm} 62 \end{minipage} 63 } 64 \def\maketitle{% 65 \ifbeamer@inframe 66 \titlepage 67 \else 68 \frame[plain,noframenumbering]{\titlepage} 69 \fi 70 } 71 \def\titlepage{% 72 \usebeamertemplate{title page} 73 } 74 \setbeamertemplate{title graphic}{ 75 \vbox to 0pt { 76 \vspace*{2em} 77 \inserttitlegraphic% 78 }% 79 \nointerlineskip% 80 } 81 \setbeamertemplate{title}{ 82 \raggedright% 83 \linespread{1.0}% 84 \inserttitle% 85 \par% 86 \vspace*{0.5em} 87 } 88 \setbeamertemplate{subtitle}{ 89 \raggedright% 90 \insertsubtitle% 91 \par% 92 \vspace*{0.5em} 93 } 94 \newlength{\metropolis@titleseparator@linewidth} 95 \setlength{\metropolis@titleseparator@linewidth}{0.4pt} 96 \setbeamertemplate{title separator}{ 97 \tikzexternaldisable% 98 \begin{tikzpicture} 99 \fill[fg] (0,0) rectangle (\textwidth, \metropolis@titleseparator@linewidth); 100 \end{tikzpicture}% 101 \tikzexternalenable% 102 \par% 103 } 104 \setbeamertemplate{author}{ 105 \vspace*{2em} 106 \insertauthor% 107 \par% 108 \vspace*{0.25em} 109 } 110 \setbeamertemplate{date}{ 111 \insertdate% 112 \par% 113 } 114 \setbeamertemplate{institute}{ 115 \vspace*{3mm} 116 \insertinstitute% 117 \par% 118 } 119 \defbeamertemplate{section page}{simple}{ 120 \begin{center} 121 \usebeamercolor[fg]{section title} 122 \usebeamerfont{section title} 123 \insertsectionhead\par 124 \ifx\insertsubsectionhead\@empty\else 125 \usebeamercolor[fg]{subsection title} 126 \usebeamerfont{subsection title} 127 \insertsubsectionhead 128 \fi 129 \end{center} 130 } 131 \defbeamertemplate{section page}{progressbar}{ 132 \centering 133 \begin{minipage}{22em} 134 \raggedright 135 \usebeamercolor[fg]{section title} 136 \usebeamerfont{section title} 137 \insertsectionhead\\[-1ex] 138 \usebeamertemplate*{progress bar in section page} 139 \par 140 \ifx\insertsubsectionhead\@empty\else% 141 \usebeamercolor[fg]{subsection title}% 142 \usebeamerfont{subsection title}% 143 \insertsubsectionhead 144 \fi 145 \end{minipage} 146 \par 147 \vspace{\baselineskip} 148 } 149 \newcommand{\metropolis@disablesectionpage}{ 150 \AtBeginSection{ 151 % intentionally empty 152 } 153 } 154 \newcommand{\metropolis@enablesectionpage}{ 155 \AtBeginSection{ 156 \ifbeamer@inframe 157 \sectionpage 158 \else 159 \frame[plain,c,noframenumbering]{\sectionpage} 160 \fi 161 } 162 } 163 \setbeamertemplate{subsection page}{% 164 \usebeamertemplate*{section page} 165 } 166 \newcommand{\metropolis@disablesubsectionpage}{ 167 \AtBeginSubsection{ 168 % intentionally empty 169 } 170 } 171 \newcommand{\metropolis@enablesubsectionpage}{ 172 \AtBeginSubsection{ 173 \ifbeamer@inframe 174 \subsectionpage 175 \else 176 \frame[plain,c,noframenumbering]{\subsectionpage} 177 \fi 178 } 179 } 180 \newlength{\metropolis@progressonsectionpage} 181 \newlength{\metropolis@progressonsectionpage@linewidth} 182 \setlength{\metropolis@progressonsectionpage@linewidth}{0.4pt} 183 \setbeamertemplate{progress bar in section page}{ 184 \setlength{\metropolis@progressonsectionpage}{% 185 \textwidth * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}% 186 }% 187 \tikzexternaldisable% 188 \begin{tikzpicture} 189 \fill[bg] (0,0) rectangle (\textwidth, \metropolis@progressonsectionpage@linewidth); 190 \fill[fg] (0,0) rectangle (\metropolis@progressonsectionpage, \metropolis@progressonsectionpage@linewidth); 191 \end{tikzpicture}% 192 \tikzexternalenable% 193 } 194 \def\inserttotalframenumber{100} 195 \newlength{\metropolis@blocksep} 196 \newlength{\metropolis@blockadjust} 197 \setlength{\metropolis@blocksep}{0.75ex} 198 \setlength{\metropolis@blockadjust}{0.25ex} 199 \providecommand{\metropolis@strut}{% 200 \vphantom{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz()}% 201 } 202 \newcommand{\metropolis@block}[1]{ 203 \par\vskip\medskipamount% 204 \setlength{\parskip}{0pt} 205 \ifbeamercolorempty[bg]{block title#1}{% 206 \begin{beamercolorbox}[rightskip=0pt plus 4em]{block title#1}}{% 207 \ifbeamercolorempty[bg]{block title}{% 208 \begin{beamercolorbox}[rightskip=0pt plus 4em]{block title#1}% 209 }% 210 {% 211 \begin{beamercolorbox}[ 212 sep=\dimexpr\metropolis@blocksep-\metropolis@blockadjust\relax, 213 leftskip=\metropolis@blockadjust, 214 rightskip=\dimexpr\metropolis@blockadjust plus 4em\relax 215 ]{block title#1}% 216 }}% 217 \usebeamerfont*{block title#1}% 218 \metropolis@strut% 219 \insertblocktitle% 220 \metropolis@strut% 221 \end{beamercolorbox}% 222 \nointerlineskip% 223 \ifbeamercolorempty[bg]{block body#1}{% 224 \begin{beamercolorbox}[vmode]{block body#1}}{ 225 \ifbeamercolorempty[bg]{block body}{% 226 \begin{beamercolorbox}[vmode]{block body#1}% 227 }{% 228 \begin{beamercolorbox}[sep=\metropolis@blocksep, vmode]{block body#1}% 229 \vspace{-\metropolis@parskip} 230 }}% 231 \usebeamerfont{block body#1}% 232 \setlength{\parskip}{\metropolis@parskip}% 233 } 234 \setbeamertemplate{block begin}{\metropolis@block{}} 235 \setbeamertemplate{block alerted begin}{\metropolis@block{ alerted}} 236 \setbeamertemplate{block example begin}{\metropolis@block{ example}} 237 \setbeamertemplate{block end}{\end{beamercolorbox}\vspace*{0.2ex}} 238 \setbeamertemplate{block alerted end}{\end{beamercolorbox}\vspace*{0.2ex}} 239 \setbeamertemplate{block example end}{\end{beamercolorbox}\vspace*{0.2ex}} 240 \setbeamertemplate{itemize items}{\textbullet} 241 \setbeamertemplate{caption label separator}{: } 242 \setbeamertemplate{caption}[numbered] 243 \setbeamertemplate{footnote}{% 244 \parindent 0em\noindent% 245 \raggedright 246 \usebeamercolor{footnote}\hbox to 0.8em{\hfil\insertfootnotemark}\insertfootnotetext\par% 247 } 248 \newlength{\metropolis@parskip} 249 \setlength{\metropolis@parskip}{0.5em} 250 \setlength{\parskip}{\metropolis@parskip} 251 \linespread{1.15} 252 \define@key{beamerframe}{c}[true]{% centered 253 \beamer@frametopskip=0pt plus 1fill\relax% 254 \beamer@framebottomskip=0pt plus 1fill\relax% 255 \beamer@frametopskipautobreak=0pt plus .4\paperheight\relax% 256 \beamer@framebottomskipautobreak=0pt plus .6\paperheight\relax% 257 \def\beamer@initfirstlineunskip{}% 258 } 259 \providebool{metropolis@standout} 260 \define@key{beamerframe}{standout}[true]{% 261 \booltrue{metropolis@standout} 262 \begingroup 263 \setkeys{beamerframe}{c} 264 \setkeys{beamerframe}{noframenumbering} 265 \ifbeamercolorempty[bg]{palette primary}{ 266 \setbeamercolor{background canvas}{ 267 use=palette primary, 268 bg=-palette primary.fg 269 } 270 }{ 271 \setbeamercolor{background canvas}{ 272 use=palette primary, 273 bg=palette primary.bg 274 } 275 } 276 \setbeamercolor{local structure}{ 277 fg=palette primary.fg 278 } 279 \usebeamercolor[fg]{palette primary} 280 } 281 \pretocmd{\beamer@reseteecodes}{% 282 \ifbool{metropolis@standout}{ 283 \endgroup 284 \boolfalse{metropolis@standout} 285 }{} 286 }{}{} 287 \AtBeginEnvironment{beamer@frameslide}{ 288 \ifbool{metropolis@standout}{ 289 \centering 290 \usebeamerfont{standout} 291 }{} 292 } 293 \metropolis@inner@setdefaults 294 \ProcessPgfPackageOptions{/metropolis/inner} 295 \endinput 296 %% 297 %% End of file `beamerinnerthememetropolis.sty'.