summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-07-02 21:47:00 +0000
committerKarl Berry <karl@freefriends.org>2020-07-02 21:47:00 +0000
commitc239139e084de4b189620ca1ba4a01f35f7c1f71 (patch)
treefe09852463418cd2fd4e22dc5e05e1b427a08d4f
parentd951bc9f58592f46cf7377505e194ab71b17bc7f (diff)
beamerappendixnote (2jul20)
git-svn-id: svn://tug.org/texlive/trunk@55732 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/beamerappendixnote/beamerappendixnote.pdfbin57462 -> 70403 bytes
-rw-r--r--Master/texmf-dist/doc/latex/beamerappendixnote/example-backtop.pdfbin0 -> 9938 bytes
-rw-r--r--Master/texmf-dist/doc/latex/beamerappendixnote/example-backtop.tex9
-rw-r--r--Master/texmf-dist/doc/latex/beamerappendixnote/example-basic.pdfbin9920 -> 9922 bytes
-rw-r--r--Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.pdfbin16178 -> 16497 bytes
-rw-r--r--Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.tex6
-rw-r--r--Master/texmf-dist/source/latex/beamerappendixnote/beamerappendixnote.dtx89
-rw-r--r--Master/texmf-dist/tex/latex/beamerappendixnote/beamerappendixnote.sty37
8 files changed, 114 insertions, 27 deletions
diff --git a/Master/texmf-dist/doc/latex/beamerappendixnote/beamerappendixnote.pdf b/Master/texmf-dist/doc/latex/beamerappendixnote/beamerappendixnote.pdf
index fbd99a21f50..abf24f3241a 100644
--- a/Master/texmf-dist/doc/latex/beamerappendixnote/beamerappendixnote.pdf
+++ b/Master/texmf-dist/doc/latex/beamerappendixnote/beamerappendixnote.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/beamerappendixnote/example-backtop.pdf b/Master/texmf-dist/doc/latex/beamerappendixnote/example-backtop.pdf
new file mode 100644
index 00000000000..eedec8eb18d
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/beamerappendixnote/example-backtop.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/beamerappendixnote/example-backtop.tex b/Master/texmf-dist/doc/latex/beamerappendixnote/example-backtop.tex
new file mode 100644
index 00000000000..8353957c01d
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/beamerappendixnote/example-backtop.tex
@@ -0,0 +1,9 @@
+\documentclass[20pt]{beamer}
+\usepackage[backposition=title]{beamerappendixnote}
+\begin{document}
+\begin{frame}{Main title}
+ Main content \vfill
+ \appxnote{Note title}{Note content}
+\end{frame}
+\printappxnotes
+\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/beamerappendixnote/example-basic.pdf b/Master/texmf-dist/doc/latex/beamerappendixnote/example-basic.pdf
index d07c0a005f6..cf7245e006b 100644
--- a/Master/texmf-dist/doc/latex/beamerappendixnote/example-basic.pdf
+++ b/Master/texmf-dist/doc/latex/beamerappendixnote/example-basic.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.pdf b/Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.pdf
index 08e6a705b17..77d17773094 100644
--- a/Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.pdf
+++ b/Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.tex b/Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.tex
index c4b900b1de8..f5633bd3ed0 100644
--- a/Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.tex
+++ b/Master/texmf-dist/doc/latex/beamerappendixnote/example-longnote.tex
@@ -1,12 +1,10 @@
\documentclass[20pt]{beamer}
-\usepackage{beamerappendixnote}
+\usepackage[backposition=title]{beamerappendixnote}
\usepackage{lipsum}
\begin{document}
\begin{frame}{Main title}
Main content \vfill
- \appxnote[allowframebreaks]{Long note}{
- \lipsum[2]
- }
+ \appxnote[allowframebreaks]{Long note}{\lipsum[3]}
\end{frame}
\printappxnotes
\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/source/latex/beamerappendixnote/beamerappendixnote.dtx b/Master/texmf-dist/source/latex/beamerappendixnote/beamerappendixnote.dtx
index 8f58aee73bc..5c0d72fabbd 100644
--- a/Master/texmf-dist/source/latex/beamerappendixnote/beamerappendixnote.dtx
+++ b/Master/texmf-dist/source/latex/beamerappendixnote/beamerappendixnote.dtx
@@ -23,7 +23,7 @@
%</driver>
%<package> \ProvidesPackage{beamerappendixnote}
%<*package>
- [2020/06/26 v1.1.1 environment and frame options]
+ [2020/07/01 v1.2.0 backposition option]
%</package>
%<*driver>
\documentclass{l3doc}
@@ -34,7 +34,7 @@
% Unicode
\usepackage{fontspec,unicode-math}
% Auxiliary
-\usepackage{listings,graphicx}
+\usepackage{listings,graphicx,xparse}
%% Layout
% Font
@@ -50,6 +50,19 @@
%% Definitions
\newcommand\fnurl[2]{\href{#1}{#2}\footnote{\url{#1}}}
+\ExplSyntaxOn
+\NewDocumentCommand{\example}{m m o}
+ {
+ \IfNoValueTF{#3}
+ {\lstinputlisting{example-#1.tex}}
+ {\lstinputlisting[linerange=#3]{example-#1.tex}}
+ \int_step_inline:nn {#2}
+ {
+ \includegraphics[page=##1,width=.49\linewidth]{example-#1.pdf}
+ \int_if_even:nT {##1} {\newline}
+ }
+ }
+\ExplSyntaxOff
\begin{document}
@@ -72,9 +85,7 @@
\noindent Beamer appendix note introduces the \cs{appxnote} command, which puts the note's content on a separate beamer frame, shown by the command \cs{printappxnotes}. It also creates interactive buttons to move back and forth between the two frames.
-\lstinputlisting{example-basic.tex}
-\includegraphics[page=1,width=.49\linewidth]{example-basic.pdf}
-\includegraphics[page=2,width=.49\linewidth]{example-basic.pdf}
+\example{basic}{2}
\clearpage
\section{Installation}
@@ -99,13 +110,30 @@ The \pkg{beamerappendixnote} package is available on \fnurl{https://ctan.org/pkg
Prints appendix notes in the order they are created using \cs{appxnote}. Has to be used after the last appendix note. Uses one frame per note. Inserts a \cs{beamerreturnbutton} button to the frame where \cs{appxnote} was called, followed by the content, separated by a \cs{vfill}.
\end{function}
+
+\section{Advanced usage}
+
+\subsection{Change the back button placement}
+
+To move the back button from the body of the appendix notes into the frame title, load the \pkg{beamerappendixnote} package with the \lstinline{backposition=title} option.
+
+\example{backtop}{2}[2-2]
+
+\subsection{Multi-frame notes}
+
+To create appendix notes spanning multiple frames, set \meta{frameoption} to \lstinline{allowframebreaks}. This works well with the \lstinline{backposition=title} package option, as it makes the back button visible on every frame.
+
+\example{longnote}{4}
+
+
+
\end{documentation}
-\begin{implementation}
- \section{Implementation}
- \DocInput{beamerappendixnote.dtx}
-\end{implementation}
+%\begin{implementation}
+% \section{Implementation}
+% \DocInput{beamerappendixnote.dtx}
+%\end{implementation}
\end{document}
@@ -118,12 +146,10 @@ The \pkg{beamerappendixnote} package is available on \fnurl{https://ctan.org/pkg
%
% \subsection{Dependencies}
%
-% Load the essential support (\pkg{expl3}).
% \begin{macrocode}
\RequirePackage{expl3}
% \end{macrocode}
%
-% Make sure that the version of \pkg{l3kernel} in use is sufficiently new.
% \begin{macrocode}
\@ifpackagelater {expl3}{2018/04/22} {} {%
\PackageError {beamerappendixnote} {Support package expl3 too old}
@@ -138,13 +164,28 @@ The \pkg{beamerappendixnote} package is available on \fnurl{https://ctan.org/pkg
%
% Identify the package and give the over all version information
% \begin{macrocode}
-\ProvidesExplPackage {beamerappendixnote} {2020/05/07} {1.0}
+\ProvidesExplPackage {beamerappendixnote} {2020/07/01} {1.2.0}
{Create notes in appendix frames}
% \end{macrocode}
%
-% User level interfaces are all created by \pkg{xparse}
+% User level interfaces are all created by \pkg{xparse}.
% \begin{macrocode}
-\RequirePackage {xparse}
+\RequirePackage{xparse}
+\RequirePackage{l3keys2e}
+% \end{macrocode}
+%
+% \subsection{Package options}
+% \begin{macrocode}
+\keys_define:nn { beamerappendixnote }
+{
+ backposition .choices:nn = { top, bottom, title } { },
+ backposition .tl_set:N = \g_ban_backposition
+}
+\keys_set:nn { beamerappendixnote }
+{
+ backposition = top
+}
+\ProcessKeysOptions { beamerappendixnote }
% \end{macrocode}
%
% \subsection{Data structures}
@@ -154,6 +195,7 @@ The \pkg{beamerappendixnote} package is available on \fnurl{https://ctan.org/pkg
\seq_new:N \g_ban_titles
\seq_new:N \g_ban_content
\seq_new:N \g_ban_options
+\cs_generate_variant:Nn \tl_if_eq:nnT { V }
% \end{macrocode}
%
% \subsection{Macros}
@@ -178,9 +220,22 @@ The \pkg{beamerappendixnote} package is available on \fnurl{https://ctan.org/pkg
% \begin{macrocode}
\cs_set:Npn \print_func:nnnnn #1 #2 #3 #4 #5 {
\def\options{#5}
- \begin{frame}[\expandafter\options]{#1}\label{#3}
- \hyperlink{#4}{\beamerreturnbutton{Back}}
- \vfill
+ \begin{frame}[\expandafter\options]
+ {
+ \tl_if_eq:VnT \g_ban_backposition { title }
+ {
+ \hyperlink{#4}{\beamerreturnbutton{Back}}~
+ }
+ #1
+ }
+ \label{#3}
+
+ \tl_if_eq:VnT \g_ban_backposition { top }
+ {
+ \hyperlink{#4}{\beamerreturnbutton{Back}}
+ \vfill
+ }
+
#2
\end{frame}
}
diff --git a/Master/texmf-dist/tex/latex/beamerappendixnote/beamerappendixnote.sty b/Master/texmf-dist/tex/latex/beamerappendixnote/beamerappendixnote.sty
index 65e273bab73..0fb7d23669a 100644
--- a/Master/texmf-dist/tex/latex/beamerappendixnote/beamerappendixnote.sty
+++ b/Master/texmf-dist/tex/latex/beamerappendixnote/beamerappendixnote.sty
@@ -15,7 +15,7 @@
%% ----------------------------------------------------------------
%%
\ProvidesPackage{beamerappendixnote}
- [2020/06/26 v1.1.1 environment and frame options]
+ [2020/07/01 v1.2.0 backposition option]
\RequirePackage{expl3}
\@ifpackagelater {expl3}{2018/04/22} {} {%
\PackageError {beamerappendixnote} {Support package expl3 too old}
@@ -26,12 +26,24 @@
}%
\endinput
}%
-\ProvidesExplPackage {beamerappendixnote} {2020/05/07} {1.0}
+\ProvidesExplPackage {beamerappendixnote} {2020/07/01} {1.2.0}
{Create notes in appendix frames}
-\RequirePackage {xparse}
+\RequirePackage{xparse}
+\RequirePackage{l3keys2e}
+\keys_define:nn { beamerappendixnote }
+{
+ backposition .choices:nn = { top, bottom, title } { },
+ backposition .tl_set:N = \g_ban_backposition
+}
+\keys_set:nn { beamerappendixnote }
+{
+ backposition = top
+}
+\ProcessKeysOptions { beamerappendixnote }
\seq_new:N \g_ban_titles
\seq_new:N \g_ban_content
\seq_new:N \g_ban_options
+\cs_generate_variant:Nn \tl_if_eq:nnT { V }
\newcommand{\appxnote}[3][t]{
\seq_gput_right:Nn \g_ban_titles {#2}
\seq_gput_right:Nn \g_ban_options {#1}
@@ -41,9 +53,22 @@
}
\cs_set:Npn \print_func:nnnnn #1 #2 #3 #4 #5 {
\def\options{#5}
- \begin{frame}[\expandafter\options]{#1}\label{#3}
- \hyperlink{#4}{\beamerreturnbutton{Back}}
- \vfill
+ \begin{frame}[\expandafter\options]
+ {
+ \tl_if_eq:VnT \g_ban_backposition { title }
+ {
+ \hyperlink{#4}{\beamerreturnbutton{Back}}~
+ }
+ #1
+ }
+ \label{#3}
+
+ \tl_if_eq:VnT \g_ban_backposition { top }
+ {
+ \hyperlink{#4}{\beamerreturnbutton{Back}}
+ \vfill
+ }
+
#2
\end{frame}
}