summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-10-10 20:53:35 +0000
committerKarl Berry <karl@freefriends.org>2020-10-10 20:53:35 +0000
commit0ba0dfb9a07bac614756eb2f7ea858e53dc8a255 (patch)
tree0a226449c98008312d98e87e79cfaa16e305cc49 /Master/texmf-dist/source/latex
parent859fac3d4f868a2af1a7004353cfcc165973bf9a (diff)
bxjscls (10oct20)
git-svn-id: svn://tug.org/texlive/trunk@56620 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r--Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx134
-rw-r--r--Master/texmf-dist/source/latex/bxjscls/bxjscls.ins8
2 files changed, 97 insertions, 45 deletions
diff --git a/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx b/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
index 9d44ced9498..e3e7a21d007 100644
--- a/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
+++ b/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
@@ -25,7 +25,7 @@
%
%---------------------------------------
%
-% Copyright 1993-2019
+% Copyright 1993-2020
% The LaTeX3 Project and any individual authors listed elsewhere
% in this file.
%
@@ -41,7 +41,7 @@
% \iffalse
%
% \begin{macrocode}
-%<article|report|book|slide>\NeedsTeXFormat{LaTeX2e}
+%<class|anc>\NeedsTeXFormat{LaTeX2e}
%<article>\ProvidesClass{bxjsarticle}
%<report>\ProvidesClass{bxjsreport}
%<book>\ProvidesClass{bxjsbook}
@@ -56,7 +56,9 @@
%<*driver>
\ProvidesFile{bxjscls.dtx}
%</driver>
- [2020/10/04 v2.2c BXJS document classes]
+ [2020/10/10 v2.3 BXJS document classes]
+% based on jsclasses [2020/10/05]
+% [2020/10/04 v2.2c BXJS document classes]
% [2020/09/29 v2.2b BXJS document classes]
% [2020/09/22 v2.2a BXJS document classes]
% [2020/09/04 v2.2 BXJS document classes]
@@ -273,9 +275,19 @@
% \StopEventually{}
%
% 以下では実際のコードに即して説明します。
+%
+% \texttt{minijs}は,\texttt{jsclasses}に似た設定を行うパッケージです。
+%
% \begin{macrocode}
-%<*cls>
-%% このファイルは日本語文字を含みます.
+%<*minijs>
+%% if jsclasses loaded, abort loading this package
+\ifx\@jsc@uplatextrue\@undefined\else
+ \PackageInfo{minijs}{jsclasses does not need minijs, exiting}
+ \expandafter\endinput
+\fi
+%% "fake" jsarticle
+\expandafter\def\csname ver@jsarticle.cls\endcsname{}
+%</minijs>
% \end{macrocode}
%
% \begin{macro}{\bxjs@clsname}
@@ -283,6 +295,8 @@
% 文書クラスの名前です。エラーメッセージ表示などで使われます。
%
% \begin{macrocode}
+%<*class>
+%% このファイルは日本語文字を含みます.
%<article>\def\bxjs@clsname{bxjsarticle}
%<book>\def\bxjs@clsname{bxjsbook}
%<report>\def\bxjs@clsname{bxjsreport}
@@ -2427,6 +2441,11 @@
% [2017-01-11] トンボオプションが指定されているとき「だけ」|\stockwidth|,
% |\stockheight|を定義するようにしました。
%
+% [2020-10-04] \LaTeXe~2020-10-01でカーネルの |\shipout| コードが拡張され
+% |\AtBeginDvi| の実行タイミングが変化したので,この時点で
+% 発行する |\special| の中身を展開しておくようにしました。
+% こうしないと,用紙サイズ設定を間違ってしまいます(Issue \#72)。
+%
% \begin{ZRnote}
% BXJSでは出力用紙サイズ記録は |geometry| パッケージが行う。
%
@@ -2953,7 +2972,12 @@
% ここで実際に標準フォントサイズで初期化します。
%
% \begin{macrocode}
+%</class>
+%<*class|minijs>
+%% initialize
\normalsize
+%</class|minijs>
+%<*class>
% \end{macrocode}
%
% \end{macro}
@@ -8112,12 +8136,11 @@
% \end{macrocode}
%
% おしまい。
+% \end{ZRnote}
% \begin{macrocode}
-%</cls>
+%</class>
% \end{macrocode}
%
-% \end{ZRnote}
-%
% 以上です。
%
%^^A////////////////////////////////////////////////////////
@@ -8533,6 +8556,9 @@
% \Note 2020-02-02のNFSSの改修に対する |jsclasses| の対策を
% 取り入れた。
% \begin{macrocode}
+\@ifl@t@r\fmtversion{2020/10/01}
+ {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue}
+\ifjsc@needsp@tch % --- for 2020-02-02 or older BEGIN
\ifx\@rmfamilyhook\@undefined % old
\DeclareRobustCommand\rmfamily
{\not@math@alphabet\rmfamily\mathrm
@@ -8562,6 +8588,14 @@
\g@addto@macro\@ttfamilyhook
{\prepare@family@series@update@kanji{gt}\gtdefault}
\fi
+\else % --- for 2020-02-02 or older END & for 2020-10-01 BEGIN
+\AddToHook{rmfamily}%
+ {\prepare@family@series@update@kanji{mc}\mcdefault}
+\AddToHook{sffamily}%
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
+\AddToHook{ttfamily}%
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
+\fi % --- for 2020-10-01 END
\ifx\DeclareFixJFMCJKTextFontCommand\@undefined
\DeclareJaTextFontCommand{\textmc}{\mcfamily}
\DeclareJaTextFontCommand{\textgt}{\gtfamily}
@@ -8645,11 +8679,18 @@
!else\hbox{\yoko\@textsuperscript{\normalfont\@thefnmark}}!fi}
\fi
% \end{macrocode}
-%
+% エスケープ文字の変更はここまで。
% \begin{macrocode}
\endgroup
% \end{macrocode}
%
+% \paragraph{minijsパッケージのブロック}
+%
+% やっておく。
+% \begin{macrocode}
+\@namedef{ver@minijs.sty}{}
+% \end{macrocode}
+%
%^^A----------------
% \subsection{pdf{\TeX}用の処理}
%
@@ -9056,11 +9097,13 @@
% \Note |otf| や |luatexja-preset| 等のパッケージがこのオプションを
% 利用する。
% \begin{macrocode}
-\ifbxjs@jp@jismmiv
+\@onlypreamble\bxjs@apply@mmiv
+\def\bxjs@apply@mmiv{%
\g@addto@macro\@classoptionslist{,jis2004}
% \@ifpackagewith 判定への対策
\PassOptionsToPackage{jis2004}{otf}
-\fi
+ \global\let\bxjs@apply@mmiv\relax}
+\ifbxjs@jp@jismmiv \bxjs@apply@mmiv \fi
% \end{macrocode}
%
% \paragraph{和文用単位のサポート}
@@ -9354,10 +9397,13 @@
\def\bxjs@adjust@jafont#1{%
\ifx\jsJaFont\bxjs@@auto
\bxjs@get@kanjiEmbed
- \ifx\bxjs@kanjiEmbed\relax
+ \ifx\bxjs@jaEmbed\relax
\let\bxjs@tmpa\@empty
\else
- \let\bxjs@tmpa\bxjs@kanjiEmbed
+ \let\bxjs@tmpa\bxjs@jaEmbed
+ \ifx\bxjs@jaVariant\bxjs@@hziv
+ \bxjs@apply@mmiv
+ \fi
\fi
\else
\let\bxjs@tmpa\jsJaFont
@@ -9371,24 +9417,41 @@
}
\def\bxjs@@auto{auto}
\def\bxjs@@noEmbed{noEmbed}
+\def\bxjs@@hziv{-04}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\bxjs@kanjiEmbed}
-% 現在の |updmap| の |kanjiEmbed| パラメタの値。
+% \begin{macro}{\bxjs@jaEmbed}
+% \begin{macro}{\bxjs@jaVariant}
+% 現在の |updmap| の |jaEmbed|・|jaVariant| パラメタの値。
% |\bxjs@get@kanjiEmbed| により実際の設定値が取得されてここに設定される。
+% \Note 古い版の |updmap| では |kanjiEmbed|・|kanjiVariant| であった。
% \begin{macrocode}
-\let\bxjs@kanjiEmbed\relax
+\let\bxjs@jaEmbed\relax
+\let\bxjs@jaVariant\relax
% \end{macrocode}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\bxjs@get@kanjiEmbed}
-% 現在の |updmap| の |kanjiEmbed| パラメタの値を取得する。
+% 現在の |updmap| の |jaEmbed|・|jaVariant| パラメタの値を取得する。
% \begin{macrocode}
\@onlypreamble\bxjs@get@kanjiEmbed
\def\bxjs@get@kanjiEmbed{%
\begingroup\setbox\z@=\hbox{%
+ \global\let\bxjs@do\@empty
+ \def\bxjs@next##1##2##3{%
+ \def##1####1##3 ####2\@nil####3\@nnil{%
+ \ifx$####1$\gdef##2{####2}\fi}%
+ \g@addto@macro\bxjs@do{%
+ \expandafter##1\bxjs@tmpa\@nil##3 \@nil\@nnil}}%
+ \bxjs@next\bxjs@do@a\bxjs@g@tmpa{kanjiEmbed}%
+ \bxjs@next\bxjs@do@b\bxjs@g@tmpa{jaEmbed}%
+ \bxjs@next\bxjs@do@c\bxjs@g@tmpb{kanjiVariant}%
+ \bxjs@next\bxjs@do@d\bxjs@g@tmpb{jaVariant}%
+%
\global\let\bxjs@g@tmpa\relax
+ \global\let\bxjs@g@tmpb\relax
\endlinechar\m@ne
\let\do\@makeother\dospecials
\catcode32=10 \catcode12=10 %form-feed
@@ -9403,32 +9466,14 @@
\@tempswatrue
\loop\if@tempswa
\read\@inputcheck to\bxjs@tmpa
- \expandafter\bxjs@get@ke@a\bxjs@tmpa\@nil kanjiEmbed \@nil\@nnil
- \ifx\bxjs@tmpb\relax\else
- \global\let\bxjs@g@tmpa\bxjs@tmpb
- \@tempswafalse
- \fi
- \expandafter\bxjs@get@ke@b\bxjs@tmpa\@nil jaEmbed \@nil\@nnil
- \ifx\bxjs@tmpb\relax\else
- \global\let\bxjs@g@tmpa\bxjs@tmpb
- \@tempswafalse
- \fi
+ \bxjs@do
\ifeof\@inputcheck \@tempswafalse \fi
\repeat
\fi
}\endgroup
- \let\bxjs@kanjiEmbed\bxjs@g@tmpa
+ \let\bxjs@jaEmbed\bxjs@g@tmpa
+ \let\bxjs@jaVariant\bxjs@g@tmpb
}
-\@onlypreamble\bxjs@get@ke@a
-\def\bxjs@get@ke@a#1kanjiEmbed #2\@nil#3\@nnil{%
- \ifx$#1$\def\bxjs@tmpb{#2}%
- \else \let\bxjs@tmpb\relax
- \fi}
-\@onlypreamble\bxjs@get@ke@b
-\def\bxjs@get@ke@b#1jaEmbed #2\@nil#3\@nnil{%
- \ifx$#1$\def\bxjs@tmpb{#2}%
- \else \let\bxjs@tmpb\relax
- \fi}
% \end{macrocode}
% \end{macro}
%
@@ -9440,10 +9485,10 @@
\@onlypreamble\bxjs@resolve@jafont@paren
\def\bxjs@resolve@jafont@paren#1{%
\def\bxjs@tmpb{\let#1}%
- \expandafter\bxjs@resolve@jafont@paren@a#1\@nil()\@nil\relax}
+ \expandafter\bxjs@resolve@jafont@paren@a#1\@nil()\@nil\@nnil#1}
\@onlypreamble\bxjs@resolve@jafont@paren@a
-\def\bxjs@resolve@jafont@paren@a#1(#2)#3\@nil#4\relax{%
- \ifx\relax#4\relax \bxjs@tmpb\jsJaFont
+\def\bxjs@resolve@jafont@paren@a#1(#2)#3\@nil#4\@nnil#5{%
+ \ifx\relax#4\relax \bxjs@tmpb#5%
\else
\edef\bxjs@tmpa{#1\bxjs@jafont@paren{#2}#3}%
\bxjs@tmpb\bxjs@tmpa
@@ -9738,6 +9783,11 @@
% \begin{macrocode}
\if \ifx\bxjs@driver@given\bxjs@driver@@dvipdfmx T%
\else\ifjsWithpTeXng T\else F\fi\fi T%
+ \IfFileExists{pxjahyper-enc.sty}{\@tempswatrue}{\@tempswafalse}
+ \if@tempswa
+ \RequirePackage{pxjahyper-enc}[2020/10/05]%v0.6
+ \ifbxjs@bigcode\else \suppressbigcode \fi
+ \else
\ifnum\jis"2121="A1A1 %euc
\bxjs@urgent@special{pdf:tounicode EUC-UCS2}
\else\ifnum\jis"2121="8140 %sjis
@@ -9748,9 +9798,11 @@
\PassOptionsToPackage{bigcode}{pxjahyper}
\else
\bxjs@urgent@special{pdf:tounicode UTF8-UCS2}
+ \PassOptionsToPackage{nobigcode}{pxjahyper}
\fi
\fi\fi\fi
\let\bxToUnicodeSpecialDone=t
+ \fi
\fi
% \end{macrocode}
%
diff --git a/Master/texmf-dist/source/latex/bxjscls/bxjscls.ins b/Master/texmf-dist/source/latex/bxjscls/bxjscls.ins
index 0e533ebe34f..d763620d126 100644
--- a/Master/texmf-dist/source/latex/bxjscls/bxjscls.ins
+++ b/Master/texmf-dist/source/latex/bxjscls/bxjscls.ins
@@ -2,10 +2,10 @@
\def\batchfile{bxjscls.ins}
\input docstrip.tex
\keepsilent
-\generateFile{bxjsarticle.cls}{f}{\from{bxjscls.dtx}{cls,article}}
-\generateFile{bxjsreport.cls}{f}{\from{bxjscls.dtx}{cls,report}}
-\generateFile{bxjsbook.cls}{f}{\from{bxjscls.dtx}{cls,book}}
-\generateFile{bxjsslide.cls}{f}{\from{bxjscls.dtx}{cls,slide}}
+\generateFile{bxjsarticle.cls}{f}{\from{bxjscls.dtx}{class,article}}
+\generateFile{bxjsreport.cls}{f}{\from{bxjscls.dtx}{class,report}}
+\generateFile{bxjsbook.cls}{f}{\from{bxjscls.dtx}{class,book}}
+\generateFile{bxjsslide.cls}{f}{\from{bxjscls.dtx}{class,slide}}
\generateFile{bxjsja-minimal.def}{f}{\from{bxjscls.dtx}{drv,minimal}}
\generateFile{bxjsja-standard.def}{f}{\from{bxjscls.dtx}{drv,standard}}
\generateFile{bxjsja-modern.def}{f}{\from{bxjscls.dtx}{drv,modern}}