From 29e8e79e67fce28014aba462e80fe387cdd724f8 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 20 Mar 2022 21:08:20 +0000 Subject: bxjscls (20mar22) git-svn-id: svn://tug.org/texlive/trunk@62825 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/tex/latex/bxjscls/bxjsarticle.cls | 39 +++++++++-- Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls | 39 +++++++++-- Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty | 2 +- Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty | 2 +- .../tex/latex/bxjscls/bxjsja-minimal.def | 2 +- .../texmf-dist/tex/latex/bxjscls/bxjsja-modern.def | 2 +- .../texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def | 77 ++++++++++++++-------- .../tex/latex/bxjscls/bxjsja-standard.def | 20 ++++-- Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty | 27 ++++++-- Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls | 39 +++++++++-- Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls | 39 +++++++++-- 11 files changed, 223 insertions(+), 65 deletions(-) (limited to 'Master/texmf-dist/tex') diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls index 7032930c8fd..bfc345c0b3c 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsarticle} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsarticle} \newif\ifjsc@needsp@tch @@ -87,6 +87,8 @@ \let\PackageWarningNoLine\bxjs@tmpa \@nameuse{RevokeOldLuaTeXBehavior} \let\ifjsInPdfMode\ifpdf +\newif\ifbxjs@explIII +\@ifl@t@r\fmtversion{2020/02/02}{\bxjs@explIIItrue}{} \newif\ifbxjs@TUenc \def\bxjs@tmpa{TU}\edef\bxjs@tmpb{\f@encoding} \ifx\bxjs@tmpa\bxjs@tmpb @@ -94,6 +96,11 @@ \fi \newif\ifbxjs@old@hook@system \@ifl@t@r\fmtversion{2020/10/01}{}{\bxjs@old@hook@systemtrue} +\@ifl@t@r\fmtversion{2021/11/15}{% + \def\bxjs@CGHN#1{#1}% +}{%else + \def\bxjs@CGHN#1{\bxjs@CGHN@a#1//}% + \def\bxjs@CGHN@a#1/#2/#3//{#1/#3/#2}} \@gobbletwo\if\if \def\bxjs@cond#1\fi{% #1\expandafter\@firstoftwo \else\expandafter\@secondoftwo @@ -105,6 +112,21 @@ \def\bxjs@catopt#1#2{% #1\if\relax#1\relax\else\if\relax#2\relax\else,\fi\fi#2} \def\bxjs@ifplus#1{\@ifnextchar+{\@firstoftwo{#1}}} +\def\bxjs@trim#1{\expandafter\bxjs@trim@a#1\@nil#1} +\def\bxjs@trim@a{\futurelet\bxjs@tmpb\bxjs@trim@b} +\def\bxjs@trim@b{\bxjs@cond\ifx\bxjs@tmpb\@sptoken\fi + {\bxjs@trim@c\bxjs@trim@a}{\bxjs@trim@d}} +\def\bxjs@trim@c#1 {#1} +\def\bxjs@trim@d#1\@nil{\bxjs@trim@e#1\@nil: \@nil\@nnil} +\def\bxjs@trim@e#1 \@nil#2\@nnil{\bxjs@cond\ifx\@nnil#2\@nnil\fi + {\bxjs@trim@f#1\@nnil}{\bxjs@trim@e#1\@nil: \@nil\@nnil}} +\def\bxjs@trim@f#1\@nil#2\@nnil#3{\def#3{#1}} +\def\bxjs@set@array@from@clist#1#2{% + \@tempcnta\z@ + \@for\bxjs@tmpa:=\@empty#2\do{% + \bxjs@trim\bxjs@tmpa \bxjs@cslet{#1/\the\@tempcnta}\bxjs@tmpa + \advance\@tempcnta\@ne} + \bxjs@cslet{#1/\the\@tempcnta}\relax} \let\c@bxjs@tempcnta\@tempcnta \def\bxjs@gset@tempcnta{\setcounter{bxjs@tempcnta}} \def\jsSetQHLength#1#2{% @@ -730,10 +752,17 @@ \else \@tempswatrue \fi\fi\fi \if@tempswa - \ifx\bxjs@driver@opt\@undefined \ifx\bxjs@jadriver@opt\@undefined\else - \ClassWarningNoLine\bxjs@clsname - {No driver option is given} - \fi\fi + \ifx\bxjs@driver@opt\@undefined + \if \ifbxjs@explIII T\else\ifx\bxjs@jadriver@opt\@undefined F\else T\fi\fi T% + \ClassWarningNoLine\bxjs@clsname + {A driver option is MISSING!!\MessageBreak + You should properly specify one of the valid\MessageBreak + driver options according to the DVI driver\MessageBreak + that is in use:\MessageBreak + \@spaces dvips, dvipdfmx, dviout, xdvi,\MessageBreak + \@spaces nodvidriver} + \fi + \fi \ifbxjs@dvi@opt \edef\bxjs@next{% \let\noexpand\bxjs@driver@given diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls index 62d6aec7f98..f320f016390 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsbook} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsbook} \newif\ifjsc@needsp@tch @@ -87,6 +87,8 @@ \let\PackageWarningNoLine\bxjs@tmpa \@nameuse{RevokeOldLuaTeXBehavior} \let\ifjsInPdfMode\ifpdf +\newif\ifbxjs@explIII +\@ifl@t@r\fmtversion{2020/02/02}{\bxjs@explIIItrue}{} \newif\ifbxjs@TUenc \def\bxjs@tmpa{TU}\edef\bxjs@tmpb{\f@encoding} \ifx\bxjs@tmpa\bxjs@tmpb @@ -94,6 +96,11 @@ \fi \newif\ifbxjs@old@hook@system \@ifl@t@r\fmtversion{2020/10/01}{}{\bxjs@old@hook@systemtrue} +\@ifl@t@r\fmtversion{2021/11/15}{% + \def\bxjs@CGHN#1{#1}% +}{%else + \def\bxjs@CGHN#1{\bxjs@CGHN@a#1//}% + \def\bxjs@CGHN@a#1/#2/#3//{#1/#3/#2}} \@gobbletwo\if\if \def\bxjs@cond#1\fi{% #1\expandafter\@firstoftwo \else\expandafter\@secondoftwo @@ -105,6 +112,21 @@ \def\bxjs@catopt#1#2{% #1\if\relax#1\relax\else\if\relax#2\relax\else,\fi\fi#2} \def\bxjs@ifplus#1{\@ifnextchar+{\@firstoftwo{#1}}} +\def\bxjs@trim#1{\expandafter\bxjs@trim@a#1\@nil#1} +\def\bxjs@trim@a{\futurelet\bxjs@tmpb\bxjs@trim@b} +\def\bxjs@trim@b{\bxjs@cond\ifx\bxjs@tmpb\@sptoken\fi + {\bxjs@trim@c\bxjs@trim@a}{\bxjs@trim@d}} +\def\bxjs@trim@c#1 {#1} +\def\bxjs@trim@d#1\@nil{\bxjs@trim@e#1\@nil: \@nil\@nnil} +\def\bxjs@trim@e#1 \@nil#2\@nnil{\bxjs@cond\ifx\@nnil#2\@nnil\fi + {\bxjs@trim@f#1\@nnil}{\bxjs@trim@e#1\@nil: \@nil\@nnil}} +\def\bxjs@trim@f#1\@nil#2\@nnil#3{\def#3{#1}} +\def\bxjs@set@array@from@clist#1#2{% + \@tempcnta\z@ + \@for\bxjs@tmpa:=\@empty#2\do{% + \bxjs@trim\bxjs@tmpa \bxjs@cslet{#1/\the\@tempcnta}\bxjs@tmpa + \advance\@tempcnta\@ne} + \bxjs@cslet{#1/\the\@tempcnta}\relax} \let\c@bxjs@tempcnta\@tempcnta \def\bxjs@gset@tempcnta{\setcounter{bxjs@tempcnta}} \def\jsSetQHLength#1#2{% @@ -739,10 +761,17 @@ \else \@tempswatrue \fi\fi\fi \if@tempswa - \ifx\bxjs@driver@opt\@undefined \ifx\bxjs@jadriver@opt\@undefined\else - \ClassWarningNoLine\bxjs@clsname - {No driver option is given} - \fi\fi + \ifx\bxjs@driver@opt\@undefined + \if \ifbxjs@explIII T\else\ifx\bxjs@jadriver@opt\@undefined F\else T\fi\fi T% + \ClassWarningNoLine\bxjs@clsname + {A driver option is MISSING!!\MessageBreak + You should properly specify one of the valid\MessageBreak + driver options according to the DVI driver\MessageBreak + that is in use:\MessageBreak + \@spaces dvips, dvipdfmx, dviout, xdvi,\MessageBreak + \@spaces nodvidriver} + \fi + \fi \ifbxjs@dvi@opt \edef\bxjs@next{% \let\noexpand\bxjs@driver@given diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty index 5cf64e98d23..caf8065cae0 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} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 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 a89c3a72729..d43fab9e3b9 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} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 BXJS document classes] \def\bxac@pkgname{bxjscompat} \let\bxac@engine=n \def\bxac@do#1#2{% diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def index 1017aa84960..23b42ec2510 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} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 BXJS document classes] %% このファイルは日本語文字を含みます \def\DeclareJaTextFontCommand#1#2{% \DeclareRobustCommand#1[1]{% diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def index a6c4f15f4e8..af5d120f4ea 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} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 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 8853a2d2eb7..551dfc43768 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} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 BXJS document classes] \input{bxjsja-standard.def} \RequirePackage{bxjspandoc} \ifjsWitheTeX\else @@ -30,6 +30,18 @@ This engine does not support e-TeX extension!\MessageBreak Some feature might not work properly} \fi +\newif\ifbxjs@bxghost@available +\ifjsWitheTeX + \RequirePackage{pdftexcmds}[2009/09/22]% v0.5 + \IfFileExists{bxghost.sty}{% + \bxjs@bxghost@availabletrue + \@namedef{bxjs@bgbv/79E70A0991967E27981832C84DB5DF99}{1}%v0.2.0 + \ifx\pdf@filemdfivesum\@undefined\else + \expandafter\ifx\csname bxjs@bgbv/\pdf@filemdfivesum{bxghost.sty}% + \endcsname\relax\else \bxjs@bxghost@availablefalse \fi + \fi + }{} +\fi \@onlypreamble\bxjs@endpreamble@hook \let\bxjs@endpreamble@hook\@empty \RequirePackage{iftex}[2013/04/04]% v0.2 @@ -82,7 +94,7 @@ \def\bxjs@set@dupload@proc@a#1{% \@onlypreamble#1\def#1##1} \def\bxjs@unset@dupload@proc#1{% - \expandafter\let\csname bxjs@dlp/#1\endcsname\@undefined} + \bxjs@cslet{bxjs@dlp/#1}\@undefined} \@onlypreamble\bxjs@org@if@ptions \let\bxjs@org@if@ptions\@if@ptions \@onlypreamble\bxjs@org@reset@ptions @@ -115,29 +127,24 @@ \bxjs@set@dupload@proc{polyglossia.sty}{% \bxjs@unset@dupload@proc{polyglossia.sty}% \ClassWarning\bxjs@clsname - {Package polyglossia is required}% + {Package polyglossia is requested}% \def\bxjs@polyglossia@options{#1}% \newcommand*\setmainlanguage[2][]{% - \ifblank{##2}{% - \ClassWarning\bxjs@clsname - {Main language is invalid, thus the fallback\MessageBreak - definitions will be employed}% - \bxjs@pandoc@polyglossia@ja - }{\ifstrequal{##2}{japanese}{% + \ifboolexpr{test{\ifblank{##2}}or test{\ifstrequal{##2}{japanese}}}{% \ClassWarning\bxjs@clsname - {Main language is japanese, thus the fallback\MessageBreak + {Main language is 'japanese', thus fallback\MessageBreak definitions will be employed}% \bxjs@pandoc@polyglossia@ja }{%else \ClassWarning\bxjs@clsname - {Main language is valid (##2),\MessageBreak + {Main language is '##2',\MessageBreak thus polyglossia will be loaded}% \csundef{ver@polyglossia.sty}% \edef\bxjs@next{% \noexpand\RequirePackage[\bxjs@polyglossia@options]{polyglossia}[]% }\bxjs@next \setmainlanguage[##1]{##2}% - }}}} + }}} \g@addto@macro\bxjs@endpreamble@hook{% \ifx\bxjs@polyglossia@options\relax \csundef{ver@polyglossia.sty}% @@ -159,32 +166,34 @@ \bxjs@set@dupload@proc{babel.sty}{% \bxjs@unset@dupload@proc{babel.sty}% \ClassWarning\bxjs@clsname - {Package babel is required}% + {Package babel is requested}% \@tempswafalse \let\bxjs@babel@options\@empty \def\bxjs@tmpb{main=}% + \def\bxjs@next{main=japanese}% \@for\bxjs@tmpa:=#1\do{% \ifx\bxjs@tmpa\bxjs@tmpb \@tempswatrue + \else\ifx\bxjs@tmpa\bxjs@next \@tempswatrue \else \edef\bxjs@babel@options{\bxjs@babel@options,\bxjs@tmpa}% - \fi}% + \fi\fi}% \if@tempswa \ClassWarning\bxjs@clsname - {Main language is invalid, so fallback\MessageBreak + {Main language is 'japanese', thus fallback\MessageBreak definitions will be employed}% - \bxjs@pandoc@polyglossia@ja + \bxjs@pandoc@babel@ja \else \ClassWarning\bxjs@clsname - {Main language is valid,\MessageBreak + {Main language is not 'japanese',\MessageBreak thus babel will be loaded}% - \expandafter\let\csname ver@babel.sty\endcsname\@undefined + \bxjs@cslet{ver@babel.sty}\@undefined \RequirePackage[#1]{babel}[]% \fi} \g@addto@macro\bxjs@endpreamble@hook{% \ifx\bxjs@babel@options\relax - \expandafter\let\csname ver@babel.sty\endcsname\@undefined + \bxjs@cslet{ver@babel.sty}\@undefined \fi} \@onlypreamble\bxjs@pandoc@babel@ja \def\bxjs@pandoc@babel@ja{% - \expandafter\let\csname ver@babel.sty\endcsname\@undefined + \bxjs@cslet{ver@babel.sty}\@undefined \edef\bxjs@next{% \noexpand\RequirePackage[\bxjs@babel@options,english]{babel}[]% }\bxjs@next @@ -244,14 +253,15 @@ \if@tempswa\ifx\jsParagraphMark\bxjs@org@paragraph@mark \let\jsParagraphMark\@empty \fi\fi} +\def\pandocZWSpace{\zwspace} \ifnum0\if x\jsEngine1\fi\if l\jsEngine1\fi>\z@ \catcode"3000=\active \begingroup \catcode`\!=7 - \protected\gdef!!!!3000{\zwspace} + \protected\gdef!!!!3000{\pandocZWSpace} \endgroup \else\ifx\DeclareUnicodeCharacter\@undefined\else \DeclareUnicodeCharacter{3000}{\bxjs@zsp@char} - \bxjs@protected\def\bxjs@zsp@char{\zwspace} + \bxjs@protected\def\bxjs@zsp@char{\pandocZWSpace} \fi\fi \if j\jsEngine \bxjs@fix@hyperref@unicode{false} @@ -260,13 +270,13 @@ \fi \ifbxjs@jp@fix@strong\ifbxjs@jp@strong@cmd \let\orgtextbf\textbf - \DeclareRobustCommand\bxjstextbf[1]{% + \DeclareRobustCommand\pandocTextbf[1]{% \begingroup \let\textbf\orgtextbf \strong{#1}% \endgroup}% \g@addto@macro\bxjs@begin@document@hook{% - \let\textbf\bxjstextbf} + \let\textbf\pandocTextbf} \fi\fi \jsAtEndOfClass{% \ifx\strongfontdeclare\@undefined\else @@ -276,6 +286,10 @@ \fi \fi} \ifbxjs@jp@fix@code + \ifbxjs@bxghost@available + \RequirePackage[verb]{bxghost}[2020/01/31]% v0.3.0 + \let\bxjs@eghostguarded\eghostguarded + \else \chardef\bxjs@eghost@c=23 \ifx j\jsEngine \xspcode\bxjs@eghost@c=3 \else\ifx l\jsEngine \ltjsetparameter{alxspmode={\bxjs@eghost@c,3}} @@ -285,20 +299,25 @@ \ifx\bxjs@eghost@c\@undefined\else \font\bxjs@eghost@f=ec-lmr10 at 1.23456pt \def\bxjs@pan@eghost{\bgroup\bxjs@eghost@f\bxjs@eghost@c\egroup} + \def\bxjs@eghostguarded#1{% + \bxjs@pan@eghost\null#1\null\bxjs@pan@eghost} + \fi + \fi + \ifx\bxjs@eghostguarded\@undefined\else \let\orgtexttt\texttt - \DeclareRobustCommand\bxjstexttt[1]{% + \DeclareRobustCommand\pandocTexttt[1]{% \ifmmode \nfss@text{\ttfamily #1}% \else \ifvmode \leavevmode \fi - \bxjs@pan@eghost\null - \begingroup \ttfamily #1\endgroup - \null\bxjs@pan@eghost + \bxjs@eghostguarded{\begingroup\ttfamily#1\endgroup}% \fi} \g@addto@macro\bxjs@begin@document@hook{% - \let\texttt\bxjstexttt} + \let\texttt\pandocTexttt} + \ifbxjs@bxghost@available\else \expandafter\def\expandafter\verb\expandafter{% \expandafter\bxjs@pan@eghost\verb} \g@addto@macro\verb@egroup{\bxjs@pan@eghost} + \fi \fi \fi \if j\jsEngine diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def index 29b7472c0fb..3b28255c80f 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} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 BXJS document classes] %% このファイルは日本語文字を含みます \input{bxjsja-minimal.def} \bxjs@simplejasetupfalse @@ -86,10 +86,18 @@ \ifx\strong\@undefined\ifx\strongenv\@undefined \DeclareRobustCommand{\strongenv}{\bxjs@strong@font}% \DeclareTextFontCommand{\strong}{\strongenv}% - \@ifdefinable{\strongfontdeclare}{\bxjs@protected\def\strongfontdeclare#1{% - \bxjs@strong@font@declare@a#1,\@nil}}% - \def\bxjs@strong@font@declare@a#1,#2\@nil{\def\bxjs@strong@font{#1}}% - \def\bxjs@strong@font{\bfseries}% + \newcommand*{\strongfontdeclare}{\bxjs@strongfontdeclare}% + \newcount\bxjs@strong@level + \bxjs@protected\def\bxjs@strongfontdeclare#1{% + \bxjs@set@array@from@clist{bxjs@strong}{#1}% + \bxjs@strong@level\z@}% + \bxjs@strongfontdeclare{\bfseries}% + \def\bxjs@strong@font{% + \bxjs@csletcs{bxjs@tmpa}{bxjs@strong/\the\bxjs@strong@level}% + \ifx\bxjs@tmpa\relax + \advance\bxjs@strong@level\m@ne \bxjs@strong@font + \else \advance\bxjs@strong@level\@ne \bxjs@tmpa + \fi}% \fi\fi }\fi \ifjsWitheTeX @@ -399,7 +407,7 @@ \bxjs@check@hyperref@unicode{false} \ifjsWithupTeX\ifbxjs@old@hook@system\else \IfFileExists{pxjahyper-uni.def}{% - \AddToHook{package/after/hyperref}{\input{pxjahyper-uni.def}} + \AddToHook{\bxjs@CGHN{package/hyperref/after}}{\input{pxjahyper-uni.def}} }{} \fi\fi \fi diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty index d3d6d416bf2..cec84841e02 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} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjsp@pkgname{bxjscjkcat} \let\bxjsp@engine=n @@ -35,6 +35,12 @@ \bxjsp@do\XeTeXversion{\let\bxjsp@engine=x} \bxjsp@do\pdftexversion{\let\bxjsp@engine=p} \bxjsp@do\luatexversion{\let\bxjsp@engine=l} +\@onlypreamble\bxjsp@begin@document@hook +\let\bxjsp@begin@document@hook\@empty +\AtBeginDocument{\bxjsp@begin@document@hook} +\newif\ifbxjsp@babel@used +\g@addto@macro\bxjsp@begin@document@hook{% + \@ifpackageloaded{babel}{\bxjsp@babel@usedtrue}{}} \newif\ifbxjsp@english \DeclareOption{english}{\bxjsp@englishtrue} \ProcessOptions* @@ -64,14 +70,23 @@ \newcommand*\UseMicrotypeSet[2][]{} \fi \DeclareRobustCommand{\pandocLdots}{% - \relax\ifmmode \expandafter\bxjsp@org@ldots - \else \expandafter\bxjsp@ja@ellipsis - \fi} + \let\bxjsp@do\bxjsp@ja@ellipsis + \ifmmode \let\bxjsp@do\bxjsp@org@ldots + \else\ifbxjsp@babel@used + \expandafter\ifx\csname bxjsp@ld/\languagename\endcsname\relax + \let\bxjsp@do\bxjsp@org@ldots \fi + \fi\fi \bxjsp@do} +\@namedef{bxjsp@ld/japanese}{1} \def\bxjsp@ja@ellipsis{…} \let\bxjsp@org@ldots\ldots -\AtBeginDocument{% +\g@addto@macro\bxjsp@begin@document@hook{% \let\bxjsp@org@ldots\ldots - \ifbxjsp@english\else \let\ldots\pandocLdots \fi} + \long\def\bxjsp@tmpa{\ldots}% + \ifx\pandocLdots\bxjsp@tmpa\else + \ifnum0\ifbxjsp@english\ifbxjsp@babel@used\else1\fi\fi=0 + \let\ldots\pandocLdots + \fi + \fi} \chardef\bxjsp@cc@other=12 \@onlypreamble\bxjsp@makeother@range \def\bxjsp@makeother@range#1#2{% diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls index 4d49391eb16..7ed66aab6c2 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsreport} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsreport} \newif\ifjsc@needsp@tch @@ -87,6 +87,8 @@ \let\PackageWarningNoLine\bxjs@tmpa \@nameuse{RevokeOldLuaTeXBehavior} \let\ifjsInPdfMode\ifpdf +\newif\ifbxjs@explIII +\@ifl@t@r\fmtversion{2020/02/02}{\bxjs@explIIItrue}{} \newif\ifbxjs@TUenc \def\bxjs@tmpa{TU}\edef\bxjs@tmpb{\f@encoding} \ifx\bxjs@tmpa\bxjs@tmpb @@ -94,6 +96,11 @@ \fi \newif\ifbxjs@old@hook@system \@ifl@t@r\fmtversion{2020/10/01}{}{\bxjs@old@hook@systemtrue} +\@ifl@t@r\fmtversion{2021/11/15}{% + \def\bxjs@CGHN#1{#1}% +}{%else + \def\bxjs@CGHN#1{\bxjs@CGHN@a#1//}% + \def\bxjs@CGHN@a#1/#2/#3//{#1/#3/#2}} \@gobbletwo\if\if \def\bxjs@cond#1\fi{% #1\expandafter\@firstoftwo \else\expandafter\@secondoftwo @@ -105,6 +112,21 @@ \def\bxjs@catopt#1#2{% #1\if\relax#1\relax\else\if\relax#2\relax\else,\fi\fi#2} \def\bxjs@ifplus#1{\@ifnextchar+{\@firstoftwo{#1}}} +\def\bxjs@trim#1{\expandafter\bxjs@trim@a#1\@nil#1} +\def\bxjs@trim@a{\futurelet\bxjs@tmpb\bxjs@trim@b} +\def\bxjs@trim@b{\bxjs@cond\ifx\bxjs@tmpb\@sptoken\fi + {\bxjs@trim@c\bxjs@trim@a}{\bxjs@trim@d}} +\def\bxjs@trim@c#1 {#1} +\def\bxjs@trim@d#1\@nil{\bxjs@trim@e#1\@nil: \@nil\@nnil} +\def\bxjs@trim@e#1 \@nil#2\@nnil{\bxjs@cond\ifx\@nnil#2\@nnil\fi + {\bxjs@trim@f#1\@nnil}{\bxjs@trim@e#1\@nil: \@nil\@nnil}} +\def\bxjs@trim@f#1\@nil#2\@nnil#3{\def#3{#1}} +\def\bxjs@set@array@from@clist#1#2{% + \@tempcnta\z@ + \@for\bxjs@tmpa:=\@empty#2\do{% + \bxjs@trim\bxjs@tmpa \bxjs@cslet{#1/\the\@tempcnta}\bxjs@tmpa + \advance\@tempcnta\@ne} + \bxjs@cslet{#1/\the\@tempcnta}\relax} \let\c@bxjs@tempcnta\@tempcnta \def\bxjs@gset@tempcnta{\setcounter{bxjs@tempcnta}} \def\jsSetQHLength#1#2{% @@ -738,10 +760,17 @@ \else \@tempswatrue \fi\fi\fi \if@tempswa - \ifx\bxjs@driver@opt\@undefined \ifx\bxjs@jadriver@opt\@undefined\else - \ClassWarningNoLine\bxjs@clsname - {No driver option is given} - \fi\fi + \ifx\bxjs@driver@opt\@undefined + \if \ifbxjs@explIII T\else\ifx\bxjs@jadriver@opt\@undefined F\else T\fi\fi T% + \ClassWarningNoLine\bxjs@clsname + {A driver option is MISSING!!\MessageBreak + You should properly specify one of the valid\MessageBreak + driver options according to the DVI driver\MessageBreak + that is in use:\MessageBreak + \@spaces dvips, dvipdfmx, dviout, xdvi,\MessageBreak + \@spaces nodvidriver} + \fi + \fi \ifbxjs@dvi@opt \edef\bxjs@next{% \let\noexpand\bxjs@driver@given diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls index 19ad80f2e48..f29e623436b 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsslide} - [2021/05/18 v2.5a BXJS document classes] + [2022/03/20 v2.6 BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsslide} \newif\ifjsc@needsp@tch @@ -87,6 +87,8 @@ \let\PackageWarningNoLine\bxjs@tmpa \@nameuse{RevokeOldLuaTeXBehavior} \let\ifjsInPdfMode\ifpdf +\newif\ifbxjs@explIII +\@ifl@t@r\fmtversion{2020/02/02}{\bxjs@explIIItrue}{} \newif\ifbxjs@TUenc \def\bxjs@tmpa{TU}\edef\bxjs@tmpb{\f@encoding} \ifx\bxjs@tmpa\bxjs@tmpb @@ -94,6 +96,11 @@ \fi \newif\ifbxjs@old@hook@system \@ifl@t@r\fmtversion{2020/10/01}{}{\bxjs@old@hook@systemtrue} +\@ifl@t@r\fmtversion{2021/11/15}{% + \def\bxjs@CGHN#1{#1}% +}{%else + \def\bxjs@CGHN#1{\bxjs@CGHN@a#1//}% + \def\bxjs@CGHN@a#1/#2/#3//{#1/#3/#2}} \@gobbletwo\if\if \def\bxjs@cond#1\fi{% #1\expandafter\@firstoftwo \else\expandafter\@secondoftwo @@ -105,6 +112,21 @@ \def\bxjs@catopt#1#2{% #1\if\relax#1\relax\else\if\relax#2\relax\else,\fi\fi#2} \def\bxjs@ifplus#1{\@ifnextchar+{\@firstoftwo{#1}}} +\def\bxjs@trim#1{\expandafter\bxjs@trim@a#1\@nil#1} +\def\bxjs@trim@a{\futurelet\bxjs@tmpb\bxjs@trim@b} +\def\bxjs@trim@b{\bxjs@cond\ifx\bxjs@tmpb\@sptoken\fi + {\bxjs@trim@c\bxjs@trim@a}{\bxjs@trim@d}} +\def\bxjs@trim@c#1 {#1} +\def\bxjs@trim@d#1\@nil{\bxjs@trim@e#1\@nil: \@nil\@nnil} +\def\bxjs@trim@e#1 \@nil#2\@nnil{\bxjs@cond\ifx\@nnil#2\@nnil\fi + {\bxjs@trim@f#1\@nnil}{\bxjs@trim@e#1\@nil: \@nil\@nnil}} +\def\bxjs@trim@f#1\@nil#2\@nnil#3{\def#3{#1}} +\def\bxjs@set@array@from@clist#1#2{% + \@tempcnta\z@ + \@for\bxjs@tmpa:=\@empty#2\do{% + \bxjs@trim\bxjs@tmpa \bxjs@cslet{#1/\the\@tempcnta}\bxjs@tmpa + \advance\@tempcnta\@ne} + \bxjs@cslet{#1/\the\@tempcnta}\relax} \let\c@bxjs@tempcnta\@tempcnta \def\bxjs@gset@tempcnta{\setcounter{bxjs@tempcnta}} \def\jsSetQHLength#1#2{% @@ -730,10 +752,17 @@ \else \@tempswatrue \fi\fi\fi \if@tempswa - \ifx\bxjs@driver@opt\@undefined \ifx\bxjs@jadriver@opt\@undefined\else - \ClassWarningNoLine\bxjs@clsname - {No driver option is given} - \fi\fi + \ifx\bxjs@driver@opt\@undefined + \if \ifbxjs@explIII T\else\ifx\bxjs@jadriver@opt\@undefined F\else T\fi\fi T% + \ClassWarningNoLine\bxjs@clsname + {A driver option is MISSING!!\MessageBreak + You should properly specify one of the valid\MessageBreak + driver options according to the DVI driver\MessageBreak + that is in use:\MessageBreak + \@spaces dvips, dvipdfmx, dviout, xdvi,\MessageBreak + \@spaces nodvidriver} + \fi + \fi \ifbxjs@dvi@opt \edef\bxjs@next{% \let\noexpand\bxjs@driver@given -- cgit v1.2.3