diff options
Diffstat (limited to 'language/japanese/BX/bxjscls')
-rw-r--r-- | language/japanese/BX/bxjscls/README-ja.md | 2 | ||||
-rw-r--r-- | language/japanese/BX/bxjscls/README.md | 1 | ||||
-rw-r--r-- | language/japanese/BX/bxjscls/bxjscls-manual.pdf | bin | 382178 -> 382333 bytes | |||
-rw-r--r-- | language/japanese/BX/bxjscls/bxjscls-manual.tex | 4 | ||||
-rw-r--r-- | language/japanese/BX/bxjscls/bxjscls.dtx | 106 | ||||
-rw-r--r-- | language/japanese/BX/bxjscls/bxjscls.pdf | bin | 1173854 -> 1178317 bytes |
6 files changed, 108 insertions, 5 deletions
diff --git a/language/japanese/BX/bxjscls/README-ja.md b/language/japanese/BX/bxjscls/README-ja.md index 2797e7841b..e584fdfbaa 100644 --- a/language/japanese/BX/bxjscls/README-ja.md +++ b/language/japanese/BX/bxjscls/README-ja.md @@ -99,6 +99,8 @@ XeLaTeX / LuaLaTeX の上でも日本語処理パッケージと連携して使 更新履歴 -------- + * Version 2.5a 〈2021/05/18〉 + - 新版の Pandoc テンプレートへの対策。 * Version 2.5 〈2021/02/02〉 - `plautopatch` オプションを追加。 * Version 2.4a 〈2021/01/27〉 diff --git a/language/japanese/BX/bxjscls/README.md b/language/japanese/BX/bxjscls/README.md index 054e30c652..f54f4f6c56 100644 --- a/language/japanese/BX/bxjscls/README.md +++ b/language/japanese/BX/bxjscls/README.md @@ -89,6 +89,7 @@ This package is distributed under the BSD 2-Clause License. Revision History ---------------- + * Version 2.5a 〈2021/05/18〉 * Version 2.5 〈2021/02/02〉 * Version 2.4a 〈2021/01/27〉 * Version 2.4 〈2020/10/16〉 diff --git a/language/japanese/BX/bxjscls/bxjscls-manual.pdf b/language/japanese/BX/bxjscls/bxjscls-manual.pdf Binary files differindex b06a1f069a..3b42fbe319 100644 --- a/language/japanese/BX/bxjscls/bxjscls-manual.pdf +++ b/language/japanese/BX/bxjscls/bxjscls-manual.pdf diff --git a/language/japanese/BX/bxjscls/bxjscls-manual.tex b/language/japanese/BX/bxjscls/bxjscls-manual.tex index 3a8825df3b..c13b35f031 100644 --- a/language/japanese/BX/bxjscls/bxjscls-manual.tex +++ b/language/japanese/BX/bxjscls/bxjscls-manual.tex @@ -11,8 +11,8 @@ \bxtexlogoimport{*} \usepackage{shortvrb} \MakeShortVerb{\|} -\newcommand{\PkgVersion}{2.5} -\newcommand{\PkgDate}{2021/02/02} +\newcommand{\PkgVersion}{2.5a} +\newcommand{\PkgDate}{2021/05/18} \newcommand{\Pkg}[1]{\textsf{#1}} \newcommand{\Meta}[1]{$\langle$\mbox{}\nobr#1\nobr\mbox{}$\rangle$} \newcommand{\Note}{\par\noindent ※} diff --git a/language/japanese/BX/bxjscls/bxjscls.dtx b/language/japanese/BX/bxjscls/bxjscls.dtx index 58878b8072..92ea5eaa12 100644 --- a/language/japanese/BX/bxjscls/bxjscls.dtx +++ b/language/japanese/BX/bxjscls/bxjscls.dtx @@ -56,7 +56,8 @@ %<*driver> \ProvidesFile{bxjscls.dtx} %</driver> - [2021/02/02 v2.5 BXJS document classes] + [2021/05/18 v2.5a BXJS document classes] +% [2021/02/02 v2.5 BXJS document classes] % [2021/01/27 v2.4a BXJS document classes] % [2020/10/16 v2.4 BXJS document classes] % [2020/10/10 v2.3 BXJS document classes] @@ -2315,8 +2316,9 @@ % \begin{macrocode} \def\bxjs@@pandoc{pandoc} \ifx\bxjs@jadriver\bxjs@@pandoc \ifx\bxjs@plautopatch@given\@undefined + \ifjsWitheTeX \bxjs@plautopatchtrue -\fi\fi +\fi\fi\fi \ifx j\jsEngine \ifbxjs@plautopatch \RequirePackage{plautopatch}[2018/08/22]%v0.3 \fi\fi @@ -9815,6 +9817,14 @@ % \begin{macrocode} \ifbxjs@hyperref@enc \bxjs@check@hyperref@unicode{false} +% \end{macrocode} +% 暫定的なナニカ。 +% \begin{macrocode} + \ifjsWithupTeX\ifbxjs@old@hook@system\else + \IfFileExists{pxjahyper-uni.def}{% + \AddToHook{package/after/hyperref}{\input{pxjahyper-uni.def}} + }{} + \fi\fi \fi % \end{macrocode} % @@ -10536,6 +10546,17 @@ \RequirePackage{bxjspandoc} % \end{macrocode} % +% {\eTeX}ではない場合に警告を出す。 +% \Note 近い将来に{\eTeX}拡張を必須にする予定。 +% \begin{macrocode} +\ifjsWitheTeX\else + \ClassWarningNoLine\bxjs@clsname + {!!!!!!!! WARNING !!!!!!!!\MessageBreak + This engine does not support e-TeX extension!\MessageBreak + Some feature might not work properly} +\fi +% \end{macrocode} +% % \begin{macro}{\bxjs@endpreamble@hook} % |etoolbox| の |\AtEndPreamble| で実行されるBXJSクラス用のフック。 % \Note {\eTeX}以外では無効になる。 @@ -10543,12 +10564,18 @@ % \begin{macrocode} \@onlypreamble\bxjs@endpreamble@hook \let\bxjs@endpreamble@hook\@empty +% \end{macrocode} +% \end{macro} +% +% パッケージ読込。 +% \begin{macrocode} +\RequirePackage{iftex}[2013/04/04]% v0.2 \ifjsWitheTeX \RequirePackage{etoolbox}[2010/08/21]% v2.0 \AtEndPreamble{\bxjs@endpreamble@hook} + \RequirePackage{filehook}[2011/10/12]% v0.5d \fi % \end{macrocode} -% \end{macro} % %^^A---------------- % \subsection{和文ドライバパラメタ} @@ -11131,6 +11158,79 @@ % \end{macrocode} % %^^A---------------- +% \subsection{ifPDFTeXスイッチ} +% +% PandocモードではPandocの既定テンプレートを(無理やり){(u)\pTeX}に +% 対応させることを目的にしている。 +% +% 旧版のテンプレートでは|ifxetex|と|ifluatex|パッケージを読み込んだ +% 上で「{\XeTeX}でも{\LuaTeX}でもないものは{pdf\TeX}」という前提の +% 動作をしていた。 +% よって、{(u)\pTeX}に対応させる際には「{pdf\TeX}用の処理が実行される」 +% ことを前提にすればよかった。 +% +% ところが、Pandocの2.12版では|iftex|パッケージが導入されて +% 「{pdf\TeX}の判定を直接 |\ifPDFTeX| で行う」ように改修された。 +% このため、{(u)\pTeX}での実行でどのコードが実行されるかを予期する +% ことが困難になってしまった。 +% +% これに対処するため、 +% 「文書ファイルのプレアンブル実行中に限って |\ifPDFTeX| が +% (実際とは異なり)真になるようにする」 +% という細工を施すことで、従来通り「{pdf\TeX}用の処理が実行される」 +% 前提が維持されるようにする。 +% +% \begin{macrocode} +\if j\jsEngine +% \end{macrocode} +% \begin{macro}{\bxjs@check@frontier} +% |\bxjs@check@frontier\CS| は現在のパッケージ読込ネストレベルが +% 丁度1であるときにのみ |\CS| を実行する。 +% \begin{macrocode} + \def\bxjs@check@frontier{% + \expandafter\bxjs@check@frontier@a\@currnamestack\noindent...\@nil} + \def\bxjs@check@frontier@a#1#2#3#4#5\@nil#6{% + \ifx\noindent#4#6\fi} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bxjs@unforge@ifPDFTeX} +% |\ifPDFTeX| を偽(正しい値)にする。 +% \begin{macrocode} + \@onlypreamble\bxjs@unforge@ifPDFTeX + \def\bxjs@unforge@ifPDFTeX{\global\bxjs@csletcs{ifPDFTeX}{iffalse}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bxjs@forge@ifPDFTeX} +% |\ifPDFTeX| を真(偽装した値)にする。 +% \begin{macrocode} + \@onlypreamble\bxjs@forge@ifPDFTeX + \def\bxjs@forge@ifPDFTeX{\global\bxjs@csletcs{ifPDFTeX}{iftrue}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bxjs@unload@forge@ifPDFTeX} +% |\ifPDFTeX| に対する細工を無効化する。 +% \begin{macrocode} + \def\bxjs@unload@forge@ifPDFTeX{% + \bxjs@unforge@ifPDFTeX + \global\let\bxjs@check@frontier\@gobble} +% \end{macrocode} +% \end{macro} +% プレアンブル開始時は |\ifPDFTeX| は真で、終了時に偽装を無効化する。 +% |filehook| のフックで「パッケージ読込中は偽装を解除する」ことを +% 実現している。 +% \begin{macrocode} + \jsAtEndOfClass{\bxjs@forge@ifPDFTeX} + \ifjsWitheTeX + \AtBeginOfEveryFile{\bxjs@check@frontier\bxjs@unforge@ifPDFTeX}% + \AtEndOfEveryFile{\bxjs@check@frontier\bxjs@forge@ifPDFTeX}% + \g@addto@macro\bxjs@endpreamble@hook{\bxjs@unload@forge@ifPDFTeX} + \else + \g@addto@macro\bxjs@begin@document@hook{\bxjs@unload@forge@ifPDFTeX} + \fi +\fi +% \end{macrocode} +% +%^^A---------------- % \subsection{完了} % おしまい。 % \begin{macrocode} diff --git a/language/japanese/BX/bxjscls/bxjscls.pdf b/language/japanese/BX/bxjscls/bxjscls.pdf Binary files differindex 0b65682c12..1c6cc80fba 100644 --- a/language/japanese/BX/bxjscls/bxjscls.pdf +++ b/language/japanese/BX/bxjscls/bxjscls.pdf |