summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-04-10 22:02:38 +0000
committerKarl Berry <karl@freefriends.org>2017-04-10 22:02:38 +0000
commit47872b2b657010d6a4d584c38a54b31d038b0539 (patch)
tree750a0b6ebe2c7706a2253d25b3e032a6809350da
parentb22aad90dc8e64704563e9f4582aa48ba0089430 (diff)
bxjscls
git-svn-id: svn://tug.org/texlive/trunk@43741 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/bxjscls/README-ja.md5
-rw-r--r--Master/texmf-dist/doc/latex/bxjscls/README.md1
-rw-r--r--Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdfbin598218 -> 601077 bytes
-rw-r--r--Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex28
-rw-r--r--Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdfbin942982 -> 945874 bytes
-rw-r--r--Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx106
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls38
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls44
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def25
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls44
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls38
16 files changed, 283 insertions, 56 deletions
diff --git a/Master/texmf-dist/doc/latex/bxjscls/README-ja.md b/Master/texmf-dist/doc/latex/bxjscls/README-ja.md
index 748720b0608..6e2639953ed 100644
--- a/Master/texmf-dist/doc/latex/bxjscls/README-ja.md
+++ b/Master/texmf-dist/doc/latex/bxjscls/README-ja.md
@@ -97,6 +97,11 @@ XeLaTeX / LuaLaTeX の上でも日本語処理パッケージと連携して使
更新履歴
--------
+ * Version 1.5b 〈2017/04/01〉
+ - 全エンジンについて、`\>` で和欧文間空白を挿入するようにした。
+ - `xkanjiskip-cmd` オプションを新設。
+ - `nodvidriver` ドライバオプションを新設。
+ - バグ修正。
* Version 1.5a 〈2017/03/14〉
- バグ修正。
* Version 1.5 〈2017/03/11〉
diff --git a/Master/texmf-dist/doc/latex/bxjscls/README.md b/Master/texmf-dist/doc/latex/bxjscls/README.md
index a10940de2e0..9158bcd9a3d 100644
--- a/Master/texmf-dist/doc/latex/bxjscls/README.md
+++ b/Master/texmf-dist/doc/latex/bxjscls/README.md
@@ -87,6 +87,7 @@ This package is distributed under the BSD 2-Clause License.
Revision History
----------------
+ * Version 1.5b 〈2017/04/01〉
* Version 1.5a 〈2017/03/14〉
* Version 1.5 〈2017/03/11〉
- Sync with jsclasses 2017/03/05.
diff --git a/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf b/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf
index d2ecf5bf989..f4b8b5eed0f 100644
--- a/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf
+++ b/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex b/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex
index c196df0061d..17541fd1692 100644
--- a/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex
+++ b/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex
@@ -12,8 +12,8 @@
\renewcommand*{\XeLaTeX}{XeLaTeX}}
\usepackage{shortvrb}
\MakeShortVerb{\|}
-\newcommand{\PkgVersion}{1.5a}
-\newcommand{\PkgDate}{2017/03/14}
+\newcommand{\PkgVersion}{1.5b}
+\newcommand{\PkgDate}{2017/04/01}
\newcommand{\Pkg}[1]{\textsf{#1}}
\newcommand{\Meta}[1]{$\langle$\mbox{}#1\mbox{}$\rangle$}
\newcommand{\Note}{\par\noindent ※}
@@ -557,9 +557,15 @@ JSクラスには無くBXJSクラスで追加されたクラスオプション
DVI出力のエンジンを用いる場合に、実際に使用するDVIウェアの名前を
指定する。
有効な値は |dvips|、|dvipdfmx|、|dviout|、|xdvi| である。
- ドライバオプションの指定は必須である。
+ DVI出力時はドライバオプション(と次項の |nodvidriver| の何れか)
+ の指定は必須である。
\footnote{ただし現状では、ドライバオプションが無い場合には
エラーではなく警告が出る。}
+\item |nodvidriver|\Means
+ 特殊なドライバオプションの一種で、BXJSクラスが持つ
+ ドライバ依存の機能を全て抑止することを指定する。%
+ \footnote{従って、ドライバ依存のパッケージを使用しなければ、
+ 出力されるDVIファイルは特定のDVIウェアに依存しないものになる。}
\item |dvi=|\Meta{ドライバ名}\Means
エンジンがDVI出力の場合に限り、指定のドライバオプションを
有効にする。
@@ -763,6 +769,9 @@ JSクラスには無くBXJSクラスで追加されたクラスオプション
\Pkg{hyperref}パッケージについて
「PDF文字列の文字コード設定を補正する処理」
を行うか否か。
+\item |xkanjiskip-cmd=|\Meta{真偽値}\Means
+ |\>| を和欧文間空白を挿入する命令として定義するか否か。
+ (詳しくは\ref{ssec:ja-settings}節を参照。)
\item |layout=|\Meta{値}\Means
レイアウトの変種を選択する。
現状では、過去の版との互換性を維持するために用いられている。
@@ -1148,6 +1157,7 @@ vscale=0.944, vmarginratio=1:1
%-------------------
\subsection{和文用設定関連}
+\label{ssec:ja-settings}
\begin{itemize}
\item |\jsZw|\Means
@@ -1217,6 +1227,18 @@ standard和文ドライバ(およびそれを継承するドライバ)では
\item |\autospacing|/|\noautospacing|\Means
和文間空白の挿入を有効/無効にする。
{\pLaTeX}の同名の命令と同等。
+\item |\>|\Means
+ 和欧文間空白を挿入する。%
+ \footnote{|\>| という命令名は、plain {\TeX}では数式中の空白
+ ({\LaTeX}の |\:| と同等)を表す。
+ このため、実際には{\LaTeX}でも |\>| は |\:| と同等の命令として
+ 定義されている。
+ この「plain互換の |\>|」を利用したコードが影響を受けるのを避ける
+ ため、数式中では |\>| は従来通り |\:| と同等の動作を行う。}
+ ただし |xkanjiskip-cmd=false| 指定時は定義されない。%
+ \footnote{ただし、standard和文ドライバで自動的に読み込まれる
+ \Pkg{zxjatype}や\Pkg{bxcjkjatype}のパッケージは、
+ それ自体が同様の機能の |\>| を提供することにも注意を要する。}
\item |\jachar{|\Meta{文字1つ}|]|\Means
指定の文字を和文文字として(現在の和文フォントで)出力する。
\item 和文数式フォント命令\Means
diff --git a/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf b/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf
index 429c47ceb4a..53f476810dc 100644
--- a/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf
+++ b/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx b/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
index e72eefb33be..4498ec730aa 100644
--- a/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
+++ b/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
@@ -67,7 +67,8 @@
%<*driver>
\ProvidesFile{bxjscls.dtx}
%</driver>
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
+% [2017/03/14 v1.5a BXJS document classes]
% [2017/03/11 v1.5 BXJS document classes]
% based on jsclasses [2017/03/05]
% [2017/02/03 v1.4 BXJS document classes]
@@ -1061,19 +1062,27 @@
% 例えば |\bxjs@invscale\dimX{1.3}| は |\dimX=1.3\dimX| の
% 逆の演算を行う。
% \Note 局所化の |\begingroup|~|\endgroup| について、
-% 以前は |\group|~|\egroup| を使っていたが、これだと数詞モード中では
+% 以前は |\group|~|\egroup| を使っていたが、これだと数式モード中では
% 空のサブ数式を生み出してしまうため修正した。
+% \Note 元の長さが128\,pt以上の場合でも動作するように修正した。
% \begin{macrocode}
-\mathchardef\bxjs@csta=259
+\mathchardef\bxjs@isc@ll=128
+\mathchardef\bxjs@isc@sl=259
+\def\bxjs@isc@sl@h{65539 }
\def\bxjs@invscale#1#2{%
\begingroup \@tempdima=#1\relax \@tempdimb#2\p@\relax
- \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
- \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \ifdim\@tempdima<\bxjs@isc@ll\p@
+ \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
+ \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \else
+ \@tempcnta\@tempdima \divide\@tempcnta\@tempdimb
+ \multiply\@tempcnta\p@ \let\bxjs@isc@sl\bxjs@isc@sl@h
+ \fi
\@tempcntb\p@ \divide\@tempcntb\@tempdimb
\advance\@tempcnta-\@tempcntb \advance\@tempcnta-\tw@
\@tempdimb\@tempcnta\@ne
\advance\@tempcnta\@tempcntb \advance\@tempcnta\@tempcntb
- \advance\@tempcnta\bxjs@csta \@tempdimc\@tempcnta\@ne
+ \advance\@tempcnta\bxjs@isc@sl \@tempdimc\@tempcnta\@ne
\@whiledim\@tempdimb<\@tempdimc\do{%
\@tempcntb\@tempdimb \advance\@tempcntb\@tempdimc
\advance\@tempcntb\@ne \divide\@tempcntb\tw@
@@ -1191,6 +1200,8 @@
\let\bxjs@driver@@dvipdfmx=1
\let\bxjs@driver@@pdfmode=2
\let\bxjs@driver@@xetex=3
+\let\bxjs@driver@@dvips=4
+\let\bxjs@driver@@none=5
% \end{macrocode}
% \end{macro}
%
@@ -1204,7 +1215,7 @@
% \begin{macrocode}
\DeclareOption{dvips}{%
\def\bxjs@driver@opt{dvips}%
- \let\bxjs@driver@given\bxjs@driver@@dvimode}
+ \let\bxjs@driver@given\bxjs@driver@@dvips}
\DeclareOption{dviout}{%
\def\bxjs@driver@opt{dviout}%
\let\bxjs@driver@given\bxjs@driver@@dvimode}
@@ -1214,6 +1225,9 @@
\DeclareOption{dvipdfmx}{%
\def\bxjs@driver@opt{dvipdfmx}%
\let\bxjs@driver@given\bxjs@driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+ \def\bxjs@driver@opt{nodvidriver}%
+ \let\bxjs@driver@given\bxjs@driver@@none}
\DeclareOption{pdftex}{%
\def\bxjs@driver@opt{pdftex}%
\let\bxjs@driver@given\bxjs@driver@@pdfmode}
@@ -1588,9 +1602,10 @@
% DVIモードのドライバとドライバ種別との対応。
% \begin{macrocode}
\let\bxjs@dvidriver@@dvipdfmx=\bxjs@driver@@dvipdfmx
-\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvips
\let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode
\let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none
% \end{macrocode}
%
% |dvi| オプションの処理。
@@ -1676,6 +1691,16 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\ifbxjs@xkanjiskip@cmd}
+% 〔スイッチ〕 |xkanjiskip-cmd| の指定値。
+% \begin{macrocode}
+\newif\ifbxjs@xkanjiskip@cmd \bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@true\bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@false\bxjs@xkanjiskip@cmdfalse
+\define@key{bxjs}{xkanjiskip-cmd}{\bxjs@set@keyval{xkanjiskipcmd}{#1}{}}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\ifbxjs@hyperref@enc}
% 〔スイッチ〕 |hyperref-enc| の指定値。
% \begin{macrocode}
@@ -1891,6 +1916,14 @@
\fi
% \end{macrocode}
%
+% ドライバが |nodvidriver| であった場合の処理。
+% DVIウェア依存の処理を全て無効化する。
+% \begin{macrocode}
+\ifx\bxjs@driver@given\bxjs@driver@@none
+ \bxjs@papersizefalse
+\fi
+% \end{macrocode}
+%
% |\bxjs@jadriver| の正規化。
% 値が未指定の場合は |minimal| に変える。
% ただしエンジンが{(u)\pTeX}である場合は |standard|
@@ -2951,7 +2984,9 @@
\ifbxjs@papersize
\ifx\bxjs@driver@given\bxjs@driver@@dvipdfmx
\PassOptionsToPackage{dvipdfm}{geometry}
- \fi
+ \else\ifx\bxjs@driver@given\bxjs@driver@@dvimode
+ \PassOptionsToPackage{dvipdfm}{geometry}
+ \fi\fi
\let\bxPapersizeSpecialDone=t
\else
\PassOptionsToPackage{driver=none}{geometry}
@@ -3512,18 +3547,26 @@
% [2011-05-10] しっぽ愛好家さん [qa:6370] のパッチを取り込ませていただきました
% (北見さん [qa:55896] のご指摘ありがとうございます)。
%
+% \begin{ZRnote}
+% |\autoxspacing| は未定義の可能性があるため、
+% 「|\autoxspacing| が定義済なら実行する」マクロ |\bxjs@maybe@autoxspacing| を
+% 代わりに用いる。
+% \end{ZRnote}
+%
% \begin{macrocode}
%<*book|report>
+\def\bxjs@maybe@autoxspacing{%
+ \ifx\autoxspacing\@undefined\else \autoxspacing \fi}
\newif\if@omit@number
\def\ps@headings{%
\let\@oddfoot\@empty
\let\@evenfoot\@empty
\def\@evenhead{%
\if@mparswitch \hss \fi
- \underline{\hbox to \fullwidth{\autoxspacing
+ \underline{\hbox to \fullwidth{\bxjs@maybe@autoxspacing
\textbf{\thepage}\hfil\leftmark}}%
\if@mparswitch\else \hss \fi}%
- \def\@oddhead{\underline{\hbox to \fullwidth{\autoxspacing
+ \def\@oddhead{\underline{\hbox to \fullwidth{\bxjs@maybe@autoxspacing
{\if@twoside\rightmark\else\leftmark\fi}\hfil\textbf{\thepage}}}\hss}%
\let\@mkboth\markboth
\def\chaptermark##1{\markboth{%
@@ -8086,6 +8129,20 @@
\fi
% \end{macrocode}
%
+% 和欧文間空白の命令 |\>| の実装。
+% \begin{macrocode}
+\ifbxjs@xkanjiskip@cmd
+ \def\bxjs@put@xkanjiskip{%
+ \relax\ifmmode \mskip\medmuskip
+ \else \hskip\xkanjiskip
+ \fi}
+ \ifjsWitheTeX \protected\def\>{\bxjs@put@xkanjiskip}
+ \else \def\>{\protect\bxjs@put@xkanjiskip}
+ \fi
+\fi
+% \end{macrocode}
+%
+%
% \paragraph{和文フォント指定の扱い}
%
% {\pTeX}は既定で |kanji-config-updmap| の設定に従うため、
@@ -8300,6 +8357,14 @@
\CJKforced{#1}}
% \end{macrocode}
%
+% |\>| は |bxcjkjatype| で定義されているが、保護付のマクロに変換する。
+% \begin{macrocode}
+\ifbxjs@xkanjiskip@cmd
+ \protected\def\>{%
+ \relax\ifmmode \mskip\medmuskip \else \CJKecglue\ignorespaces \fi}
+\fi
+% \end{macrocode}
+%
% \paragraph{和文数式ファミリ}
%
% CJKパッケージは(恐らく)数式文字としてCJK文字をサポートしていない。
@@ -8428,6 +8493,15 @@
#1}
% \end{macrocode}
%
+% |\>| は |zxjatype| で定義されているが、standardの仕様に合わせて変更する。
+% \Note 元は |\ignorespaces| でなく |\relax|(|\scan_stop:|)だった。
+% \begin{macrocode}
+\ifbxjs@xkanjiskip@cmd
+ \protected\def\>{%
+ \relax\ifmmode \mskip\medmuskip \else \CJKecglue\ignorespaces \fi}
+\fi
+% \end{macrocode}
+%
% \paragraph{和文数式ファミリ}
%
% 和文数式ファミリは既定で無効とする。
@@ -8579,6 +8653,16 @@
\ltjjachar`#1\relax}
% \end{macrocode}
%
+% |\>| の実装。
+% \begin{macrocode}
+\ifbxjs@xkanjiskip@cmd
+ \protected\def\>{%
+ \relax\ifmmode \mskip\medmuskip
+ \else \hskip\ltjgetparameter{xkanjiskip}\ignorespaces
+ \fi}
+\fi
+% \end{macrocode}
+%
% \paragraph{和文数式ファミリ}
%
% Lua{\TeX}-jaでは和文数式ファミリは常に有効で、既にこの時点で必要な
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
index 182179aaaa2..a7624dd6bca 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsarticle}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
%% このファイルは日本語文字を含みます.
\RequirePackage{calc}
\RequirePackage{keyval}
@@ -264,16 +264,23 @@
\newif\if@jslogo \@jslogofalse
\DeclareOption{jslogo}{\@jslogotrue}
\DeclareOption{nojslogo}{\@jslogofalse}
-\mathchardef\bxjs@csta=259
+\mathchardef\bxjs@isc@ll=128
+\mathchardef\bxjs@isc@sl=259
+\def\bxjs@isc@sl@h{65539 }
\def\bxjs@invscale#1#2{%
\begingroup \@tempdima=#1\relax \@tempdimb#2\p@\relax
- \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
- \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \ifdim\@tempdima<\bxjs@isc@ll\p@
+ \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
+ \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \else
+ \@tempcnta\@tempdima \divide\@tempcnta\@tempdimb
+ \multiply\@tempcnta\p@ \let\bxjs@isc@sl\bxjs@isc@sl@h
+ \fi
\@tempcntb\p@ \divide\@tempcntb\@tempdimb
\advance\@tempcnta-\@tempcntb \advance\@tempcnta-\tw@
\@tempdimb\@tempcnta\@ne
\advance\@tempcnta\@tempcntb \advance\@tempcnta\@tempcntb
- \advance\@tempcnta\bxjs@csta \@tempdimc\@tempcnta\@ne
+ \advance\@tempcnta\bxjs@isc@sl \@tempdimc\@tempcnta\@ne
\@whiledim\@tempdimb<\@tempdimc\do{%
\@tempcntb\@tempdimb \advance\@tempcntb\@tempdimc
\advance\@tempcntb\@ne \divide\@tempcntb\tw@
@@ -321,9 +328,11 @@
\let\bxjs@driver@@dvipdfmx=1
\let\bxjs@driver@@pdfmode=2
\let\bxjs@driver@@xetex=3
+\let\bxjs@driver@@dvips=4
+\let\bxjs@driver@@none=5
\DeclareOption{dvips}{%
\def\bxjs@driver@opt{dvips}%
- \let\bxjs@driver@given\bxjs@driver@@dvimode}
+ \let\bxjs@driver@given\bxjs@driver@@dvips}
\DeclareOption{dviout}{%
\def\bxjs@driver@opt{dviout}%
\let\bxjs@driver@given\bxjs@driver@@dvimode}
@@ -333,6 +342,9 @@
\DeclareOption{dvipdfmx}{%
\def\bxjs@driver@opt{dvipdfmx}%
\let\bxjs@driver@given\bxjs@driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+ \def\bxjs@driver@opt{nodvidriver}%
+ \let\bxjs@driver@given\bxjs@driver@@none}
\DeclareOption{pdftex}{%
\def\bxjs@driver@opt{pdftex}%
\let\bxjs@driver@given\bxjs@driver@@pdfmode}
@@ -467,9 +479,10 @@
\bxjs@set@keyval{fancyhdr}{#1}{}}
\newif\ifbxjs@dvi@opt
\let\bxjs@dvidriver@@dvipdfmx=\bxjs@driver@@dvipdfmx
-\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvips
\let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode
\let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none
\define@key{bxjs}{dvi}{%
\expandafter\let\expandafter\bxjs@tmpa\csname
bxjs@dvidriver@@#1\endcsname
@@ -497,6 +510,10 @@
\let\bxjs@kv@wholezwlines@true\bxjs@whole@zw@linestrue
\let\bxjs@kv@wholezwlines@false\bxjs@whole@zw@linesfalse
\define@key{bxjs}{whole-zw-lines}{\bxjs@set@keyval{wholezwlines}{#1}{}}
+\newif\ifbxjs@xkanjiskip@cmd \bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@true\bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@false\bxjs@xkanjiskip@cmdfalse
+\define@key{bxjs}{xkanjiskip-cmd}{\bxjs@set@keyval{xkanjiskipcmd}{#1}{}}
\newif\ifbxjs@hyperref@enc \bxjs@hyperref@enctrue
\let\bxjs@kv@hyperrefenc@true\bxjs@hyperref@enctrue
\let\bxjs@kv@hyperrefenc@false\bxjs@hyperref@encfalse
@@ -615,6 +632,9 @@
\g@addto@macro\@classoptionslist{,dvipdfmx}
\fi\fi
\fi
+\ifx\bxjs@driver@given\bxjs@driver@@none
+ \bxjs@papersizefalse
+\fi
\def\bxjs@@minimal{minimal}
\ifx\bxjs@jadriver\relax
\ifx j\jsEngine
@@ -947,7 +967,9 @@
\ifbxjs@papersize
\ifx\bxjs@driver@given\bxjs@driver@@dvipdfmx
\PassOptionsToPackage{dvipdfm}{geometry}
- \fi
+ \else\ifx\bxjs@driver@given\bxjs@driver@@dvimode
+ \PassOptionsToPackage{dvipdfm}{geometry}
+ \fi\fi
\let\bxPapersizeSpecialDone=t
\else
\PassOptionsToPackage{driver=none}{geometry}
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
index 9bf68abc4cc..6f2b0756d4a 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsbook}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
%% このファイルは日本語文字を含みます.
\RequirePackage{calc}
\RequirePackage{keyval}
@@ -270,16 +270,23 @@
\newif\if@jslogo \@jslogofalse
\DeclareOption{jslogo}{\@jslogotrue}
\DeclareOption{nojslogo}{\@jslogofalse}
-\mathchardef\bxjs@csta=259
+\mathchardef\bxjs@isc@ll=128
+\mathchardef\bxjs@isc@sl=259
+\def\bxjs@isc@sl@h{65539 }
\def\bxjs@invscale#1#2{%
\begingroup \@tempdima=#1\relax \@tempdimb#2\p@\relax
- \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
- \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \ifdim\@tempdima<\bxjs@isc@ll\p@
+ \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
+ \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \else
+ \@tempcnta\@tempdima \divide\@tempcnta\@tempdimb
+ \multiply\@tempcnta\p@ \let\bxjs@isc@sl\bxjs@isc@sl@h
+ \fi
\@tempcntb\p@ \divide\@tempcntb\@tempdimb
\advance\@tempcnta-\@tempcntb \advance\@tempcnta-\tw@
\@tempdimb\@tempcnta\@ne
\advance\@tempcnta\@tempcntb \advance\@tempcnta\@tempcntb
- \advance\@tempcnta\bxjs@csta \@tempdimc\@tempcnta\@ne
+ \advance\@tempcnta\bxjs@isc@sl \@tempdimc\@tempcnta\@ne
\@whiledim\@tempdimb<\@tempdimc\do{%
\@tempcntb\@tempdimb \advance\@tempcntb\@tempdimc
\advance\@tempcntb\@ne \divide\@tempcntb\tw@
@@ -327,9 +334,11 @@
\let\bxjs@driver@@dvipdfmx=1
\let\bxjs@driver@@pdfmode=2
\let\bxjs@driver@@xetex=3
+\let\bxjs@driver@@dvips=4
+\let\bxjs@driver@@none=5
\DeclareOption{dvips}{%
\def\bxjs@driver@opt{dvips}%
- \let\bxjs@driver@given\bxjs@driver@@dvimode}
+ \let\bxjs@driver@given\bxjs@driver@@dvips}
\DeclareOption{dviout}{%
\def\bxjs@driver@opt{dviout}%
\let\bxjs@driver@given\bxjs@driver@@dvimode}
@@ -339,6 +348,9 @@
\DeclareOption{dvipdfmx}{%
\def\bxjs@driver@opt{dvipdfmx}%
\let\bxjs@driver@given\bxjs@driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+ \def\bxjs@driver@opt{nodvidriver}%
+ \let\bxjs@driver@given\bxjs@driver@@none}
\DeclareOption{pdftex}{%
\def\bxjs@driver@opt{pdftex}%
\let\bxjs@driver@given\bxjs@driver@@pdfmode}
@@ -473,9 +485,10 @@
\bxjs@set@keyval{fancyhdr}{#1}{}}
\newif\ifbxjs@dvi@opt
\let\bxjs@dvidriver@@dvipdfmx=\bxjs@driver@@dvipdfmx
-\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvips
\let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode
\let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none
\define@key{bxjs}{dvi}{%
\expandafter\let\expandafter\bxjs@tmpa\csname
bxjs@dvidriver@@#1\endcsname
@@ -506,6 +519,10 @@
\let\bxjs@kv@wholezwlines@true\bxjs@whole@zw@linestrue
\let\bxjs@kv@wholezwlines@false\bxjs@whole@zw@linesfalse
\define@key{bxjs}{whole-zw-lines}{\bxjs@set@keyval{wholezwlines}{#1}{}}
+\newif\ifbxjs@xkanjiskip@cmd \bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@true\bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@false\bxjs@xkanjiskip@cmdfalse
+\define@key{bxjs}{xkanjiskip-cmd}{\bxjs@set@keyval{xkanjiskipcmd}{#1}{}}
\newif\ifbxjs@hyperref@enc \bxjs@hyperref@enctrue
\let\bxjs@kv@hyperrefenc@true\bxjs@hyperref@enctrue
\let\bxjs@kv@hyperrefenc@false\bxjs@hyperref@encfalse
@@ -624,6 +641,9 @@
\g@addto@macro\@classoptionslist{,dvipdfmx}
\fi\fi
\fi
+\ifx\bxjs@driver@given\bxjs@driver@@none
+ \bxjs@papersizefalse
+\fi
\def\bxjs@@minimal{minimal}
\ifx\bxjs@jadriver\relax
\ifx j\jsEngine
@@ -973,7 +993,9 @@
\ifbxjs@papersize
\ifx\bxjs@driver@given\bxjs@driver@@dvipdfmx
\PassOptionsToPackage{dvipdfm}{geometry}
- \fi
+ \else\ifx\bxjs@driver@given\bxjs@driver@@dvimode
+ \PassOptionsToPackage{dvipdfm}{geometry}
+ \fi\fi
\let\bxPapersizeSpecialDone=t
\else
\PassOptionsToPackage{driver=none}{geometry}
@@ -1090,16 +1112,18 @@
\def\@oddhead{%
\hbox to \fullwidth{\hfil\textbf{\thepage}}\hss}}
\let\ps@plain\ps@plainhead
+\def\bxjs@maybe@autoxspacing{%
+ \ifx\autoxspacing\@undefined\else \autoxspacing \fi}
\newif\if@omit@number
\def\ps@headings{%
\let\@oddfoot\@empty
\let\@evenfoot\@empty
\def\@evenhead{%
\if@mparswitch \hss \fi
- \underline{\hbox to \fullwidth{\autoxspacing
+ \underline{\hbox to \fullwidth{\bxjs@maybe@autoxspacing
\textbf{\thepage}\hfil\leftmark}}%
\if@mparswitch\else \hss \fi}%
- \def\@oddhead{\underline{\hbox to \fullwidth{\autoxspacing
+ \def\@oddhead{\underline{\hbox to \fullwidth{\bxjs@maybe@autoxspacing
{\if@twoside\rightmark\else\leftmark\fi}\hfil\textbf{\thepage}}}\hss}%
\let\@mkboth\markboth
\def\chaptermark##1{\markboth{%
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
index a0d8f3808c8..a0e060d4854 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesPackage{bxjscjkcat}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
\def\bxjx@pkgname{bxjscjkcat}
\newcount\bxjx@cnta
\let\bxjx@engine=n
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
index 89dbd9d81ad..1e939d70e67 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesPackage{bxjscompat}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
\def\bxac@pkgname{bxjscompat}
\let\bxac@engine=n
\def\bxac@do#1#2{%
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
index 9103eac733f..f54aaf76148 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-minimal.def}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
%% このファイルは日本語文字を含みます
\def\DeclareJaTextFontCommand#1#2{%
\DeclareRobustCommand#1[1]{%
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
index f812ef2cd1f..1021409e2d9 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-modern.def}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
\input{bxjsja-standard.def}
\ifnum0\if x\jsEngine1\fi\if l\jsEngine1\fi=\z@
\def\encodingdefault{T1}%
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
index 092a1954fa2..fead351d685 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-pandoc.def}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
\input{bxjsja-standard.def}
\@onlypreamble\bxjs@set@dupload@proc
\def\bxjs@set@dupload@proc#1{%
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
index 823e534d947..44ec5bc312d 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-standard.def}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
%% このファイルは日本語文字を含みます
\input{bxjsja-minimal.def}
\bxjs@simplejasetupfalse
@@ -218,6 +218,15 @@
\bxUInt{\@tempcnta}%
\fi}
\fi
+\ifbxjs@xkanjiskip@cmd
+ \def\bxjs@put@xkanjiskip{%
+ \relax\ifmmode \mskip\medmuskip
+ \else \hskip\xkanjiskip
+ \fi}
+ \ifjsWitheTeX \protected\def\>{\bxjs@put@xkanjiskip}
+ \else \def\>{\protect\bxjs@put@xkanjiskip}
+ \fi
+\fi
\let\bxjs@tmpa\jsJaFont
\ifx\bxjs@tmpa\bxjs@@auto
\let\bxjs@tmpa\@empty
@@ -346,6 +355,10 @@
\let\CJKecglue\bxjs@CJKecglue}
\def\bxjs@jachar#1{%
\CJKforced{#1}}
+\ifbxjs@xkanjiskip@cmd
+ \protected\def\>{%
+ \relax\ifmmode \mskip\medmuskip \else \CJKecglue\ignorespaces \fi}
+\fi
\ifx t\bxjs@enablejfam
\ClassWarningNoLine\bxjs@clsname
{You cannot use 'enablejfam=true', since the\MessageBreak
@@ -400,6 +413,10 @@
\def\bxjs@jachar#1{%
\xeCJKDeclareCharClass{CJK}{`#1}\relax
#1}
+\ifbxjs@xkanjiskip@cmd
+ \protected\def\>{%
+ \relax\ifmmode \mskip\medmuskip \else \CJKecglue\ignorespaces \fi}
+\fi
\ifx t\bxjs@enablejfam
\@enablejfamtrue
\fi
@@ -468,6 +485,12 @@
\ltjsetparameter{xkanjiskip={\@tempskipa}}}
\def\bxjs@jachar#1{%
\ltjjachar`#1\relax}
+\ifbxjs@xkanjiskip@cmd
+ \protected\def\>{%
+ \relax\ifmmode \mskip\medmuskip
+ \else \hskip\ltjgetparameter{xkanjiskip}\ignorespaces
+ \fi}
+\fi
\ifx f\bxjs@enablejfam
\ClassWarningNoLine\bxjs@clsname
{You cannot use 'enablejfam=false', since the\MessageBreak
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
index c429fa85b6a..edaf2987ca6 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsreport}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
%% このファイルは日本語文字を含みます.
\RequirePackage{calc}
\RequirePackage{keyval}
@@ -270,16 +270,23 @@
\newif\if@jslogo \@jslogofalse
\DeclareOption{jslogo}{\@jslogotrue}
\DeclareOption{nojslogo}{\@jslogofalse}
-\mathchardef\bxjs@csta=259
+\mathchardef\bxjs@isc@ll=128
+\mathchardef\bxjs@isc@sl=259
+\def\bxjs@isc@sl@h{65539 }
\def\bxjs@invscale#1#2{%
\begingroup \@tempdima=#1\relax \@tempdimb#2\p@\relax
- \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
- \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \ifdim\@tempdima<\bxjs@isc@ll\p@
+ \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
+ \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \else
+ \@tempcnta\@tempdima \divide\@tempcnta\@tempdimb
+ \multiply\@tempcnta\p@ \let\bxjs@isc@sl\bxjs@isc@sl@h
+ \fi
\@tempcntb\p@ \divide\@tempcntb\@tempdimb
\advance\@tempcnta-\@tempcntb \advance\@tempcnta-\tw@
\@tempdimb\@tempcnta\@ne
\advance\@tempcnta\@tempcntb \advance\@tempcnta\@tempcntb
- \advance\@tempcnta\bxjs@csta \@tempdimc\@tempcnta\@ne
+ \advance\@tempcnta\bxjs@isc@sl \@tempdimc\@tempcnta\@ne
\@whiledim\@tempdimb<\@tempdimc\do{%
\@tempcntb\@tempdimb \advance\@tempcntb\@tempdimc
\advance\@tempcntb\@ne \divide\@tempcntb\tw@
@@ -327,9 +334,11 @@
\let\bxjs@driver@@dvipdfmx=1
\let\bxjs@driver@@pdfmode=2
\let\bxjs@driver@@xetex=3
+\let\bxjs@driver@@dvips=4
+\let\bxjs@driver@@none=5
\DeclareOption{dvips}{%
\def\bxjs@driver@opt{dvips}%
- \let\bxjs@driver@given\bxjs@driver@@dvimode}
+ \let\bxjs@driver@given\bxjs@driver@@dvips}
\DeclareOption{dviout}{%
\def\bxjs@driver@opt{dviout}%
\let\bxjs@driver@given\bxjs@driver@@dvimode}
@@ -339,6 +348,9 @@
\DeclareOption{dvipdfmx}{%
\def\bxjs@driver@opt{dvipdfmx}%
\let\bxjs@driver@given\bxjs@driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+ \def\bxjs@driver@opt{nodvidriver}%
+ \let\bxjs@driver@given\bxjs@driver@@none}
\DeclareOption{pdftex}{%
\def\bxjs@driver@opt{pdftex}%
\let\bxjs@driver@given\bxjs@driver@@pdfmode}
@@ -473,9 +485,10 @@
\bxjs@set@keyval{fancyhdr}{#1}{}}
\newif\ifbxjs@dvi@opt
\let\bxjs@dvidriver@@dvipdfmx=\bxjs@driver@@dvipdfmx
-\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvips
\let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode
\let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none
\define@key{bxjs}{dvi}{%
\expandafter\let\expandafter\bxjs@tmpa\csname
bxjs@dvidriver@@#1\endcsname
@@ -506,6 +519,10 @@
\let\bxjs@kv@wholezwlines@true\bxjs@whole@zw@linestrue
\let\bxjs@kv@wholezwlines@false\bxjs@whole@zw@linesfalse
\define@key{bxjs}{whole-zw-lines}{\bxjs@set@keyval{wholezwlines}{#1}{}}
+\newif\ifbxjs@xkanjiskip@cmd \bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@true\bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@false\bxjs@xkanjiskip@cmdfalse
+\define@key{bxjs}{xkanjiskip-cmd}{\bxjs@set@keyval{xkanjiskipcmd}{#1}{}}
\newif\ifbxjs@hyperref@enc \bxjs@hyperref@enctrue
\let\bxjs@kv@hyperrefenc@true\bxjs@hyperref@enctrue
\let\bxjs@kv@hyperrefenc@false\bxjs@hyperref@encfalse
@@ -624,6 +641,9 @@
\g@addto@macro\@classoptionslist{,dvipdfmx}
\fi\fi
\fi
+\ifx\bxjs@driver@given\bxjs@driver@@none
+ \bxjs@papersizefalse
+\fi
\def\bxjs@@minimal{minimal}
\ifx\bxjs@jadriver\relax
\ifx j\jsEngine
@@ -956,7 +976,9 @@
\ifbxjs@papersize
\ifx\bxjs@driver@given\bxjs@driver@@dvipdfmx
\PassOptionsToPackage{dvipdfm}{geometry}
- \fi
+ \else\ifx\bxjs@driver@given\bxjs@driver@@dvimode
+ \PassOptionsToPackage{dvipdfm}{geometry}
+ \fi\fi
\let\bxPapersizeSpecialDone=t
\else
\PassOptionsToPackage{driver=none}{geometry}
@@ -1073,16 +1095,18 @@
\def\@oddhead{%
\hbox to \fullwidth{\hfil\textbf{\thepage}}\hss}}
\let\ps@plain\ps@plainfoot
+\def\bxjs@maybe@autoxspacing{%
+ \ifx\autoxspacing\@undefined\else \autoxspacing \fi}
\newif\if@omit@number
\def\ps@headings{%
\let\@oddfoot\@empty
\let\@evenfoot\@empty
\def\@evenhead{%
\if@mparswitch \hss \fi
- \underline{\hbox to \fullwidth{\autoxspacing
+ \underline{\hbox to \fullwidth{\bxjs@maybe@autoxspacing
\textbf{\thepage}\hfil\leftmark}}%
\if@mparswitch\else \hss \fi}%
- \def\@oddhead{\underline{\hbox to \fullwidth{\autoxspacing
+ \def\@oddhead{\underline{\hbox to \fullwidth{\bxjs@maybe@autoxspacing
{\if@twoside\rightmark\else\leftmark\fi}\hfil\textbf{\thepage}}}\hss}%
\let\@mkboth\markboth
\def\chaptermark##1{\markboth{%
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
index 14b1d291068..384f9fe2dde 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsslide}
- [2017/03/14 v1.5a BXJS document classes]
+ [2017/04/01 v1.5b BXJS document classes]
%% このファイルは日本語文字を含みます.
\RequirePackage{calc}
\RequirePackage{keyval}
@@ -264,16 +264,23 @@
\newif\if@jslogo \@jslogofalse
\DeclareOption{jslogo}{\@jslogotrue}
\DeclareOption{nojslogo}{\@jslogofalse}
-\mathchardef\bxjs@csta=259
+\mathchardef\bxjs@isc@ll=128
+\mathchardef\bxjs@isc@sl=259
+\def\bxjs@isc@sl@h{65539 }
\def\bxjs@invscale#1#2{%
\begingroup \@tempdima=#1\relax \@tempdimb#2\p@\relax
- \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
- \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \ifdim\@tempdima<\bxjs@isc@ll\p@
+ \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi
+ \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi
+ \else
+ \@tempcnta\@tempdima \divide\@tempcnta\@tempdimb
+ \multiply\@tempcnta\p@ \let\bxjs@isc@sl\bxjs@isc@sl@h
+ \fi
\@tempcntb\p@ \divide\@tempcntb\@tempdimb
\advance\@tempcnta-\@tempcntb \advance\@tempcnta-\tw@
\@tempdimb\@tempcnta\@ne
\advance\@tempcnta\@tempcntb \advance\@tempcnta\@tempcntb
- \advance\@tempcnta\bxjs@csta \@tempdimc\@tempcnta\@ne
+ \advance\@tempcnta\bxjs@isc@sl \@tempdimc\@tempcnta\@ne
\@whiledim\@tempdimb<\@tempdimc\do{%
\@tempcntb\@tempdimb \advance\@tempcntb\@tempdimc
\advance\@tempcntb\@ne \divide\@tempcntb\tw@
@@ -321,9 +328,11 @@
\let\bxjs@driver@@dvipdfmx=1
\let\bxjs@driver@@pdfmode=2
\let\bxjs@driver@@xetex=3
+\let\bxjs@driver@@dvips=4
+\let\bxjs@driver@@none=5
\DeclareOption{dvips}{%
\def\bxjs@driver@opt{dvips}%
- \let\bxjs@driver@given\bxjs@driver@@dvimode}
+ \let\bxjs@driver@given\bxjs@driver@@dvips}
\DeclareOption{dviout}{%
\def\bxjs@driver@opt{dviout}%
\let\bxjs@driver@given\bxjs@driver@@dvimode}
@@ -333,6 +342,9 @@
\DeclareOption{dvipdfmx}{%
\def\bxjs@driver@opt{dvipdfmx}%
\let\bxjs@driver@given\bxjs@driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+ \def\bxjs@driver@opt{nodvidriver}%
+ \let\bxjs@driver@given\bxjs@driver@@none}
\DeclareOption{pdftex}{%
\def\bxjs@driver@opt{pdftex}%
\let\bxjs@driver@given\bxjs@driver@@pdfmode}
@@ -467,9 +479,10 @@
\bxjs@set@keyval{fancyhdr}{#1}{}}
\newif\ifbxjs@dvi@opt
\let\bxjs@dvidriver@@dvipdfmx=\bxjs@driver@@dvipdfmx
-\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@dvips=\bxjs@driver@@dvips
\let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode
\let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode
+\let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none
\define@key{bxjs}{dvi}{%
\expandafter\let\expandafter\bxjs@tmpa\csname
bxjs@dvidriver@@#1\endcsname
@@ -497,6 +510,10 @@
\let\bxjs@kv@wholezwlines@true\bxjs@whole@zw@linestrue
\let\bxjs@kv@wholezwlines@false\bxjs@whole@zw@linesfalse
\define@key{bxjs}{whole-zw-lines}{\bxjs@set@keyval{wholezwlines}{#1}{}}
+\newif\ifbxjs@xkanjiskip@cmd \bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@true\bxjs@xkanjiskip@cmdtrue
+\let\bxjs@kv@xkanjiskipcmd@false\bxjs@xkanjiskip@cmdfalse
+\define@key{bxjs}{xkanjiskip-cmd}{\bxjs@set@keyval{xkanjiskipcmd}{#1}{}}
\newif\ifbxjs@hyperref@enc \bxjs@hyperref@enctrue
\let\bxjs@kv@hyperrefenc@true\bxjs@hyperref@enctrue
\let\bxjs@kv@hyperrefenc@false\bxjs@hyperref@encfalse
@@ -615,6 +632,9 @@
\g@addto@macro\@classoptionslist{,dvipdfmx}
\fi\fi
\fi
+\ifx\bxjs@driver@given\bxjs@driver@@none
+ \bxjs@papersizefalse
+\fi
\def\bxjs@@minimal{minimal}
\ifx\bxjs@jadriver\relax
\ifx j\jsEngine
@@ -945,7 +965,9 @@
\ifbxjs@papersize
\ifx\bxjs@driver@given\bxjs@driver@@dvipdfmx
\PassOptionsToPackage{dvipdfm}{geometry}
- \fi
+ \else\ifx\bxjs@driver@given\bxjs@driver@@dvimode
+ \PassOptionsToPackage{dvipdfm}{geometry}
+ \fi\fi
\let\bxPapersizeSpecialDone=t
\else
\PassOptionsToPackage{driver=none}{geometry}