From c551b95fcad4d9f1870c98efbd051e7062538737 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 16 Oct 2019 20:56:43 +0000 Subject: titlesec (16oct19) git-svn-id: svn://tug.org/texlive/trunk@52413 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/titlesec/titleps.sty | 84 ++++++++++++++++------- Master/texmf-dist/tex/latex/titlesec/titlesec.sty | 14 +++- Master/texmf-dist/tex/latex/titlesec/titletoc.sty | 2 +- 3 files changed, 73 insertions(+), 27 deletions(-) (limited to 'Master/texmf-dist/tex/latex/titlesec') diff --git a/Master/texmf-dist/tex/latex/titlesec/titleps.sty b/Master/texmf-dist/tex/latex/titlesec/titleps.sty index 7e8b1b7ed4d..73f7f872158 100644 --- a/Master/texmf-dist/tex/latex/titlesec/titleps.sty +++ b/Master/texmf-dist/tex/latex/titlesec/titleps.sty @@ -13,7 +13,7 @@ \ifx\ttl@coreps\@empty\else % START code for package \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{titleps}[2019/09/09 v2.12 Page styles] +\ProvidesPackage{titleps}[2019/10/16 v2.13 Page styles] % This package is mainly a wrapper for the pagestyle macros provided % by titlesec, so that they can be used without it. Functionality is @@ -217,9 +217,15 @@ % \ttl@markboth redefines temporarily \mark to fetch changes made by % babel or ams, saved in \ttl@running. When this is done, the actual % \mark es emitted, which has \ttl@running as part of the markset (see -% the \newtitlemark above). +% the \newtitlemark above). As of 2019 and due to a change in the LaTex +% kernel, we consider two possibilities (2.13). + +\expandafter\ifx\csname markboth \endcsname\relax + \def\ttl@mb@mark{\markboth} +\else + \edef\ttl@mb@mark{\expandafter\noexpand\csname markboth \endcsname} +\fi -\def\ttl@mb@mark{\markboth} \def\ttl@mb@warn{% \PackageWarningNoLine{titleps} {Direct use of \string\markboth\space and \string\markleft\space @@ -495,32 +501,64 @@ \fi} % Another tool: +% As of 2019 and due to a change in the LaTex kernel, we consider two +% possibilities (2.13). -\newcommand\setmarkboth{% - \ifx\markboth\ttl@mb@use\else - \let\ttl@mb@mark\markboth - \let\markboth\ttl@mb@use - \fi - \def\ttl@mb@new##1##2} +\expandafter\ifx\csname markboth \endcsname\relax -% \ttl@mb@temp is a trick to allow resetting inside \setmarkboth. + \newcommand\setmarkboth{% + \ifx\markboth\ttl@mb@use\else + \let\ttl@mb@mark\markboth + \let\markboth\ttl@mb@use + \fi + \def\ttl@mb@new##1##2} -\def\ttl@mb@use#1#2{% - \let\markboth\ttl@mb@mark - \def\ttl@mb@temp{\let\markboth\ttl@mb@use}% - \ttl@mb@new{#1}{#2}% - \ttl@mb@temp - \let\ttl@mb@temp\@undefined} + % \ttl@mb@temp is a trick to allow resetting inside \setmarkboth. -\newcommand\resetmarkboth{% - \ifx\ttl@mb@temp\@undefined + \def\ttl@mb@use#1#2{% \let\markboth\ttl@mb@mark - \def\ttl@mb@mark{\markboth}% - \else - \def\ttl@mb@temp{% + \def\ttl@mb@temp{\let\markboth\ttl@mb@use}% + \ttl@mb@new{#1}{#2}% + \ttl@mb@temp + \let\ttl@mb@temp\@undefined} + + \newcommand\resetmarkboth{% + \ifx\ttl@mb@temp\@undefined \let\markboth\ttl@mb@mark - \def\ttl@mb@mark{\markboth}}% - \fi} + \def\ttl@mb@mark{\markboth}% + \else + \def\ttl@mb@temp{% + \let\markboth\ttl@mb@mark + \def\ttl@mb@mark{\markboth}}% + \fi} + +\else + + \newcommand\setmarkboth{% + \expandafter\ifx\csname markboth \endcsname\ttl@mb@use\else + \expandafter\let\expandafter\ttl@mb@mark\csname markboth \endcsname + \expandafter\let\csname markboth \endcsname\ttl@mb@use + \fi + \def\ttl@mb@new##1##2} + + \def\ttl@mb@use#1#2{% + \expandafter\let\csname markboth \endcsname\ttl@mb@mark + \def\ttl@mb@temp{\expandafter\let\csname markboth \endcsname\ttl@mb@use}% + \ttl@mb@new{#1}{#2}% + \ttl@mb@temp + \let\ttl@mb@temp\@undefined} + + \newcommand\resetmarkboth{% + \ifx\ttl@mb@temp\@undefined + \expandafter\let\csname markboth \endcsname\ttl@mb@mark + \edef\ttl@mb@mark{\expandafter\noexpand\csname markboth \endcsname}% + \else + \def\ttl@mb@temp{% + \expandafter\let\csname markboth \endcsname\ttl@mb@mark + \edef\ttl@mb@mark{\expandafter\noexpand\csname markboth \endcsname}}% + \fi} + +\fi % =========== % EXTRA MARKS diff --git a/Master/texmf-dist/tex/latex/titlesec/titlesec.sty b/Master/texmf-dist/tex/latex/titlesec/titlesec.sty index caf149e0dad..e99e0b09d31 100644 --- a/Master/texmf-dist/tex/latex/titlesec/titlesec.sty +++ b/Master/texmf-dist/tex/latex/titlesec/titlesec.sty @@ -34,7 +34,7 @@ % ~~~~~~~ \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{titlesec}[2019/09/09 v2.12 Sectioning titles] +\ProvidesPackage{titlesec}[2019/10/16 v2.13 Sectioning titles] % Initialization % ~~~~~~~~~~~~~~ @@ -254,6 +254,9 @@ % is not lost inside a box by saving it into \ttl@mk, % which in turn is used by the sect and chap commands. +% As of 2019 and due the LaTex +% kernel modifies \markboth, we consider two possibilities (2.13). + \newif\ifttl@explicit \def\ttl@gmk#1{\gdef\ttl@mk{#1}} @@ -272,8 +275,13 @@ \let\ttl@page@i \ttl@nest@error \let\ttl@newpage\newpage \def\newpage{\ttl@savewrite\ttl@newpage}% - \def\markboth##1##2{\protect\ttl@gmk{\protect\markboth{##1}{##2}}}% - \def\markright##1{\protect\ttl@gmk{\protect\markright{##1}}}% + \expandafter\ifx\csname markboth \endcsname\relax + \def\markboth##1##2{\protect\ttl@gmk{\protect\markboth{##1}{##2}}}% + \def\markright##1{\protect\ttl@gmk{\protect\markright{##1}}}% + \else + \@namedef{markboth }##1##2{\protect\ttl@gmk{\markboth{##1}{##2}}}% + \@namedef{markright }##1{\protect\ttl@gmk{\markright{##1}}}% + \fi \def\@mkboth##1##2{\protect\ttl@gmk{\protect\@mkboth{##1}{##2}}}% \def\footnote{\@ifnextchar[% {\ttl@savefn\z@}{\ttl@savefn\@ne[]}}% diff --git a/Master/texmf-dist/tex/latex/titlesec/titletoc.sty b/Master/texmf-dist/tex/latex/titlesec/titletoc.sty index ddf9e298c0e..e7a5b6e5187 100644 --- a/Master/texmf-dist/tex/latex/titlesec/titletoc.sty +++ b/Master/texmf-dist/tex/latex/titlesec/titletoc.sty @@ -7,7 +7,7 @@ % Repository: https://github.com/jbezos/titlesec % -\ProvidesPackage{titletoc}[2019/09/09 v2.12 TOC entries] +\ProvidesPackage{titletoc}[2019/10/16 v2.13 TOC entries] % The following tags are used: % ttl@ : the generic one, shared with titlesec -- cgit v1.2.3