texlive[44959] Master: hackthefootline (5aug17)
commits+karl at tug.org
commits+karl at tug.org
Sat Aug 5 22:55:42 CEST 2017
Revision: 44959
http://tug.org/svn/texlive?view=revision&revision=44959
Author: karl
Date: 2017-08-05 22:55:42 +0200 (Sat, 05 Aug 2017)
Log Message:
-----------
hackthefootline (5aug17)
Modified Paths:
--------------
trunk/Master/tlpkg/bin/tlpkg-ctan-check
trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
Added Paths:
-----------
trunk/Master/texmf-dist/doc/latex/hackthefootline/
trunk/Master/texmf-dist/doc/latex/hackthefootline/README.md
trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.pdf
trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.tex
trunk/Master/texmf-dist/tex/latex/hackthefootline/
trunk/Master/texmf-dist/tex/latex/hackthefootline/hackthefootline.sty
trunk/Master/tlpkg/tlpsrc/hackthefootline.tlpsrc
Added: trunk/Master/texmf-dist/doc/latex/hackthefootline/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/hackthefootline/README.md (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/hackthefootline/README.md 2017-08-05 20:55:42 UTC (rev 44959)
@@ -0,0 +1,6 @@
+# hackthefootline
+Version 2017/08/04
+
+Provides arbitrary footline selection for LaTeX beamer's standard themes.
+
+This work is licensed under the LPPL 1.3c or any later version.
Property changes on: trunk/Master/texmf-dist/doc/latex/hackthefootline/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.pdf 2017-08-05 09:14:35 UTC (rev 44958)
+++ trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.pdf 2017-08-05 20:55:42 UTC (rev 44959)
Property changes on: trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.tex (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.tex 2017-08-05 20:55:42 UTC (rev 44959)
@@ -0,0 +1,324 @@
+%% This is file 'hackthefootline-doc.tex', Version 2017-08-04
+%% Copyright 2017 Sebastian Friedl <sfr682k at t-online.de>
+%%
+%% This work may be distributed and/or modified under the conditions of the LaTeX Project
+%% Public License, either version 1.3c of this license or (at your option) any later version.
+%% The latest version of this license is available at
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX version 2008-05-04 or later
+%%
+%% This work has the LPPL maintenace status 'maintained'.
+%% The current maintainer of this work is Sebastian Friedl.
+%%
+%% This work consists of the files hackthefootline.sty and hackthefootline-doc.tex
+%%
+%% -------------------------------------------------------------------------------------------
+%%
+%% The hackthefootline package is a tool providing arbitrary footline selection for
+%% LaTeX beamer's standard themes (other themes may also work, of course)
+%%
+%% -------------------------------------------------------------------------------------------
+%%
+%% Please report bugs and other problems as well as suggestions for improvements
+%% to my email address (sfr682k at t-online.de).
+%%
+%% -------------------------------------------------------------------------------------------
+%%
+%% Acknowledgement:
+%% The basic layout of the two- and three-column footline is based on the original LaTeX
+%% beamer split and infolines outer themes written by Till Tantau.
+%%
+%% -------------------------------------------------------------------------------------------
+
+% !TeX spellcheck = en_GB
+
+% !TeX document-id = {681db40e-7a84-4428-b4f4-84e230e3ba79}
+% !TeX program=lualatex
+% !TeX TXS-program:compile=txs:///lualatex/[--shell-escape]
+
+
+\documentclass[11pt]{ltxdoc}
+
+\usepackage[charter]{mathdesign}
+\usepackage[no-math]{fontspec}
+\usepackage{polyglossia}
+\setdefaultlanguage{english}
+
+\usepackage{csquotes}
+\usepackage{hologo}
+\usepackage{hyperref}
+\usepackage{minted}
+ \newcommand{\ltxcmd}[1]{\mintinline{LaTeX}{#1}}
+\usepackage[english]{selnolig}
+\usepackage{tikz}
+
+\parindent 0pt
+
+\setmainfont{Noto Serif}
+\setsansfont[Scale=MatchLowercase]{Source Sans Pro}
+\setmonofont[Scale=MatchLowercase]{OCR A Extended}[AutoFakeBold=1.75,AutoFakeSlant=0.225]
+
+\usepackage[left=4.50cm,right=2.75cm,top=3.25cm,bottom=2.75cm,nohead]{geometry}
+
+\hyphenation{}
+
+
+\title{The \texttt{\bfseries hackthefootline} package \\ {\large\url{https://github.com/SFr682k/hackthefootline}}}
+\author{Sebastian Friedl \\ \href{mailto:sfr682k at t-online.de}{\ttfamily sfr682k at t-online.de}}
+\date{2017/08/04}
+
+\hypersetup{pdftitle={The hackthefootline package},pdfauthor={Sebastian Friedl}}
+
+\begin{document}
+ \maketitle
+ \thispagestyle{empty}
+
+ \begin{center} \itshape
+ Dedicated to all the \LaTeX\ beamer users \dots
+
+ \medskip
+ \dots who load two different themes in the same presentation \\ or redefine commands to obtain the desired footline \dots
+
+ \medskip
+ \dots and the other guys just using \mintinline{LaTeX}{\setbeamertemplate{footline}}
+ \end{center}
+
+ \medskip
+ \begin{abstract}
+ \hspace{-1.5em}%
+ Provides arbitrary footline selection for \LaTeX\ beamer's standard themes (and maybe other themes) by \enquote{hacking} it. \\
+ In this content, \enquote{hacking} means to redefine the footline provided by theme with one of the footline templates provided by this package.
+ \end{abstract}
+
+
+ \tableofcontents
+
+ \clearpage
+
+
+
+ \subsection*{Dependencies and other requirements}
+ \addcontentsline{toc}{subsection}{Dependencies and other requirements}
+ \emph{Load the \texttt{hackthefootline} package only in \LaTeX\ beamer documents!} \\
+ The package itself depends on the following other packages:
+
+ \medskip
+ \DescribeMacro{appendixnumber-}\DescribeMacro{beamer}
+ The \texttt{appendixnumberbeamer} package implements a simple solution for appendix frames not being calculated into the total number of frames
+
+ \medskip
+ \DescribeMacro{etoolbox}
+ Provides access on \hologo{eTeX} primitives
+
+ \medskip
+ \DescribeMacro{calc}
+ Required for basic calculations
+
+ \medskip
+ \DescribeMacro{numprint}
+ Prints out numbers, counters and lengths
+
+ \bigskip
+ The dependencies can be removed completely by passing some options to the package. See section \ref{packageoptions} for further details.
+
+
+ \subsection*{License}
+ \begin{small}
+ \addcontentsline{toc}{subsection}{License}
+ \textcopyright\ 2017 Sebastian Friedl
+
+ \smallskip
+ This work may be distributed and/or modified under the conditions of the \LaTeX\ Project Public License, either version 1.3c of this license or (at your option) any later version.
+
+ \smallskip
+ The latest version of this license is available at \url{http://www.latex-project.org/lppl.txt} and version 1.3c or later is part of all distributions of \LaTeX\ version 2008-05-04 or later.
+
+ \smallskip
+ This work has the LPPL maintenace status \enquote*{maintained}. The current maintainer of this work is Sebastian Friedl. \\
+ This work consists of the following files:
+ \begin{itemize} \itemsep 0pt
+ \item \texttt{hackthefootline.sty} and
+ \item \texttt{hackthefootline-doc.tex}
+ \end{itemize}
+ \end{small}
+
+
+ \subsection*{Acknowledgement}
+ \addcontentsline{toc}{subsection}{Acknowledgement}
+ The basic layout of the two-- and three--column footline is based on the original \LaTeX\ beamer split and infolines outer themes written by Till Tantau.
+
+
+ \subsection*{Notice: Behaviour inside the presentation's appendix}
+ \addcontentsline{toc}{subsection}{Notice: Behaviour inside the presentation's appendix}
+ By default, this package \emph{does not count appendix frames} into the total number of frames and resets the counter for frame numbers to 1 as soon as the \ltxcmd{\appendix} command is used. \\
+ Also, frame numbers won't be displayed on frames inside the appendix.
+
+ \medskip
+ This behaviour can be avoided by passing the \texttt{countappendixframes} option to the package.
+
+
+
+ \clearpage
+
+
+ % DOCUMENTATION PART ------------------------------------------------------------------------------------------------------------------------
+
+ \section{Using the package}
+ The \mintinline{LaTeX}{\usepackage[<Options>]{hackthefootline}} command loads the package\footnote{To do so, the package has to be installed in a way \LaTeX\ is able to find it}. The complete list of options can be found in section \ref{packageoptions}.
+
+ \medskip
+ At least, you have to pass the \emph{footline's number of columns} as an option to the package \textit{(available: \texttt{onecol}, \texttt{twocols} or \texttt{threecols})}. If you don't do so, the footline gets removed.
+
+
+ \section{Package options} \label{packageoptions}
+ The \texttt{hackthefootline} package provides the following options:
+
+ \medskip
+ \DescribeMacro{onecol}
+ The \enquote{initial footline hack} produces a one--column footline
+
+ \medskip
+ \DescribeMacro{twocols}
+ The \enquote{initial footline hack} produces a two--column footline
+
+ \medskip
+ \DescribeMacro{threecols}
+ The \enquote{initial footline hack} produces a three--column footline
+
+ \medskip
+ \DescribeMacro{countappendix-}\DescribeMacro{frames}
+ If the \texttt{countappendixframes} option is passed to the package, appendix frames are counted into the total number of frames. \\
+ \textit{Removes following dependencies: \texttt{appendixnumberbeamer}, \texttt{etoolbox}}
+
+ \medskip
+ \DescribeMacro{nofun}
+ Doesn't support frame numbers being shown as \enquote{percent of presentation} \\
+ \textit{Removes following dependencies: \texttt{calc}, \texttt{numprint}}
+
+
+ \section{Default configurations}
+ \subsection*{One--column footline}
+ \begin{tikzpicture}
+ \draw (-.5\textwidth,1.25ex) rectangle (.5\textwidth,-1.25ex);
+ \node[right] at (-.5\textwidth,0) {Short author, short institute:~~~~Short title};
+ \node[left] at ( .5\textwidth,0) {1 / 1};
+ \end{tikzpicture}
+
+ \subsection*{Two--column footline}
+ \begin{tikzpicture}
+ \draw (-.5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \draw ( .5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \node[left] at (0,0) {Short author};
+ \node[right] at (0,0) {Short title};
+ \end{tikzpicture}
+
+ \subsection*{Three-column footline}
+ \begin{tikzpicture}
+ \draw (-.5000\textwidth,1.25ex) rectangle (-.1667\textwidth,-1.25ex);
+ \draw (-.1667\textwidth,1.25ex) rectangle ( .1667\textwidth,-1.25ex);
+ \draw ( .1667\textwidth,1.25ex) rectangle ( .5000\textwidth,-1.25ex);
+ \node[right] at (-.5\textwidth,0) {Short auth. (short inst.)};
+ \node at (0, 0) {Short title};
+ \node[left] at ( .5\textwidth,0) {Short date~~~~1/1};
+ \end{tikzpicture}
+
+
+ \section{Defined templates}
+ The \texttt{hackthefootline} package defines templates with a variety of styles to provide easy personalisation. All defined templates are listed in table \ref{deftemplates}. Switching between different styles of a template is described in section \ref{switchingtemplates}.
+
+ \begin{table} \centering\renewcommand{\arraystretch}{1.25}
+ \begin{tabular}{lll}
+ Template & Style & Switching command \\ \hline\hline
+ \textbf{Title} & \textit{Short title} & \ltxcmd{\htfshorttitle} \\
+ & \textit{Long presentation title} & \ltxcmd{\htflongtitle} \\
+ & \texttt{no title} & \ltxcmd{\htfnotitle} \\ \hline
+ \textbf{Author/Inst.} & \textit{Short author} & \ltxcmd{\htfonlyauthor} \\
+ & \textit{Short institute} & \ltxcmd{\htfonlyinstitute} \\
+ & \textit{Short author (short inst.)} & \ltxcmd{\htfinstitutepths} \\
+ & \textit{Short inst. (short author)} & \ltxcmd{\htfauthorpths} \\
+ & \textit{Short author, short inst.} & \ltxcmd{\htfauthinst} \\
+ & \texttt{no author/inst.} & \ltxcmd{\htfnoauthinst} \\ \hline
+ \textbf{Date} & \textit{Short date} & \ltxcmd{\htfshortdate} \\
+ & \textit{Long date} & \ltxcmd{\htflongdate} \\
+ & \texttt{no date} & \ltxcmd{\htfnodate} \\ \hline
+ \textbf{Frame nr.} & \textit{1} & \ltxcmd{\htfcounterframenrs} \\
+ & \textit{1 / 5} & \ltxcmd{\htffractionframenrs} \\
+ & \textit{42\,\%} & \ltxcmd{\htfpercentframenrs} \\
+ & \texttt{no frame numbers} & \ltxcmd{\htfnoframenrs} \\ \hline
+ \textbf{Separators:} & \textit{Author: Title} & \ltxcmd{\htfcolonsep} \\
+ & \textit{Author, Title} & \ltxcmd{\htfcommasep} \\
+ & \textit{Author~~~~Title} & \ltxcmd{\htfsepspace}
+ \end{tabular}
+
+ \caption{Defined templates and styles}
+ \label{deftemplates}
+ \end{table}
+
+ \section{Switching styles} \label{switchingtemplates}
+ The styles of the templates at the initial hack are selected depending on the footline's default settings. \\
+ You are able to switch styles inside the \texttt{document} environment by \dots
+ \begin{enumerate}
+ \item changing the current settings using the commands listed in table~\ref{deftemplates} \textit{\textbf{and}}
+ %
+ \item applying the settings with the \ltxcmd{\hackthefootline} command. \par
+ \textbf{Your changes to the footline's settings only apply when executing this command.}
+ \end{enumerate}
+
+ \textit{Example:} \vspace{-.75em}
+ \begin{minted}[gobble=2,tabsize=4]{LaTeX}
+ \htflongdate % Changes current settings ...
+ \htfauthinst
+ \hackthefootline % ... and applies the changes
+ \end{minted}
+
+ \bigskip
+ If a template is not shown in the current configuration (e.~g. the frame number in the two--column footline), just switch the style:
+
+ \medskip
+ \begin{tikzpicture}
+ \draw (-.5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \draw ( .5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \node[left] at (0,0) {Short author};
+ \node[right] at (0,0) {Short title};
+ \end{tikzpicture}
+ \vspace{-1.5em}
+ \begin{minted}[gobble=2,tabsize=4]{LaTeX}
+ \htfcounterframenrs
+ \hackthefootline
+ \end{minted}
+ \begin{tikzpicture}
+ \draw (-.5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \draw ( .5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \node[left] at (0, 0) {Short author};
+ \node[right] at (0, 0) {Short title};
+ \node[left] at ( .5\textwidth,0) {1};
+ \end{tikzpicture}
+
+
+ \bigskip\bigskip
+ Also, a template shown in the current configuration can be \enquote{removed} by switching the style:
+
+ \medskip
+ \begin{tikzpicture}
+ \draw (-.5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \draw ( .5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \node[left] at (0, 0) {Short author};
+ \node[right] at (0, 0) {Short title};
+ \node[left] at ( .5\textwidth,0) {1};
+ \end{tikzpicture}
+ \vspace{-1.5em}
+ \begin{minted}[gobble=2,tabsize=4]{LaTeX}
+ \htfnoauthinst
+ \hackthefootline
+ \end{minted}
+ \begin{tikzpicture}
+ \draw (-.5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \draw ( .5\textwidth,1.25ex) rectangle (0,-1.25ex);
+ \node[right] at (0, 0) {Short title};
+ \node[left] at ( .5\textwidth,0) {1};
+ \end{tikzpicture}
+
+ \vfill
+ \thispagestyle{empty}
+ \listoftables
+\end{document}
Property changes on: trunk/Master/texmf-dist/doc/latex/hackthefootline/hackthefootline-doc.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/hackthefootline/hackthefootline.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/hackthefootline/hackthefootline.sty (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/hackthefootline/hackthefootline.sty 2017-08-05 20:55:42 UTC (rev 44959)
@@ -0,0 +1,414 @@
+%% This is file 'hackthefootline.sty', Version 2017-08-04
+%% Copyright 2017 Sebastian Friedl <sfr682k at t-online.de>
+%%
+%% This work may be distributed and/or modified under the conditions of the LaTeX Project
+%% Public License, either version 1.3c of this license or (at your option) any later version.
+%% The latest version of this license is available at
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX version 2008-05-04 or later
+%%
+%% This work has the LPPL maintenace status 'maintained'.
+%% The current maintainer of this work is Sebastian Friedl.
+%%
+%% This work consists of the files hackthefootline.sty and hackthefootline-doc.tex
+%%
+%% -------------------------------------------------------------------------------------------
+%%
+%% The hackthefootline package is a tool providing arbitrary footline selection for
+%% LaTeX beamer's standard themes (it may work with other themes as well)
+%%
+%% -------------------------------------------------------------------------------------------
+%%
+%% Please report bugs and other problems as well as suggestions for improvements
+%% to my email address (sfr682k at t-online.de).
+%%
+%% -------------------------------------------------------------------------------------------
+%%
+%% Acknowledgement:
+%% The basic layout of the two- and three-column footline is based on the original LaTeX
+%% beamer split and infolines outer themes written by Till Tantau.
+%%
+%% -------------------------------------------------------------------------------------------
+
+
+\ProvidesPackage{hackthefootline}[2017/08/04 hackthefootline: arbitrary footline selection for LaTeX beamer's standard themes]
+\mode<presentation>
+
+
+
+\newcommand{\htfprintmessage}{%
+ \typeout{}
+ \typeout{========================================}
+ \typeout{FOOTLINE HACK PERFORMED}
+ \typeout{}
+ \typeout{hackthefootline package}
+ \typeout{Version 2017/08/04}
+ \typeout{}
+ \typeout{(c) 2017 Sebastian Friedl}
+ \typeout{Licensed under LPPL 1.3c or later}
+ \typeout{========================================}
+ \typeout{}}
+
+
+
+% OPTION AND VARIABLES DECLARATION --------------------------------------------------------------------------------------------------------------
+
+\newif\ifbeamer at htfonecolfootline
+\beamer at htfonecolfootlinefalse
+\DeclareOptionBeamer{onecol}{\beamer at htfonecolfootlinetrue}
+
+\newif\ifbeamer at htftwocolsfootline
+\beamer at htftwocolsfootlinefalse
+\DeclareOptionBeamer{twocols}{\beamer at htftwocolsfootlinetrue}
+
+\newif\ifbeamer at htfthreecolsfootline
+\beamer at htfthreecolsfootlinefalse
+\DeclareOptionBeamer{threecols}{\beamer at htfthreecolsfootlinetrue}
+
+\newif\ifbeamer at htfcountappendixframes
+\beamer at htfcountappendixframesfalse
+\DeclareOptionBeamer{countappendixframes}{\beamer at htfcountappendixframestrue}
+
+\newif\ifbeamer at htffunnystuff
+\beamer at htffunnystufftrue
+\DeclareOptionBeamer{nofun}{\beamer at htffunnystufffalse}
+
+
+\ProcessOptionsBeamer
+
+
+% Show frame numbers?
+\newif\ifbeamer at htfshowframenrs
+\beamer at htfshowframenrstrue
+
+% Check for author and/or institute when inserting the separation symbol?
+\newif\ifbeamer at htfcheckauth
+\newif\ifbeamer at htfcheckinst
+\newif\ifbeamer at htfinsertsep
+\newcommand{\htfcheckauthor}{\beamer at htfcheckauthtrue \beamer at htfcheckinstfalse}
+\newcommand{\htfcheckinstit}{\beamer at htfcheckauthfalse \beamer at htfcheckinsttrue}
+\newcommand{\htfcheckboth}{ \beamer at htfcheckauthtrue \beamer at htfcheckinsttrue}
+\newcommand{\htfchecknone}{ \beamer at htfcheckauthfalse \beamer at htfcheckinstfalse}
+
+% Has the navigation bar been removed by the package?
+\newif\ifbeamer at navigationremoved
+\beamer at navigationremovedfalse
+
+% Variables
+\newif\ifbeamer at htfnotitle \newif\ifbeamer at htfshorttitle \newif\ifbeamer at htflongtitle
+\newif\ifbeamer at htfnoauthinst \newif\ifbeamer at htfonlyauthor \newif\ifbeamer at htfonlyinstitute
+\newif\ifbeamer at htfinstitutepths \newif\ifbeamer at htfauthorpths \newif\ifbeamer at htfauthinst
+\newif\ifbeamer at htfnodate \newif\ifbeamer at htfshortdate \newif\ifbeamer at htflongdate
+\newif\ifbeamer at htfnoframenrs \newif\ifbeamer at htfcounterframenrs \newif\ifbeamer at htffractionframenrs
+\newif\ifbeamer at htfpercentframenrs
+\newif\ifbeamer at htfcolonsep \newif\ifbeamer at htfcommasep \newif\ifbeamer at htfsepspace
+\newif\ifbeamer at htfnofootline
+
+
+
+% DEFAULT VALUES --------------------------------------------------------------------------------------------------------------------------------
+
+\beamer at htfnofootlinefalse
+\ifbeamer at htfonecolfootline\else
+ \ifbeamer at htftwocolsfootline\else
+ \ifbeamer at htfthreecolsfootline\else
+ \beamer at htfnofootlinetrue
+\fi \fi \fi
+
+\newcommand{\htfnofootlinedefault}{%
+ \beamer at htfnoframenrstrue \beamer at htfcounterframenrsfalse \beamer at htffractionframenrsfalse
+ \beamer at htfpercentframenrsfalse \beamer at htfshowframenrsfalse
+}
+
+\newcommand{\htfonecolfootlinedefault}{%
+ \beamer at htfnotitlefalse \beamer at htfshorttitletrue \beamer at htflongtitlefalse
+ \beamer at htfnoauthinstfalse \beamer at htfonlyauthorfalse \beamer at htfonlyinstitutefalse
+ \beamer at htfinstitutepthsfalse \beamer at htfauthorpthsfalse \beamer at htfauthinsttrue
+ \beamer at htfnodatetrue \beamer at htfshortdatefalse \beamer at htflongdatefalse
+ \beamer at htfnoframenrsfalse \beamer at htfcounterframenrsfalse \beamer at htffractionframenrstrue
+ \beamer at htfpercentframenrsfalse
+ \beamer at htfcolonseptrue \beamer at htfcommasepfalse \beamer at htfsepspacefalse
+}
+
+\newcommand{\htftwocolsfootlinedefault}{%
+ \beamer at htfnotitlefalse \beamer at htfshorttitletrue \beamer at htflongtitlefalse
+ \beamer at htfnoauthinstfalse \beamer at htfonlyauthortrue \beamer at htfonlyinstitutefalse
+ \beamer at htfinstitutepthsfalse \beamer at htfauthorpthsfalse \beamer at htfauthinstfalse
+ \beamer at htfnodatetrue \beamer at htfshortdatefalse \beamer at htflongdatefalse
+ \beamer at htfnoframenrstrue \beamer at htfcounterframenrsfalse \beamer at htffractionframenrsfalse
+ \beamer at htfpercentframenrsfalse
+}
+
+\newcommand{\htfthreecolsfootlinedefault}{%
+ \beamer at htfnotitlefalse \beamer at htfshorttitletrue \beamer at htflongtitlefalse
+ \beamer at htfnoauthinstfalse \beamer at htfonlyauthorfalse \beamer at htfonlyinstitutefalse
+ \beamer at htfinstitutepthstrue \beamer at htfauthorpthsfalse \beamer at htfauthinstfalse
+ \beamer at htfnodatefalse \beamer at htfshortdatetrue \beamer at htflongdatefalse
+ \beamer at htfnoframenrsfalse \beamer at htfcounterframenrsfalse \beamer at htffractionframenrstrue
+ \beamer at htfpercentframenrsfalse
+}
+
+
+
+% ACTIONS FOR NOT COUNTING APPENDIX FRAMES ------------------------------------------------------------------------------------------------------
+
+\ifbeamer at htfcountappendixframes\else
+ % Required packages
+ \RequirePackage{appendixnumberbeamer}
+ \RequirePackage{etoolbox}
+
+ % Removes frame numbers for appendix slides
+ \apptocmd{\appendix}{%
+ \beamer at htfshowframenrsfalse
+ }{}{}
+\fi
+
+
+
+% REQUIREMENTS FOR SOME "FUNNY STUFF" -----------------------------------------------------------------------------------------------------------
+
+\ifbeamer at htffunnystuff
+ % Frame numbering in %: requirements, package settings, variables, commands
+ \RequirePackage{calc}
+ \RequirePackage[addmissingzero,autolanguage,nosepfour]{numprint}
+ \npdefunit{percent}{\%}{1}
+ \newlength{\progress}
+ \newcommand{\updateprogress}{\setlength{\progress}{100pt*\ratio{\insertframenumber pt}{\inserttotalframenumber pt}}}
+\fi
+
+
+
+% TEMPLATES: TITLE ------------------------------------------------------------------------------------------------------------------------------
+
+\defbeamertemplate*{htf-title}{none}{}
+\defbeamertemplate*{htf-title}{short}{\insertshorttitle}
+\defbeamertemplate*{htf-title}{long}{\inserttitle}
+
+
+
+% TEMPLATES: AUTHOR / INSTITUTE -----------------------------------------------------------------------------------------------------------------
+
+\defbeamertemplate*{htf-authinst}{none}{}
+\defbeamertemplate*{htf-authinst}{onlyauth}{\insertshortauthor}
+\defbeamertemplate*{htf-authinst}{onlyinst}{\insertshortinstitute}
+\defbeamertemplate*{htf-authinst}{instpths}{\insertshortauthor\ifx\beamer at shortinstitute\@empty\else~~(\insertshortinstitute)\fi}
+\defbeamertemplate*{htf-authinst}{authpths}{\insertshortinstitute\ifx\beamer at shortauthor\@empty\else~~(\insertshortauthor)\fi}
+\defbeamertemplate*{htf-authinst}{bothcmma}{\insertshortauthor\ifx\beamer at shortinstitute\@empty\else,~\insertshortinstitute\fi}
+
+
+
+% TEMPLATES: DATE -------------------------------------------------------------------------------------------------------------------------------
+
+\defbeamertemplate*{htf-date}{none}{}
+\defbeamertemplate*{htf-date}{short}{\insertshortdate}
+\defbeamertemplate*{htf-date}{long}{\insertdate}
+
+
+
+% TEMPLATES: FRAME NUMBERS ----------------------------------------------------------------------------------------------------------------------
+
+\defbeamertemplate*{htf-framenrs}{none}{}
+\defbeamertemplate*{htf-framenrs}{counter}{\insertframenumber}
+\defbeamertemplate*{htf-framenrs}{fraction}{\insertframenumber~/~\inserttotalframenumber}
+\ifbeamer at htffunnystuff
+ \defbeamertemplate*{htf-framenrs}{percent}{\updateprogress\nprounddigits{0}\lenprint[percent]{\progress}}
+\fi
+
+
+
+% TEMPLATES: AUTHOR-TITLE-SEPERATOR -------------------------------------------------------------------------------------------------------------
+
+\defbeamertemplate*{htf-atsep}{colon}{:~~~~}
+\defbeamertemplate*{htf-atsep}{comma}{,~}
+\defbeamertemplate*{htf-atsep}{space}{~~~~~~~~~~}
+
+
+
+% FOOTLINE DEFINITIONS --------------------------------------------------------------------------------------------------------------------------
+
+% No footline
+\defbeamertemplate*{footline}{htf-none}{}
+
+% One column
+\defbeamertemplate*{footline}{htf-onecol}{%
+ \begin{beamercolorbox}[wd=\paperwidth,ht=2.25ex,dp=1ex,leftskip=.3cm,rightskip=.3cm]{palette primary}%
+ \usebeamerfont{author in head/foot}
+ \usebeamertemplate{htf-authinst}%
+ %
+ \beamer at htfinsertsepfalse
+ \ifbeamer at htfcheckauth\ifx\beamer at shortauthor\@empty\else\beamer at htfinsertseptrue\fi\fi
+ \ifbeamer at htfcheckinst\ifx\beamer at shortinstitute\@empty\else\beamer at htfinsertseptrue\fi\fi
+ %
+ \ifx\beamer at shorttitle\@empty \beamer at htfinsertsepfalse \fi
+ \ifbeamer at htfnotitle \beamer at htfinsertsepfalse \fi
+ %
+ \ifbeamer at htfinsertsep\usebeamertemplate{htf-atsep}\fi
+ %
+ \usebeamerfont{title in head/foot}
+ \usebeamertemplate{htf-title}
+ \hfill
+ \usebeamercolor{date in head/foot}
+ \usebeamertemplate{htf-date}
+ % Dummy space for frame numbers
+ \ifbeamer at htfshowframenrs \hspace{5.75em} \fi
+ \end{beamercolorbox}%
+ \ifbeamer at htfshowframenrs
+ \vspace{-3.25ex}
+ \hfill%
+ \begin{beamercolorbox}[wd=6.25em,ht=2.25ex,dp=1ex,right,rightskip=.3cm]{palette primary}
+ \usebeamertemplate{htf-framenrs}
+ \end{beamercolorbox}
+ \fi}
+
+% Two columns
+\defbeamertemplate*{footline}{htf-twocols}{%
+ \leavevmode%
+ \hbox{\begin{beamercolorbox}[wd=.5\paperwidth,ht=2.5ex,dp=1.125ex,leftskip=.3cm,rightskip=.3cm]{author in head/foot}%
+ \usebeamerfont{author in head/foot}\usebeamertemplate{htf-date}\hfill\usebeamertemplate{htf-authinst}
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.5ex,dp=1.125ex,leftskip=.3cm,rightskip=.3cm]{title in head/foot}%
+ \usebeamerfont{title in head/foot}\usebeamertemplate{htf-title}\hfill
+ \ifbeamer at htfshowframenrs \usebeamertemplate{htf-framenrs} \fi
+ \end{beamercolorbox}}%
+ \vskip0pt}
+
+% Three columns
+\defbeamertemplate*{footline}{htf-threecols}{
+ \leavevmode%
+ \hbox{%
+ \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,left,leftskip=.3cm]{author in head/foot}%
+ \usebeamerfont{author in head/foot}\usebeamertemplate{htf-authinst}
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{title in head/foot}%
+ \usebeamerfont{title in head/foot}\usebeamertemplate{htf-title}
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,right,rightskip=.3cm]{date in head/foot}%
+ \usebeamerfont{date in head/foot}\usebeamertemplate{htf-date}%
+ % Dummy space for frame numbers
+ \ifbeamer at htfshowframenrs \hspace{5.75em} \fi
+ \end{beamercolorbox}%
+ \ifbeamer at htfshowframenrs%
+ \hspace{-6.25em}%
+ \begin{beamercolorbox}[wd=6.25em,ht=2.25ex,dp=1ex,right,rightskip=.3cm]{date in head/foot}%
+ \usebeamertemplate{htf-framenrs}
+ \end{beamercolorbox}%
+ \fi}%
+ \vskip0pt}
+
+
+
+% CONFIGURATION COMMANDS ------------------------------------------------------------------------------------------------------------------------
+
+% Internal commands setting all variables of a certain template to "false"
+\newcommand{\htfcleartitle}{%
+ \beamer at htfnotitlefalse \beamer at htfshorttitlefalse \beamer at htflongtitlefalse}
+\newcommand{\htfclearauthinst}{%
+ \beamer at htfnoauthinstfalse \beamer at htfonlyauthorfalse \beamer at htfonlyinstitutefalse
+ \beamer at htfinstitutepthsfalse \beamer at htfauthorpthsfalse \beamer at htfauthinstfalse}
+\newcommand{\htfcleardate}{%
+ \beamer at htfnodatefalse \beamer at htfshortdatefalse \beamer at htflongdatefalse}
+\newcommand{\htfclearframenrs}{%
+ \beamer at htfnoframenrsfalse \beamer at htfcounterframenrsfalse \beamer at htffractionframenrsfalse
+ \beamer at htfpercentframenrsfalse \beamer at htfshowframenrsfalse}
+\newcommand{\htfclearsep}{%
+ \beamer at htfcolonsepfalse \beamer at htfcommasepfalse \beamer at htfsepspacefalse}
+\newcommand{\htfclearfootline}{%
+ \beamer at htfonecolfootlinefalse \beamer at htftwocolsfootlinefalse \beamer at htfthreecolsfootlinefalse
+ \beamer at htfnofootlinefalse}
+
+% Commands switching the title template
+\newcommand{\htfnotitle}{ \htfcleartitle \beamer at htfnotitletrue}
+\newcommand{\htfshorttitle}{ \htfcleartitle \beamer at htfshorttitletrue}
+\newcommand{\htflongtitle}{ \htfcleartitle \beamer at htflongtitletrue}
+
+% Commands switching the author/institute template
+\newcommand{\htfnoauthinst}{ \htfclearauthinst \beamer at htfnoauthinsttrue}
+\newcommand{\htfonlyauthor}{ \htfclearauthinst \beamer at htfonlyauthortrue}
+\newcommand{\htfonlyinstitute}{ \htfclearauthinst \beamer at htfonlyinstitutetrue}
+\newcommand{\htfinstitutepths}{ \htfclearauthinst \beamer at htfinstitutepthstrue}
+\newcommand{\htfauthorpths}{ \htfclearauthinst \beamer at htfauthorpthstrue}
+\newcommand{\htfauthinst}{ \htfclearauthinst \beamer at htfauthinsttrue}
+
+% Commands switching the date template
+\newcommand{\htfnodate}{ \htfcleardate \beamer at htfnodatetrue}
+\newcommand{\htfshortdate}{ \htfcleardate \beamer at htfshortdatetrue}
+\newcommand{\htflongdate}{ \htfcleardate \beamer at htflongdatetrue}
+
+% Commands switching the frame numbering template
+\newcommand{\htfnoframenrs}{ \htfclearframenrs \beamer at htfnoframenrstrue}
+\newcommand{\htfcounterframenrs}{ \htfclearframenrs \beamer at htfcounterframenrstrue \beamer at htfshowframenrstrue}
+\newcommand{\htffractionframenrs}{ \htfclearframenrs \beamer at htffractionframenrstrue \beamer at htfshowframenrstrue}
+\newcommand{\htfpercentframenrs}{ \htfclearframenrs \beamer at htfpercentframenrstrue \beamer at htfshowframenrstrue}
+
+% Commands switching the author/title separator template
+\newcommand{\htfcolonsep}{ \htfclearsep \beamer at htfcolonseptrue}
+\newcommand{\htfcommasep}{ \htfclearsep \beamer at htfcommaseptrue}
+\newcommand{\htfsepspace}{ \htfclearsep \beamer at htfsepspacetrue}
+
+
+
+% HACKING COMMAND -------------------------------------------------------------------------------------------------------------------------------
+
+\newcommand{\hackthefootline}{%
+ \htfprintmessage
+
+ % Selects footline layout
+ \ifbeamer at htfonecolfootline \setbeamertemplate{footline}[htf-onecol]
+ \else \ifbeamer at htftwocolsfootline \setbeamertemplate{footline}[htf-twocols]
+ \else \ifbeamer at htfthreecolsfootline \setbeamertemplate{footline}[htf-threecols]
+ \else \setbeamertemplate{footline}[htf-none]
+ \fi \fi \fi
+
+ % Title
+ \ifbeamer at htfnotitle \setbeamertemplate{htf-title}[none] \fi
+ \ifbeamer at htfshorttitle \setbeamertemplate{htf-title}[short] \fi
+ \ifbeamer at htflongtitle \setbeamertemplate{htf-title}[long] \fi
+
+ % Author/Institute
+ \ifbeamer at htfnoauthinst \setbeamertemplate{htf-authinst}[none] \htfchecknone \fi
+ \ifbeamer at htfonlyauthor \setbeamertemplate{htf-authinst}[onlyauth] \htfcheckauthor \fi
+ \ifbeamer at htfonlyinstitute \setbeamertemplate{htf-authinst}[onlyinst] \htfcheckinstit \fi
+ \ifbeamer at htfinstitutepths \setbeamertemplate{htf-authinst}[instpths] \htfcheckboth \fi
+ \ifbeamer at htfauthorpths \setbeamertemplate{htf-authinst}[authpths] \htfcheckboth \fi
+ \ifbeamer at htfauthinst \setbeamertemplate{htf-authinst}[bothcmma] \htfcheckboth \fi
+
+ % Date
+ \ifbeamer at htfnodate \setbeamertemplate{htf-date}[none] \fi
+ \ifbeamer at htfshortdate \setbeamertemplate{htf-date}[short] \fi
+ \ifbeamer at htflongdate \setbeamertemplate{htf-date}[long] \fi
+
+ % Frame numbers
+ \ifbeamer at htfnoframenrs \setbeamertemplate{htf-framenrs}[none] \fi
+ \ifbeamer at htfcounterframenrs \setbeamertemplate{htf-framenrs}[counter] \fi
+ \ifbeamer at htffractionframenrs \setbeamertemplate{htf-framenrs}[fraction] \fi
+ \ifbeamer at htfpercentframenrs \ifbeamer at htffunnystuff \setbeamertemplate{htf-framenrs}[percent]
+ \else \PackageError{hackthefootline}{For using percent frame numbers don't pass the nofun option}{}
+ \fi \fi
+
+ % Author--Title--separators
+ \ifbeamer at htfcolonsep \setbeamertemplate{htf-atsep}[colon] \fi
+ \ifbeamer at htfcommasep \setbeamertemplate{htf-atsep}[comma] \fi
+ \ifbeamer at htfsepspace \setbeamertemplate{htf-atsep}[space] \fi
+}
+
+
+
+% PERFORMS THE "INITIAL HACK" AT BEGINNING A DOCUMENT -------------------------------------------------------------------------------------------
+
+\AtBeginDocument{
+ % Load default settings ...
+ \ifbeamer at htfonecolfootline \htfonecolfootlinedefault
+ \else \ifbeamer at htftwocolsfootline \htftwocolsfootlinedefault
+ \else \ifbeamer at htfthreecolsfootline \htfthreecolsfootlinedefault
+ \else \htfnofootlinedefault
+ \fi \fi \fi
+
+ % ... and perform the hack
+ \hackthefootline}
+
+
+
+% END OF FILE -----------------------------------------------------------------------------------------------------------------------------------
+
+\mode<all>
+\endinput
Property changes on: trunk/Master/texmf-dist/tex/latex/hackthefootline/hackthefootline.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check 2017-08-05 09:14:35 UTC (rev 44958)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check 2017-08-05 20:55:42 UTC (rev 44959)
@@ -309,7 +309,8 @@
grid grid-system gridset grotesq grundgesetze
gsemthesis gtl gtrlib-largetrees gtrcrd
gu guitar guitarchordschemes guitlogo gzt
- h2020proposal hacm halloweenmath handout hands hang hanging hanoi
+ h2020proposal hackthefootline hacm halloweenmath
+ handout hands hang hanging hanoi
happy4th har2nat hardwrap harmony harnon-cv harpoon
harvard harveyballs harvmac hatching hausarbeit-jura havannah
hc he-she hep hepnames
Modified: trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc 2017-08-05 09:14:35 UTC (rev 44958)
+++ trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc 2017-08-05 20:55:42 UTC (rev 44959)
@@ -496,6 +496,7 @@
depend gridset
depend guitlogo
depend halloweenmath
+depend hackthefootline
depend handout
depend hang
depend hanging
Added: trunk/Master/tlpkg/tlpsrc/hackthefootline.tlpsrc
===================================================================
More information about the tex-live-commits
mailing list