From 6c856a310ee8889df64c704e1e2118fa30857b1f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 12 Apr 2022 20:39:37 +0000 Subject: bxjscls (12apr22) git-svn-id: svn://tug.org/texlive/trunk@63011 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/tex/latex/bxjscls/bxjsarticle.cls | 50 ++++++++++++++-------- Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls | 50 ++++++++++++++-------- Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty | 2 +- Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty | 29 ++++++++----- .../tex/latex/bxjscls/bxjsja-minimal.def | 9 ++-- .../texmf-dist/tex/latex/bxjscls/bxjsja-modern.def | 2 +- .../texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def | 6 +-- .../tex/latex/bxjscls/bxjsja-standard.def | 8 ++-- Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty | 2 +- Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls | 50 ++++++++++++++-------- Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls | 50 ++++++++++++++-------- 11 files changed, 161 insertions(+), 97 deletions(-) (limited to 'Master/texmf-dist/tex/latex/bxjscls') diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls index bfc345c0b3c..4070718eb02 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls @@ -22,15 +22,16 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsarticle} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsarticle} \newif\ifjsc@needsp@tch \jsc@needsp@tchfalse \RequirePackage{calc} \RequirePackage{keyval} +\def\jsAtEndOfClass{% + \expandafter\g@addto@macro\csname\bxjs@clsname.cls-h@@k\endcsname} \IfFileExists{bxjscompat.sty}{% - \let\jsAtEndOfClass\@gobble \RequirePackage{bxjscompat}% }{} \let\jsArticle=a @@ -165,31 +166,33 @@ \fi \fi} \def\bxjs@unit@Q{0.25mm}\let\bxjs@unit@H\bxjs@unit@Q +\newif\ifbxjs@after@preamble \@onlypreamble\bxjs@begin@document@hook -\let\bxjs@begin@document@hook\@empty +\def\bxjs@begin@document@hook{\bxjs@after@preambletrue} \AtBeginDocument{\bxjs@begin@document@hook} \@onlypreamble\bxjs@post@option@hook \let\bxjs@post@option@hook\@empty \@onlypreamble\bxjs@pre@jadriver@hook \let\bxjs@pre@jadriver@hook\@empty -\def\jsAtEndOfClass{% - \expandafter\g@addto@macro\csname\bxjs@clsname.cls-h@@k\endcsname} \@onlypreamble\bxjs@tmpdo \@onlypreamble\bxjs@tmpdo@a \@onlypreamble\bxjs@tmpdo@b \@onlypreamble\bxjs@tmpdo@c \@onlypreamble\bxjs@tmpdo@d -\if l\jsEngine -\def\bxjs@tmpdo#1{% - \xdef\bxjs@pre@jadriver@hook{% - \bxjs@pre@jadriver@hook - \catcode`#1=\the\catcode`#1\relax}% - \catcode`#1=11\relax} -\@tfor\bxjs@tmpa:=和西暦\do - {\expandafter\bxjs@tmpdo\bxjs@tmpa} -\fi \bxjs@robust@def\jsInhibitGlue{% \ifx\inhibitglue\@undefined\else \inhibitglue \fi} +\@tempswatrue +\if x\jsEngine + \ifdim\the\XeTeXversion\XeTeXrevision\p@<0.997\p@ + \@tempswafalse \fi +\fi +\if@tempswa \expandafter\@gobble +\else + \ClassError\bxjs@clsname + {The engine in use is all too old} + {It's a fatal error. I'll quit right now.} + \expandafter\@firstofone +\fi{\endinput\@@end} \if@compatibility \ClassError\bxjs@clsname {Something went chaotic!\MessageBreak @@ -461,6 +464,9 @@ \DeclareOption{nodvidriver}{% \def\bxjs@driver@opt{nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} +\DeclareOption{nodvidriver*}{% + \def\bxjs@driver@opt{nodvidriver*}% + \let\bxjs@driver@given\bxjs@driver@@none} \DeclareOption{pdftex}{% \def\bxjs@driver@opt{pdftex}% \let\bxjs@driver@given\bxjs@driver@@pdfmode} @@ -600,6 +606,7 @@ \let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none +\bxjs@cslet{bxjs@dvidriver@@nodvidriver*}\bxjs@driver@@none \define@key{bxjs}{dvi}{% \bxjs@csletcs{bxjs@tmpa}{bxjs@dvidriver@@#1}% \ifx\bxjs@tmpa\relax @@ -783,9 +790,12 @@ \bxjs@papersizefalse \fi \def\bxjs@@minimal{minimal} +\def\bxjs@@standard{standard} +\def\bxjs@@pandoc{pandoc} +\def\bxjs@@modern{modern} \ifx\bxjs@jadriver\relax \ifx j\jsEngine - \def\bxjs@jadriver{standard} + \let\bxjs@jadriver\bxjs@@standard \else \ClassWarningNoLine\bxjs@clsname {The option 'ja' is MISSING!!\MessageBreak @@ -796,7 +806,6 @@ \let\bxjs@jadriver\bxjs@@minimal \fi \fi -\def\bxjs@@pandoc{pandoc} \ifx\bxjs@jadriver\bxjs@@pandoc \ifx\bxjs@plautopatch@given\@undefined \ifjsWitheTeX \bxjs@plautopatchtrue @@ -1209,7 +1218,6 @@ \else \PassOptionsToPackage{driver=none}{geometry} \fi -\bxjs@apply@bd@pre@geometry@hook \bxjs@apply@bd@pre@geometry@hook{\bxjs@bd@pre@geometry@hook} \bxjs@apply@bd@pre@geometry@hook{\ImposeOldLuaTeXBehavior} \bxjs@preproc@layout @@ -1300,6 +1308,12 @@ \fi\fi} \let\pltx@cleartorightpage\pltx@cleartooddpage \let\pltx@cleartoleftpage\pltx@cleartoevenpage +\ifdim\vsize=\z@ +\begingroup +\toks@\expandafter{\clearpage} +\xdef\clearpage{\noexpand\ifbxjs@after@preamble\the\toks@\noexpand\fi} +\endgroup +\fi \def\ps@plainfoot{% \let\@mkboth\@gobbletwo \let\@oddhead\@empty @@ -2396,7 +2410,7 @@ \global\let\bxjs@wareki@used\@empty \ClassWarning\bxjs@clsname {Wareki mode is not supported, since\MessageBreak - 'bxwareki' is unavailable, found}} + 'bxwareki' is unavailable, reported}} \g@addto@macro\bxjs@begin@document@hook{% \let\bxjs@wareki@used\@empty} \fi diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls index f320f016390..1922c01fed6 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls @@ -22,15 +22,16 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsbook} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsbook} \newif\ifjsc@needsp@tch \jsc@needsp@tchfalse \RequirePackage{calc} \RequirePackage{keyval} +\def\jsAtEndOfClass{% + \expandafter\g@addto@macro\csname\bxjs@clsname.cls-h@@k\endcsname} \IfFileExists{bxjscompat.sty}{% - \let\jsAtEndOfClass\@gobble \RequirePackage{bxjscompat}% }{} \let\jsArticle=a @@ -165,31 +166,33 @@ \fi \fi} \def\bxjs@unit@Q{0.25mm}\let\bxjs@unit@H\bxjs@unit@Q +\newif\ifbxjs@after@preamble \@onlypreamble\bxjs@begin@document@hook -\let\bxjs@begin@document@hook\@empty +\def\bxjs@begin@document@hook{\bxjs@after@preambletrue} \AtBeginDocument{\bxjs@begin@document@hook} \@onlypreamble\bxjs@post@option@hook \let\bxjs@post@option@hook\@empty \@onlypreamble\bxjs@pre@jadriver@hook \let\bxjs@pre@jadriver@hook\@empty -\def\jsAtEndOfClass{% - \expandafter\g@addto@macro\csname\bxjs@clsname.cls-h@@k\endcsname} \@onlypreamble\bxjs@tmpdo \@onlypreamble\bxjs@tmpdo@a \@onlypreamble\bxjs@tmpdo@b \@onlypreamble\bxjs@tmpdo@c \@onlypreamble\bxjs@tmpdo@d -\if l\jsEngine -\def\bxjs@tmpdo#1{% - \xdef\bxjs@pre@jadriver@hook{% - \bxjs@pre@jadriver@hook - \catcode`#1=\the\catcode`#1\relax}% - \catcode`#1=11\relax} -\@tfor\bxjs@tmpa:=和西暦\do - {\expandafter\bxjs@tmpdo\bxjs@tmpa} -\fi \bxjs@robust@def\jsInhibitGlue{% \ifx\inhibitglue\@undefined\else \inhibitglue \fi} +\@tempswatrue +\if x\jsEngine + \ifdim\the\XeTeXversion\XeTeXrevision\p@<0.997\p@ + \@tempswafalse \fi +\fi +\if@tempswa \expandafter\@gobble +\else + \ClassError\bxjs@clsname + {The engine in use is all too old} + {It's a fatal error. I'll quit right now.} + \expandafter\@firstofone +\fi{\endinput\@@end} \if@compatibility \ClassError\bxjs@clsname {Something went chaotic!\MessageBreak @@ -467,6 +470,9 @@ \DeclareOption{nodvidriver}{% \def\bxjs@driver@opt{nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} +\DeclareOption{nodvidriver*}{% + \def\bxjs@driver@opt{nodvidriver*}% + \let\bxjs@driver@given\bxjs@driver@@none} \DeclareOption{pdftex}{% \def\bxjs@driver@opt{pdftex}% \let\bxjs@driver@given\bxjs@driver@@pdfmode} @@ -606,6 +612,7 @@ \let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none +\bxjs@cslet{bxjs@dvidriver@@nodvidriver*}\bxjs@driver@@none \define@key{bxjs}{dvi}{% \bxjs@csletcs{bxjs@tmpa}{bxjs@dvidriver@@#1}% \ifx\bxjs@tmpa\relax @@ -792,9 +799,12 @@ \bxjs@papersizefalse \fi \def\bxjs@@minimal{minimal} +\def\bxjs@@standard{standard} +\def\bxjs@@pandoc{pandoc} +\def\bxjs@@modern{modern} \ifx\bxjs@jadriver\relax \ifx j\jsEngine - \def\bxjs@jadriver{standard} + \let\bxjs@jadriver\bxjs@@standard \else \ClassWarningNoLine\bxjs@clsname {The option 'ja' is MISSING!!\MessageBreak @@ -805,7 +815,6 @@ \let\bxjs@jadriver\bxjs@@minimal \fi \fi -\def\bxjs@@pandoc{pandoc} \ifx\bxjs@jadriver\bxjs@@pandoc \ifx\bxjs@plautopatch@given\@undefined \ifjsWitheTeX \bxjs@plautopatchtrue @@ -1243,7 +1252,6 @@ \else \PassOptionsToPackage{driver=none}{geometry} \fi -\bxjs@apply@bd@pre@geometry@hook \bxjs@apply@bd@pre@geometry@hook{\bxjs@bd@pre@geometry@hook} \bxjs@apply@bd@pre@geometry@hook{\ImposeOldLuaTeXBehavior} \bxjs@preproc@layout @@ -1334,6 +1342,12 @@ \fi\fi} \let\pltx@cleartorightpage\pltx@cleartooddpage \let\pltx@cleartoleftpage\pltx@cleartoevenpage +\ifdim\vsize=\z@ +\begingroup +\toks@\expandafter{\clearpage} +\xdef\clearpage{\noexpand\ifbxjs@after@preamble\the\toks@\noexpand\fi} +\endgroup +\fi \if@openleft \let\cleardoublepage\pltx@cleartoleftpage \else\if@openright @@ -2502,7 +2516,7 @@ \global\let\bxjs@wareki@used\@empty \ClassWarning\bxjs@clsname {Wareki mode is not supported, since\MessageBreak - 'bxwareki' is unavailable, found}} + 'bxwareki' is unavailable, reported}} \g@addto@macro\bxjs@begin@document@hook{% \let\bxjs@wareki@used\@empty} \fi diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty index caf8065cae0..c3f090276dc 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{bxjscjkcat} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] \def\bxjx@pkgname{bxjscjkcat} \newcount\bxjx@cnta \@onlypreamble\bxjx@tmpdo diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty index d43fab9e3b9..238c547eba9 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{bxjscompat} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] \def\bxac@pkgname{bxjscompat} \let\bxac@engine=n \def\bxac@do#1#2{% @@ -39,7 +39,7 @@ \let\ImposeOldLuaTeXBehavior\relax \let\RevokeOldLuaTeXBehavior\relax \ifx x\bxac@engine -\@onlypreamble\bxac@adjust@charclass +\ifx\XeTeXcharclass\@undefined\else \bxac@delayed@if@bxjs{% \@ifpackageloaded{xeCJK}{}{%else \ifx\xe@alloc@intercharclass\@undefined\else @@ -57,23 +57,28 @@ \ifnum\XeTeXcharclass"3041=\z@ \PackageInfo\bxac@pkgname {Adjusting interchar class for CJK...\@gobble}% - \@for\bxac@x:={% + \@for\bxac@tmpb:={% 3041,3043,3045,3047,3049,3063,3083,3085,3087,308E,% 3095,3096,30A1,30A3,30A5,30A7,30A9,30C3,30E3,30E5,% 30E7,30EE,30F5,30F6,30FC,31F0,31F1,31F2,31F3,31F4,% 31F5,31F6,31F7,31F8,31F9,31FA,31FB,31FC,31FD,31FE,% 31FF% - }\do{\XeTeXcharclass"\bxac@x=\@ne}% + }\do{\XeTeXcharclass"\bxac@tmpb=\@ne}% \fi }% } \fi +\chardef\bxac@tmpb=11 +\def\bxac@do#1#2{% + \@tempcnta=#1\relax + \unless\ifnum\catcode\@tempcnta=\bxac@tmpb + \chardef\bxac@tmpa=#2\relax + \@whilenum{\@tempcnta<\bxac@tmpa}\do{% + \catcode\@tempcnta\bxac@tmpb \advance\@tempcnta\@ne}% + \fi} +\bxac@do{"4E00}{"9FCD} +\fi \ifx l\bxac@engine -\unless\ifnum\luatexversion<80 \ifnum\luatexversion<85 - \chardef\pdftexversion=200 - \def\pdftexrevision{0} - \let\pdftexbanner\luatexbanner -\fi\fi \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname outputmode\endcsname\relax\else \def\bxac@ob@list{% @@ -99,7 +104,7 @@ \let\do\bxac@ob@do \bxac@ob@list \fi} \fi - \ifnum\luatexversion>64 \directlua{ + \directlua{ local function range(cs, ce, cc, ff) if ff or not tex.getcatcode(cs) == cc then local setcc = tex.setcatcode @@ -107,6 +112,7 @@ end end range(0x3400, 0x4DB5, 11, false) + \ifnum\luatexversion>64 range(0x4DB5, 0x4DBF, 11, true) range(0x4E00, 0x9FCC, 11, false) range(0x9FCD, 0x9FFF, 11, true) @@ -119,7 +125,8 @@ range(0x2B81E, 0x2B81F, 11, true) range(0x2B820, 0x2CEA1, 11, false) range(0x2CEA2, 0x2FFFD, 11, true) - }\fi + \fi + } \fi \endinput %% diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def index 23b42ec2510..c390bd3c996 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) \ProvidesFile{bxjsja-minimal.def} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] %% このファイルは日本語文字を含みます \def\DeclareJaTextFontCommand#1#2{% \DeclareRobustCommand#1[1]{% @@ -272,7 +272,7 @@ \fi \endgroup \@namedef{ver@minijs.sty}{} -\else\ifx p\jsEngine +\else\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T \let\bxjs@let@hchar@chr\bxjs@let@hchar@chr@ue \@onlypreamble\bxjs@cjk@loaded \def\bxjs@cjk@loaded{% @@ -312,8 +312,9 @@ \fi \@onlypreamble\bxjs@do@simplejasetup \def\bxjs@do@simplejasetup{% + \@namedef{bxjs@zeroglue/0.0pt}{T}% \ifnum\XeTeXinterchartokenstate>\z@ - \else\ifnum\strcmp{\the\XeTeXlinebreakskip}{\the\z@}=\z@ + \else\expandafter\ifx\csname bxjs@zeroglue/\the\XeTeXlinebreakskip\endcsname\relax\else \jsSimpleJaSetup \ClassInfo\bxjs@clsname {'\string\jsSimpleJaSetup' is applied\@gobble}% @@ -388,6 +389,7 @@ \g@addto@macro\bxjs@begin@document@hook{% \bxjs@pagestyle@hook \global\let\bxjs@pagestyle@hook\relax} +\fi \ifbxjs@jaspace@cmd \def\jaenspace{\hskip.5\jsZw\relax} \def\jathinspace{\hskip\z@skip} @@ -403,7 +405,6 @@ \def\bxjs@jaspace@@nibu{\hskip .5\jsZw\relax} \def\bxjs@jaspace@@shibu{\hskip .25\jsZw\relax} \fi -\fi \endinput %% %% End of file `bxjsja-minimal.def'. diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def index af5d120f4ea..de56e9cba73 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) \ProvidesFile{bxjsja-modern.def} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] \input{bxjsja-standard.def} \ifnum0\if x\jsEngine1\fi\if l\jsEngine1\fi=\z@ \def\encodingdefault{T1}% diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def index 551dfc43768..a51c0097880 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) \ProvidesFile{bxjsja-pandoc.def} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] \input{bxjsja-standard.def} \RequirePackage{bxjspandoc} \ifjsWitheTeX\else @@ -161,7 +161,6 @@ \setotherlangauge{\bxjs@tmpa}}}% \let\bxjs@polyglossia@options\relax}% \fi -\if x\jsEngine\else \pandocSkipLoadPackage{babel} \bxjs@set@dupload@proc{babel.sty}{% \bxjs@unset@dupload@proc{babel.sty}% @@ -202,7 +201,6 @@ \else \RequirePackage{bxorigcapt}[]% \fi} -\fi \bxjs@set@dupload@proc{geometry.sty}{% \setpagelayout*{#1}} \if l\jsEngine @@ -217,7 +215,7 @@ \@onlypreamble\bxjs@info@or@ban \def\bxjs@info@or@ban#1{% \PackageInfo\bxjs@clsname - {Freeze layout on '#1',\MessageBreak detected}} + {Freeze layout on '#1',\MessageBreak reported}} \unless\ifbxjs@jp@or@indent \bxjs@info@or@ban{indent} \IfFileExists{parskip.sty}{% diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def index 3b28255c80f..9a60aa14fdc 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) \ProvidesFile{bxjsja-standard.def} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] %% このファイルは日本語文字を含みます \input{bxjsja-minimal.def} \bxjs@simplejasetupfalse @@ -450,13 +450,13 @@ \reDeclareMathAlphabet{\mathsf}{\@mathsf}{\@mathgt}% \fi} \fi -\else\if p\jsEngine +\else\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T \bxjs@adjust@jafont{f} \let\bxjs@jafont@paren\@firstofone \bxjs@resolve@jafont@paren\bxjs@tmpa \edef\bxjs@tmpa{\bxjs@catopt\bxjs@tmpa\bxjs@jp@font} \edef\bxjs@tmpa{\bxjs@catopt\bxjs@tmpa{whole}} -\def\bxjs@tmpb{pandoc}\ifx\bxjs@tmpb\bxjs@jadriver\else +\ifx\bxjs@jadriver\bxjs@@pandoc\else \edef\bxjs@tmpa{\bxjs@catopt\bxjs@tmpa{autotilde}} \fi \edef\bxjs@next{% @@ -537,11 +537,13 @@ \noexpand\RequirePackage[\bxjs@tmpa]{zxjafont}[2013/01/28]% v0.2a }\bxjs@next \fi +\ifx\strcmp\@undefined\else %未定義なら条件を満たさない \ifnum\strcmp{\the\XeTeXversion\XeTeXrevision}{0.99992}>\m@ne \ifbxjs@hyperref@enc \PassOptionsToPackage{unicode}{hyperref} \fi \fi +\fi \AtEndOfPackage{% \def\@gnewline #1{% \ifvmode \@nolnerr diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty index cec84841e02..9f0a9a45836 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{bxjspandoc} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjsp@pkgname{bxjscjkcat} \let\bxjsp@engine=n diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls index 7ed66aab6c2..4d50929b9dd 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls @@ -22,15 +22,16 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsreport} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsreport} \newif\ifjsc@needsp@tch \jsc@needsp@tchfalse \RequirePackage{calc} \RequirePackage{keyval} +\def\jsAtEndOfClass{% + \expandafter\g@addto@macro\csname\bxjs@clsname.cls-h@@k\endcsname} \IfFileExists{bxjscompat.sty}{% - \let\jsAtEndOfClass\@gobble \RequirePackage{bxjscompat}% }{} \let\jsArticle=a @@ -165,31 +166,33 @@ \fi \fi} \def\bxjs@unit@Q{0.25mm}\let\bxjs@unit@H\bxjs@unit@Q +\newif\ifbxjs@after@preamble \@onlypreamble\bxjs@begin@document@hook -\let\bxjs@begin@document@hook\@empty +\def\bxjs@begin@document@hook{\bxjs@after@preambletrue} \AtBeginDocument{\bxjs@begin@document@hook} \@onlypreamble\bxjs@post@option@hook \let\bxjs@post@option@hook\@empty \@onlypreamble\bxjs@pre@jadriver@hook \let\bxjs@pre@jadriver@hook\@empty -\def\jsAtEndOfClass{% - \expandafter\g@addto@macro\csname\bxjs@clsname.cls-h@@k\endcsname} \@onlypreamble\bxjs@tmpdo \@onlypreamble\bxjs@tmpdo@a \@onlypreamble\bxjs@tmpdo@b \@onlypreamble\bxjs@tmpdo@c \@onlypreamble\bxjs@tmpdo@d -\if l\jsEngine -\def\bxjs@tmpdo#1{% - \xdef\bxjs@pre@jadriver@hook{% - \bxjs@pre@jadriver@hook - \catcode`#1=\the\catcode`#1\relax}% - \catcode`#1=11\relax} -\@tfor\bxjs@tmpa:=和西暦\do - {\expandafter\bxjs@tmpdo\bxjs@tmpa} -\fi \bxjs@robust@def\jsInhibitGlue{% \ifx\inhibitglue\@undefined\else \inhibitglue \fi} +\@tempswatrue +\if x\jsEngine + \ifdim\the\XeTeXversion\XeTeXrevision\p@<0.997\p@ + \@tempswafalse \fi +\fi +\if@tempswa \expandafter\@gobble +\else + \ClassError\bxjs@clsname + {The engine in use is all too old} + {It's a fatal error. I'll quit right now.} + \expandafter\@firstofone +\fi{\endinput\@@end} \if@compatibility \ClassError\bxjs@clsname {Something went chaotic!\MessageBreak @@ -467,6 +470,9 @@ \DeclareOption{nodvidriver}{% \def\bxjs@driver@opt{nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} +\DeclareOption{nodvidriver*}{% + \def\bxjs@driver@opt{nodvidriver*}% + \let\bxjs@driver@given\bxjs@driver@@none} \DeclareOption{pdftex}{% \def\bxjs@driver@opt{pdftex}% \let\bxjs@driver@given\bxjs@driver@@pdfmode} @@ -606,6 +612,7 @@ \let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none +\bxjs@cslet{bxjs@dvidriver@@nodvidriver*}\bxjs@driver@@none \define@key{bxjs}{dvi}{% \bxjs@csletcs{bxjs@tmpa}{bxjs@dvidriver@@#1}% \ifx\bxjs@tmpa\relax @@ -791,9 +798,12 @@ \bxjs@papersizefalse \fi \def\bxjs@@minimal{minimal} +\def\bxjs@@standard{standard} +\def\bxjs@@pandoc{pandoc} +\def\bxjs@@modern{modern} \ifx\bxjs@jadriver\relax \ifx j\jsEngine - \def\bxjs@jadriver{standard} + \let\bxjs@jadriver\bxjs@@standard \else \ClassWarningNoLine\bxjs@clsname {The option 'ja' is MISSING!!\MessageBreak @@ -804,7 +814,6 @@ \let\bxjs@jadriver\bxjs@@minimal \fi \fi -\def\bxjs@@pandoc{pandoc} \ifx\bxjs@jadriver\bxjs@@pandoc \ifx\bxjs@plautopatch@given\@undefined \ifjsWitheTeX \bxjs@plautopatchtrue @@ -1217,7 +1226,6 @@ \else \PassOptionsToPackage{driver=none}{geometry} \fi -\bxjs@apply@bd@pre@geometry@hook \bxjs@apply@bd@pre@geometry@hook{\bxjs@bd@pre@geometry@hook} \bxjs@apply@bd@pre@geometry@hook{\ImposeOldLuaTeXBehavior} \bxjs@preproc@layout @@ -1308,6 +1316,12 @@ \fi\fi} \let\pltx@cleartorightpage\pltx@cleartooddpage \let\pltx@cleartoleftpage\pltx@cleartoevenpage +\ifdim\vsize=\z@ +\begingroup +\toks@\expandafter{\clearpage} +\xdef\clearpage{\noexpand\ifbxjs@after@preamble\the\toks@\noexpand\fi} +\endgroup +\fi \if@openleft \let\cleardoublepage\pltx@cleartoleftpage \else\if@openright @@ -2525,7 +2539,7 @@ \global\let\bxjs@wareki@used\@empty \ClassWarning\bxjs@clsname {Wareki mode is not supported, since\MessageBreak - 'bxwareki' is unavailable, found}} + 'bxwareki' is unavailable, reported}} \g@addto@macro\bxjs@begin@document@hook{% \let\bxjs@wareki@used\@empty} \fi diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls index f29e623436b..2c680a25ff6 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls @@ -22,15 +22,16 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsslide} - [2022/03/20 v2.6 BXJS document classes] + [2022/04/10 v2.7a BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsslide} \newif\ifjsc@needsp@tch \jsc@needsp@tchfalse \RequirePackage{calc} \RequirePackage{keyval} +\def\jsAtEndOfClass{% + \expandafter\g@addto@macro\csname\bxjs@clsname.cls-h@@k\endcsname} \IfFileExists{bxjscompat.sty}{% - \let\jsAtEndOfClass\@gobble \RequirePackage{bxjscompat}% }{} \let\jsArticle=a @@ -165,31 +166,33 @@ \fi \fi} \def\bxjs@unit@Q{0.25mm}\let\bxjs@unit@H\bxjs@unit@Q +\newif\ifbxjs@after@preamble \@onlypreamble\bxjs@begin@document@hook -\let\bxjs@begin@document@hook\@empty +\def\bxjs@begin@document@hook{\bxjs@after@preambletrue} \AtBeginDocument{\bxjs@begin@document@hook} \@onlypreamble\bxjs@post@option@hook \let\bxjs@post@option@hook\@empty \@onlypreamble\bxjs@pre@jadriver@hook \let\bxjs@pre@jadriver@hook\@empty -\def\jsAtEndOfClass{% - \expandafter\g@addto@macro\csname\bxjs@clsname.cls-h@@k\endcsname} \@onlypreamble\bxjs@tmpdo \@onlypreamble\bxjs@tmpdo@a \@onlypreamble\bxjs@tmpdo@b \@onlypreamble\bxjs@tmpdo@c \@onlypreamble\bxjs@tmpdo@d -\if l\jsEngine -\def\bxjs@tmpdo#1{% - \xdef\bxjs@pre@jadriver@hook{% - \bxjs@pre@jadriver@hook - \catcode`#1=\the\catcode`#1\relax}% - \catcode`#1=11\relax} -\@tfor\bxjs@tmpa:=和西暦\do - {\expandafter\bxjs@tmpdo\bxjs@tmpa} -\fi \bxjs@robust@def\jsInhibitGlue{% \ifx\inhibitglue\@undefined\else \inhibitglue \fi} +\@tempswatrue +\if x\jsEngine + \ifdim\the\XeTeXversion\XeTeXrevision\p@<0.997\p@ + \@tempswafalse \fi +\fi +\if@tempswa \expandafter\@gobble +\else + \ClassError\bxjs@clsname + {The engine in use is all too old} + {It's a fatal error. I'll quit right now.} + \expandafter\@firstofone +\fi{\endinput\@@end} \if@compatibility \ClassError\bxjs@clsname {Something went chaotic!\MessageBreak @@ -461,6 +464,9 @@ \DeclareOption{nodvidriver}{% \def\bxjs@driver@opt{nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} +\DeclareOption{nodvidriver*}{% + \def\bxjs@driver@opt{nodvidriver*}% + \let\bxjs@driver@given\bxjs@driver@@none} \DeclareOption{pdftex}{% \def\bxjs@driver@opt{pdftex}% \let\bxjs@driver@given\bxjs@driver@@pdfmode} @@ -600,6 +606,7 @@ \let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none +\bxjs@cslet{bxjs@dvidriver@@nodvidriver*}\bxjs@driver@@none \define@key{bxjs}{dvi}{% \bxjs@csletcs{bxjs@tmpa}{bxjs@dvidriver@@#1}% \ifx\bxjs@tmpa\relax @@ -783,9 +790,12 @@ \bxjs@papersizefalse \fi \def\bxjs@@minimal{minimal} +\def\bxjs@@standard{standard} +\def\bxjs@@pandoc{pandoc} +\def\bxjs@@modern{modern} \ifx\bxjs@jadriver\relax \ifx j\jsEngine - \def\bxjs@jadriver{standard} + \let\bxjs@jadriver\bxjs@@standard \else \ClassWarningNoLine\bxjs@clsname {The option 'ja' is MISSING!!\MessageBreak @@ -796,7 +806,6 @@ \let\bxjs@jadriver\bxjs@@minimal \fi \fi -\def\bxjs@@pandoc{pandoc} \ifx\bxjs@jadriver\bxjs@@pandoc \ifx\bxjs@plautopatch@given\@undefined \ifjsWitheTeX \bxjs@plautopatchtrue @@ -1207,7 +1216,6 @@ \else \PassOptionsToPackage{driver=none}{geometry} \fi -\bxjs@apply@bd@pre@geometry@hook \bxjs@apply@bd@pre@geometry@hook{\bxjs@bd@pre@geometry@hook} \bxjs@apply@bd@pre@geometry@hook{\ImposeOldLuaTeXBehavior} \bxjs@preproc@layout @@ -1298,6 +1306,12 @@ \fi\fi} \let\pltx@cleartorightpage\pltx@cleartooddpage \let\pltx@cleartoleftpage\pltx@cleartoevenpage +\ifdim\vsize=\z@ +\begingroup +\toks@\expandafter{\clearpage} +\xdef\clearpage{\noexpand\ifbxjs@after@preamble\the\toks@\noexpand\fi} +\endgroup +\fi \def\ps@plainfoot{% \let\@mkboth\@gobbletwo \let\@oddhead\@empty @@ -2394,7 +2408,7 @@ \global\let\bxjs@wareki@used\@empty \ClassWarning\bxjs@clsname {Wareki mode is not supported, since\MessageBreak - 'bxwareki' is unavailable, found}} + 'bxwareki' is unavailable, reported}} \g@addto@macro\bxjs@begin@document@hook{% \let\bxjs@wareki@used\@empty} \fi -- cgit v1.2.3