diff options
Diffstat (limited to 'Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-geometry.sty')
-rw-r--r-- | Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-geometry.sty | 52 |
1 files changed, 42 insertions, 10 deletions
diff --git a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-geometry.sty b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-geometry.sty index 9b8f1fc7a12..eba249fa5e6 100644 --- a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-geometry.sty +++ b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-geometry.sty @@ -3,7 +3,7 @@ % \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{lltjp-geometry}[2020/02/25 Patch to geometry for LuaTeX-ja with vertical writing mode] +\ProvidesPackage{lltjp-geometry}[2020-08-05 Patch to geometry for LuaTeX-ja with vertical writing mode] \RequirePackage{expl3} \ifdefined\if@ltj@@geometry@tate\expandafter\endinput\fi \newif\if@ltj@@geometry@tate @@ -29,33 +29,65 @@ } \fi -\RequirePackage{filehook} +%============================================ +\unless\ifdefined\ltj@ExecuteAfterPackage +\expandafter\newif\csname ifltj@ltfilehook@avail\endcsname +\@ifl@t@r\fmtversion{2020-10-01}{% + \ifnum\patch@level<0\relax \ifnum\patch@level<-6 \ltj@ltfilehook@availtrue\fi + \else\ltj@ltfilehook@availtrue\fi +}{} +\ifltj@ltfilehook@avail + \def\@@ltj@ExecuteAfterPackage#1{\AddToHook{package/after/#1}} + \def\@@ltj@ExecuteBeforePackage#1{\AddToHook{package/before/#1}} + \def\ltj@ExecuteAfterPackage{\@ifstar\@@ltj@ExecuteAfterPackage@star\@@ltj@ExecuteAfterPackage} + \def\@@ltj@ExecuteAfterPackage@star#1#2{% + \@ifpackageloaded{#1}{#2}{\@@ltj@ExecuteAfterPackage{#1}{#2}}% + } + \def\ltj@ExecuteBeforePackage{\@ifstar\@@ltj@ExecuteBeforePackage@star\@@ltj@ExecuteBeforePackage} + \def\@@ltj@ExecuteBeforePackage@star#1#2{% + \@ifpackageloaded{#1}{#2}{\@@ltj@ExecuteBeforePackage{#1}{#2}}% + } +\else + \RequirePackage{filehook} + \let\ltj@ExecuteAfterPackage=\AtEndOfPackageFile + \let\ltj@ExecuteBeforePackage=\AtBeginOfPackageFile +\fi +\fi +%============================================ + \RequirePackage{etoolbox} \newif\ifGm@ltj@layoutswitch \let\orig@PackageWarningNoLine=\PackageWarningNoLine % define ifGm@swap@papersize if it is undefined \expandafter\newif\csname ifGm@swap@papersize\endcsname -\AtBeginOfPackageFile{geometry}{% +\ExplSyntaxOn +\ltj@ExecuteBeforePackage{geometry}{% \edef\Gm@ltj@topskip{\the\topskip} \edef\Gm@ltj@headsep{\the\headsep} \edef\Gm@ltj@footskip{\the\footskip} +\bool_set_false:N \l_tmpa_bool \ifluatex - \ifnum\ltjgetparameter{direction}=3 \@ltj@@geometry@tatetrue\fi + \ifnum\ltjgetparameter{direction}=3 \bool_set_true:N \l_tmpa_bool \fi \else - \@gobble\iftrue\csname iftdir\endcsname\@ltj@@geometry@tatetrue\fi + \@gobble\iftrue\csname iftdir\endcsname \bool_set_true:N \l_tmpa_bool \fi \fi -\csname tl_if_in:NnT\endcsname\@begindocumenthook{\tate}{\@ltj@@geometry@tatetrue} -\if@ltj@@geometry@tate +\ifltj@ltfilehook@avail + \prop_map_inline:Nn \g__hook_begindocument_code_prop + { \tl_if_in:nnT {#2} {\tate} {\bool_set_true:N \l_tmpa_bool} } +\else + \tl_if_in:NnT \@begindocumenthook {\tate} {\bool_set_true:N \l_tmpa_bool} +\fi +\bool_if:NT \l_tmpa_bool { \if@ltj@@geometry@forceoff \@ltj@@geometry@tatefalse \else \let\PackageWarningNoLine\@gobbletwo% 警告抑止 \fi -\fi } - -\AtEndOfPackageFile{geometry}{% +} +\ExplSyntaxOff +\ltj@ExecuteAfterPackage{geometry}{% \let\PackageWarningNoLine=\orig@PackageWarningNoLine \if@ltj@@geometry@tate \let\PackageWarningNoLine=\orig@PackageWarningNoLine |