Beamer #
Warning: This post hasn't been updated for over a year. The information may be out of date.
Bugs & quirks #
\newenvironment<> #
Does not make environment incremental-overlay-aware, aka, cannot use [<+->].
<0> frames #
\begin{frame}<0>- Hides a frame in presentation (default) mode (not handout mode), and does not count the frame in total pages
\begin{frame}<mode/all:0>- Hides a frame in given mode/all modes, but counts the frame in total pages.
Natbib colouring problem #
This solution only colours the closing bracket, but the link scope stays the same (without closing bracket). (Ref: 1, 2, seems to be fixed but not really)
\let\oldcite=\cite
\renewcommand{\cite}[1]{\textcolor{NordGreen}{\oldcite{#1}}}! Illegal parameter number in definition of \iterate. #
Ref: tikz pgf - Error: Illegal Parameter number in definition of \iterate - TeX - LaTeX Stack Exchange
Whenever there is # in a Beamer frame, must write \# (tested, URL will work) or #### (not tested), or mark the frame as fragile (\begin{frame}[fragile]).
Buttons #
\begin{frame}
\frametitle{Summary}\label{summary}
\hyperlink{details}{\beamergotobutton{Details}}
\end{frame}
\begin{frame}
\frametitle{Details}\label{details}
\hyperlink{summary}{\beamerreturnbutton{Return}}
\end{frame}Formatting text #
Highlight #
highlighting - Highlight/color a part of text in block in beamer - TeX - LaTeX Stack Exchange
Note page #
Show note pages #
%\setbeameroption{hide notes} % Only slides
%\setbeameroption{show only notes} % Only notes
\setbeameroption{show notes on second screen=right} % BothWrite notes #
Inside frames: (default outcome: 1 enumerate list per frame)
\begin{frame}
\frametitle{Blah}
\note[item]{Notes...}
\note[item]{...blah.}
\end{frame}Outside frames: (default outcome: 1 itemize list per frame)
\begin{frame}
\frametitle{Blah blah}
\end{frame}
\note[itemize]{
\item Notes...
\item ...blah blah.
}Overlay-aware notes #
In incremental overlay:
\begin{frame}
\frametitle{Blah}
\begin{itemize}[<+->]
\item<.-> 1st slide \& stay
\note[item]<.>{1st slide only}
\note[item]<+>{2nd slide only}
\item 3rd slide \& stay
...
\end{itemize}
\end{frame}Plain template but change line height #
In Intel Macs, Beamer internal styles are stored at path /usr/local/texlive/2022/texmf-dist/tex/latex/beamer/. Commands used in note page are stored in file beamerbasenotes.sty, and templates for note page are stored in file beamerbaseauxtemplates.sty.
After close inspections, I found these lines to be relevant: (Ref)
\makeatletter
% For outside frame notes, beamerbasenotes.sty L64-69
% First three lines seems redundant because outside notes always use itemize
\define@key{beamernotes}{enumerate}[true]{%
\def\beamer@noteenvstart{\begin{enumerate}\itemsep=0pt\parskip=8pt}%
\def\beamer@noteenvend{\end{enumerate}}}
\define@key{beamernotes}{itemize}[true]{%
\def\beamer@noteenvstart{\begin{itemize}\itemsep=0pt\parskip=8pt}%
\def\beamer@noteenvend{\end{itemize}}}
% For inside frame notes, beamerbasenotes.sty L178-195
\def\beamer@setupnote{%
\gdef\beamer@notesactions{%
\beamer@outsideframenote{%
\beamer@atbeginnote%
\beamer@notes%
\ifx\beamer@noteitems\@empty\else
\begin{enumerate}\itemsep=0pt\parskip=8pt%
\beamer@noteitems%
\end{enumerate}%
\fi%
\beamer@atendnote%
}%
\gdef\beamer@notesactions{}%
}
}
\makeatotherChanging the values of \itemsep and \parskip in all three instances will give different line height results.
Use itemize for both inside and outside slides #
Just change the inside notes above from enumerate to itemize. (Ref)
\makeatletter
\def\beamer@setupnote{%
\gdef\beamer@notesactions{%
\beamer@outsideframenote{%
\beamer@atbeginnote%
\beamer@notes%
\ifx\beamer@noteitems\@empty\else
\begin{itemize}\itemsep=0pt\parskip=8pt%
\beamer@noteitems%
\end{itemize}%
\fi%
\beamer@atendnote%
}%
\gdef\beamer@notesactions{}%
}
}
\makeatotherInsert vertical space above notes #
After inspecting L781-L812 of beamerbaseauxtemplates.sty:
\makeatletter
\defbeamertemplate{note page}{plainer}
{%
\vskip4em
\insertnote
}
\makeatother
\setbeamertemplate{note page}[plainer]Further customisation #
beamer - Note page showing the next frame - TeX - LaTeX Stack Exchange
Page number #
Reset page number at appendix #
\usepackage{appendixnumberbeamer}
\begin{document}
% Frames.
\appendix
% Less important Frames.
\end{document}Presentation software #
- Cimbali/pympress
- pdfpc/pdfpc
- Présentation.app (No support for
\note) - Skim
Refs: