texlive[45252] Master/texmf-dist: bxjscls (9sep17)
commits+karl at tug.org
commits+karl at tug.org
Sun Sep 10 00:34:24 CEST 2017
Revision: 45252
http://tug.org/svn/texlive?view=revision&revision=45252
Author: karl
Date: 2017-09-10 00:34:23 +0200 (Sun, 10 Sep 2017)
Log Message:
-----------
bxjscls (9sep17)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md
trunk/Master/texmf-dist/doc/latex/bxjscls/README.md
trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf
trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex
trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf
trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md 2017-09-09 22:34:23 UTC (rev 45252)
@@ -13,7 +13,7 @@
### 前提環境
- * TeX エンジン: pdfTeX / XeTeX / LuaTeX / pTeX / upTeX
+ * TeX エンジン: pdfTeX / XeTeX / LuaTeX / pTeX / upTeX / pTeX-ng
- e-TeX 拡張は必須でない
- XeTeX は 0.997 版以降が必要
* フォーマット: LaTeX
@@ -97,6 +97,9 @@
更新履歴
--------
+ * Version 1.6 〈2017/09/09〉
+ - bxjsreport の継承元を jsbook + report から jsreport に変更した。
+ - jsclasses の 2017/09/03 版と同期。
* Version 1.5d 〈2017/07/07〉
- バグ修正。
* Version 1.5c 〈2017/06/10〉
Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/README.md
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex 2017-09-09 22:34:23 UTC (rev 45252)
@@ -12,8 +12,8 @@
\renewcommand*{\XeLaTeX}{XeLaTeX}}
\usepackage{shortvrb}
\MakeShortVerb{\|}
-\newcommand{\PkgVersion}{1.5d}
-\newcommand{\PkgDate}{2017/07/07}
+\newcommand{\PkgVersion}{1.6}
+\newcommand{\PkgDate}{2017/09/09}
\newcommand{\Pkg}[1]{\textsf{#1}}
\newcommand{\Meta}[1]{$\langle$\mbox{}#1\mbox{}$\rangle$}
\newcommand{\Note}{\par\noindent ※}
@@ -452,11 +452,12 @@
\end{itemize}
コマンド行は次のようになる
- \footnote{もちろん、実際には改行を含めず1行で書く。}%
- (Pandoc 1.16版の場合
- \footnote{少し古い版の場合、変数 |papersize| の値は |a4|
- ではなく |a4paper| と書くことになる。}%
- ):
+ \footnote{もちろん、実際には改行を含めず1行で書く。
+ なお、Pandoc 1.16版以降では、用紙サイズオプションについては、
+ 変数 |papersize| の値に“|paper|”を付加したもの
+ (|-V papersize=a4| ならば |a4paper|)が使われる。
+ ここで |a4var| や |b5var| を使えるようにするため、
+ BXJSクラスでは |a4varpaper| 等を別名として用意している。}:
\begin{quote}
|pandoc| \Meta{入力ファイル名}
|-o| \Meta{出力ファイル名}|.pdf|
@@ -540,6 +541,15 @@
|lualatex|、|platex-ng| である。
エンジンオプション(と次項の |autodetect-engine| の何れか)
の指定は必須である。
+ \Note |platex-ng| は{\pTeX-ng}エンジン
+ (別名“A\pTeX”、“Asiatic \pTeX”)のためのオプションである。
+ 現時点では |platex-ng| 指定時の仕様は流動的であり詳細を述べる
+ ことは避けるが、大体は |uplatex| と同様になる。
+ {\pTeX-ng}はPDF出力を行うので、ドライバオプションは指定しない。
+ \footnote{現状の実装では、自動的に |dvipdfmx| が
+ グローバルオプションに追加される。
+ また、|platex-ng| オプションの変種に |platex-ng*| があり、
+ こちらは |dvipdfmx| の自動追加を行わない。}
\item |autodetect-engine|\Means
使用しているエンジンを判定して、自動的に適切なエンジンオプションを
設定する。
@@ -711,6 +721,9 @@
読み込まれるため、このオプションは無意味である。
\item |nosimplejasetup|\Means
|simplejasetup| の否定。
+\item |a4varpaper|、|b5varpaper|\Means
+ 用紙サイズ指定オプション |a4var|、|b5var| の別名。
+ \Note Pandocで |-V papersize=a4var| の指定を可能にするため。
\item |mag=|\Meta{整数}\Means
版面拡大率(mag値)の直接設定。
既定は |base| から算出する。
@@ -787,10 +800,10 @@
\end{itemize}
\item \Pkg{bxjsreport}クラスの場合:
\begin{itemize}
- \item |v2|\Means
+ \item |v2|(既定
+ \footnote{1.6版より既定値が |v2| に変更された。})\Means
JSクラスに新設された\Pkg{jsreport}クラスのレイアウトを継承する。
- \Note 近い将来に、既定値が |v2| に変更される予定。
- \item |v1|(既定)\Means
+ \item |v1|\Means
従来の「\Pkg{jsbook}クラス\,+\,|report|オプション」の
レイアウトを継承する。
\end{itemize}
Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx 2017-09-09 22:34:23 UTC (rev 45252)
@@ -67,7 +67,9 @@
%<*driver>
\ProvidesFile{bxjscls.dtx}
%</driver>
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
+% based on jsclasses [2017/09/03]
+% [2017/07/07 v1.5d BXJS document classes]
% [2017/06/10 v1.5c BXJS document classes]
% [2017/04/01 v1.5b BXJS document classes]
% [2017/03/14 v1.5a BXJS document classes]
@@ -238,15 +240,42 @@
% \StopEventually{}
%
% 以下では実際のコードに即して説明します。
+% \begin{macrocode}
+%<*cls>
+%% このファイルは日本語文字を含みます.
+% \end{macrocode}
%
+% \begin{macro}{\bxjs at clsname}
+%
+% 文書クラスの名前です。エラーメッセージ表示などで使われます。
+%
+% \begin{macrocode}
+%<article>\def\bxjs at clsname{bxjsarticle}
+%<book>\def\bxjs at clsname{bxjsbook}
+%<report>\def\bxjs at clsname{bxjsreport}
+%<slide>\def\bxjs at clsname{bxjsslide}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ifjsc at needsp@tch}
+%
+% [2016-08-22] 従来\texttt{jsclasses}では,\pLaTeX や\LaTeX の
+% 不都合な点に対して,クラスファイル内で独自に対策を施していま
+% した。しかし,2016年以降,コミュニティ版\pLaTeX が次第に対策
+% コードをカーネル内に取り込むようになりました。そこで,新しい
+% \pLaTeX カーネルと衝突しないように,日付が古い場合だけパッチ
+% をあてる場合があります。この処理に使用するフラグを定義します。
+%
+% \begin{macrocode}
+\newif\ifjsc at needsp@tch
+\jsc at needsp@tchfalse
+% \end{macrocode}
+% \end{macro}
+%
% \paragraph{BXJSクラス特有の設定 \ZRX}
%
% \mbox{}
% \begin{ZRnote}
-% \begin{macrocode}
-%<*cls>
-%% このファイルは日本語文字を含みます.
-% \end{macrocode}
% 長さ値の指定で式を利用可能にするため |calc| を読み込む。
% \begin{macrocode}
\RequirePackage{calc}
@@ -279,13 +308,9 @@
\let\jsReport=r
\let\jsSlide=s
%<article>\let\jsDocClass\jsArticle
-%<article>\def\bxjs at clsname{bxjsarticle}
%<book>\let\jsDocClass\jsBook
-%<book>\def\bxjs at clsname{bxjsbook}
%<report>\let\jsDocClass\jsReport
-%<report>\def\bxjs at clsname{bxjsreport}
%<slide>\let\jsDocClass\jsSlide
-%<slide>\def\bxjs at clsname{bxjsslide}
% \end{macrocode}
% \end{macro}
%
@@ -542,6 +567,9 @@
% 真なら本文,偽なら前付け・後付けです。
% 偽なら |\chapter| で章番号が出ません。
%
+% \begin{ZRnote}
+% BXJSではreport系でも定義されることに注意。
+% \end{ZRnote}
% \begin{macrocode}
%<book|report>\newif\if at mainmatter \@mainmattertrue
% \end{macrocode}
@@ -576,7 +604,7 @@
% \pLaTeXe の \texttt{b5paper}
% は $257\,\mathrm{mm} \times 182\,\mathrm{mm}$ になっています。
% ここでは\pLaTeXe にならってJISに従いました。
-%
+%
% デフォルトは \texttt{a4paper} です。
%
% \texttt{b5var}(B5変形,182mm×230mm),
@@ -600,6 +628,11 @@
\DeclareOption{b5j}{\bxjs at setpaper{{182truemm}{257truemm}}}
\DeclareOption{a4var}{\bxjs at setpaper{{210truemm}{283truemm}}}
\DeclareOption{b5var}{\bxjs at setpaper{{182truemm}{230truemm}}}
+% \end{macrocode}
+% \Note |...var| をPandocで使えるように後ろに |paper| をつけた形を用意する。
+% \begin{macrocode}
+\DeclareOption{a4varpaper}{\bxjs at setpaper{{210truemm}{283truemm}}}
+\DeclareOption{b5varpaper}{\bxjs at setpaper{{182truemm}{230truemm}}}
\DeclareOption{letterpaper}{\bxjs at setpaper{letterpaper}}
\DeclareOption{legalpaper}{\bxjs at setpaper{legalpaper}}
\DeclareOption{executivepaper}{\bxjs at setpaper{executivepaper}}
@@ -757,27 +790,52 @@
% \end{ZRnote}
%
% \paragraph{トンボオプション}
-% \mbox{}
-% \begin{ZRnote}
-% 欧文 {\LaTeX} のカーネルではサポートされないため削除。
%
-% ただしJSクラスとの互換のため以下の変数を用意する。
+% トンボ(crop marks)を出力します。
+% 実際の処理は\pLaTeXe 本体で行います(\texttt{plcore.dtx} 参照)。
+% オプション \texttt{tombow} で日付付きのトンボ,
+% オプション \texttt{tombo} で日付なしのトンボを出力します。
+% これらはアスキー版のままです。
+% カウンタ |\hour|,|\minute| はp\LaTeXe 本体で宣言されています。
%
-% \Note JSクラスでは、2017-01-11の改修で、「トンボオプション指定時
-% のみ |\stockwidth|/|height| を定義する」という仕様に変更された。
-% BXJSでの対応は要検討。
-%
+% \begin{ZRnote}
+% 取りあえず、{\pTeX}系の場合に限り、JSクラスのトンボ関連の
+% コードをそのまま活かしておく。
+% 正常に動作する保証はない。
% \end{ZRnote}
% \begin{macrocode}
-\newdimen\stockwidth \newdimen\stockheight
+\if j\jsEngine
+\hour\time \divide\hour by 60\relax
+\@tempcnta\hour \multiply\@tempcnta 60\relax
+\minute\time \advance\minute-\@tempcnta
+\DeclareOption{tombow}{%
+ \tombowtrue \tombowdatetrue
+ \setlength{\@tombowwidth}{.1\p@}%
+ \@bannertoken{%
+ \jobname\space(\number\year-\two at digits\month-\two at digits\day
+ \space\two at digits\hour:\two at digits\minute)}%
+ \maketombowbox}
+\DeclareOption{tombo}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{.1\p@}%
+ \maketombowbox}
+\fi
% \end{macrocode}
%
% \paragraph{面付け}
-% \mbox{}
-% \begin{ZRnote}
-% 欧文 {\LaTeX} のカーネルではサポートされないため削除。
-% \end{ZRnote}
%
+% オプション \texttt{mentuke} で幅ゼロのトンボを出力します。
+% 面付けに便利です。これもアスキー版のままです。
+%
+% \begin{macrocode}
+\if j\jsEngine
+\DeclareOption{mentuke}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{\z@}%
+ \maketombowbox}
+\fi
+% \end{macrocode}
+%
% \paragraph{両面,片面オプション}
%
% \texttt{twoside} で奇数ページ・偶数ページのレイアウトが変わります。
@@ -953,6 +1011,8 @@
%
% \texttt{draft} でoverfull boxの起きた行末に5ptの罫線を引きます。
%
+% [2016-07-13] |\ifdraft| を定義するのをやめました。
+%
% \begin{ZRnote}
% \begin{macro}{\ifjsDraft}
% JSクラスは |\ifdraft| という公開名のスイッチを用いているが、
@@ -959,8 +1019,8 @@
% これは |ifdraft| パッケージと衝突するので、代わりに |\ifjsDraft|
% の名前を用い、本文開始時に |\ifdraft| が未定義の場合に限り、
% |\ifjsDraft| を |\ifdraft| にコピーする処理にする。
-% \Note JSクラスの |\ifdraft| は2016/07/13版で廃止された。
-% よって |\ifdraft| は2.0版で廃止を予定する。
+% \Note JSクラスの |\ifdraft| が廃止されたので、
+% |\ifdraft| は2.0版で廃止を予定する。
% \begin{macrocode}
\let\ifjsDraft\iffalse
\@onlypreamble\bxjs at draft
@@ -978,15 +1038,23 @@
% \end{ZRnote}
%
% \paragraph{和文フォントメトリックの選択}
-% \mbox{}
+%
+% ここでは新しい \texttt{jis} フォントメトリックを標準で使いますが,
+% 古い \texttt{min10},\texttt{goth10} などを使いたいときは \texttt{mingoth}
+% というオプションを指定します。
+% また,\texttt{winjis} オプションで \texttt{winjis} メトリックが使えます。
+%
% \begin{ZRnote}
-% ここは和文ドライバの管轄。
+% BXJSクラスではここは和文ドライバの管轄。
% \end{ZRnote}
%
% \paragraph{papersizeスペシャルの利用}
-% \mbox{}
+%
+% dvipsやdvioutで用紙設定を自動化するには
+% オプション \texttt{papersize} を与えます。
+%
% \begin{ZRnote}
-% |geometry| パッケージが行う。
+% BXJSクラスでは |geometry| パッケージがこの処理を行う。
%
% \begin{macro}{\ifbxjs at papersize}
% 〔スイッチ〕 papersizeスペシャルを出力するか。
@@ -1019,8 +1087,7 @@
% いましたが,新しくjsreportクラスも作りました。どちらでもお好きな方を使ってください。
%
% \begin{ZRnote}
-% BXJS では `|report|' 相当のものは別に |bxjsreport| クラスとして用意する。
-% \Note FIXME:|jsbook|\,+\,|report| と |jsreport|のどちらに合わせるか。
+% BXJSでは当初から |bxjsreport| クラスが用意されている。
% \end{ZRnote}
%
% \paragraph{jslogoパッケージの読み込み}
@@ -1669,10 +1736,9 @@
% abstract環境をchapterabstractにするか。
% \Note |bxjsbook| では常に真。
% |bxjsreport| では |layout| が |v1| の場合に真になる。
-% \Note ただし1.5版では移行措置のため |bxjsreport| の既定値を真にする。
% \begin{macrocode}
\newif\ifbxjs at force@chapterabstract
-%<book|report>\bxjs at force@chapterabstracttrue
+%<book>\bxjs at force@chapterabstracttrue
% \end{macrocode}
% \end{macro}
%
@@ -1775,6 +1841,21 @@
\bxjs at composite@proc
% \end{macrocode}
%
+% 後処理
+%
+% \begin{macrocode}
+\if at slide
+ \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
+\fi
+\if at landscape
+ \setlength\@tempdima {\paperheight}
+ \setlength\paperheight{\paperwidth}
+ \setlength\paperwidth {\@tempdima}
+\fi
+% \end{macrocode}
+%
+% \paragraph{グローバルオプションの整理 \ZRX}
+%
% \begin{ZRnote}
%
% グローバルオプションのトークン列に |{ }| が含まれていると、
@@ -1814,6 +1895,27 @@
{noscale}\@classoptionslist\@classoptionslist
% \end{macrocode}
%
+% \end{ZRnote}
+%
+% \paragraph{使用エンジンの検査・自動判定}
+%
+% ユーザが |uplatex| オプションの有無により指定したエンジンが,実際に
+% 使われているものと一致しているかを検査し,一致しない場合はエラー
+% メッセージを表示します。
+%
+% [2016-11-09] p\LaTeX / up\LaTeX を自動判別するオプション |autodetect-engine| を新設しました。
+% up\LaTeX の場合は,グローバルオプションに |uplatex| を追加することで,
+% 自動判定に応じて |otf| パッケージにも |uplatex| オプションが渡るようにします。
+%
+% \begin{macrocode}
+% \end{macrocode}
+%
+% [2016-11-11] p\LaTeX の場合は,オプション |uplatex| が指定されていれば必ずエラーを出します。
+% |autodetect-engine| が有効になっていてもエラーを出しますが,これは |otf| パッケージに
+% |uplatex| オプションが渡ってしまうのを防ぐためです。
+%
+% \begin{ZRnote}
+%
% 現在の(正規化前の)和文ドライバの値を\
% |\bxjs at jadriver@given| に保存する。
% \begin{macrocode}
@@ -1868,6 +1970,8 @@
\fi
% \end{macrocode}
%
+% \paragraph{ドライバ指定 \ZRX}
+%
% ドライバ指定のオプションが与えられた場合は、
% それがエンジンと整合するかを検査する。
% \begin{macrocode}
@@ -1953,6 +2057,8 @@
\fi
% \end{macrocode}
%
+% \paragraph{その他のBXJS特有の後処理 \ZRX}
+%
% |\bxjs at jadriver| の正規化。
% 値が未指定の場合は |minimal| に変える。
% ただしエンジンが{(u)\pTeX}である場合は |standard|
@@ -2010,20 +2116,6 @@
% \end{macro}
%
% \end{ZRnote}
-%
-% 後処理
-%
-% \begin{macrocode}
-\if at slide
- \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
-\fi
-\if at landscape
- \setlength\@tempdima {\paperheight}
- \setlength\paperheight{\paperwidth}
- \setlength\paperwidth {\@tempdima}
-\fi
-% \end{macrocode}
-%
% \begin{ZRnote}
%
% 8bit欧文{\TeX}の場合は、高位バイトをアクティブ化しておく。
@@ -2066,10 +2158,43 @@
% \end{ZRnote}
%
% \paragraph{papersizeスペシャルの出力}
-% \mbox{}
+%
+% dvipsのpapersizeスペシャルを出力します。
+% これでdvipsや新しいdvioutで出力領域が自動設定できます。
+% トンボの付いたときの用紙サイズは無意味ですが,
+% いわゆる「ノビ」サイズという縦横1インチずつ長い用紙に出力することを考えて,
+% 1インチずつ加えました。
+% ところが\pLaTeXe はトンボ出力幅を両側に1インチとっていますので,
+% dvips使用時に
+% \begin{quote}
+% |-O -0.5in,-0.5in|
+% \end{quote}
+% というオプションを与えて両側0.5インチのトンボにするといいでしょう。
+%
+% [2003-05-17] トンボをプレビューに使うことを考えて1インチを2インチにしました。
+%
+% [2016-07-11] memoirクラスのマニュアルによると,トンボを含めた用紙の寸法は
+% |\stockwidth|,|\stockheight|と呼ぶようですので,これを使うことにしました。
+%
+% [2017-01-11] トンボオプションが指定されているとき「だけ」|\stockwidth|,
+% |\stockheight|を定義するようにしました。
+%
% \begin{ZRnote}
-% |geometry| パッケージが行う。
+% BXJSでは出力用紙サイズ記録は |geometry| パッケージが行う。
+%
+% また、JSクラスと異なり、|\stockwidth|、|\stockheight| は常に定義される。
% \end{ZRnote}
+% \begin{macrocode}
+\newdimen\stockwidth \newdimen\stockheight
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname iftombow\expandafter\endcsname\csname iftrue\endcsname
+% \newdimen\stockwidth \newdimen\stockheight
+ \setlength{\stockwidth}{\paperwidth}
+ \setlength{\stockheight}{\paperheight}
+ \advance \stockwidth 2in
+ \advance \stockheight 2in
+\fi
+% \end{macrocode}
%
% \paragraph{基準となる行送り}
%
@@ -2160,13 +2285,15 @@
% \Note (多分2.0版あたりで)JSクラスに合わせるため |\p@?| 表記を
% 止める予定。
% \begin{macrocode}
+\newdimen\jsc at mpt
+\newdimen\jsc at mmm
\ifjsc at mag
- \let\jsc at mpt\p@
- \newdimen\jsc at mmm \jsc at mmm=1mm
+ \jsc at mpt=1\p@
+ \jsc at mmm=1mm
\catcode`\?=9 % \p@? read as \p@
\else
- \newdimen\jsc at mpt \jsc at mpt=\jsc at magscale \p@
- \newdimen\jsc at mmm \jsc at mmm=\jsc at magscale mm
+ \jsc at mpt=\jsc at magscale\p@
+ \jsc at mmm=\jsc at magscale mm
\catcode`\?=11 \let\p@?\jsc at mpt
\fi
\chardef\bxjs at qmcc=\catcode`\?\relax
@@ -2272,12 +2399,33 @@
% \end{macro}
% \end{macro}
%
+% [2016-07-11] 新しく追加した|\stockwidth|,|\stockheight|も|\mag|にあわせて
+% スケールします。
+%
+% [2017-01-11] トンボオプションが指定されているとき「だけ」|\stockwidth|,
+% |\stockheight|が定義されています。
+%
+% \begin{macrocode}
+% \end{macrocode}
+%
% \paragraph{pagesizeスペシャルの出力}
-% \mbox{}
-% \begin{ZRnote}
-% 削除。
-% \end{ZRnote}
%
+% [2003-05-17] dvipdfm(x)のpagesizeスペシャルを出力します。
+%
+% [2004-08-08] 今のdvipdfmxはdvips用スペシャルを理解するようなので外しました。
+%
+% \begin{macrocode}
+% \ifpapersize
+% \setlength{\@tempdima}{\paperwidth}
+% \setlength{\@tempdimb}{\paperheight}
+% \iftombow
+% \advance \@tempdima 2truein
+% \advance \@tempdimb 2truein
+% \fi
+% \AtBeginDvi{\special{pdf: pagesize width \the\@tempdima\space height \the\@tempdimb}}
+% \fi
+% \end{macrocode}
+%
% \section{和文フォントの変更}
%
% \begin{ZRnote}
@@ -2290,6 +2438,9 @@
% では |I watch TV\@.| と書くと V とピリオドのペアカーニングが効かなくなります。
% そこで,次のような定義に直し,|I watch TV.\@| と書くことにします。
%
+% [2016-07-14] 2015-01-01の\LaTeX で,auxiliary filesに書き出されたときに
+% スペースが食われないようにする修正が入りました。これに合わせて |{}| を補いました。
+%
% \begin{macrocode}
\chardef\bxjs at periodchar=`\.
\bxjs at protected\def\bxjs at SE{\spacefactor\sfcode\bxjs at periodchar}
@@ -2546,8 +2697,11 @@
% パラメータに実際の値を設定します。
% たとえば |\Cwd| は |\normalfont| の全角幅(1zw)です。
%
+% [2017-08-31] 基準とする文字を「全角空白」(EUCコード\texttt{0xA1A1})から
+% 「漢」(JISコード\texttt{0x3441})へ変更しました。
+%
% \begin{ZRnote}
-% まず |\Cwd| 等の変数を定義する。
+% |\Cwd| 等の変数は{\pTeX}系以外では未定義なのでここで定義する。
% \begin{macrocode}
\ifx\Cht\@undefined \newdimen\Cht \fi
\ifx\Cdp\@undefined \newdimen\Cdp \fi
@@ -2557,7 +2711,7 @@
% \end{macrocode}
%
% 規約上、現在の |\jsZw| の値が |\Cwd| である。
-% |\Cht| と |\Cdp| は単純に |\Cwd| の88\%と12\%の値とする。
+% BXJSでは |\Cht| と |\Cdp| は単純に |\Cwd| の88\%と12\%の値とする。
% \end{ZRnote}
% \begin{macrocode}
\setlength\Cht{0.88\jsZw}
@@ -2721,7 +2875,7 @@
% \begin{macrocode}
%<!kiyou>\setlength\columnsep{2\Cwd}
%<kiyou>\setlength\columnsep{28truebp}
-\setlength\columnseprule{0\p@}
+\setlength\columnseprule{0\jsc at mpt}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2739,10 +2893,10 @@
% \texttt{normal...} の付いた方は保存用です。
%
% \begin{macrocode}
-\setlength\lineskip{1\p@?}
-\setlength\normallineskip{1\p@?}
-\setlength\lineskiplimit{1\p@?}
-\setlength\normallineskiplimit{1\p@?}
+\setlength\lineskip{1\jsc at mpt}
+\setlength\normallineskip{1\jsc at mpt}
+\setlength\lineskiplimit{1\jsc at mpt}
+\setlength\normallineskiplimit{1\jsc at mpt}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2773,7 +2927,7 @@
% |\parindent| は段落の先頭の字下げ幅です。
%
% \begin{macrocode}
-\setlength\parskip{0\p@}
+\setlength\parskip{0\jsc at mpt}
\if at slide
\setlength\parindent{0\p@}
\else
@@ -3140,6 +3294,385 @@
% \end{itemize}
% \end{ZRnote}
%
+% \begin{ZRnote}
+% \Note diffが崩壊するのを避けるためオリジナルのコードを無効化した状態で
+% 挿入しておく。
+% \end{ZRnote}
+%<*jsclasses>
+%
+% \paragraph{縦方向のスペース}
+%
+% \begin{macro}{\headheight}
+% \begin{macro}{\topskip}
+%
+% |\topskip| は本文領域上端と本文1行目のベースラインとの距離です。
+% あまりぎりぎりの値にすると,本文中に $\int$ のような高い文字が
+% 入ったときに1行目のベースラインが他のページより下がってしまいます。
+% ここでは本文の公称フォントサイズ(10pt)にします。
+%
+% [2003-06-26] |\headheight| はヘッダの高さで,
+% 元は12ptでしたが,新ドキュメントクラスでは |\topskip|
+% と等しくしていました。ところが,|fancyhdr| パッケージ
+% で |\headheight| が小さいとおかしいことになるようです
+% ので,2倍に増やしました。代わりに,版面の上下揃えの
+% 計算では |\headheight| ではなく |\topskip| を使う
+% ことにしました。
+%
+% [2016-08-17] 圏点やルビが一行目に来た場合に下がるのを防ぐた
+% め,|\topskip| を10ptから1.38zwに増やしました。
+% |\headheight| は従来と同じ20ptのままとします。
+%
+% \begin{macrocode}
+\setlength\topskip{1.38zw}%% from 10\jsc at mpt (2016-08-17)
+\if at slide
+ \setlength\headheight{0\jsc at mpt}
+\else
+ \setlength\headheight{20\jsc at mpt}%% from 2\topskip (2016-08-17); from \topskip (2003-06-26)
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\footskip}
+%
+% |\footskip| は本文領域下端とフッタ下端との距離です。
+% 標準クラスファイルでは,book で0.35in(約8.89mm),
+% book 以外で30pt(約10.54mm)となっていましたが,
+% ここではA4判のときちょうど1cmとなるように,
+% |\paperheight| の0.03367倍(最小 |\baselineskip|)としました。
+% 書籍については,フッタは使わないことにして,ゼロにしました。
+%
+% \begin{macrocode}
+%<*article|kiyou>
+\if at slide
+ \setlength\footskip{0pt}
+\else
+ \setlength\footskip{0.03367\paperheight}
+ \ifdim\footskip<\baselineskip
+ \setlength\footskip{\baselineskip}
+ \fi
+\fi
+%</article|kiyou>
+%<jspf>\setlength\footskip{9\jsc at mmm}
+%<*book>
+\if at report
+ \setlength\footskip{0.03367\paperheight}
+ \ifdim\footskip<\baselineskip
+ \setlength\footskip{\baselineskip}
+ \fi
+\else
+ \setlength\footskip{0pt}
+\fi
+%</book>
+%<*report>
+\setlength\footskip{0.03367\paperheight}
+\ifdim\footskip<\baselineskip
+ \setlength\footskip{\baselineskip}
+\fi
+%</report>
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\headsep}
+%
+% |\headsep| はヘッダ下端と本文領域上端との距離です。
+% 元は book で18pt(約6.33mm),
+% それ以外で25pt(約8.79mm)になっていました。
+% ここでは article は |\footskip| $-$ |\topskip| としました。
+%
+% [2016-10-08] article の \texttt{slide} のとき,
+% および book の非 \texttt{report} と kiyou のときに |\headsep| を
+% 減らしそこねていたのを修正しました(2016-08-17での修正漏れ)。
+%
+% \begin{macrocode}
+%<*article>
+\if at slide
+ \setlength\headsep{0\jsc at mpt}
+ \addtolength\headsep{-\topskip}%% added (2016-10-08)
+ \addtolength\headsep{10\jsc at mpt}%% added (2016-10-08)
+\else
+ \setlength\headsep{\footskip}
+ \addtolength\headsep{-\topskip}
+\fi
+%</article>
+%<*book>
+\if at report
+ \setlength\headsep{\footskip}
+ \addtolength\headsep{-\topskip}
+\else
+ \setlength\headsep{6\jsc at mmm}
+ \addtolength\headsep{-\topskip}%% added (2016-10-08)
+ \addtolength\headsep{10\jsc at mpt}%% added (2016-10-08)
+\fi
+%</book>
+%<*report>
+\setlength\headsep{\footskip}
+\addtolength\headsep{-\topskip}
+%</report>
+%<*jspf>
+\setlength\headsep{9\jsc at mmm}
+\addtolength\headsep{-\topskip}
+%</jspf>
+%<*kiyou>
+\setlength\headheight{0\jsc at mpt}
+\setlength\headsep{0\jsc at mpt}
+\addtolength\headsep{-\topskip}%% added (2016-10-08)
+\addtolength\headsep{10\jsc at mpt}%% added (2016-10-08)
+%</kiyou>
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\maxdepth}
+%
+% |\maxdepth| は本文最下行の最大の深さで,
+% plain \TeX や\LaTeX~2.09では4ptに固定でした。
+% \LaTeX2e では |\maxdepth| $+$ |\topskip| を本文フォントサイズ
+% の1.5倍にしたいのですが,|\topskip| は本文フォントサイズ
+% (ここでは10pt)に等しいので,結局 |\maxdepth| は |\topskip|
+% の半分の値(具体的には5pt)にします。
+%
+% \begin{macrocode}
+\setlength\maxdepth{.5\topskip}
+% \end{macrocode}
+% \end{macro}
+%
+% \paragraph{本文の幅と高さ}
+%
+% \begin{macro}{\fullwidth}
+%
+% 本文の幅が全角40文字を超えると読みにくくなります。
+% そこで,書籍の場合に限って,
+% 紙の幅が広いときは外側のマージンを余分にとって全角40文字に押え,
+% ヘッダやフッタは本文領域より広く取ることにします。
+% このときヘッダやフッタの幅を表す |\fullwidth| という長さを定義します。
+%
+% \begin{macrocode}
+\newdimen\fullwidth
+% \end{macrocode}
+%
+% この |\fullwidth| は article では紙幅 |\paperwidth|の0.76倍を超えない
+% 全角幅の整数倍(二段組では全角幅の偶数倍)にします。0.76倍という数値は
+% A4縦置きの場合に紙幅から約2インチを引いた値になるように選びました。
+% book では紙幅から36ミリを引いた値にしました。
+%
+% \begin{macro}{\textwidth}
+%
+% 書籍以外では本文領域の幅 |\textwidth| は |\fullwidth| と等しくします。
+% |article| ではA4縦置きで49文字となります。
+% 某学会誌スタイルでは50zw(25文字×2段)+段間8mmとします。
+%
+% \begin{macrocode}
+%<*article>
+\if at slide
+ \setlength\fullwidth{0.9\paperwidth}
+\else
+ \setlength\fullwidth{0.76\paperwidth}
+\fi
+\if at twocolumn \@tempdima=2zw \else \@tempdima=1zw \fi
+\divide\fullwidth\@tempdima \multiply\fullwidth\@tempdima
+\setlength\textwidth{\fullwidth}
+%</article>
+%<*book>
+\if at report
+ \setlength\fullwidth{0.76\paperwidth}
+\else
+ \setlength\fullwidth{\paperwidth}
+ \addtolength\fullwidth{-36\jsc at mmm}
+\fi
+\if at twocolumn \@tempdima=2zw \else \@tempdima=1zw \fi
+\divide\fullwidth\@tempdima \multiply\fullwidth\@tempdima
+\setlength\textwidth{\fullwidth}
+\if at report \else
+ \if at twocolumn \else
+ \ifdim \fullwidth>40zw
+ \setlength\textwidth{40zw}
+ \fi
+ \fi
+\fi
+%</book>
+%<*report>
+\setlength\fullwidth{0.76\paperwidth}
+\if at twocolumn \@tempdima=2zw \else \@tempdima=1zw \fi
+\divide\fullwidth\@tempdima \multiply\fullwidth\@tempdima
+\setlength\textwidth{\fullwidth}
+%</report>
+%<*jspf>
+\setlength\fullwidth{50zw}
+\addtolength\fullwidth{8\jsc at mmm}
+\setlength\textwidth{\fullwidth}
+%</jspf>
+%<*kiyou>
+\setlength\fullwidth{48zw}
+\addtolength\fullwidth{\columnsep}
+\setlength\textwidth{\fullwidth}
+%</kiyou>
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\textheight}
+%
+% 紙の高さ |\paperheight| は,1インチと |\topmargin|
+% と |\headheight| と |\headsep| と |\textheight|
+% と |\footskip| とページ下部の余白を加えたものです。
+%
+% 本文部分の高さ |\textheight| は,
+% 紙の高さ |\paperheight| の0.83倍から,
+% ヘッダの高さ,ヘッダと本文の距離,本文とフッタ下端の距離,
+% |\topskip| を引き,
+% それを |\baselineskip| の倍数に切り捨て,
+% 最後に |\topskip| を加えます。
+% 念のため0.1ポイント余分に加えておきます。
+% 0.83倍という数値は,A4縦置きの場合に紙の高さから
+% 上下マージン各約1インチを引いた値になるように選びました。
+%
+% 某学会誌スタイルでは44行にします。
+%
+% [2003-06-26] |\headheight| を |\topskip| に直しました。
+% 以前はこの二つは値が同じであったので,変化はないはずです。
+%
+% [2016-08-26] |\topskip| を10ptから1.38zwに増やしましたので,
+% その分 |\textheight| を増やします(2016-08-17での修正漏れ)。
+%
+% [2016-10-08] article の slide のときに |\headheight| はゼロ
+% なので,さらに修正しました(2016-08-17での修正漏れ)。
+%
+% \begin{macrocode}
+%<*article|book|report>
+\if at slide
+ \setlength{\textheight}{0.95\paperheight}
+\else
+ \setlength{\textheight}{0.83\paperheight}
+\fi
+\addtolength{\textheight}{-10\jsc at mpt}%% from -\topskip (2016-10-08); from -\headheight (2003-06-26)
+\addtolength{\textheight}{-\headsep}
+\addtolength{\textheight}{-\footskip}
+\addtolength{\textheight}{-\topskip}
+\divide\textheight\baselineskip
+\multiply\textheight\baselineskip
+%</article|book|report>
+%<jspf>\setlength{\textheight}{51\baselineskip}
+%<kiyou>\setlength{\textheight}{47\baselineskip}
+\addtolength{\textheight}{\topskip}
+\addtolength{\textheight}{0.1\jsc at mpt}
+%<jspf>\setlength{\mathindent}{10\jsc at mmm}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\flushbottom}
+%
+% [2016-07-18] |\textheight| に念のため0.1ポイント余裕を持たせて
+% いるのと同様に,|\flushbottom| にも余裕を持たせます。
+% 元の\LaTeXe での完全な |\flushbottom| の定義は
+%\begin{verbatim}
+% \def\flushbottom{%
+% \let\@textbottom\relax \let\@texttop\relax}
+%\end{verbatim}
+% ですが,次のようにします。
+%
+% \begin{macrocode}
+\def\flushbottom{%
+ \def\@textbottom{\vskip \z@ \@plus.1\jsc at mpt}%
+ \let\@texttop\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\marginparsep}
+% \begin{macro}{\marginparpush}
+%
+% |\marginparsep| は欄外の書き込みと本文との間隔です。
+% |\marginparpush| は欄外の書き込みどうしの最小の間隔です。
+%
+% \begin{macrocode}
+\setlength\marginparsep{\columnsep}
+\setlength\marginparpush{\baselineskip}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\oddsidemargin}
+% \begin{macro}{\evensidemargin}
+%
+% それぞれ奇数ページ,偶数ページの左マージンから1インチ引いた値です。
+% 片面印刷では |\oddsidemargin| が使われます。
+% \TeX は上・左マージンに |1truein| を挿入しますが,
+% トンボ関係のオプションが指定されるとp\LaTeXe (|plcore.ltx|)
+% はトンボの内側に |1in| のスペース(|1truein| ではなく)を挿入するので,
+% 場合分けしています。
+%
+% \begin{macrocode}
+\setlength{\oddsidemargin}{\paperwidth}
+\addtolength{\oddsidemargin}{-\fullwidth}
+\setlength{\oddsidemargin}{.5\oddsidemargin}
+\iftombow
+ \addtolength{\oddsidemargin}{-1in}
+\else
+ \addtolength{\oddsidemargin}{-\inv at mag in}
+\fi
+\setlength{\evensidemargin}{\oddsidemargin}
+\if at mparswitch
+ \addtolength{\evensidemargin}{\fullwidth}
+ \addtolength{\evensidemargin}{-\textwidth}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\marginparwidth}
+%
+% |\marginparwidth| は欄外の書き込みの横幅です。
+% 外側マージンの幅(|\evensidemargin| $+$ 1インチ)から1センチを引き,
+% さらに |\marginparsep|(欄外の書き込みと本文のアキ)を引いた値に
+% しました。最後に1\,zwの整数倍に切り捨てます。
+%
+% \begin{macrocode}
+\setlength\marginparwidth{\paperwidth}
+\addtolength\marginparwidth{-\oddsidemargin}
+\addtolength\marginparwidth{-\inv at mag in}
+\addtolength\marginparwidth{-\textwidth}
+\addtolength\marginparwidth{-10\jsc at mmm}
+\addtolength\marginparwidth{-\marginparsep}
+\@tempdima=1zw
+\divide\marginparwidth\@tempdima
+\multiply\marginparwidth\@tempdima
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\topmargin}
+%
+% 上マージン(紙の上端とヘッダ上端の距離)
+% から1インチ引いた値です。
+%
+% [2003-06-26] |\headheight| を |\topskip| に直しました。
+% 以前はこの二つは値が同じであったので,変化はないはずです。
+%
+% [2016-08-17] |\topskip| を10ptから1.38zwに直しましたが,
+% |\topmargin| は従来の値から変わらないように調節しました。
+% …のつもりでしたが,|\textheight| を増やし忘れていたので
+% 変わってしまっていました(2016-08-26修正済み)。
+%
+% \begin{macrocode}
+\setlength\topmargin{\paperheight}
+\addtolength\topmargin{-\textheight}
+\if at slide
+ \addtolength\topmargin{-\headheight}
+\else
+ \addtolength\topmargin{-10\jsc at mpt}%% from -\topskip (2016-10-08); from -\headheight (2003-06-26)
+\fi
+\addtolength\topmargin{-\headsep}
+\addtolength\topmargin{-\footskip}
+\setlength\topmargin{0.5\topmargin}
+%<kiyou>\setlength\topmargin{81truebp}
+\iftombow
+ \addtolength\topmargin{-1in}
+\else
+ \addtolength\topmargin{-\inv at mag in}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%</jsclasses>
+%
% \paragraph{脚注}
%
% \begin{macro}{\footnotesep}
@@ -3435,7 +3968,7 @@
% ページスタイルとして,\LaTeXe (欧文版)の標準クラス
% では |empty|,|plain|,|headings|,|myheadings| があります。
% このうち |empty|,|plain| スタイルは\LaTeXe 本体
-% で定義されています。
+% で定義されています。
%
% アスキーのクラスファイルでは |headnombre|,|footnombre|,
% |bothstyle|,|jpl at in| が追加されていますが,
@@ -3953,7 +4486,7 @@
\centerline{\box\@abstractbox}
\ifx\@keywords\@undefined\else
\vskip 1.5em
- \centerline{\parbox{157mm}{\textsf{Keywords:}\\ \small\@keywords}}
+ \centerline{\parbox{157\jsc at mmm}{\textsf{Keywords:}\\ \small\@keywords}}
\fi
\vskip 1.5em}
%</jspf>
@@ -5151,9 +5684,9 @@
\newbox\@abstractbox
\newenvironment{abstract}{%
\global\setbox\@abstractbox\hbox\bgroup
- \begin{minipage}[b]{157mm}{\sffamily Abstract}\par
+ \begin{minipage}[b]{157\jsc at mmm}{\sffamily Abstract}\par
\small
- \if at english \parindent6mm \else \parindent1\jsZw \fi}%
+ \if at english \parindent6\jsc at mmm \else \parindent1\jsZw \fi}%
{\end{minipage}\egroup}
%</jspf>
% \end{macrocode}
@@ -5184,7 +5717,7 @@
%\newbox\@keywordsbox
%\newenvironment{keywords}{%
% \global\setbox\@keywordsbox\hbox\bgroup
-% \begin{minipage}[b]{157mm}{\sffamily Keywords:}\par
+% \begin{minipage}[b]{1570\jsc at mmm}{\sffamily Keywords:}\par
% \small\parindent0\jsZw}%
% {\end{minipage}\egroup}
%</jspf>
@@ -5621,8 +6154,8 @@
% \begin{macrocode}
%<*!jspf>
% \long\def\@makecaption#1#2{{\small
-% \advance\leftskip1cm
-% \advance\rightskip1cm
+% \advance\leftskip 10\jsc at mmm
+% \advance\rightskip 10\jsc at mmm
% \vskip\abovecaptionskip
% \sbox\@tempboxa{#1\hskip1\jsZw\relax #2}%
% \ifdim \wd\@tempboxa >\hsize
@@ -5652,9 +6185,9 @@
\itemsep \z@
\itemindent \z@
\labelsep \z@
- \labelwidth 11mm
+ \labelwidth 11\jsc at mmm
\listparindent\z@
- \leftmargin 11mm}\item\relax #2\endlist}
+ \leftmargin 11\jsc at mmm}\item\relax #2\endlist}
\else
\global \@minipagefalse
\hb at xt@\hsize{\hfil\box\@tempboxa\hfil}%
@@ -6062,6 +6595,7 @@
% \newcommand*{\l at paragraph} {\@dottedtocline{4}{7.0em}{4.1em}}
% \newcommand*{\l at subparagraph} {\@dottedtocline{5}{10em}{5em}}
%
+% \newcommand*{\l at subsection} {\@dottedtocline{2}{1zw}{3zw}}
% \newcommand*{\l at subsubsection}{\@dottedtocline{3}{2\jsZw}{3\jsZw}}
% \newcommand*{\l at paragraph} {\@dottedtocline{4}{3\jsZw}{3\jsZw}}
% \newcommand*{\l at subparagraph} {\@dottedtocline{5}{4\jsZw}{3\jsZw}}
@@ -6138,7 +6672,7 @@
\@lnumwidth #3\relax
\advance\leftskip \@lnumwidth \null\nobreak\hskip -\leftskip
{#4}\nobreak
- \leaders\hbox{$\m at th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
+ \leaders\hbox{$\m at th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
mu$}\hfill \nobreak\hb at xt@\@pnumwidth{%
\hfil\normalfont \normalcolor #5}\par}\fi}
% \end{macrocode}
@@ -6701,6 +7235,15 @@
\everypar{{\setbox\z@\lastbox}\everypar{\everyparhook}\@endpefalse\everyparhook}}
% \end{macrocode}
%
+% [2017-08-31] minipage環境にも対策します。
+%
+% \begin{macrocode}
+\def\@setminipage{%
+ \@minipagetrue
+ \everypar{\@minipagefalse\everypar{\everyparhook}}%
+}
+% \end{macrocode}
+%
% |\item| 命令の直後です。
%
% \begin{macrocode}
@@ -6837,10 +7380,39 @@
%
% \section{\texttt{amsmath} との衝突の回避}
%
-% \begin{ZRnote}
-% 最近の |\LaTeX| では該当の問題は対処されているので削除。
-% \end{ZRnote}
+% \begin{macro}{\ltx at ifnextchar}
+% \begin{macro}{\ProvidesFile}
%
+% \texttt{amsmath} パッケージでは行列中で |\@ifnextchar|
+% を再定義していますが,これが\LaTeX の |\ProvidesFile|
+% で悪さをする例がFTeXで報告されています。
+% これを避けるためのtDBさんのフィックスを挿入しておきます。
+% 副作用がありましたらお知らせください。
+%
+% この現象については私のTeX掲示板 4273〜,16058〜 で議論がありました。
+% なお,AMS関係のパッケージを読み込む際に psamsfonts オプションを
+% 与えても回避できます(Thanks: しっぽ愛好家さん)。
+%
+% [2016-11-19] 本家の ltclass.dtx 2004/01/28 v1.1g で修正されているので
+% コメントアウトしました。
+%
+% \begin{macrocode}
+%\let\ltx at ifnextchar\@ifnextchar
+%\def\ProvidesFile#1{%
+% \begingroup
+% \catcode`\ 10 %
+% \ifnum \endlinechar<256 %
+% \ifnum \endlinechar>\m at ne
+% \catcode\endlinechar 10 %
+% \fi
+% \fi
+% \@makeother\/%
+% \@makeother\&%
+% \ltx at ifnextchar[{\@providesfile{#1}}{\@providesfile{#1}[]}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
% \section{初期設定}
%
% \paragraph{いろいろな語}
@@ -6893,8 +7465,10 @@
% \begin{macro}{\figurename}
% \begin{macro}{\tablename}
% \begin{macrocode}
-\newcommand{\figurename}{\if at english Fig.~\else 図\fi}
-\newcommand{\tablename}{\if at english Table~\else 表\fi}
+%<!jspf>\newcommand{\figurename}{\if at english Fig.~\else 図\fi}
+%<jspf>\newcommand{\figurename}{Fig.~}
+%<!jspf>\newcommand{\tablename}{\if at english Table~\else 表\fi}
+%<jspf>\newcommand{\tablename}{Table~}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -7457,8 +8031,10 @@
\DeclareRobustCommand\ttfamily
{\not at math@alphabet\ttfamily\mathtt
\romanfamily\ttdefault\kanjifamily\gtdefault\selectfont}
+\ifx\DeclareFixJFMCJKTextFontCommand\@undefined
\DeclareJaTextFontCommand{\textmc}{\mcfamily}
\DeclareJaTextFontCommand{\textgt}{\gtfamily}
+\fi
\bxjs at if@sf at default{%
\renewcommand\kanjifamilydefault{\gtdefault}}
% \end{macrocode}
@@ -8872,8 +9448,10 @@
% minimal ドライバ実装中で定義した |\DeclareJaTextFontCommand|
% を利用する。
% \begin{macrocode}
+\ifx\DeclareFixJFMCJKTextFontCommand\@undefined
\DeclareJaTextFontCommand{\textmc}{\mcfamily}
\DeclareJaTextFontCommand{\textgt}{\gtfamily}
+\fi
% \end{macrocode}
% \end{macro}
% \end{macro}
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls 2017-09-09 22:34:23 UTC (rev 45252)
@@ -22,8 +22,11 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsarticle}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
%% このファイルは日本語文字を含みます.
+\def\bxjs at clsname{bxjsarticle}
+\newif\ifjsc at needsp@tch
+\jsc at needsp@tchfalse
\RequirePackage{calc}
\RequirePackage{keyval}
\IfFileExists{bxjscompat.sty}{%
@@ -35,7 +38,6 @@
\let\jsReport=r
\let\jsSlide=s
\let\jsDocClass\jsArticle
-\def\bxjs at clsname{bxjsarticle}
\let\jsEngine=n
\def\bxjs at test@engine#1#2{%
\edef\bxjs at tmpa{\string#1}%
@@ -134,6 +136,8 @@
\DeclareOption{b5j}{\bxjs at setpaper{{182truemm}{257truemm}}}
\DeclareOption{a4var}{\bxjs at setpaper{{210truemm}{283truemm}}}
\DeclareOption{b5var}{\bxjs at setpaper{{182truemm}{230truemm}}}
+\DeclareOption{a4varpaper}{\bxjs at setpaper{{210truemm}{283truemm}}}
+\DeclareOption{b5varpaper}{\bxjs at setpaper{{182truemm}{230truemm}}}
\DeclareOption{letterpaper}{\bxjs at setpaper{letterpaper}}
\DeclareOption{legalpaper}{\bxjs at setpaper{legalpaper}}
\DeclareOption{executivepaper}{\bxjs at setpaper{executivepaper}}
@@ -194,7 +198,28 @@
\DeclareOption{usemag}{\let\bxjs at magstyle\bxjs at magstyle@usemag}
\DeclareOption{nomag}{\let\bxjs at magstyle\bxjs at magstyle@nomag}
\DeclareOption{nomag*}{\let\bxjs at magstyle\bxjs at magstyle@xreal}
-\newdimen\stockwidth \newdimen\stockheight
+\if j\jsEngine
+\hour\time \divide\hour by 60\relax
+\@tempcnta\hour \multiply\@tempcnta 60\relax
+\minute\time \advance\minute-\@tempcnta
+\DeclareOption{tombow}{%
+ \tombowtrue \tombowdatetrue
+ \setlength{\@tombowwidth}{.1\p@}%
+ \@bannertoken{%
+ \jobname\space(\number\year-\two at digits\month-\two at digits\day
+ \space\two at digits\hour:\two at digits\minute)}%
+ \maketombowbox}
+\DeclareOption{tombo}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{.1\p@}%
+ \maketombowbox}
+\fi
+\if j\jsEngine
+\DeclareOption{mentuke}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{\z@}%
+ \maketombowbox}
+\fi
\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
\DeclareOption{vartwoside}{\@twosidetrue \@mparswitchfalse}
@@ -533,6 +558,14 @@
\ExecuteOptions{a4paper,oneside,onecolumn,notitlepage,final}
\ProcessOptions\relax
\bxjs at composite@proc
+\if at slide
+ \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
+\fi
+\if at landscape
+ \setlength\@tempdima {\paperheight}
+ \setlength\paperheight{\paperwidth}
+ \setlength\paperwidth {\@tempdima}
+\fi
\@onlypreamble\bxjs at purge@brace at elts
\def\bxjs at purge@brace at elts{%
\def\bxjs at tmpa{\@gobble}%
@@ -667,14 +700,6 @@
\fi
\bxjs at do@opt at jbase
\let\Cjascale\jsScale
-\if at slide
- \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
-\fi
-\if at landscape
- \setlength\@tempdima {\paperheight}
- \setlength\paperheight{\paperwidth}
- \setlength\paperwidth {\@tempdima}
-\fi
\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T
\@tempcnta="80 \loop \ifnum\@tempcnta<"100
\catcode\@tempcnta\active
@@ -689,6 +714,14 @@
\ifbxjs at oldfontcommands
\AtEndOfClass{\allowoldfontcommands}
\fi
+\newdimen\stockwidth \newdimen\stockheight
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname iftombow\expandafter\endcsname\csname iftrue\endcsname
+ \setlength{\stockwidth}{\paperwidth}
+ \setlength{\stockheight}{\paperheight}
+ \advance \stockwidth 2in
+ \advance \stockheight 2in
+\fi
\ifdim\bxjs at param@basefontsize<10pt \def\n at baseline{15}%
\else \def\n at baseline{16}\fi
\ifx\bxjs at magstyle\bxjs at magstyle@mag
@@ -716,13 +749,15 @@
\expandafter\bxjs at tmpa\the\@tempcnta\@nil
\edef\jsc at magscale{\strip at pt\@tempdima}
\let\jsBaseFontSize\bxjs at param@basefontsize
+\newdimen\jsc at mpt
+\newdimen\jsc at mmm
\ifjsc at mag
- \let\jsc at mpt\p@
- \newdimen\jsc at mmm \jsc at mmm=1mm
+ \jsc at mpt=1\p@
+ \jsc at mmm=1mm
\catcode`\?=9 % \p@? read as \p@
\else
- \newdimen\jsc at mpt \jsc at mpt=\jsc at magscale \p@
- \newdimen\jsc at mmm \jsc at mmm=\jsc at magscale mm
+ \jsc at mpt=\jsc at magscale\p@
+ \jsc at mmm=\jsc at magscale mm
\catcode`\?=11 \let\p@?\jsc at mpt
\fi
\chardef\bxjs at qmcc=\catcode`\?\relax
@@ -892,13 +927,13 @@
\everydisplay=\expandafter{\the\everydisplay \narrowbaselines}
\newcommand{\headfont}{\sffamily}
\setlength\columnsep{2\Cwd}
-\setlength\columnseprule{0\p@}
-\setlength\lineskip{1\p@?}
-\setlength\normallineskip{1\p@?}
-\setlength\lineskiplimit{1\p@?}
-\setlength\normallineskiplimit{1\p@?}
+\setlength\columnseprule{0\jsc at mpt}
+\setlength\lineskip{1\jsc at mpt}
+\setlength\normallineskip{1\jsc at mpt}
+\setlength\lineskiplimit{1\jsc at mpt}
+\setlength\normallineskiplimit{1\jsc at mpt}
\renewcommand{\baselinestretch}{}
-\setlength\parskip{0\p@}
+\setlength\parskip{0\jsc at mpt}
\if at slide
\setlength\parindent{0\p@}
\else
@@ -1986,6 +2021,10 @@
\def\par{%
\@restorepar\clubpenalty\@clubpenalty\everypar{\everyparhook}\par\@endpefalse}%
\everypar{{\setbox\z@\lastbox}\everypar{\everyparhook}\@endpefalse\everyparhook}}
+\def\@setminipage{%
+ \@minipagetrue
+ \everypar{\@minipagefalse\everypar{\everyparhook}}%
+}
\def\@item[#1]{%
\if at noparitem
\@donoparitem
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls 2017-09-09 22:34:23 UTC (rev 45252)
@@ -22,8 +22,11 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsbook}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
%% このファイルは日本語文字を含みます.
+\def\bxjs at clsname{bxjsbook}
+\newif\ifjsc at needsp@tch
+\jsc at needsp@tchfalse
\RequirePackage{calc}
\RequirePackage{keyval}
\IfFileExists{bxjscompat.sty}{%
@@ -35,7 +38,6 @@
\let\jsReport=r
\let\jsSlide=s
\let\jsDocClass\jsBook
-\def\bxjs at clsname{bxjsbook}
\let\jsEngine=n
\def\bxjs at test@engine#1#2{%
\edef\bxjs at tmpa{\string#1}%
@@ -137,6 +139,8 @@
\DeclareOption{b5j}{\bxjs at setpaper{{182truemm}{257truemm}}}
\DeclareOption{a4var}{\bxjs at setpaper{{210truemm}{283truemm}}}
\DeclareOption{b5var}{\bxjs at setpaper{{182truemm}{230truemm}}}
+\DeclareOption{a4varpaper}{\bxjs at setpaper{{210truemm}{283truemm}}}
+\DeclareOption{b5varpaper}{\bxjs at setpaper{{182truemm}{230truemm}}}
\DeclareOption{letterpaper}{\bxjs at setpaper{letterpaper}}
\DeclareOption{legalpaper}{\bxjs at setpaper{legalpaper}}
\DeclareOption{executivepaper}{\bxjs at setpaper{executivepaper}}
@@ -197,7 +201,28 @@
\DeclareOption{usemag}{\let\bxjs at magstyle\bxjs at magstyle@usemag}
\DeclareOption{nomag}{\let\bxjs at magstyle\bxjs at magstyle@nomag}
\DeclareOption{nomag*}{\let\bxjs at magstyle\bxjs at magstyle@xreal}
-\newdimen\stockwidth \newdimen\stockheight
+\if j\jsEngine
+\hour\time \divide\hour by 60\relax
+\@tempcnta\hour \multiply\@tempcnta 60\relax
+\minute\time \advance\minute-\@tempcnta
+\DeclareOption{tombow}{%
+ \tombowtrue \tombowdatetrue
+ \setlength{\@tombowwidth}{.1\p@}%
+ \@bannertoken{%
+ \jobname\space(\number\year-\two at digits\month-\two at digits\day
+ \space\two at digits\hour:\two at digits\minute)}%
+ \maketombowbox}
+\DeclareOption{tombo}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{.1\p@}%
+ \maketombowbox}
+\fi
+\if j\jsEngine
+\DeclareOption{mentuke}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{\z@}%
+ \maketombowbox}
+\fi
\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
\DeclareOption{vartwoside}{\@twosidetrue \@mparswitchfalse}
@@ -542,6 +567,14 @@
\ExecuteOptions{a4paper,twoside,onecolumn,titlepage,openright,final}
\ProcessOptions\relax
\bxjs at composite@proc
+\if at slide
+ \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
+\fi
+\if at landscape
+ \setlength\@tempdima {\paperheight}
+ \setlength\paperheight{\paperwidth}
+ \setlength\paperwidth {\@tempdima}
+\fi
\@onlypreamble\bxjs at purge@brace at elts
\def\bxjs at purge@brace at elts{%
\def\bxjs at tmpa{\@gobble}%
@@ -676,14 +709,6 @@
\fi
\bxjs at do@opt at jbase
\let\Cjascale\jsScale
-\if at slide
- \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
-\fi
-\if at landscape
- \setlength\@tempdima {\paperheight}
- \setlength\paperheight{\paperwidth}
- \setlength\paperwidth {\@tempdima}
-\fi
\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T
\@tempcnta="80 \loop \ifnum\@tempcnta<"100
\catcode\@tempcnta\active
@@ -698,6 +723,14 @@
\ifbxjs at oldfontcommands
\AtEndOfClass{\allowoldfontcommands}
\fi
+\newdimen\stockwidth \newdimen\stockheight
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname iftombow\expandafter\endcsname\csname iftrue\endcsname
+ \setlength{\stockwidth}{\paperwidth}
+ \setlength{\stockheight}{\paperheight}
+ \advance \stockwidth 2in
+ \advance \stockheight 2in
+\fi
\ifdim\bxjs at param@basefontsize<10pt \def\n at baseline{15}%
\else \def\n at baseline{16}\fi
\ifx\bxjs at magstyle\bxjs at magstyle@mag
@@ -725,13 +758,15 @@
\expandafter\bxjs at tmpa\the\@tempcnta\@nil
\edef\jsc at magscale{\strip at pt\@tempdima}
\let\jsBaseFontSize\bxjs at param@basefontsize
+\newdimen\jsc at mpt
+\newdimen\jsc at mmm
\ifjsc at mag
- \let\jsc at mpt\p@
- \newdimen\jsc at mmm \jsc at mmm=1mm
+ \jsc at mpt=1\p@
+ \jsc at mmm=1mm
\catcode`\?=9 % \p@? read as \p@
\else
- \newdimen\jsc at mpt \jsc at mpt=\jsc at magscale \p@
- \newdimen\jsc at mmm \jsc at mmm=\jsc at magscale mm
+ \jsc at mpt=\jsc at magscale\p@
+ \jsc at mmm=\jsc at magscale mm
\catcode`\?=11 \let\p@?\jsc at mpt
\fi
\chardef\bxjs at qmcc=\catcode`\?\relax
@@ -901,13 +936,13 @@
\everydisplay=\expandafter{\the\everydisplay \narrowbaselines}
\newcommand{\headfont}{\sffamily}
\setlength\columnsep{2\Cwd}
-\setlength\columnseprule{0\p@}
-\setlength\lineskip{1\p@?}
-\setlength\normallineskip{1\p@?}
-\setlength\lineskiplimit{1\p@?}
-\setlength\normallineskiplimit{1\p@?}
+\setlength\columnseprule{0\jsc at mpt}
+\setlength\lineskip{1\jsc at mpt}
+\setlength\normallineskip{1\jsc at mpt}
+\setlength\lineskiplimit{1\jsc at mpt}
+\setlength\normallineskiplimit{1\jsc at mpt}
\renewcommand{\baselinestretch}{}
-\setlength\parskip{0\p@}
+\setlength\parskip{0\jsc at mpt}
\if at slide
\setlength\parindent{0\p@}
\else
@@ -2093,6 +2128,10 @@
\def\par{%
\@restorepar\clubpenalty\@clubpenalty\everypar{\everyparhook}\par\@endpefalse}%
\everypar{{\setbox\z@\lastbox}\everypar{\everyparhook}\@endpefalse\everyparhook}}
+\def\@setminipage{%
+ \@minipagetrue
+ \everypar{\@minipagefalse\everypar{\everyparhook}}%
+}
\def\@item[#1]{%
\if at noparitem
\@donoparitem
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty 2017-09-09 22:34:23 UTC (rev 45252)
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesPackage{bxjscjkcat}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
\def\bxjx at pkgname{bxjscjkcat}
\newcount\bxjx at cnta
\let\bxjx at engine=n
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty 2017-09-09 22:34:23 UTC (rev 45252)
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesPackage{bxjscompat}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
\def\bxac at pkgname{bxjscompat}
\let\bxac at engine=n
\def\bxac at do#1#2{%
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def 2017-09-09 22:34:23 UTC (rev 45252)
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-minimal.def}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
%% このファイルは日本語文字を含みます
\def\DeclareJaTextFontCommand#1#2{%
\DeclareRobustCommand#1[1]{%
@@ -188,8 +188,10 @@
\DeclareRobustCommand\ttfamily
{\not at math@alphabet\ttfamily\mathtt
\romanfamily\ttdefault\kanjifamily\gtdefault\selectfont}
+\ifx\DeclareFixJFMCJKTextFontCommand\@undefined
\DeclareJaTextFontCommand{\textmc}{\mcfamily}
\DeclareJaTextFontCommand{\textgt}{\gtfamily}
+\fi
\bxjs at if@sf at default{%
\renewcommand\kanjifamilydefault{\gtdefault}}
\selectfont
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def 2017-09-09 22:34:23 UTC (rev 45252)
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-modern.def}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
\input{bxjsja-standard.def}
\ifnum0\if x\jsEngine1\fi\if l\jsEngine1\fi=\z@
\def\encodingdefault{T1}%
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def 2017-09-09 22:34:23 UTC (rev 45252)
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-pandoc.def}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
\input{bxjsja-standard.def}
\@onlypreamble\bxjs at set@dupload at proc
\def\bxjs at set@dupload at proc#1{%
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def 2017-09-09 22:34:23 UTC (rev 45252)
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-standard.def}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
%% このファイルは日本語文字を含みます
\input{bxjsja-minimal.def}
\bxjs at simplejasetupfalse
@@ -564,8 +564,10 @@
LuaTeX-ja always provides Japanese math families}
\fi
\fi\fi\fi\fi
+\ifx\DeclareFixJFMCJKTextFontCommand\@undefined
\DeclareJaTextFontCommand{\textmc}{\mcfamily}
\DeclareJaTextFontCommand{\textgt}{\gtfamily}
+\fi
\ifx\mathmc\@undefined
\DeclareJaMathFontCommand{\mathmc}{\mcfamily}
\DeclareJaMathFontCommand{\mathgt}{\gtfamily}
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls 2017-09-09 22:34:23 UTC (rev 45252)
@@ -22,8 +22,11 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsreport}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
%% このファイルは日本語文字を含みます.
+\def\bxjs at clsname{bxjsreport}
+\newif\ifjsc at needsp@tch
+\jsc at needsp@tchfalse
\RequirePackage{calc}
\RequirePackage{keyval}
\IfFileExists{bxjscompat.sty}{%
@@ -35,7 +38,6 @@
\let\jsReport=r
\let\jsSlide=s
\let\jsDocClass\jsReport
-\def\bxjs at clsname{bxjsreport}
\let\jsEngine=n
\def\bxjs at test@engine#1#2{%
\edef\bxjs at tmpa{\string#1}%
@@ -137,6 +139,8 @@
\DeclareOption{b5j}{\bxjs at setpaper{{182truemm}{257truemm}}}
\DeclareOption{a4var}{\bxjs at setpaper{{210truemm}{283truemm}}}
\DeclareOption{b5var}{\bxjs at setpaper{{182truemm}{230truemm}}}
+\DeclareOption{a4varpaper}{\bxjs at setpaper{{210truemm}{283truemm}}}
+\DeclareOption{b5varpaper}{\bxjs at setpaper{{182truemm}{230truemm}}}
\DeclareOption{letterpaper}{\bxjs at setpaper{letterpaper}}
\DeclareOption{legalpaper}{\bxjs at setpaper{legalpaper}}
\DeclareOption{executivepaper}{\bxjs at setpaper{executivepaper}}
@@ -197,7 +201,28 @@
\DeclareOption{usemag}{\let\bxjs at magstyle\bxjs at magstyle@usemag}
\DeclareOption{nomag}{\let\bxjs at magstyle\bxjs at magstyle@nomag}
\DeclareOption{nomag*}{\let\bxjs at magstyle\bxjs at magstyle@xreal}
-\newdimen\stockwidth \newdimen\stockheight
+\if j\jsEngine
+\hour\time \divide\hour by 60\relax
+\@tempcnta\hour \multiply\@tempcnta 60\relax
+\minute\time \advance\minute-\@tempcnta
+\DeclareOption{tombow}{%
+ \tombowtrue \tombowdatetrue
+ \setlength{\@tombowwidth}{.1\p@}%
+ \@bannertoken{%
+ \jobname\space(\number\year-\two at digits\month-\two at digits\day
+ \space\two at digits\hour:\two at digits\minute)}%
+ \maketombowbox}
+\DeclareOption{tombo}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{.1\p@}%
+ \maketombowbox}
+\fi
+\if j\jsEngine
+\DeclareOption{mentuke}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{\z@}%
+ \maketombowbox}
+\fi
\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
\DeclareOption{vartwoside}{\@twosidetrue \@mparswitchfalse}
@@ -508,7 +533,6 @@
\fi}
\newif\ifbxjs at layout@buggyhmargin
\newif\ifbxjs at force@chapterabstract
-\bxjs at force@chapterabstracttrue
\@namedef{bxjs at kv@layout at v1}{%
\bxjs at force@chapterabstracttrue
}
@@ -542,6 +566,14 @@
\ExecuteOptions{a4paper,oneside,onecolumn,titlepage,openany,final}
\ProcessOptions\relax
\bxjs at composite@proc
+\if at slide
+ \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
+\fi
+\if at landscape
+ \setlength\@tempdima {\paperheight}
+ \setlength\paperheight{\paperwidth}
+ \setlength\paperwidth {\@tempdima}
+\fi
\@onlypreamble\bxjs at purge@brace at elts
\def\bxjs at purge@brace at elts{%
\def\bxjs at tmpa{\@gobble}%
@@ -676,14 +708,6 @@
\fi
\bxjs at do@opt at jbase
\let\Cjascale\jsScale
-\if at slide
- \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
-\fi
-\if at landscape
- \setlength\@tempdima {\paperheight}
- \setlength\paperheight{\paperwidth}
- \setlength\paperwidth {\@tempdima}
-\fi
\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T
\@tempcnta="80 \loop \ifnum\@tempcnta<"100
\catcode\@tempcnta\active
@@ -698,6 +722,14 @@
\ifbxjs at oldfontcommands
\AtEndOfClass{\allowoldfontcommands}
\fi
+\newdimen\stockwidth \newdimen\stockheight
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname iftombow\expandafter\endcsname\csname iftrue\endcsname
+ \setlength{\stockwidth}{\paperwidth}
+ \setlength{\stockheight}{\paperheight}
+ \advance \stockwidth 2in
+ \advance \stockheight 2in
+\fi
\ifdim\bxjs at param@basefontsize<10pt \def\n at baseline{15}%
\else \def\n at baseline{16}\fi
\ifx\bxjs at magstyle\bxjs at magstyle@mag
@@ -725,13 +757,15 @@
\expandafter\bxjs at tmpa\the\@tempcnta\@nil
\edef\jsc at magscale{\strip at pt\@tempdima}
\let\jsBaseFontSize\bxjs at param@basefontsize
+\newdimen\jsc at mpt
+\newdimen\jsc at mmm
\ifjsc at mag
- \let\jsc at mpt\p@
- \newdimen\jsc at mmm \jsc at mmm=1mm
+ \jsc at mpt=1\p@
+ \jsc at mmm=1mm
\catcode`\?=9 % \p@? read as \p@
\else
- \newdimen\jsc at mpt \jsc at mpt=\jsc at magscale \p@
- \newdimen\jsc at mmm \jsc at mmm=\jsc at magscale mm
+ \jsc at mpt=\jsc at magscale\p@
+ \jsc at mmm=\jsc at magscale mm
\catcode`\?=11 \let\p@?\jsc at mpt
\fi
\chardef\bxjs at qmcc=\catcode`\?\relax
@@ -901,13 +935,13 @@
\everydisplay=\expandafter{\the\everydisplay \narrowbaselines}
\newcommand{\headfont}{\sffamily}
\setlength\columnsep{2\Cwd}
-\setlength\columnseprule{0\p@}
-\setlength\lineskip{1\p@?}
-\setlength\normallineskip{1\p@?}
-\setlength\lineskiplimit{1\p@?}
-\setlength\normallineskiplimit{1\p@?}
+\setlength\columnseprule{0\jsc at mpt}
+\setlength\lineskip{1\jsc at mpt}
+\setlength\normallineskip{1\jsc at mpt}
+\setlength\lineskiplimit{1\jsc at mpt}
+\setlength\normallineskiplimit{1\jsc at mpt}
\renewcommand{\baselinestretch}{}
-\setlength\parskip{0\p@}
+\setlength\parskip{0\jsc at mpt}
\if at slide
\setlength\parindent{0\p@}
\else
@@ -2124,6 +2158,10 @@
\def\par{%
\@restorepar\clubpenalty\@clubpenalty\everypar{\everyparhook}\par\@endpefalse}%
\everypar{{\setbox\z@\lastbox}\everypar{\everyparhook}\@endpefalse\everyparhook}}
+\def\@setminipage{%
+ \@minipagetrue
+ \everypar{\@minipagefalse\everypar{\everyparhook}}%
+}
\def\@item[#1]{%
\if at noparitem
\@donoparitem
Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls 2017-09-09 22:34:08 UTC (rev 45251)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls 2017-09-09 22:34:23 UTC (rev 45252)
@@ -22,8 +22,11 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsslide}
- [2017/07/07 v1.5d BXJS document classes]
+ [2017/09/09 v1.6 BXJS document classes]
%% このファイルは日本語文字を含みます.
+\def\bxjs at clsname{bxjsslide}
+\newif\ifjsc at needsp@tch
+\jsc at needsp@tchfalse
\RequirePackage{calc}
\RequirePackage{keyval}
\IfFileExists{bxjscompat.sty}{%
@@ -35,7 +38,6 @@
\let\jsReport=r
\let\jsSlide=s
\let\jsDocClass\jsSlide
-\def\bxjs at clsname{bxjsslide}
\let\jsEngine=n
\def\bxjs at test@engine#1#2{%
\edef\bxjs at tmpa{\string#1}%
@@ -134,6 +136,8 @@
\DeclareOption{b5j}{\bxjs at setpaper{{182truemm}{257truemm}}}
\DeclareOption{a4var}{\bxjs at setpaper{{210truemm}{283truemm}}}
\DeclareOption{b5var}{\bxjs at setpaper{{182truemm}{230truemm}}}
+\DeclareOption{a4varpaper}{\bxjs at setpaper{{210truemm}{283truemm}}}
+\DeclareOption{b5varpaper}{\bxjs at setpaper{{182truemm}{230truemm}}}
\DeclareOption{letterpaper}{\bxjs at setpaper{letterpaper}}
\DeclareOption{legalpaper}{\bxjs at setpaper{legalpaper}}
\DeclareOption{executivepaper}{\bxjs at setpaper{executivepaper}}
@@ -194,7 +198,28 @@
\DeclareOption{usemag}{\let\bxjs at magstyle\bxjs at magstyle@usemag}
\DeclareOption{nomag}{\let\bxjs at magstyle\bxjs at magstyle@nomag}
\DeclareOption{nomag*}{\let\bxjs at magstyle\bxjs at magstyle@xreal}
-\newdimen\stockwidth \newdimen\stockheight
+\if j\jsEngine
+\hour\time \divide\hour by 60\relax
+\@tempcnta\hour \multiply\@tempcnta 60\relax
+\minute\time \advance\minute-\@tempcnta
+\DeclareOption{tombow}{%
+ \tombowtrue \tombowdatetrue
+ \setlength{\@tombowwidth}{.1\p@}%
+ \@bannertoken{%
+ \jobname\space(\number\year-\two at digits\month-\two at digits\day
+ \space\two at digits\hour:\two at digits\minute)}%
+ \maketombowbox}
+\DeclareOption{tombo}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{.1\p@}%
+ \maketombowbox}
+\fi
+\if j\jsEngine
+\DeclareOption{mentuke}{%
+ \tombowtrue \tombowdatefalse
+ \setlength{\@tombowwidth}{\z@}%
+ \maketombowbox}
+\fi
\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
\DeclareOption{vartwoside}{\@twosidetrue \@mparswitchfalse}
@@ -533,6 +558,14 @@
\ExecuteOptions{36pt,a4paper,landscape,oneside,onecolumn,titlepage,final}
\ProcessOptions\relax
\bxjs at composite@proc
+\if at slide
+ \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
+\fi
+\if at landscape
+ \setlength\@tempdima {\paperheight}
+ \setlength\paperheight{\paperwidth}
+ \setlength\paperwidth {\@tempdima}
+\fi
\@onlypreamble\bxjs at purge@brace at elts
\def\bxjs at purge@brace at elts{%
\def\bxjs at tmpa{\@gobble}%
@@ -667,14 +700,6 @@
\fi
\bxjs at do@opt at jbase
\let\Cjascale\jsScale
-\if at slide
- \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
-\fi
-\if at landscape
- \setlength\@tempdima {\paperheight}
- \setlength\paperheight{\paperwidth}
- \setlength\paperwidth {\@tempdima}
-\fi
\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T
\@tempcnta="80 \loop \ifnum\@tempcnta<"100
\catcode\@tempcnta\active
@@ -689,6 +714,14 @@
\ifbxjs at oldfontcommands
\AtEndOfClass{\allowoldfontcommands}
\fi
+\newdimen\stockwidth \newdimen\stockheight
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname iftombow\expandafter\endcsname\csname iftrue\endcsname
+ \setlength{\stockwidth}{\paperwidth}
+ \setlength{\stockheight}{\paperheight}
+ \advance \stockwidth 2in
+ \advance \stockheight 2in
+\fi
\def\n at baseline{13}%
\ifx\bxjs at magstyle\bxjs at magstyle@mag
\jsc at magtrue
@@ -715,13 +748,15 @@
\expandafter\bxjs at tmpa\the\@tempcnta\@nil
\edef\jsc at magscale{\strip at pt\@tempdima}
\let\jsBaseFontSize\bxjs at param@basefontsize
+\newdimen\jsc at mpt
+\newdimen\jsc at mmm
\ifjsc at mag
- \let\jsc at mpt\p@
- \newdimen\jsc at mmm \jsc at mmm=1mm
+ \jsc at mpt=1\p@
+ \jsc at mmm=1mm
\catcode`\?=9 % \p@? read as \p@
\else
- \newdimen\jsc at mpt \jsc at mpt=\jsc at magscale \p@
- \newdimen\jsc at mmm \jsc at mmm=\jsc at magscale mm
+ \jsc at mpt=\jsc at magscale\p@
+ \jsc at mmm=\jsc at magscale mm
\catcode`\?=11 \let\p@?\jsc at mpt
\fi
\chardef\bxjs at qmcc=\catcode`\?\relax
@@ -891,13 +926,13 @@
\everydisplay=\expandafter{\the\everydisplay \narrowbaselines}
\newcommand{\headfont}{\sffamily}
\setlength\columnsep{2\Cwd}
-\setlength\columnseprule{0\p@}
-\setlength\lineskip{1\p@?}
-\setlength\normallineskip{1\p@?}
-\setlength\lineskiplimit{1\p@?}
-\setlength\normallineskiplimit{1\p@?}
+\setlength\columnseprule{0\jsc at mpt}
+\setlength\lineskip{1\jsc at mpt}
+\setlength\normallineskip{1\jsc at mpt}
+\setlength\lineskiplimit{1\jsc at mpt}
+\setlength\normallineskiplimit{1\jsc at mpt}
\renewcommand{\baselinestretch}{}
-\setlength\parskip{0\p@}
+\setlength\parskip{0\jsc at mpt}
\if at slide
\setlength\parindent{0\p@}
\else
@@ -1984,6 +2019,10 @@
\def\par{%
\@restorepar\clubpenalty\@clubpenalty\everypar{\everyparhook}\par\@endpefalse}%
\everypar{{\setbox\z@\lastbox}\everypar{\everyparhook}\@endpefalse\everyparhook}}
+\def\@setminipage{%
+ \@minipagetrue
+ \everypar{\@minipagefalse\everypar{\everyparhook}}%
+}
\def\@item[#1]{%
\if at noparitem
\@donoparitem
More information about the tex-live-commits
mailing list