summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx')
-rw-r--r--Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx329
1 files changed, 201 insertions, 128 deletions
diff --git a/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx b/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
index fd6a97f7b82..fef0fec4573 100644
--- a/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
+++ b/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
@@ -2,13 +2,22 @@
% \iffalse meta-comment
%
% BXJS ドキュメントクラス
+% (BXJS Document Classes)
%
% 本ソフトウェアは奥村晴彦氏および日本語TeX開発コミュニティによる
% 「pLaTeX2ε新ドキュメントクラス」を
% 「八登 崇之(別名 ZR)」が改変したものである。
+% (This software is a modified version of
+% "New Document CLasses for pLaTeX2e"
+% authored by Haruhiko Okumura and the Japanese TeX Development Community,
+% and the modification is by Takayuki YATO (aka."ZR").)
+%
% 本ソフトウェアは修正 BSD ライセンスの下で配布される。
+% (This software is distributed under the BSD 2-Clause License.)
%
% 以下に原版についての原版著者による情報を示す:
+% (Below is shown the information on the original version,
+% provided by the original authors.)
%---------------------------------------
%
% pLaTeX2ε新ドキュメントクラス
@@ -27,6 +36,7 @@
%
% [2016-07-13] 日本語\TeX 開発コミュニティによる管理に移行しました。
%
+%---------------------------------------
% Copyright 1993 1994 1995 1996 1997 1998 1999
% The LaTeX3 Project and any individual authors listed elsewhere
% in this file.
@@ -35,23 +45,10 @@
% Copyright 1999-2016 Haruhiko Okumura
% Copyright 2016 Japanese TeX Development Community
%
+% Copyright 2013-2016 Takayuki YATO (aka."ZR")
+%
% \fi
% \CheckSum{0}
-%% \CharacterTable
-%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
-%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
-%% Digits \0\1\2\3\4\5\6\7\8\9
-%% Exclamation \! Double quote \" Hash (number) \#
-%% Dollar \$ Percent \% Ampersand \&
-%% Acute accent \' Left paren \( Right paren \)
-%% Asterisk \* Plus \+ Comma \,
-%% Minus \- Point \. Solidus \/
-%% Colon \: Semicolon \; Less than \<
-%% Equals \= Greater than \> Question mark \?
-%% Commercial at \@ Left bracket \[ Backslash \\
-%% Right bracket \] Circumflex \^ Underscore \_
-%% Grave accent \` Left brace \{ Vertical bar \|
-%% Right brace \} Tilde \~}
%
% \iffalse
%
@@ -70,7 +67,9 @@
%<*driver>
\ProvidesFile{bxjscls.dtx}
%</driver>
- [2016/08/16 v1.2a BXJS document classes]
+ [2016/11/01 v1.3 BXJS document classes]
+% based on jsclasses [2016/10/08]
+% [2016/08/16 v1.2a BXJS document classes]
% [2016/08/01 v1.2 BXJS document classes]
% based on jsclasses [2016/07/18]
% [2016/07/16 v1.1f BXJS document classes]
@@ -339,7 +338,7 @@
\ifx O\jsEngine \def\bxjs@tmpa{Omega}\fi
\ifx\bxjs@tmpa\relax \expandafter\@gobble
\else
- \ClassError\@currname
+ \ClassError\bxjs@clsname
{The engine in use (\bxjs@tmpa) is not supported}
{It's a fatal error. I'll quit right now.}
\expandafter\@firstofone
@@ -439,9 +438,10 @@
\if@compatibility
\ClassError\bxjs@clsname
{Something went chaotic!\MessageBreak
+ (How come '\string\documentstyle' is there?)\MessageBreak
I cannot go a single step further...}
- {If the chant of \string\documentstyle\space was just a blunder
- of yours,\MessageBreak then there'll still be hope....}
+ {If the chant of '\string\documentstyle' was just a blunder of yours,\MessageBreak
+ then there'll still be hope....}
\expandafter\@firstofone
\else \expandafter\@gobble
\fi{\typeout{Farewell!}\endinput\@@end}
@@ -594,7 +594,12 @@
% [2003-04-18] 12Qオプションを追加しました。
%
% [2016-07-08] |\mag| を使わずに各種寸法をスケールさせるためのオプション \texttt{nomag} を新設しました。
-% \texttt{usemag} オプションの指定で従来通りの動作となります.デフォルトは \texttt{usemag} です.
+% \texttt{usemag} オプションの指定で従来通りの動作となります。デフォルトは \texttt{usemag} です。
+%
+% [2016-07-24] オプティカルサイズを調整するためにNFSSへパッチを当てるオプション \texttt{nomag*} を新設しました。
+%
+% [2016-10-08] \texttt{slide} オプションは article 以外では使い物にならなかったので,
+% 簡単のため article のみで使えるオプションとしました。
%
% \begin{ZRnote}
% |\@ptsize| は |10pt|, |11pt|, |12pt| が指定された時のみ従来と同じ値とし、
@@ -658,8 +663,11 @@
% \end{macro}
%
% |\ifjsc@mag| は「|\mag| を使うか」を表すスイッチ。
+%
+% |\ifjsc@mag@xreal| は「NFSSにパッチを当てるか」を表すスイッチ。
% \begin{macrocode}
\newif\ifjsc@mag
+\newif\ifjsc@mag@xreal
%\let\jsc@magscale\@undefined
% \end{macrocode}
%
@@ -906,6 +914,22 @@
% BXJS では `|report|' 相当のものは別に |bxjsreport| クラスとして用意する。
% \end{ZRnote}
%
+% \paragraph{jslogoパッケージの読み込み}
+%
+% \LaTeX 関連のロゴを再定義する\texttt{jslogo}パッケージを
+% 読み込まないオプション\texttt{nojslogo}を新設しました。
+% \texttt{jslogo}オプションの指定で従来どおりの動作となります。
+% デフォルトは\texttt{jslogo}で,すなわちパッケージを読み込みます。
+%
+% \begin{ZRnote}
+% BXJSクラスでは、|nojslogo| を既定とする。
+% \end{ZRnote}
+% \begin{macrocode}
+\newif\if@jslogo \@jslogofalse
+\DeclareOption{jslogo}{\@jslogotrue}
+\DeclareOption{nojslogo}{\@jslogofalse}
+% \end{macrocode}
+%
% \paragraph{BXJS特有のオプションの一覧 \ZRX}
% \mbox{}
% \begin{ZRnote}
@@ -1341,14 +1365,6 @@
\def\jsScale{1}}
% \end{macrocode}
%
-% |CJK| オプションは廃止された。
-% \Note 1.3版で宣言そのものを削除する。
-% \begin{macrocode}
-\DeclareOption{CJK}{%
- \ClassWarning\bxjs@clsname
- {Option `CJK' was abolished}}
-% \end{macrocode}
-%
% \begin{macro}{\bxjs@param@mag}
% |mag| オプションの値。
% \begin{macrocode}
@@ -1442,7 +1458,7 @@
bxjs@magstyle@#1\endcsname
\ifx\bxjs@magstyle\relax
\ClassError\bxjs@clsname
- {Invalid magstyle value `#1'}\@ehc
+ {Invalid value '#1' for option magstyle}\@ehc
\let\bxjs@magstyle\bxjs@magstyle@default
\fi}
% \end{macrocode}
@@ -1463,7 +1479,7 @@
bxjs@geometry@#1\endcsname
\ifx\bxjs@geometry\relax
\ClassError\bxjs@clsname
- {Invalid geometry value `#1'}\@ehc
+ {Invalid value '#1' for option geometry}\@ehc
\let\bxjs@geometry\bxjs@geometry@class
\fi}
% \end{macrocode}
@@ -1506,7 +1522,7 @@
bxjs@dvidriver@@#1\endcsname
\ifx\bxjs@tmpa\relax
\ClassError\bxjs@clsname
- {Invalid dvi value `#1'}\@ehc
+ {Invalid value '#1' for option dvi}\@ehc
\else
% \end{macrocode}
% |\bxjs@driver@given| を未定義にしていることに注意。
@@ -1522,7 +1538,7 @@
% |bxjsbook| の左右マージンがアレか。
% \Note 既定はアレだが1.3版で非アレになる予定。
% \begin{macrocode}
-\newif\ifbxjs@layout@buggyhmargin \bxjs@layout@buggyhmargintrue
+\newif\ifbxjs@layout@buggyhmargin \bxjs@layout@buggyhmarginfalse
% \end{macrocode}
% \end{macro}
%
@@ -1700,8 +1716,8 @@
\fi
\ifx\bxjs@engine@given\@undefined\else
\ifx\bxjs@engine@given\bxjs@tmpb\else
- \ClassError\bxjs@clsname%
- {Option `\bxjs@engine@opt' used on wrong engine}\@ehc
+ \ClassError\bxjs@clsname
+ {Option '\bxjs@engine@opt' used on wrong engine}\@ehc
\fi
\fi
% \end{macrocode}
@@ -1739,8 +1755,8 @@
\fi\fi
\fi
\if@tempswa\else
- \ClassError\bxjs@clsname%
- {Option `\bxjs@driver@opt' used on wrong engine}\@ehc
+ \ClassError\bxjs@clsname
+ {Option '\bxjs@driver@opt' used on wrong engine}\@ehc
\fi
% \end{macrocode}
%
@@ -1811,25 +1827,25 @@
% \begin{macrocode}
\ifx\bxjs@jadriver@given\@undefined\else
\ifx\bxjs@engine@given\@undefined
- \ClassError\bxjs@clsname%
- {An engine option must be explicitly given}%
- {When you employ a Japanese-driver you must specify a
- correct\MessageBreak engine option.\MessageBreak\@ehc}
+ \ClassError\bxjs@clsname
+ {An engine option must be explicitly given}%
+ {When you use a Japanese-driver you must specify a correct\MessageBreak
+ engine option.\MessageBreak\@ehc}
\fi\fi
% \end{macrocode}
%
% 新しいLua{\TeX}(0.87版以降)ではmagがアレなので、
-% |magstyle=mag| が指定されていた場合はエラーを出す。
-% (この場合の既定値は |xreal| であり、
+% |magstyle=usemag| が指定されていた場合はエラーを出す。
+% (この場合の既定値は |nomag*| であり、
% エラーの場合は既定値に置き換えられる。)
% \begin{macrocode}
\ifx\bxjs@magstyle@default\bxjs@magstyle@mag\else
\ifx\bxjs@magstyle\bxjs@magstyle@mag
\let\bxjs@magstyle\bxjs@magstyle@default
- \ClassError\bxjs@clsname%
- {The engine does not support 'magstyle=mag'}%
- {LuaTeX v0.87 or later no longer supports "mag" feature.\MessageBreak
- The default value is used instead.\MessageBreak \@ehc}
+ \ClassError\bxjs@clsname
+ {The engine does not support 'magstyle=usemag'}%
+ {LuaTeX v0.87 or later no longer supports the "mag" feature of TeX.\MessageBreak
+ The default value 'nomag*' is used instead.\MessageBreak \@ehc}
\fi
\fi
% \end{macrocode}
@@ -1925,18 +1941,13 @@
% \paragraph{拡大率の設定}
% \mbox{}
% \begin{ZRnote}
-% \begin{macro}{\ifbxjs@nfss@patch}
-% NFSSパッチするか。
-% \begin{macrocode}
-\newif\ifbxjs@nfss@patch
-% \end{macrocode}
-% \end{macro}
-%
+% |\bxjs@magstyle| の値に応じてスイッチ |jsc@mag| と |jsc@mag@xreal| を
+% 設定する。
% \begin{macrocode}
\ifx\bxjs@magstyle\bxjs@magstyle@mag
\jsc@magtrue
\else\ifx\bxjs@magstyle\bxjs@magstyle@xreal
- \bxjs@nfss@patchtrue
+ \jsc@mag@xrealtrue
\fi\fi
% \end{macrocode}
% \end{ZRnote}
@@ -1965,6 +1976,7 @@
\divide\@tempdima16384\relax \@tempcnta\@tempdima\relax
\edef\bxjs@param@mag{\the\@tempcnta}
\else
+% mag値が直接指定された場合
\let\c@bxjs@cnta\@tempcnta
\setcounter{bxjs@cnta}{\bxjs@param@mag}
\ifnum\@tempcnta<\z@ \@tempcnta=\z@ \fi
@@ -1986,7 +1998,7 @@
%\typeout{\string\bxjs@param@mag: \bxjs@param@mag}
%\typeout{\string\jsc@magscale: \jsc@magscale}
%\typeout{\string\ifjsc@mag: \meaning\ifjsc@mag}
-%\typeout{\string\ifbxjs@nfss@patch: \meaning\ifbxjs@nfss@patch}
+%\typeout{\string\ifjsc@mag@xreal: \meaning\ifjsc@mag@xreal}
% \end{macrocode}
% \end{ZRnote}
%
@@ -2025,55 +2037,55 @@
\providecommand*\zw{\jsZw}
\fi
% \end{macrocode}
-% \end{ZRnote}
%
-% \paragraph{NFSSパッチ \ZRX}
-% \mbox{}
-% \begin{ZRnote}
+% そして、magstyle が |nomag*| の場合は、NFSSにパッチを当てる。
+% \begin{macrocode}
+\ifjsc@mag@xreal
+ \RequirePackage{type1cm}
+ \let\jsc@invscale\bxjs@invscale
+% \end{macrocode}
% ムニャムニャムニャ……。
+% \end{ZRnote}
% \begin{macrocode}
-\ifbxjs@nfss@patch
-\RequirePackage{type1cm}
-\expandafter\let\csname OT1/cmr/m/n/10\endcsname\relax
-\expandafter\let\csname OMX/cmex/m/n/10\endcsname\relax
-\let\bxjs@get@external@font\get@external@font
-\def\get@external@font{%
- \bxjs@preadjust@extract@font
- \bxjs@get@external@font}
-\def\bxjs@fstrunc#1{%
- \edef\bxjs@tmpa{\strip@pt#1}%
- \expandafter\bxjs@fstrunc@a\bxjs@tmpa.****\@nil}
-\def\bxjs@fstrunc@a#1.#2#3#4#5#6\@nil{%
- \if#5*\else
- \edef\bxjs@tmpa{#1%
- \ifnum#2#3>\z@ .#2\ifnum#3>\z@ #3\fi\fi}%
- \fi}
-\def\bxjs@preadjust@extract@font{%
- \let\bxjs@req@size\f@size
- \dimen@\f@size\p@ \bxjs@invscale\dimen@\jsc@magscale
- \advance\dimen@.005pt\relax \bxjs@fstrunc\dimen@
- \let\bxjs@ref@size\bxjs@tmpa
- \let\f@size\bxjs@ref@size}
-\def\execute@size@function#1{%
- \let\bxjs@cref@size\f@size
- \let\f@size\bxjs@req@size
- \csname s@fct@#1\endcsname}
-\let\bxjs@DeclareErrorFont\DeclareErrorFont
-\def\DeclareErrorFont#1#2#3#4#5{%
- \@tempdimc#5\p@ \@tempdimc\jsc@magscale\@tempdimc
- \edef\bxjs@tmpa{{#1}{#2}{#3}{#4}{\strip@pt\@tempdimc}}
- \expandafter\bxjs@DeclareErrorFont\bxjs@tmpa}
-\def\gen@sfcnt{%
- \edef\mandatory@arg{\mandatory@arg\bxjs@cref@size}%
- \empty@sfcnt}
-\def\genb@sfcnt{%
- \edef\mandatory@arg{%
- \mandatory@arg\expandafter\genb@x\bxjs@cref@size..\@@}%
- \empty@sfcnt}
-\DeclareErrorFont{OT1}{cmr}{m}{n}{10}
+ \expandafter\let\csname OT1/cmr/m/n/10\endcsname\relax
+ \expandafter\let\csname OMX/cmex/m/n/10\endcsname\relax
+ \let\jsc@get@external@font\get@external@font
+ \def\get@external@font{%
+ \jsc@preadjust@extract@font
+ \jsc@get@external@font}
+ \def\jsc@fstrunc#1{%
+ \edef\jsc@tmpa{\strip@pt#1}%
+ \expandafter\jsc@fstrunc@a\jsc@tmpa.****\@nil}
+ \def\jsc@fstrunc@a#1.#2#3#4#5#6\@nil{%
+ \if#5*\else
+ \edef\jsc@tmpa{#1%
+ \ifnum#2#3>\z@ .#2\ifnum#3>\z@ #3\fi\fi}%
+ \fi}
+ \def\jsc@preadjust@extract@font{%
+ \let\jsc@req@size\f@size
+ \dimen@\f@size\p@ \jsc@invscale\dimen@\jsc@magscale
+ \advance\dimen@.005pt\relax \jsc@fstrunc\dimen@
+ \let\jsc@ref@size\jsc@tmpa
+ \let\f@size\jsc@ref@size}
+ \def\execute@size@function#1{%
+ \let\jsc@cref@size\f@size
+ \let\f@size\jsc@req@size
+ \csname s@fct@#1\endcsname}
+ \let\jsc@DeclareErrorFont\DeclareErrorFont
+ \def\DeclareErrorFont#1#2#3#4#5{%
+ \@tempdimc#5\p@ \@tempdimc\jsc@magscale\@tempdimc
+ \edef\jsc@tmpa{{#1}{#2}{#3}{#4}{\strip@pt\@tempdimc}}
+ \expandafter\jsc@DeclareErrorFont\jsc@tmpa}
+ \def\gen@sfcnt{%
+ \edef\mandatory@arg{\mandatory@arg\jsc@cref@size}%
+ \empty@sfcnt}
+ \def\genb@sfcnt{%
+ \edef\mandatory@arg{%
+ \mandatory@arg\expandafter\genb@x\jsc@cref@size..\@@}%
+ \empty@sfcnt}
+ \DeclareErrorFont{OT1}{cmr}{m}{n}{10}
\fi
% \end{macrocode}
-% \end{ZRnote}
%
% \paragraph{pagesizeスペシャルの出力}
% \mbox{}
@@ -2898,7 +2910,7 @@
% この場合はユーザが何らかの方法(例えば |geometry| を読み込む)
% でページレイアウトを設定する必要がある。
% もし、本体開始時に |\textwidth| がカーネル設定の値(|.5\maxdimen|)
-% になっている場合はエラーを出す。
+% のままになっている場合はエラーを出す。
% \Note |\jsUseMinimalPageLayout| は動作テスト用。
% \begin{macrocode}
\AtBeginDocument{\bxjs@check@page@layout}
@@ -2906,8 +2918,8 @@
\def\bxjs@check@page@layout{%
\ifdim\textwidth=.5\maxdimen
\ClassError\bxjs@clsname
- {Page layout is not properly set}
- \@ehd
+ {Page layout is not properly set}%
+ {\@ehd}
\fi}
\def\jsUseMinimalPageLayout{%
\setlength{\textwidth}{6.5in}%
@@ -2921,7 +2933,7 @@
{\bxjs@pagelayout@a}{\bxjs@pagelayout@a}}
\def\bxjs@pagelayout@a#1{%
\ClassError\bxjs@clsname
- {Command \string\setpagelayout\space is not supported,\MessageBreak
+ {Command '\string\setpagelayout' is not supported,\MessageBreak
because 'geometry' value is not 'class'}\@eha}
% \end{macrocode}
%
@@ -3785,6 +3797,9 @@
% 二つ挿入した |\everyparhook| のうち後者が |\paragraph| 類の後で2回実行され,
% それ以降は前者が実行されます。
%
+% [2016-07-28] \texttt{slide}オプションと\texttt{twocolumn}オプションを
+% 同時に指定した場合の罫線の位置を微調整しました。
+%
% \begin{macrocode}
\def\@xsect#1{%
% 見出しの後ろの空きを \@tempskipa にセット
@@ -3813,7 +3828,9 @@
\@afterheading
\fi
\if@slide
- {\vskip-6\p@?\maybeblue\hrule height0\p@? depth1\p@?\vskip7\p@?\relax}%
+ {\vskip\if@twocolumn-5\jsc@mpt\else-6\jsc@mpt\fi
+ \maybeblue\hrule height0\jsc@mpt depth1\jsc@mpt
+ \vskip\if@twocolumn 4\jsc@mpt\else 7\jsc@mpt\fi\relax}%
\fi
\par % 2000-12-18
\ignorespaces}
@@ -4346,7 +4363,7 @@
% \begin{macrocode}
\if@twocolumn
\newcommand{\subsection}{\@startsection{subsection}{2}{\z@}%
- {\z@}{\z@}%
+ {\z@}{\if@slide .4\Cvs \else \z@ \fi}%
{\normalfont\normalsize\headfont}}
\else
\newcommand{\subsection}{\@startsection{subsection}{2}{\z@}%
@@ -4359,15 +4376,19 @@
% \end{macro}
%
% \begin{macro}{\subsubsection}
+%
+% [2016-07-22] \texttt{slide}オプション指定時に |\subsubsection| の文字列
+% と罫線が重なる問題に対処しました(forum:1982)。
+%
% \begin{macrocode}
\if@twocolumn
\newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}%
- {\z@}{\z@}%
+ {\z@}{\if@slide .4\Cvs \else \z@ \fi}%
{\normalfont\normalsize\headfont}}
\else
\newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}%
{\Cvs \@plus.5\Cdp \@minus.2\Cdp}%
- {\z@}%
+ {\if@slide .5\Cvs \@plus.3\Cdp \else \z@ \fi}%
{\normalfont\normalsize\headfont}}
\fi
% \end{macrocode}
@@ -4393,13 +4414,13 @@
\let\jsJaChar\@empty
\if@twocolumn
\newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}%
- {\z@}{-1\jsZw}% 改行せず 1\jsZw のアキ
+ {\z@}{\if@slide .4\Cvs \else -1\jsZw\fi}% 改行せず 1\jsZw のアキ
%<jspf> {\normalfont\normalsize\headfont}}
%<!jspf> {\normalfont\normalsize\headfont\jsParagraphMark}}
\else
\newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}%
{0.5\Cvs \@plus.5\Cdp \@minus.2\Cdp}%
- {-1\jsZw}% 改行せず 1\jsZw のアキ
+ {\if@slide .5\Cvs \@plus.3\Cdp \else -1\jsZw\fi}% 改行せず 1\jsZw のアキ
%<jspf> {\normalfont\normalsize\headfont}}
%<!jspf> {\normalfont\normalsize\headfont\jsParagraphMark}}
\fi
@@ -4411,9 +4432,15 @@
% 見出しの後ろで改行されません。
%
% \begin{macrocode}
-\newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}%
- {\z@}{-1\jsZw}%
- {\normalfont\normalsize\headfont}}
+\if@twocolumn
+ \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}%
+ {\z@}{\if@slide .4\Cvs \@plus.3\Cdp \else -1\jsZw\fi}%
+ {\normalfont\normalsize\headfont}}
+\else
+ \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}%
+ {\z@}{\if@slide .5\Cvs \@plus.3\Cdp \else -1\jsZw\fi}%
+ {\normalfont\normalsize\headfont}}
+\fi
% \end{macrocode}
% \end{macro}
%
@@ -5325,7 +5352,7 @@
\DeclareRobustCommand*{\jsc@warnoldfontcmd}[1]{%
\ClassInfo\bxjs@clsname
{Old font command '\string#1' is used!!\MessageBreak
- First occurrence is}%
+ The first occurrence is}%
}
% \end{macrocode}
% \end{macro}
@@ -5368,7 +5395,7 @@
\ifx\@tempa\@empty\else
\ClassWarningNoLine\bxjs@clsname
{Some old font commands were used in text\MessageBreak
- (see the log output for detail)}%
+ (see the log file for detail)}%
\ClassInfo\bxjs@clsname
{Some old font commands were used in text:\MessageBreak
\space\@tempa\MessageBreak
@@ -6041,15 +6068,21 @@
% \begin{macro}{\footnote}
% \begin{macro}{\footnotemark}
%
-% 和文の句読点・閉じかっこ類の直後で用いた際に
-% 余分なアキが入るのを防ぐため,
-% |\jsInhibitGlue| を入れることにします。
+% 和文の句読点・閉じかっこ類の直後で用いた際に余分なアキが入るのを防ぐため,
+% |\inhibitglue| を入れることにします。
+% p\LaTeX の日付が2016/09/03より新しい場合は,このパッチが不要なのであてません。
%
+% \begin{ZRnote}
+% パッチの必要性は「|\pltx@foot@penalty| が未定義か」で行う。
+% |\inhibitglue| の代わりに |\jsInhibitGlue| を使う。
+% \end{ZRnote}
% \begin{macrocode}
-\let\footnotes@ve=\footnote
-\def\footnote{\jsInhibitGlue\footnotes@ve}
-\let\footnotemarks@ve=\footnotemark
-\def\footnotemark{\jsInhibitGlue\footnotemarks@ve}
+\ifx\pltx@foot@penalty\@undefined
+ \let\footnotes@ve=\footnote
+ \def\footnote{\jsInhibitGlue\footnotes@ve}
+ \let\footnotemarks@ve=\footnotemark
+ \def\footnotemark{\jsInhibitGlue\footnotemarks@ve}
+\fi
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -6071,6 +6104,7 @@
% [2013-05-14] plcore.ltx に倣った形に書き直しました(Thanks: 北川さん)。
%
% [2016-07-11] コミュニティ版p\LaTeX の変更に追随しました(Thanks: 角藤さん)。
+% p\LaTeX の日付が2016/04/17より新しい場合は,このパッチが不要なのであてません。
%
% \begin{ZRnote}
% {\pTeX}依存のコードなので、minimal和文ドライバ実装に移動。
@@ -6085,6 +6119,11 @@
% [2003-08-15] |\textasteriskcentered| ではフォントによって
% 下がりすぎるので変更しました。
%
+% [2016-10-08] TODO: 脚注番号が |newtxtext| や |newpxtext| の使用時に
+% おかしくなってしまいます。これらのパッケージは内部で |\thefootnote| を
+% 再定義していますので,気になる場合はパッケージを読み込むときに
+% \texttt{defaultsups} オプションを付けてください(qa:57284, qa:57287)。
+%
% \begin{macrocode}
\def\thefootnote{\ifnum\c@footnote>\z@\leavevmode\lower.5ex\hbox{*}\@arabic\c@footnote\fi}
% \end{macrocode}
@@ -6124,6 +6163,12 @@
% Jeremy Gibbons, \textit{\TeX\ and TUG NEWS},
% Vol.~2, No.~4 (1993), p.~9)
%
+% [2016-08-25] コミュニティ版\pLaTeX の「閉じ括弧類の直後に
+% |\footnotetext| が続く場合に改行が起きることがある問題に対処」
+% と同等のコードを追加しました。
+%
+% [2016-09-08] コミュニティ版\pLaTeX のバグ修正に追随しました。
+%
% \begin{macrocode}
\long\def\@footnotetext{%
\insert\footins\bgroup
@@ -6143,7 +6188,14 @@
\else \let\next\f@t\fi \next}
\def\f@@t{\bgroup\aftergroup\@foot\let\next}
\def\f@t#1{#1\@foot}
-\def\@foot{\@finalstrut\strutbox\color@endgroup\egroup}
+\def\@foot{\@finalstrut\strutbox\color@endgroup\egroup
+ \ifhmode\null\fi
+ \ifx\pltx@foot@penalty\@undefined\else
+ \ifnum\pltx@foot@penalty=\z@\else
+ \penalty\pltx@foot@penalty
+ \pltx@foot@penalty\z@
+ \fi
+ \fi}
% \end{macrocode}
% \end{macro}
%
@@ -6362,9 +6414,30 @@
%
% \section{いろいろなロゴ}
%
+% \LaTeX 関連のロゴを作り直します。
+%
+% [2016-07-14] ロゴの定義は\texttt{jslogo}パッケージに移転しました。
+% 後方互換のため,\texttt{jsclasses}ではデフォルトでこれを読み込みます。
+% \texttt{nojslogo}オプションが指定されている場合は読み込みません。
+%
% \begin{ZRnote}
-% とりあえず削除。
+% BXJSクラスでも |jslogo| オプション指定の場合に jslogo パッケージを
+% 読み込むようにした。
+% ただしJSクラスと異なり、既定では読み込まない。
+% \Note |\小|、|\上小| の制御綴は定義しない。
% \end{ZRnote}
+% \begin{macrocode}
+\if@jslogo
+ \IfFileExists{jslogo.sty}{%
+ \RequirePackage{jslogo}%
+ }{%
+ \ClassWarningNoLine\bxjs@clsname
+ {The package 'jslogo' is not installed.\MessageBreak
+ It is included in the recent release of\MessageBreak
+ the 'jsclasses' bundle}
+ }
+\fi
+% \end{macrocode}
%
% \section{\texttt{amsmath} との衝突の回避}
%
@@ -7089,7 +7162,7 @@
\else\ifnum\strcmp{\the\XeTeXlinebreakskip}{\the\z@}=\z@
\jsSimpleJaSetup
\ClassInfo\bxjs@clsname
- {\string\jsSimpleJaSetup\space is applied\@gobble}%
+ {'\string\jsSimpleJaSetup' is applied\@gobble}%
\fi\fi}
% \end{macrocode}
% \end{macro}
@@ -7449,9 +7522,9 @@
\let\bxjs@tmpa\jsJaFont
\fi
\if f#1\ifx\bxjs@tmpa\bxjs@@noEmbed
- \ClassWarning\bxjs@clsname
- {Option 'jafont=noEmbed' is ignored, because no-embed\MessageBreak
- is not available}%
+ \ClassWarningNoLine\bxjs@clsname
+ {Option 'jafont=noEmbed' is ignored, because it is\MessageBreak
+ not available on the current situation}%
\let\bxjs@tmpa\@empty
\fi\fi
}
@@ -8305,7 +8378,7 @@
%
%^^A----------------
%\subsection{CJKmainfont変数}
-% Lua{\TeX}(+ Lua{{TeX}-ja)の場合に CJKmainfont 変数が
+% Lua{\TeX}(+ Lua{TeX}-ja)の場合に CJKmainfont 変数が
% 指定された場合は |\setmainjfont| の指定にまわす。
% \begin{macrocode}
\if l\jsEngine