Update documentation
This commit is contained in:
parent
83469b03ff
commit
8f23f78e08
|
@ -154,13 +154,15 @@
|
||||||
\maketitle
|
\maketitle
|
||||||
\tableofcontents
|
\tableofcontents
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\section{Introduction}
|
\section{Introduction}
|
||||||
|
|
||||||
Beamer is an awesome way to make presentations with LaTeX, but its theme
|
Beamer is an awesome way to make presentations with LaTeX, but its theme
|
||||||
selection is surprisingly sparse. The stock themes share an aesthetic that is
|
selection is surprisingly sparse. The stock themes share an aesthetic that is
|
||||||
now overused and can be a little cluttered, and the few distinctive custom
|
can be a little cluttered, and the few distinctive custom themes available are
|
||||||
themes available are often specialized for a particular corporate or
|
often specialized for a particular corporate or institutional brand.
|
||||||
institutional brand.
|
|
||||||
|
|
||||||
The goal of \themename is to provide a simple, modern Beamer theme suitable
|
The goal of \themename is to provide a simple, modern Beamer theme suitable
|
||||||
for anyone to use. It tries to minimize noise and maximize space for content;
|
for anyone to use. It tries to minimize noise and maximize space for content;
|
||||||
|
@ -182,24 +184,29 @@ the theme even better, please get in touch there. The
|
||||||
{full list of contributors} already contains over a dozen names!
|
{full list of contributors} already contains over a dozen names!
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\section{Getting Started}
|
\section{Getting Started}
|
||||||
|
|
||||||
\subsection{Installing from CTAN}
|
\subsection{Installing from CTAN}
|
||||||
|
|
||||||
For the regular user it is recommended to install \themename from
|
For the regular user it is recommended to install \themename from
|
||||||
\href{https://www.ctan.org}{CTAN}. In case you keep your \TeX\ distribution
|
\href{https://www.ctan.org}{CTAN}. In case you keep your \TeX\ distribution
|
||||||
up-to-date, chances are good that \themename is already installed. If it is not,
|
up-to-date, chances are good that \themename is already installed. If it is
|
||||||
you need to update your packages. For \TeX\ Live (or Mac\TeX\ on OS X) the
|
not, you need to update your packages. For \TeX\ Live (or Mac\TeX\ on OS X)
|
||||||
following command updates all packages.
|
the following command updates all packages.
|
||||||
|
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
sudo tlmgr update --all
|
sudo tlmgr update --all
|
||||||
\end{lstlisting}
|
\end{lstlisting}
|
||||||
|
|
||||||
For any other distribution please refer to its documentation on how to update your
|
For any other distribution please refer to its documentation on how to update
|
||||||
packages.
|
your packages.
|
||||||
|
|
||||||
|
To get the most out of the theme you should also install the |Fira| fonts.
|
||||||
|
Yet this is not mandatory. \themename also works with the standard fonts.
|
||||||
|
|
||||||
|
|
||||||
To get the most out of the theme you should also install the |Fira| fonts. Yet this
|
|
||||||
is not mandatory. \themename also works with the standard fonts.
|
|
||||||
|
|
||||||
\subsection{Installing from GitHub}
|
\subsection{Installing from GitHub}
|
||||||
|
|
||||||
|
@ -237,11 +244,15 @@ options for advanced users:
|
||||||
\item[|make ctan|] creates a package for CTAN distribution.
|
\item[|make ctan|] creates a package for CTAN distribution.
|
||||||
\end{description}
|
\end{description}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\subsection{Installing the Debian Package}
|
\subsection{Installing the Debian Package}
|
||||||
As an alternative users of Debian or Ubuntu can also install this
|
As an alternative users of Debian or Ubuntu can also install this
|
||||||
\href{https://launchpad.net/\%7Eedd/+archive/ubuntu/misc/+files/latex-mtheme_0.1.0vidid1_all.deb}{.deb package}
|
\href{https://launchpad.net/\%7Eedd/+archive/ubuntu/misc/+files/latex-mtheme_0.1.0vidid1_all.deb}{.deb package}
|
||||||
containing the theme files as well as the Fira Sans font files.
|
containing the theme files as well as the Fira Sans font files.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\subsection{A Minimal Example}
|
\subsection{A Minimal Example}
|
||||||
|
|
||||||
The following code shows a minimal example of a Beamer presentation using
|
The following code shows a minimal example of a Beamer presentation using
|
||||||
|
@ -264,19 +275,32 @@ The following code shows a minimal example of a Beamer presentation using
|
||||||
\end{lstlisting}
|
\end{lstlisting}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\subsection{Dependencies}
|
\subsection{Dependencies}
|
||||||
|
|
||||||
\begin{itemize}
|
\themename depends on the |beamer| class and the following standard packages:
|
||||||
\item TikZ
|
\begin{multicols}{3}
|
||||||
\item XeLaTeX or LuaTeX
|
\begin{itemize}
|
||||||
\item \href{https://github.com/mozilla/Fira}{Fira Sans} and Mono font
|
\item |tikz|
|
||||||
\end{itemize}
|
\item |pgfopts|
|
||||||
|
\item |etoolbox|
|
||||||
|
\item |calc|
|
||||||
|
\item |ifxetex|
|
||||||
|
\item |ifluatex|
|
||||||
|
\end{itemize}
|
||||||
|
\end{multicols}
|
||||||
|
|
||||||
|
For best results, we recommend installing the fonts
|
||||||
|
\href{https://github.com/mozilla/Fira}{|Fira Sans|} and |Fira Mono|
|
||||||
|
and compiling with \themename using Xe\LaTeX{} or Lua\TeX{}.
|
||||||
|
These are optional dependencies; \themename is compatible with (e.g.)
|
||||||
|
pdf\LaTeX{} and will fall back to standard fonts if |Fira Sans| or |Fira Mono|
|
||||||
|
is not installed.
|
||||||
|
|
||||||
|
The packaged name of |Fira Sans| is |Fira Sans OT| in some Linux
|
||||||
|
distributions; this case is automatically handled by \themename.
|
||||||
|
|
||||||
|
|
||||||
The |Fira Sans| font is not a hard dependency. \themename will try to load the
|
|
||||||
font and use it if it is installed, but if not it will just use the standard
|
|
||||||
font. Depending on the Linux distribution, the packaged name of |Fira Sans|
|
|
||||||
might be |Fira Sans OT| instead of |Fira Sans|. \themename will check for this
|
|
||||||
name too.
|
|
||||||
|
|
||||||
\subsection{Pandoc}
|
\subsection{Pandoc}
|
||||||
|
|
||||||
|
@ -291,111 +315,97 @@ $ pandoc -t beamer --latex-engine=xelatex -V theme:metropolis -o output.pdf inpu
|
||||||
|
|
||||||
|
|
||||||
\section{Customization}
|
\section{Customization}
|
||||||
|
|
||||||
\subsection{Package options}
|
\subsection{Package options}
|
||||||
The theme provides a number of options. The options use a key=value interface.
|
|
||||||
So every option is controlled by a key its value. To use an option you can
|
The theme provides a number of options, which can be set using a key=value
|
||||||
either provide a comma separated list of options when invoking
|
interface. The primary way to set options is to provide a comma-separated list
|
||||||
\textsc{metropolis} in the preamble of the presentation.
|
of option-value pairs when loading \themename in the preamble:
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
\usetheme[<key=value list>]{metropolis}
|
\usetheme[option1=value1, option2=value2, ...]{metropolis}
|
||||||
\end{lstlisting}
|
\end{lstlisting}
|
||||||
Or you can set them at any time with the |\metroset| macro.
|
|
||||||
|
Options can be changed at any time --- even mid-presentation! --- with the
|
||||||
|
|\metroset| macro.
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
\metroset{<key=value list>}
|
\metroset{option1=newvalue1, option2=newvalue2, ...}
|
||||||
\end{lstlisting}
|
|
||||||
To set an option on a specific sub-package only you have to add the
|
|
||||||
corresponding prefix (inner, outer, color), e.g.
|
|
||||||
\begin{lstlisting}
|
|
||||||
\metroset{inner/block=fill}
|
|
||||||
\end{lstlisting}
|
\end{lstlisting}
|
||||||
|
|
||||||
The list of options is structured as shown in the following example.
|
The list of options is structured as shown in the following example.
|
||||||
|
|
||||||
\DescribeOption{key}{list of possible values}{default value}{
|
\DescribeOption{option key}{list of possible values}{default}{
|
||||||
A short description of the option.
|
A short description of the option.
|
||||||
}
|
}
|
||||||
|
|
||||||
Although the options are grouped into the corresponding packages every option
|
|
||||||
can and in most cases should be set on the main theme directly. If an option
|
|
||||||
is listed in multiple sub-packages, setting it on the main theme will set the
|
|
||||||
option on every sub-package accordingly.
|
|
||||||
|
|
||||||
\subsubsection{Main theme}
|
\subsubsection{Main theme}
|
||||||
\DescribeOption{titleformat}%
|
\DescribeOption{titleformat}%
|
||||||
{regular, smallcaps, allsmallcaps, allcaps}
|
{regular, smallcaps, allsmallcaps, allcaps}
|
||||||
{regular}{
|
{regular}{
|
||||||
Shortcut option to change the titleformat of all titles together. Please
|
Changes the format of titles, subtitles, section titles, frame titles, and
|
||||||
refer to section \ref{sec:titleformats} for known issues.
|
the text on standout ``plain'' frames. The available options produce
|
||||||
|
Regular, \textsc{SmallCaps}, \textsc{\MakeLowercase{AllSmallCaps}}, or
|
||||||
|
\MakeUppercase{AllCaps} titles. Please refer to
|
||||||
|
Section~\ref{sec:titleformats} for known issues with these options.
|
||||||
}
|
}
|
||||||
|
|
||||||
\DescribeOption{titleformat plain}%
|
\DescribeOption{titleformat-plain}%
|
||||||
{regular, smallcaps, allsmallcaps, allcaps}%
|
{regular, smallcaps, allsmallcaps, allcaps}%
|
||||||
{regular}{
|
{regular}{
|
||||||
Control the titleformat of the plain title. Please refer to section
|
Changes the format of standout ``plain'' frames (see |titleformat|, above).
|
||||||
\ref{sec:titleformats} for known issues.
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
\subsubsection{Inner theme}
|
\subsubsection{Inner theme}
|
||||||
\DescribeOption{block}{transparent, fill}{transparent}{
|
\DescribeOption{block}{transparent, fill}{transparent}{
|
||||||
This option controls the block background. It can either be filled with a
|
Optionally adds a light grey background to block environments like |theorem|
|
||||||
light grey or be transparent.
|
and |example|.
|
||||||
}
|
}
|
||||||
|
|
||||||
\DescribeOption{sectionpage}{none, simple, progressbar}{progressbar}{
|
\DescribeOption{sectionpage}{none, simple, progressbar}{progressbar}{
|
||||||
Disable section pages at all, typeset centered section title or add a thin
|
Adds a slide at the start of each section (|simple|) with an optional thin
|
||||||
progress bar below the centered section title.
|
progress bar below the section title (|progressbar|). The |none| option
|
||||||
}
|
disables the section page.
|
||||||
|
|
||||||
\DescribeOption{titleformat title}%
|
|
||||||
{regular, smallcaps, allsmallcaps, allcaps}%
|
|
||||||
{regular}{
|
|
||||||
Control the titleformat of the title. Please refer to section
|
|
||||||
\ref{sec:titleformats} for known issues.
|
|
||||||
}
|
|
||||||
|
|
||||||
\DescribeOption{titleformat subtitle}%
|
|
||||||
{regular, smallcaps, allsmallcaps, allcaps}%
|
|
||||||
{regular}{
|
|
||||||
Control the titleformat of the subtitle. Please refer to section
|
|
||||||
\ref{sec:titleformats} for known issues.
|
|
||||||
}
|
|
||||||
|
|
||||||
\DescribeOption{titleformat section}%
|
|
||||||
{regular, smallcaps, allsmallcaps, allcaps}%
|
|
||||||
{regular}{
|
|
||||||
Control the titleformat of the section title. Please refer to section
|
|
||||||
\ref{sec:titleformats} for known issues.
|
|
||||||
}
|
}
|
||||||
|
|
||||||
\subsubsection{Outer theme}
|
\subsubsection{Outer theme}
|
||||||
\DescribeOption{numbering}{none, counter, fraction}{counter}{
|
\DescribeOption{numbering}{none, counter, fraction}{counter}{
|
||||||
In the bottom right corner of each frame the current frame number is
|
Controls whether the frame number at the bottom right of each slide is
|
||||||
displayed. This can be disabled or the total framenumber can be added
|
omitted (|none|), shown (|counter|) or displayed as a fraction of the total
|
||||||
additionally.
|
number of frames (|fraction|).
|
||||||
}
|
}
|
||||||
|
|
||||||
\DescribeOption{progressbar}{none, head, frametitle, foot}{none}{
|
\DescribeOption{progressbar}{none, head, frametitle, foot}{none}{
|
||||||
Adds a progress bar to the top of each frame (|head|), the bottom of each
|
Optionally adds a progress bar to the top of each frame (|head|),
|
||||||
frame (|foot|), or directly below each frame title (|frametitle|).
|
the bottom of each frame (|foot|), or directly below each frame title
|
||||||
}
|
(|frametitle|).
|
||||||
|
|
||||||
\DescribeOption{titleformat frame}%
|
|
||||||
{regular, smallcaps, allsmallcaps, allcaps}%
|
|
||||||
{regular}{
|
|
||||||
Control the titleformat of the frame title. Please refer to section
|
|
||||||
\ref{sec:titleformats} for known issues.
|
|
||||||
}
|
}
|
||||||
|
|
||||||
\subsubsection{Color theme}
|
\subsubsection{Color theme}
|
||||||
\DescribeOption{block}{transparent, fill}{transparent}{
|
\DescribeOption{block}{transparent, fill}{transparent}{
|
||||||
This option controls the block background. It can either be filled with a
|
Optionally adds a light grey background to block environments like |theorem|
|
||||||
light grey or be transparent.
|
and |example|.
|
||||||
}
|
}
|
||||||
|
|
||||||
\DescribeOption{background}{dark, light}{light}{
|
\DescribeOption{background}{dark, light}{light}{
|
||||||
This option defines whether the background shall be dark and the foreground
|
Provides the option to have a dark background and light foreground instead
|
||||||
be light or vice versa.
|
of the reverse.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
\subsubsection{Font theme}
|
||||||
|
|
||||||
|
\DescribeMacro{titleformat-title}
|
||||||
|
\DescribeMacro{titleformat-subtitle}
|
||||||
|
\DescribeMacro{titeformat-section}
|
||||||
|
\DescribeOption{titleformat-frame}%
|
||||||
|
{regular, smallcaps, allsmallcaps, allcaps}%
|
||||||
|
{regular}{
|
||||||
|
Individually controls the format of titles, subtitles, section titles, and
|
||||||
|
frame titles (see |titleformat|, above).
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\subsection{Color Customization}
|
\subsection{Color Customization}
|
||||||
|
|
||||||
The included \themename color theme is used by default, but its colors can be
|
The included \themename color theme is used by default, but its colors can be
|
||||||
|
@ -422,12 +432,13 @@ of \themename specific colors, which can also be redefined to your liking.
|
||||||
\setbeamercolor{progress bar in section page}{ ... }
|
\setbeamercolor{progress bar in section page}{ ... }
|
||||||
\end{lstlisting}
|
\end{lstlisting}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\subsection{Font Customization}
|
\subsection{Font Customization}
|
||||||
|
|
||||||
The default font for \themename is |Fira|. Yet this can be easily changed using
|
The default font for \themename is |Fira|. This can be easily changed using
|
||||||
the standard font selection commands of the \textsf{fontspec} package. So if
|
the standard font selection commands of the \textsf{fontspec} package. So if
|
||||||
you for example prefer the \href{http://font.ubuntu.com}{|Ubuntu|} font family
|
you prefer, for example, the \href{http://font.ubuntu.com}{|Ubuntu|} font family, just add the following two commands after loading the \themename theme.
|
||||||
just add the following two commands after loading the \themename theme.
|
|
||||||
|
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
\setsansfont{Ubuntu}
|
\setsansfont{Ubuntu}
|
||||||
|
@ -438,8 +449,8 @@ just add the following two commands after loading the \themename theme.
|
||||||
\subsubsection{Old style figures}
|
\subsubsection{Old style figures}
|
||||||
|
|
||||||
The regular \textsf{fontspec} mechanism for changing glyph appearance applies
|
The regular \textsf{fontspec} mechanism for changing glyph appearance applies
|
||||||
also to this theme. In case you want to have old style figures in the text but
|
also to this theme. If you want to have old style figures in the text but
|
||||||
regular lined figures for math, you have to add the following to your preamble:
|
regular lined figures for math, you could add the following to your preamble:
|
||||||
|
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
\usefonttheme{professionalfonts} % required for mathspec
|
\usefonttheme{professionalfonts} % required for mathspec
|
||||||
|
@ -477,16 +488,21 @@ based on Tol's work. Use the |mlineplot| key to plot line data and |mbarplot|
|
||||||
or horizontal |mbarplot| to plot bar charts.
|
or horizontal |mbarplot| to plot bar charts.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\section{Known Issues}
|
\section{Known Issues}
|
||||||
|
|
||||||
\subsection{Titleformats}
|
\subsection{Title formats}
|
||||||
\label{sec:titleformats}
|
\label{sec:titleformats}
|
||||||
If you want to use either |smallcaps| or |allsmallcaps| be aware that not
|
|
||||||
every font supports small caps. So make sure the font you are using does.
|
|
||||||
|
|
||||||
|allsmallcaps| and |allcaps| are quite nice from an aesthetic point of view,
|
Be aware that not every font supports small caps, so the |smallcaps| or
|
||||||
but they introduce some issues by using |\MakeLowercase| and |\MakeUppercase|,
|
|allsmallcaps| options may not work if you use a font other than |Fira Sans|.
|
||||||
respectively.
|
In particular, the Computer Modern sans-serif typeface, which is used when
|
||||||
|
\themename is compiled with pdf\LaTeX, does not have a small-caps variant.
|
||||||
|
|
||||||
|
The title format options |allsmallcaps| and |allcaps| are quite nice from an
|
||||||
|
aesthetic point of view, but their use of |\MakeLowercase| and
|
||||||
|
|\MakeUppercase| can cause unexpected problems. For example:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Some commands, like |\\|, do not work inside |\MakeLowercase| and
|
\item Some commands, like |\\|, do not work inside |\MakeLowercase| and
|
||||||
|
@ -505,18 +521,26 @@ respectively.
|
||||||
\href{https://github.com/matze/mtheme/issues/153}{\#153})
|
\href{https://github.com/matze/mtheme/issues/153}{\#153})
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
The |allsmallcaps| and |allcaps| options are safe to use if your titles contain
|
||||||
|
only alphabetic characters and do not require the expansion of any macros.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\subsection{Plain Frame}
|
\subsection{Plain Frame}
|
||||||
The |\plain| command does not work if you override the \themename color theme
|
The |\plain| command does not work if you override the \themename color theme
|
||||||
with the default beamer color theme |fly|.
|
with the default beamer color theme |fly|.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\section{License}
|
\section{License}
|
||||||
|
|
||||||
The theme itself is licensed under a
|
\themename is licensed under a
|
||||||
\href{http://creativecommons.org/licenses/by-sa/4.0/}{Creative Commons
|
\href{http://creativecommons.org/licenses/by-sa/4.0/}{Creative Commons
|
||||||
Attribution-ShareAlike 4.0 International License}. This means that if you change
|
Attribution-ShareAlike 4.0 International License}.
|
||||||
the theme and re-distribute it, you must retain the copyright notice header and
|
This means that if you change the theme and re-distribute it, you must retain
|
||||||
license it under the same CC-BY-SA license. This does not affect the
|
the copyright notice header and license it under the same CC-BY-SA license.
|
||||||
presentation that you create with the theme.
|
This does not affect any presentations that you create with the theme.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,9 @@
|
||||||
%
|
%
|
||||||
% \subsection{\themename color theme}
|
% \subsection{\themename color theme}
|
||||||
%
|
%
|
||||||
% Load required packages.
|
%
|
||||||
|
%
|
||||||
|
% \subsubsection{Package dependencies}
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\RequirePackage{pgfopts}
|
\RequirePackage{pgfopts}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
|
@ -39,7 +41,7 @@
|
||||||
% \subsubsection{Options}
|
% \subsubsection{Options}
|
||||||
%
|
%
|
||||||
% \begin{macro}{block}
|
% \begin{macro}{block}
|
||||||
% This option controls whether the blocks are filled or transparent.
|
% Controls whether block environments are filled or transparent.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\pgfkeys{
|
\pgfkeys{
|
||||||
/metropolis/color/block/.cd,
|
/metropolis/color/block/.cd,
|
||||||
|
@ -51,8 +53,8 @@
|
||||||
% \end{macro}
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% \begin{macro}{colors}
|
% \begin{macro}{colors}
|
||||||
% Defines whether the background shall be dark and the foreground be light or
|
% Provides the option to have a dark background and light foreground instead
|
||||||
% vice versa
|
% of the reverse.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\pgfkeys{
|
\pgfkeys{
|
||||||
/metropolis/color/background/.cd,
|
/metropolis/color/background/.cd,
|
||||||
|
@ -64,7 +66,7 @@
|
||||||
% \end{macro}
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% \begin{macro}{\metropolis@color@setdefaults}
|
% \begin{macro}{\metropolis@color@setdefaults}
|
||||||
% Set default values for color theme options.
|
% Sets default values for color theme options.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\newcommand{\metropolis@color@setdefaults}{
|
\newcommand{\metropolis@color@setdefaults}{
|
||||||
\pgfkeys{/metropolis/color/.cd,
|
\pgfkeys{/metropolis/color/.cd,
|
||||||
|
|
|
@ -29,7 +29,12 @@
|
||||||
%
|
%
|
||||||
% \subsection{\themename font theme}
|
% \subsection{\themename font theme}
|
||||||
%
|
%
|
||||||
% Load required packages.
|
% A |beamer| font theme sets the style of the font used in the document.
|
||||||
|
%
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \subsubsection{Package dependencies}
|
||||||
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\RequirePackage{etoolbox}
|
\RequirePackage{etoolbox}
|
||||||
\RequirePackage{ifxetex}
|
\RequirePackage{ifxetex}
|
||||||
|
@ -37,19 +42,20 @@
|
||||||
\RequirePackage{pgfopts}
|
\RequirePackage{pgfopts}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
%
|
%
|
||||||
% \subsubsection{Load Fira font}
|
%
|
||||||
% If the presentation is compiled with XeLaTeX or LuaLaTeX the fontspec package
|
%
|
||||||
% will be loaded.
|
% \subsubsection{Load Fira fonts}
|
||||||
|
%
|
||||||
|
% If the presentation is compiled with Xe\LaTeX{} or Lua\LaTeX{}, the fontspec
|
||||||
|
% package is loaded and we search for the |Fira| fonts.
|
||||||
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\ifboolexpr{bool {xetex} or bool {luatex}}{
|
\ifboolexpr{bool {xetex} or bool {luatex}}{
|
||||||
\RequirePackage[no-math]{fontspec}
|
\RequirePackage[no-math]{fontspec}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
%
|
%
|
||||||
% To simplify the check whether the |Fira| fonts are installed, a set macros is
|
|
||||||
% defined.
|
|
||||||
%
|
|
||||||
% \begin{macro}{\checkfont}
|
% \begin{macro}{\checkfont}
|
||||||
% Checks if a font is installed and increases |fontsnotfound| counter if not.
|
% Checks if a font is installed; if not, |fontsnotfound| is increased.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\newcounter{fontsnotfound}
|
\newcounter{fontsnotfound}
|
||||||
\newcommand{\checkfont}[1]{%
|
\newcommand{\checkfont}[1]{%
|
||||||
|
@ -82,10 +88,10 @@
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
% \end{macro}
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% Using the previously defined macros it is tried to load the |Fira| fonts.
|
% We search for regular, italic, light, light italic, mono, and mono bold
|
||||||
% First the default |Fira| name will be tried. Second the |Fira| fonts with
|
% fonts under the default |Fira Sans| and |Fira Mono| names. If this fails,
|
||||||
% the suffix OT -- used by some Linux distributions -- will be tried. If this
|
% the suffix OT --- used by some Linux distributions --- will be tried. If this
|
||||||
% also fails a warning will be displayed and the standard fonts will be used.
|
% also fails, a warning will be displayed and the standard fonts will be used.
|
||||||
%
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\iffontsavailable{Fira Sans Light,%
|
\iffontsavailable{Fira Sans Light,%
|
||||||
|
@ -126,6 +132,10 @@
|
||||||
}
|
}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
%
|
%
|
||||||
|
% This concludes the portion of the code which is only run when compiled with
|
||||||
|
% Xe\LaTeX{} or Lua\LaTeX{}. The remainder of this package applies regardless
|
||||||
|
% of the compiling engine.
|
||||||
|
%
|
||||||
%
|
%
|
||||||
%
|
%
|
||||||
% \subsubsection{General font definitions}
|
% \subsubsection{General font definitions}
|
||||||
|
|
|
@ -40,7 +40,10 @@
|
||||||
% \item footnotes and plain text.
|
% \item footnotes and plain text.
|
||||||
% \end{itemize}
|
% \end{itemize}
|
||||||
%
|
%
|
||||||
% Load required packages.
|
%
|
||||||
|
%
|
||||||
|
% \subsubsection{Package dependencies}
|
||||||
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\RequirePackage{etoolbox}
|
\RequirePackage{etoolbox}
|
||||||
\RequirePackage{calc}
|
\RequirePackage{calc}
|
||||||
|
|
|
@ -32,7 +32,10 @@
|
||||||
% A |beamer| outer theme dictates the style of the frame elements traditionally
|
% A |beamer| outer theme dictates the style of the frame elements traditionally
|
||||||
% set outside the body of each slide: the head, footline, and frame title.
|
% set outside the body of each slide: the head, footline, and frame title.
|
||||||
%
|
%
|
||||||
% Load required packages.
|
%
|
||||||
|
%
|
||||||
|
% \subsubsection{Package dependencies}
|
||||||
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\RequirePackage{etoolbox}
|
\RequirePackage{etoolbox}
|
||||||
\RequirePackage{calc}
|
\RequirePackage{calc}
|
||||||
|
@ -44,7 +47,7 @@
|
||||||
% \subsubsection{Options}
|
% \subsubsection{Options}
|
||||||
%
|
%
|
||||||
% \begin{macro}{numbering}
|
% \begin{macro}{numbering}
|
||||||
% This option controls the page numbering.
|
% Adds slide numbers to the bottom right of each slide.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\pgfkeys{
|
\pgfkeys{
|
||||||
/metropolis/outer/numbering/.cd,
|
/metropolis/outer/numbering/.cd,
|
||||||
|
@ -57,7 +60,7 @@
|
||||||
% \end{macro}
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% \begin{macro}{progressbar}
|
% \begin{macro}{progressbar}
|
||||||
% This option controls the progressbar.
|
% Adds a progress bar to the top, bottom, or frametitle of each slide.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\pgfkeys{
|
\pgfkeys{
|
||||||
/metropolis/outer/progressbar/.cd,
|
/metropolis/outer/progressbar/.cd,
|
||||||
|
@ -87,7 +90,7 @@
|
||||||
% \end{macro}
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% \begin{macro}{\metropolis@outer@setdefaults}
|
% \begin{macro}{\metropolis@outer@setdefaults}
|
||||||
% Set default values for outer theme options.
|
% Sets default values for outer theme options.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\newcommand{\metropolis@outer@setdefaults}{
|
\newcommand{\metropolis@outer@setdefaults}{
|
||||||
\pgfkeys{/metropolis/outer/.cd,
|
\pgfkeys{/metropolis/outer/.cd,
|
||||||
|
@ -109,9 +112,9 @@
|
||||||
\setbeamertemplate{navigation symbols}{}
|
\setbeamertemplate{navigation symbols}{}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
%
|
%
|
||||||
% Templates for the frame number. Can be omitted, shown or displayed as a
|
% \begin{macro}{frame numbering}
|
||||||
% fraction of the total frames.
|
% Templates for the frame number. Can be omitted, shown or displayed as a
|
||||||
%
|
% fraction of the total frames.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\defbeamertemplate{frame numbering}{none}{}
|
\defbeamertemplate{frame numbering}{none}{}
|
||||||
\defbeamertemplate{frame numbering}{counter}{\insertframenumber}
|
\defbeamertemplate{frame numbering}{counter}{\insertframenumber}
|
||||||
|
@ -119,7 +122,11 @@
|
||||||
\insertframenumber/\inserttotalframenumber
|
\insertframenumber/\inserttotalframenumber
|
||||||
}
|
}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
%
|
%
|
||||||
|
% \begin{macro}{headline}
|
||||||
|
% \begin{macro}{footline}
|
||||||
|
% Templates for the head- and footline at the top and bottom of each frame.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\defbeamertemplate{headline}{plain}{}
|
\defbeamertemplate{headline}{plain}{}
|
||||||
\defbeamertemplate{footline}{plain}{%
|
\defbeamertemplate{footline}{plain}{%
|
||||||
|
@ -130,16 +137,16 @@
|
||||||
\end{beamercolorbox}%
|
\end{beamercolorbox}%
|
||||||
}
|
}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
% \end{macro}
|
||||||
%
|
%
|
||||||
%
|
%
|
||||||
%
|
%
|
||||||
% \subsubsection{Frametitle}
|
% \subsubsection{Frametitle}
|
||||||
%
|
%
|
||||||
% \begin{macro}{frametitle}
|
% \begin{macro}{frametitle}
|
||||||
%
|
% Templates for the frame title, which is optionally underlined with a
|
||||||
% Templates for the frame title, which is optionally underlined with a
|
% progress bar.
|
||||||
% progress bar.
|
|
||||||
%
|
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\newcommand{\metropolis@frametitlestrut}{
|
\newcommand{\metropolis@frametitlestrut}{
|
||||||
\vphantom{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz()}%
|
\vphantom{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz()}%
|
||||||
|
@ -157,11 +164,9 @@
|
||||||
% \end{macro}
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% \begin{macro}{progress bar in head/foot}
|
% \begin{macro}{progress bar in head/foot}
|
||||||
%
|
% Template for the progress bar optionally displayed below the frame title
|
||||||
% Template for the progress bar optionally displayed below the frame title
|
% on each page. Much of this code is duplicated in the inner theme's
|
||||||
% on each page. Much of this code is duplicated in the inner theme's template
|
% template |progress bar in section page|.
|
||||||
% |progress bar in section page|.
|
|
||||||
%
|
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\newlength{\metropolis@progressinheadfoot}
|
\newlength{\metropolis@progressinheadfoot}
|
||||||
\setbeamertemplate{progress bar in head/foot}{
|
\setbeamertemplate{progress bar in head/foot}{
|
||||||
|
@ -179,7 +184,9 @@
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
% \end{macro}
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% Process package options
|
%
|
||||||
|
%
|
||||||
|
% \subsubsection{Process package options}
|
||||||
%
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\metropolis@outer@setdefaults
|
\metropolis@outer@setdefaults
|
||||||
|
|
|
@ -33,22 +33,20 @@
|
||||||
% \themename theme and route the theme options accordingly. It also
|
% \themename theme and route the theme options accordingly. It also
|
||||||
% provides some custom commands and environments for the user.
|
% provides some custom commands and environments for the user.
|
||||||
%
|
%
|
||||||
% Load the required packages.
|
%
|
||||||
|
%
|
||||||
|
% \subsubsection{Package dependencies}
|
||||||
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\RequirePackage{etoolbox}
|
\RequirePackage{etoolbox}
|
||||||
\RequirePackage{pgfopts}
|
\RequirePackage{pgfopts}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
%
|
%
|
||||||
|
%
|
||||||
|
%
|
||||||
% \subsubsection{Options}
|
% \subsubsection{Options}
|
||||||
%
|
%
|
||||||
% \begin{macro}{\metroset}
|
% Most options are passed off to the component sub-packages.
|
||||||
% First of all we define a macro for the user to set options.
|
|
||||||
% \begin{macrocode}
|
|
||||||
\newcommand{\metroset}[1]{\pgfkeys{/metropolis/.cd,#1}}
|
|
||||||
% \end{macrocode}
|
|
||||||
% \end{macro}
|
|
||||||
%
|
|
||||||
% Then we need to pass the unknown options to the sub-packages.
|
|
||||||
%
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\pgfkeys{/metropolis/.cd,
|
\pgfkeys{/metropolis/.cd,
|
||||||
|
@ -60,7 +58,8 @@
|
||||||
},
|
},
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
%
|
%
|
||||||
% We have to forwarded keys that affect multiple sub-packages manually.
|
% Currently, the |block| option affects two subthemes and has to be handled
|
||||||
|
% separately.
|
||||||
%
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
block/.code=\pgfkeysalso{
|
block/.code=\pgfkeysalso{
|
||||||
|
@ -70,8 +69,8 @@
|
||||||
}
|
}
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
%
|
%
|
||||||
% Control the titleformat of the plain title
|
|
||||||
% \begin{macro}{titleformat-plain}
|
% \begin{macro}{titleformat-plain}
|
||||||
|
% Controls the formatting of the text on standout ``plain'' frames.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\pgfkeys{
|
\pgfkeys{
|
||||||
/metropolis/titleformat-plain/.cd,
|
/metropolis/titleformat-plain/.cd,
|
||||||
|
@ -103,7 +102,8 @@
|
||||||
% \end{macro}
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% \begin{macro}{titleformat}
|
% \begin{macro}{titleformat}
|
||||||
% Control the titleformat of every title type together
|
% Sets a standard format for titles, subtitles, section titles, frame
|
||||||
|
% titles, and the text on standout ``plain'' frames.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\pgfkeys{
|
\pgfkeys{
|
||||||
/metropolis/titleformat/.code=\pgfkeysalso{
|
/metropolis/titleformat/.code=\pgfkeysalso{
|
||||||
|
@ -147,6 +147,7 @@
|
||||||
%
|
%
|
||||||
% Having processed the options, we can now load the component sub-packages of
|
% Having processed the options, we can now load the component sub-packages of
|
||||||
% the theme.
|
% the theme.
|
||||||
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\useinnertheme{metropolis}
|
\useinnertheme{metropolis}
|
||||||
\useoutertheme{metropolis}
|
\useoutertheme{metropolis}
|
||||||
|
@ -168,13 +169,20 @@
|
||||||
%
|
%
|
||||||
% \subsubsection{Custom commands}
|
% \subsubsection{Custom commands}
|
||||||
%
|
%
|
||||||
% We define custom commands in this package as their proper usage may depend
|
% The parent theme defines custom commands as their proper usage may depend
|
||||||
% on multiple sub-packages.
|
% on multiple sub-packages.
|
||||||
%
|
%
|
||||||
|
% \begin{macro}{\metroset}
|
||||||
|
% Allows the user to change options midway through a presentation.
|
||||||
|
% \begin{macrocode}
|
||||||
|
\newcommand{\metroset}[1]{\pgfkeys{/metropolis/.cd,#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% \begin{macro}{\plain}
|
% \begin{macro}{\plain}
|
||||||
% Creates a plain frame with dark background, suitable for displaying images
|
% Creates a plain frame with dark background, suitable for displaying images
|
||||||
% or a few words.
|
% or a few words. The format of the text can be set with the
|
||||||
|
% |titleformat plain| option.
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\def\metropolis@plaintitleformat#1{#1}
|
\def\metropolis@plaintitleformat#1{#1}
|
||||||
\newcommand{\plain}[2][]{%
|
\newcommand{\plain}[2][]{%
|
||||||
|
@ -201,7 +209,9 @@
|
||||||
% \end{macrocode}
|
% \end{macrocode}
|
||||||
% \end{macro}
|
% \end{macro}
|
||||||
%
|
%
|
||||||
% Process package options
|
%
|
||||||
|
%
|
||||||
|
% \subsubsection{Process package options}
|
||||||
%
|
%
|
||||||
% \begin{macrocode}
|
% \begin{macrocode}
|
||||||
\metropolis@setdefaults
|
\metropolis@setdefaults
|
||||||
|
|
Loading…
Reference in New Issue