From a474c4b5e4ebbe9e99738527ca08e4594fca9904 Mon Sep 17 00:00:00 2001 From: Ross Churchley Date: Wed, 29 Apr 2015 16:44:31 -0700 Subject: [PATCH 1/6] Fix typo causing bug with empty \insertinstitute --- beamerthemem.sty | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/beamerthemem.sty b/beamerthemem.sty index 0eb9aa1..0ccaff3 100644 --- a/beamerthemem.sty +++ b/beamerthemem.sty @@ -108,7 +108,7 @@ \else% {\usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate\par}% \fi% - \ifx\insertinstitut\@empty% + \ifx\insertinstitute\@empty% \else% \vspace*{3mm} {\usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute\par}% From 026123ab153163f83678aa9b89d07deba76622d5 Mon Sep 17 00:00:00 2001 From: Ross Churchley Date: Wed, 29 Apr 2015 16:46:31 -0700 Subject: [PATCH 2/6] Surpress interline skip instead of negative vspace --- beamerthemem.sty | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/beamerthemem.sty b/beamerthemem.sty index 0ccaff3..7e4257e 100644 --- a/beamerthemem.sty +++ b/beamerthemem.sty @@ -79,7 +79,7 @@ \setbox0=\vbox{\inserttitlegraphic}% \logoheight=\ht0 \advance\logoheight by \dp0 % \vspace*{-\logoheight}% - \vspace*{-1em}% I don't know why this additional negative space is needed + \nointerlineskip% }% \fi% \vfill From 702a821d9383c8a13a26e660d26526070e34a217 Mon Sep 17 00:00:00 2001 From: Ross Churchley Date: Wed, 29 Apr 2015 16:48:34 -0700 Subject: [PATCH 3/6] Put titlegraphic in 0pt vbox instead of -vspace --- beamerthemem.sty | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/beamerthemem.sty b/beamerthemem.sty index 7e4257e..426235d 100644 --- a/beamerthemem.sty +++ b/beamerthemem.sty @@ -72,14 +72,13 @@ \ifx\inserttitlegraphic\@empty% \else% { - % actual output of titlegraphic - \usebeamercolor[fg]{titlegraphic}\inserttitlegraphic\par% - % measurement and add negative vspace - \newdimen\logoheight - \setbox0=\vbox{\inserttitlegraphic}% - \logoheight=\ht0 \advance\logoheight by \dp0 % - \vspace*{-\logoheight}% - \nointerlineskip% + \vbox to 0pt + {% display title graphic without changing the position of other elements + \vspace*{2em} + \usebeamercolor[fg]{titlegraphic}% + \inserttitlegraphic{}% + }% + \nointerlineskip% }% \fi% \vfill From b486ee92b6ade3ad265d8953e07d051b3c96f53f Mon Sep 17 00:00:00 2001 From: Ross Churchley Date: Wed, 29 Apr 2015 16:55:07 -0700 Subject: [PATCH 4/6] Tidy up title page code - improves readability with conditional indenting. - makes code more version-control-friendly by putting each formatting command on its own line. - factors duplicated styles out of \if@noSmallCapitals. - documents beamer bug(?) causing \insertauthor to never be empty. --- beamerthemem.sty | 107 ++++++++++++++++++++++++++++++----------------- 1 file changed, 69 insertions(+), 38 deletions(-) diff --git a/beamerthemem.sty b/beamerthemem.sty index 426235d..144ac42 100644 --- a/beamerthemem.sty +++ b/beamerthemem.sty @@ -63,55 +63,86 @@ %{{{ --- Titlepage -------------------- \def\maketitle{\ifbeamer@inframe\titlepage\else\frame[plain]{\titlepage}\fi} - \def\titlepage{\usebeamertemplate{title page}} + \setbeamertemplate{title page} { \begin{minipage}[b][\paperheight]{\textwidth} \vspace*{\@mtheme@voffset} - \ifx\inserttitlegraphic\@empty% - \else% - { + + \ifx\inserttitlegraphic\@empty\else + {% \inserttitlegraphic is nonempty \vbox to 0pt {% display title graphic without changing the position of other elements \vspace*{2em} \usebeamercolor[fg]{titlegraphic}% - \inserttitlegraphic{}% + \inserttitlegraphic% }% \nointerlineskip% - }% - \fi% - \vfill - \ifx\inserttitle\@empty% - \else% - \if@noSmallCapitals% - {\raggedright\linespread{1.0}\usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle\par}% - \else% - {\raggedright\linespread{1.0}\usebeamerfont{title}\usebeamercolor[fg]{title}\scshape\MakeLowercase{\inserttitle}\par}% - \fi% - \vspace*{0.5em} - \fi% - \ifx\insertsubtitle\@empty% - \else% - {\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}% - \vspace*{0.5em} - \fi% - \begin{tikzpicture}\draw[alerted text.fg] (0, 0) -- (\textwidth, 0);\end{tikzpicture}% - \vspace*{1em} - \ifx\insertauthor\@empty% - \else% - {\usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor\par}% - \vspace*{0.25em} - \fi% - \ifx\insertdate\@empty% - \else% - {\usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate\par}% - \fi% - \ifx\insertinstitute\@empty% - \else% - \vspace*{3mm} - {\usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute\par}% - \fi% + } + \fi + + \vfill% + + \ifx\inserttitle\@empty\else + {{% \inserttitle is nonempty + \raggedright% + \linespread{1.0}% + \usebeamerfont{title}% + \usebeamercolor[fg]{title}% + \if@noSmallCapitals% + \inserttitle% + \else% + \scshape\MakeLowercase{\inserttitle}% + \fi% + \vspace*{0.5em} + }} + \fi + + \ifx\insertsubtitle\@empty\else + {{% \insertsubtitle is nonempty + \usebeamerfont{subtitle}% + \usebeamercolor[fg]{subtitle}% + \insertsubtitle% + \vspace*{0.5em}% + }} + \fi + + \begin{tikzpicture} + \draw[alerted text.fg] (0, 0) -- (\textwidth, 0); + \end{tikzpicture}% + \vspace*{1em}% + + \ifx\insertauthor\@empty\else + {{% \insertauthor is always nonempty by beamer's definition, so this + % code is always inserted: + \usebeamerfont{author}% + \usebeamercolor[fg]{author}% + \insertauthor% + \par% + \vspace*{0.25em} + }} + \fi + + \ifx\insertdate\@empty\else + {{% \insertdate is nonempty + \usebeamerfont{date}% + \usebeamercolor[fg]{date}% + \insertdate% + \par% + }} + \fi + + \ifx\insertinstitute\@empty\else + {{% \insertinstitute is nonempty + \vspace*{3mm} + \usebeamerfont{institute}% + \usebeamercolor[fg]{institute}% + \insertinstitute% + \par% + }} + \fi + \vfill \vspace*{\@mtheme@voffset} \end{minipage} From 736754ad5e972577dd88111d6d2359fd988702f9 Mon Sep 17 00:00:00 2001 From: Ross Churchley Date: Wed, 29 Apr 2015 16:56:04 -0700 Subject: [PATCH 5/6] Remove unused etoolbox package --- beamerthemem.sty | 1 - 1 file changed, 1 deletion(-) diff --git a/beamerthemem.sty b/beamerthemem.sty index 144ac42..0211d29 100644 --- a/beamerthemem.sty +++ b/beamerthemem.sty @@ -49,7 +49,6 @@ %{{{ --- Packages --------------------- -\RequirePackage{etoolbox} \RequirePackage{tikz} \RequirePackage{pgfplots} From 61b4fbc641b75b6d97ae1c8e884315c98ef41bef Mon Sep 17 00:00:00 2001 From: Ross Churchley Date: Wed, 29 Apr 2015 17:14:39 -0700 Subject: [PATCH 6/6] Fix bug causing extra space on empty \author --- beamerthemem.sty | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/beamerthemem.sty b/beamerthemem.sty index 0211d29..05e7949 100644 --- a/beamerthemem.sty +++ b/beamerthemem.sty @@ -112,9 +112,10 @@ \end{tikzpicture}% \vspace*{1em}% - \ifx\insertauthor\@empty\else - {{% \insertauthor is always nonempty by beamer's definition, so this - % code is always inserted: + \ifx\beamer@shortauthor\@empty\else + {{% \insertauthor is always nonempty by beamer's definition, so we must + % test another macro which is initialized by \author{...} + % For details, see http://tex.stackexchange.com/questions/241306/ \usebeamerfont{author}% \usebeamercolor[fg]{author}% \insertauthor%