¿Cómo mostrar un nombre de sección breve en la pestaña de contenidos?
\documentclass{beamer}
\begin{document}
\begin{frame}
\tableofcontents
\end{frame}
\section[short title]{long title}
\frame{}
\end{document}
De acuerdo ahttps://tex.stackexchange.com/a/200141/36296En teoría, esto debería funcionar, ¿o estoy leyendo mal la respuesta?
Respuesta1
Actualmente,beamer
inserta las entradas de ToC y Navegación para que coincidan con el comando de sección obligatorio. Tendrás que parchear cada unidad seccional por separado para "arreglar" esto:
\documentclass{beamer}
\usepackage{etoolbox}
\makeatletter
% Insert [short title] for \section in ToC
\patchcmd{\beamer@section}{{#2}{\the\c@page}}{{#1}{\the\c@page}}{}{}
% Insert [short title] for \section in Navigation
\patchcmd{\beamer@section}{{\the\c@section}{\secname}}{{\the\c@section}{#1}}{}{}
% Insert [short title] for \subsection in ToC
\patchcmd{\beamer@subsection}{{#2}{\the\c@page}}{{#1}{\the\c@page}}{}{}
% Insert [short title] for \subsection in Navigation
\patchcmd{\beamer@subsection}{{\the\c@subsection}{#2}}{{\the\c@subsection}{#1}}{}{}
\makeatother
\begin{document}
\begin{frame}
\tableofcontents
\end{frame}
\section[short section]{long section}
\subsection[short subsection]{long subsection}
\frame{}
\end{document}
\beamer@section[#1]{#2}
y \beamer@subsection[#1]{#2}
actúa de forma muy parecida a los archivos normales \section[#1]{#2}
y \subsection[#1]{#2}
, escribiendo #2
en los archivos auxiliares .toc
y . .nav
Lo anterior \patchcmd{<cmd>}{<search>}{<replace>}{<success>}{<failure>}
cambia el obligatorio por el opcional al escribir en los auxiliares.