texlive[43741] Master/texmf-dist: bxjscls

commits+karl at tug.org commits+karl at tug.org
Tue Apr 11 00:02:38 CEST 2017


Revision: 43741
          http://tug.org/svn/texlive?view=revision&revision=43741
Author:   karl
Date:     2017-04-11 00:02:38 +0200 (Tue, 11 Apr 2017)
Log Message:
-----------
bxjscls

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-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md	2017-04-10 22:02:38 UTC (rev 43741)
@@ -97,6 +97,11 @@
 更新履歴
 --------
 
+  * Version 1.5b 〈2017/04/01〉
+      - 全エンジンについて、`\>` で和欧文間空白を挿入するようにした。
+      - `xkanjiskip-cmd` オプションを新設。
+      - `nodvidriver` ドライバオプションを新設。
+      - バグ修正。
   * Version 1.5a 〈2017/03/14〉
       - バグ修正。
   * Version 1.5  〈2017/03/11〉

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-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 @@
   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 @@
   \Pkg{hyperref}パッケージについて
   「PDF文字列の文字コード設定を補正する処理」
   を行うか否か。
+\item |xkanjiskip-cmd=|\Meta{真偽値}\Means
+  |\>| を和欧文間空白を挿入する命令として定義するか否か。
+  (詳しくは\ref{ssec:ja-settings}節を参照。)
 \item |layout=|\Meta{値}\Means
   レイアウトの変種を選択する。
   現状では、過去の版との互換性を維持するために用いられている。
@@ -1148,6 +1157,7 @@
 
 %-------------------
 \subsection{和文用設定関連}
+\label{ssec:ja-settings}
 
 \begin{itemize}
 \item |\jsZw|\Means
@@ -1217,6 +1227,18 @@
 \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

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-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 at invscale\dimX{1.3}| は |\dimX=1.3\dimX| の
 % 逆の演算を行う。
 % \Note 局所化の |\begingroup|~|\endgroup| について、
-% 以前は |\group|~|\egroup| を使っていたが、これだと数詞モード中では
+% 以前は |\group|~|\egroup| を使っていたが、これだと数式モード中では
 % 空のサブ数式を生み出してしまうため修正した。
+% \Note 元の長さが128\,pt以上の場合でも動作するように修正した。
 %    \begin{macrocode}
-\mathchardef\bxjs at csta=259
+\mathchardef\bxjs at isc@ll=128
+\mathchardef\bxjs at isc@sl=259
+\def\bxjs at isc@sl at h{65539 }
 \def\bxjs at 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 at 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 at isc@sl\bxjs at isc@sl at 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 at csta \@tempdimc\@tempcnta\@ne
+    \advance\@tempcnta\bxjs at 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 at driver@@dvipdfmx=1
 \let\bxjs at driver@@pdfmode=2
 \let\bxjs at driver@@xetex=3
+\let\bxjs at driver@@dvips=4
+\let\bxjs at driver@@none=5
 %    \end{macrocode}
 % \end{macro}
 %
@@ -1204,7 +1215,7 @@
 %    \begin{macrocode}
 \DeclareOption{dvips}{%
   \def\bxjs at driver@opt{dvips}%
-  \let\bxjs at driver@given\bxjs at driver@@dvimode}
+  \let\bxjs at driver@given\bxjs at driver@@dvips}
 \DeclareOption{dviout}{%
   \def\bxjs at driver@opt{dviout}%
   \let\bxjs at driver@given\bxjs at driver@@dvimode}
@@ -1214,6 +1225,9 @@
 \DeclareOption{dvipdfmx}{%
   \def\bxjs at driver@opt{dvipdfmx}%
   \let\bxjs at driver@given\bxjs at driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+  \def\bxjs at driver@opt{nodvidriver}%
+  \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
   \let\bxjs at driver@given\bxjs at driver@@pdfmode}
@@ -1588,9 +1602,10 @@
 % DVIモードのドライバとドライバ種別との対応。
 %    \begin{macrocode}
 \let\bxjs at dvidriver@@dvipdfmx=\bxjs at driver@@dvipdfmx
-\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvips
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
 %    \end{macrocode}
 %
 % |dvi| オプションの処理。
@@ -1676,6 +1691,16 @@
 %    \end{macrocode}
 % \end{macro}
 %
+% \begin{macro}{\ifbxjs at xkanjiskip@cmd}
+% 〔スイッチ〕 |xkanjiskip-cmd| の指定値。
+%    \begin{macrocode}
+\newif\ifbxjs at xkanjiskip@cmd \bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at true\bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at false\bxjs at xkanjiskip@cmdfalse
+\define at key{bxjs}{xkanjiskip-cmd}{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
+%    \end{macrocode}
+% \end{macro}
+%
 % \begin{macro}{\ifbxjs at hyperref@enc}
 % 〔スイッチ〕 |hyperref-enc| の指定値。
 %    \begin{macrocode}
@@ -1891,6 +1916,14 @@
 \fi
 %    \end{macrocode}
 %
+% ドライバが |nodvidriver| であった場合の処理。
+% DVIウェア依存の処理を全て無効化する。
+%    \begin{macrocode}
+\ifx\bxjs at driver@given\bxjs at driver@@none
+  \bxjs at papersizefalse
+\fi
+%    \end{macrocode}
+%
 % |\bxjs at jadriver| の正規化。
 % 値が未指定の場合は |minimal| に変える。
 % ただしエンジンが{(u)\pTeX}である場合は |standard|
@@ -2951,7 +2984,9 @@
 \ifbxjs at papersize
   \ifx\bxjs at driver@given\bxjs at driver@@dvipdfmx
     \PassOptionsToPackage{dvipdfm}{geometry}
-  \fi
+  \else\ifx\bxjs at driver@given\bxjs at driver@@dvimode
+    \PassOptionsToPackage{dvipdfm}{geometry}
+  \fi\fi
   \let\bxPapersizeSpecialDone=t
 \else
   \PassOptionsToPackage{driver=none}{geometry}
@@ -3512,8 +3547,16 @@
 % [2011-05-10] しっぽ愛好家さん [qa:6370] のパッチを取り込ませていただきました
 % (北見さん [qa:55896] のご指摘ありがとうございます)。
 %
+% \begin{ZRnote}
+% |\autoxspacing| は未定義の可能性があるため、
+% 「|\autoxspacing| が定義済なら実行する」マクロ |\bxjs at maybe@autoxspacing| を
+% 代わりに用いる。
+% \end{ZRnote}
+%
 %    \begin{macrocode}
 %<*book|report>
+\def\bxjs at maybe@autoxspacing{%
+  \ifx\autoxspacing\@undefined\else \autoxspacing \fi}
 \newif\if at omit@number
 \def\ps at headings{%
   \let\@oddfoot\@empty
@@ -3520,10 +3563,10 @@
   \let\@evenfoot\@empty
   \def\@evenhead{%
     \if at mparswitch \hss \fi
-    \underline{\hbox to \fullwidth{\autoxspacing
+    \underline{\hbox to \fullwidth{\bxjs at maybe@autoxspacing
         \textbf{\thepage}\hfil\leftmark}}%
     \if at mparswitch\else \hss \fi}%
-  \def\@oddhead{\underline{\hbox to \fullwidth{\autoxspacing
+  \def\@oddhead{\underline{\hbox to \fullwidth{\bxjs at maybe@autoxspacing
         {\if at 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 at xkanjiskip@cmd
+  \def\bxjs at put@xkanjiskip{%
+    \relax\ifmmode \mskip\medmuskip
+    \else \hskip\xkanjiskip
+    \fi}
+  \ifjsWitheTeX \protected\def\>{\bxjs at put@xkanjiskip}
+  \else \def\>{\protect\bxjs at put@xkanjiskip}
+  \fi
+\fi
+%    \end{macrocode}
+%
+%
 % \paragraph{和文フォント指定の扱い}
 %
 % {\pTeX}は既定で |kanji-config-updmap| の設定に従うため、
@@ -8300,6 +8357,14 @@
   \CJKforced{#1}}
 %    \end{macrocode}
 %
+% |\>| は |bxcjkjatype| で定義されているが、保護付のマクロに変換する。
+%    \begin{macrocode}
+\ifbxjs at 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 at 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 at xkanjiskip@cmd
+  \protected\def\>{%
+    \relax\ifmmode \mskip\medmuskip
+    \else \hskip\ltjgetparameter{xkanjiskip}\ignorespaces
+    \fi}
+\fi
+%    \end{macrocode}
+%
 % \paragraph{和文数式ファミリ}
 %
 % Lua{\TeX}-jaでは和文数式ファミリは常に有効で、既にこの時点で必要な

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls	2017-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 at jslogo \@jslogofalse
 \DeclareOption{jslogo}{\@jslogotrue}
 \DeclareOption{nojslogo}{\@jslogofalse}
-\mathchardef\bxjs at csta=259
+\mathchardef\bxjs at isc@ll=128
+\mathchardef\bxjs at isc@sl=259
+\def\bxjs at isc@sl at h{65539 }
 \def\bxjs at 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 at 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 at isc@sl\bxjs at isc@sl at 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 at csta \@tempdimc\@tempcnta\@ne
+    \advance\@tempcnta\bxjs at 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 at driver@@dvipdfmx=1
 \let\bxjs at driver@@pdfmode=2
 \let\bxjs at driver@@xetex=3
+\let\bxjs at driver@@dvips=4
+\let\bxjs at driver@@none=5
 \DeclareOption{dvips}{%
   \def\bxjs at driver@opt{dvips}%
-  \let\bxjs at driver@given\bxjs at driver@@dvimode}
+  \let\bxjs at driver@given\bxjs at driver@@dvips}
 \DeclareOption{dviout}{%
   \def\bxjs at driver@opt{dviout}%
   \let\bxjs at driver@given\bxjs at driver@@dvimode}
@@ -333,6 +342,9 @@
 \DeclareOption{dvipdfmx}{%
   \def\bxjs at driver@opt{dvipdfmx}%
   \let\bxjs at driver@given\bxjs at driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+  \def\bxjs at driver@opt{nodvidriver}%
+  \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
   \let\bxjs at driver@given\bxjs at driver@@pdfmode}
@@ -467,9 +479,10 @@
   \bxjs at set@keyval{fancyhdr}{#1}{}}
 \newif\ifbxjs at dvi@opt
 \let\bxjs at dvidriver@@dvipdfmx=\bxjs at driver@@dvipdfmx
-\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvips
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
 \define at key{bxjs}{dvi}{%
   \expandafter\let\expandafter\bxjs at tmpa\csname
    bxjs at dvidriver@@#1\endcsname
@@ -497,6 +510,10 @@
 \let\bxjs at kv@wholezwlines at true\bxjs at whole@zw at linestrue
 \let\bxjs at kv@wholezwlines at false\bxjs at whole@zw at linesfalse
 \define at key{bxjs}{whole-zw-lines}{\bxjs at set@keyval{wholezwlines}{#1}{}}
+\newif\ifbxjs at xkanjiskip@cmd \bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at true\bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at false\bxjs at xkanjiskip@cmdfalse
+\define at key{bxjs}{xkanjiskip-cmd}{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
 \newif\ifbxjs at hyperref@enc \bxjs at hyperref@enctrue
 \let\bxjs at kv@hyperrefenc at true\bxjs at hyperref@enctrue
 \let\bxjs at kv@hyperrefenc at false\bxjs at hyperref@encfalse
@@ -615,6 +632,9 @@
     \g at addto@macro\@classoptionslist{,dvipdfmx}
   \fi\fi
 \fi
+\ifx\bxjs at driver@given\bxjs at driver@@none
+  \bxjs at papersizefalse
+\fi
 \def\bxjs@@minimal{minimal}
 \ifx\bxjs at jadriver\relax
   \ifx j\jsEngine
@@ -947,7 +967,9 @@
 \ifbxjs at papersize
   \ifx\bxjs at driver@given\bxjs at driver@@dvipdfmx
     \PassOptionsToPackage{dvipdfm}{geometry}
-  \fi
+  \else\ifx\bxjs at driver@given\bxjs at driver@@dvimode
+    \PassOptionsToPackage{dvipdfm}{geometry}
+  \fi\fi
   \let\bxPapersizeSpecialDone=t
 \else
   \PassOptionsToPackage{driver=none}{geometry}

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls	2017-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 at jslogo \@jslogofalse
 \DeclareOption{jslogo}{\@jslogotrue}
 \DeclareOption{nojslogo}{\@jslogofalse}
-\mathchardef\bxjs at csta=259
+\mathchardef\bxjs at isc@ll=128
+\mathchardef\bxjs at isc@sl=259
+\def\bxjs at isc@sl at h{65539 }
 \def\bxjs at 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 at 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 at isc@sl\bxjs at isc@sl at 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 at csta \@tempdimc\@tempcnta\@ne
+    \advance\@tempcnta\bxjs at 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 at driver@@dvipdfmx=1
 \let\bxjs at driver@@pdfmode=2
 \let\bxjs at driver@@xetex=3
+\let\bxjs at driver@@dvips=4
+\let\bxjs at driver@@none=5
 \DeclareOption{dvips}{%
   \def\bxjs at driver@opt{dvips}%
-  \let\bxjs at driver@given\bxjs at driver@@dvimode}
+  \let\bxjs at driver@given\bxjs at driver@@dvips}
 \DeclareOption{dviout}{%
   \def\bxjs at driver@opt{dviout}%
   \let\bxjs at driver@given\bxjs at driver@@dvimode}
@@ -339,6 +348,9 @@
 \DeclareOption{dvipdfmx}{%
   \def\bxjs at driver@opt{dvipdfmx}%
   \let\bxjs at driver@given\bxjs at driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+  \def\bxjs at driver@opt{nodvidriver}%
+  \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
   \let\bxjs at driver@given\bxjs at driver@@pdfmode}
@@ -473,9 +485,10 @@
   \bxjs at set@keyval{fancyhdr}{#1}{}}
 \newif\ifbxjs at dvi@opt
 \let\bxjs at dvidriver@@dvipdfmx=\bxjs at driver@@dvipdfmx
-\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvips
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
 \define at key{bxjs}{dvi}{%
   \expandafter\let\expandafter\bxjs at tmpa\csname
    bxjs at dvidriver@@#1\endcsname
@@ -506,6 +519,10 @@
 \let\bxjs at kv@wholezwlines at true\bxjs at whole@zw at linestrue
 \let\bxjs at kv@wholezwlines at false\bxjs at whole@zw at linesfalse
 \define at key{bxjs}{whole-zw-lines}{\bxjs at set@keyval{wholezwlines}{#1}{}}
+\newif\ifbxjs at xkanjiskip@cmd \bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at true\bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at false\bxjs at xkanjiskip@cmdfalse
+\define at key{bxjs}{xkanjiskip-cmd}{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
 \newif\ifbxjs at hyperref@enc \bxjs at hyperref@enctrue
 \let\bxjs at kv@hyperrefenc at true\bxjs at hyperref@enctrue
 \let\bxjs at kv@hyperrefenc at false\bxjs at hyperref@encfalse
@@ -624,6 +641,9 @@
     \g at addto@macro\@classoptionslist{,dvipdfmx}
   \fi\fi
 \fi
+\ifx\bxjs at driver@given\bxjs at driver@@none
+  \bxjs at papersizefalse
+\fi
 \def\bxjs@@minimal{minimal}
 \ifx\bxjs at jadriver\relax
   \ifx j\jsEngine
@@ -973,7 +993,9 @@
 \ifbxjs at papersize
   \ifx\bxjs at driver@given\bxjs at driver@@dvipdfmx
     \PassOptionsToPackage{dvipdfm}{geometry}
-  \fi
+  \else\ifx\bxjs at driver@given\bxjs at driver@@dvimode
+    \PassOptionsToPackage{dvipdfm}{geometry}
+  \fi\fi
   \let\bxPapersizeSpecialDone=t
 \else
   \PassOptionsToPackage{driver=none}{geometry}
@@ -1090,6 +1112,8 @@
   \def\@oddhead{%
     \hbox to \fullwidth{\hfil\textbf{\thepage}}\hss}}
 \let\ps at plain\ps at plainhead
+\def\bxjs at maybe@autoxspacing{%
+  \ifx\autoxspacing\@undefined\else \autoxspacing \fi}
 \newif\if at omit@number
 \def\ps at headings{%
   \let\@oddfoot\@empty
@@ -1096,10 +1120,10 @@
   \let\@evenfoot\@empty
   \def\@evenhead{%
     \if at mparswitch \hss \fi
-    \underline{\hbox to \fullwidth{\autoxspacing
+    \underline{\hbox to \fullwidth{\bxjs at maybe@autoxspacing
         \textbf{\thepage}\hfil\leftmark}}%
     \if at mparswitch\else \hss \fi}%
-  \def\@oddhead{\underline{\hbox to \fullwidth{\autoxspacing
+  \def\@oddhead{\underline{\hbox to \fullwidth{\bxjs at maybe@autoxspacing
         {\if at twoside\rightmark\else\leftmark\fi}\hfil\textbf{\thepage}}}\hss}%
   \let\@mkboth\markboth
   \def\chaptermark##1{\markboth{%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty	2017-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 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-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 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-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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]{%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def	2017-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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}%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def	2017-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 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-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 at simplejasetupfalse
@@ -218,6 +218,15 @@
       \bxUInt{\@tempcnta}%
     \fi}
 \fi
+\ifbxjs at xkanjiskip@cmd
+  \def\bxjs at put@xkanjiskip{%
+    \relax\ifmmode \mskip\medmuskip
+    \else \hskip\xkanjiskip
+    \fi}
+  \ifjsWitheTeX \protected\def\>{\bxjs at put@xkanjiskip}
+  \else \def\>{\protect\bxjs at put@xkanjiskip}
+  \fi
+\fi
 \let\bxjs at tmpa\jsJaFont
 \ifx\bxjs at tmpa\bxjs@@auto
   \let\bxjs at tmpa\@empty
@@ -346,6 +355,10 @@
   \let\CJKecglue\bxjs at CJKecglue}
 \def\bxjs at jachar#1{%
   \CJKforced{#1}}
+\ifbxjs at xkanjiskip@cmd
+  \protected\def\>{%
+    \relax\ifmmode \mskip\medmuskip \else \CJKecglue\ignorespaces \fi}
+\fi
 \ifx t\bxjs at enablejfam
   \ClassWarningNoLine\bxjs at clsname
    {You cannot use 'enablejfam=true', since the\MessageBreak
@@ -400,6 +413,10 @@
 \def\bxjs at jachar#1{%
   \xeCJKDeclareCharClass{CJK}{`#1}\relax
   #1}
+\ifbxjs at xkanjiskip@cmd
+  \protected\def\>{%
+    \relax\ifmmode \mskip\medmuskip \else \CJKecglue\ignorespaces \fi}
+\fi
 \ifx t\bxjs at enablejfam
   \@enablejfamtrue
 \fi
@@ -468,6 +485,12 @@
   \ltjsetparameter{xkanjiskip={\@tempskipa}}}
 \def\bxjs at jachar#1{%
   \ltjjachar`#1\relax}
+\ifbxjs at xkanjiskip@cmd
+  \protected\def\>{%
+    \relax\ifmmode \mskip\medmuskip
+    \else \hskip\ltjgetparameter{xkanjiskip}\ignorespaces
+    \fi}
+\fi
 \ifx f\bxjs at enablejfam
   \ClassWarningNoLine\bxjs at clsname
    {You cannot use 'enablejfam=false', since the\MessageBreak

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls	2017-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 at jslogo \@jslogofalse
 \DeclareOption{jslogo}{\@jslogotrue}
 \DeclareOption{nojslogo}{\@jslogofalse}
-\mathchardef\bxjs at csta=259
+\mathchardef\bxjs at isc@ll=128
+\mathchardef\bxjs at isc@sl=259
+\def\bxjs at isc@sl at h{65539 }
 \def\bxjs at 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 at 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 at isc@sl\bxjs at isc@sl at 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 at csta \@tempdimc\@tempcnta\@ne
+    \advance\@tempcnta\bxjs at 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 at driver@@dvipdfmx=1
 \let\bxjs at driver@@pdfmode=2
 \let\bxjs at driver@@xetex=3
+\let\bxjs at driver@@dvips=4
+\let\bxjs at driver@@none=5
 \DeclareOption{dvips}{%
   \def\bxjs at driver@opt{dvips}%
-  \let\bxjs at driver@given\bxjs at driver@@dvimode}
+  \let\bxjs at driver@given\bxjs at driver@@dvips}
 \DeclareOption{dviout}{%
   \def\bxjs at driver@opt{dviout}%
   \let\bxjs at driver@given\bxjs at driver@@dvimode}
@@ -339,6 +348,9 @@
 \DeclareOption{dvipdfmx}{%
   \def\bxjs at driver@opt{dvipdfmx}%
   \let\bxjs at driver@given\bxjs at driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+  \def\bxjs at driver@opt{nodvidriver}%
+  \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
   \let\bxjs at driver@given\bxjs at driver@@pdfmode}
@@ -473,9 +485,10 @@
   \bxjs at set@keyval{fancyhdr}{#1}{}}
 \newif\ifbxjs at dvi@opt
 \let\bxjs at dvidriver@@dvipdfmx=\bxjs at driver@@dvipdfmx
-\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvips
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
 \define at key{bxjs}{dvi}{%
   \expandafter\let\expandafter\bxjs at tmpa\csname
    bxjs at dvidriver@@#1\endcsname
@@ -506,6 +519,10 @@
 \let\bxjs at kv@wholezwlines at true\bxjs at whole@zw at linestrue
 \let\bxjs at kv@wholezwlines at false\bxjs at whole@zw at linesfalse
 \define at key{bxjs}{whole-zw-lines}{\bxjs at set@keyval{wholezwlines}{#1}{}}
+\newif\ifbxjs at xkanjiskip@cmd \bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at true\bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at false\bxjs at xkanjiskip@cmdfalse
+\define at key{bxjs}{xkanjiskip-cmd}{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
 \newif\ifbxjs at hyperref@enc \bxjs at hyperref@enctrue
 \let\bxjs at kv@hyperrefenc at true\bxjs at hyperref@enctrue
 \let\bxjs at kv@hyperrefenc at false\bxjs at hyperref@encfalse
@@ -624,6 +641,9 @@
     \g at addto@macro\@classoptionslist{,dvipdfmx}
   \fi\fi
 \fi
+\ifx\bxjs at driver@given\bxjs at driver@@none
+  \bxjs at papersizefalse
+\fi
 \def\bxjs@@minimal{minimal}
 \ifx\bxjs at jadriver\relax
   \ifx j\jsEngine
@@ -956,7 +976,9 @@
 \ifbxjs at papersize
   \ifx\bxjs at driver@given\bxjs at driver@@dvipdfmx
     \PassOptionsToPackage{dvipdfm}{geometry}
-  \fi
+  \else\ifx\bxjs at driver@given\bxjs at driver@@dvimode
+    \PassOptionsToPackage{dvipdfm}{geometry}
+  \fi\fi
   \let\bxPapersizeSpecialDone=t
 \else
   \PassOptionsToPackage{driver=none}{geometry}
@@ -1073,6 +1095,8 @@
   \def\@oddhead{%
     \hbox to \fullwidth{\hfil\textbf{\thepage}}\hss}}
 \let\ps at plain\ps at plainfoot
+\def\bxjs at maybe@autoxspacing{%
+  \ifx\autoxspacing\@undefined\else \autoxspacing \fi}
 \newif\if at omit@number
 \def\ps at headings{%
   \let\@oddfoot\@empty
@@ -1079,10 +1103,10 @@
   \let\@evenfoot\@empty
   \def\@evenhead{%
     \if at mparswitch \hss \fi
-    \underline{\hbox to \fullwidth{\autoxspacing
+    \underline{\hbox to \fullwidth{\bxjs at maybe@autoxspacing
         \textbf{\thepage}\hfil\leftmark}}%
     \if at mparswitch\else \hss \fi}%
-  \def\@oddhead{\underline{\hbox to \fullwidth{\autoxspacing
+  \def\@oddhead{\underline{\hbox to \fullwidth{\bxjs at maybe@autoxspacing
         {\if at twoside\rightmark\else\leftmark\fi}\hfil\textbf{\thepage}}}\hss}%
   \let\@mkboth\markboth
   \def\chaptermark##1{\markboth{%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls	2017-04-10 22:02:23 UTC (rev 43740)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls	2017-04-10 22:02:38 UTC (rev 43741)
@@ -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 at jslogo \@jslogofalse
 \DeclareOption{jslogo}{\@jslogotrue}
 \DeclareOption{nojslogo}{\@jslogofalse}
-\mathchardef\bxjs at csta=259
+\mathchardef\bxjs at isc@ll=128
+\mathchardef\bxjs at isc@sl=259
+\def\bxjs at isc@sl at h{65539 }
 \def\bxjs at 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 at 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 at isc@sl\bxjs at isc@sl at 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 at csta \@tempdimc\@tempcnta\@ne
+    \advance\@tempcnta\bxjs at 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 at driver@@dvipdfmx=1
 \let\bxjs at driver@@pdfmode=2
 \let\bxjs at driver@@xetex=3
+\let\bxjs at driver@@dvips=4
+\let\bxjs at driver@@none=5
 \DeclareOption{dvips}{%
   \def\bxjs at driver@opt{dvips}%
-  \let\bxjs at driver@given\bxjs at driver@@dvimode}
+  \let\bxjs at driver@given\bxjs at driver@@dvips}
 \DeclareOption{dviout}{%
   \def\bxjs at driver@opt{dviout}%
   \let\bxjs at driver@given\bxjs at driver@@dvimode}
@@ -333,6 +342,9 @@
 \DeclareOption{dvipdfmx}{%
   \def\bxjs at driver@opt{dvipdfmx}%
   \let\bxjs at driver@given\bxjs at driver@@dvipdfmx}
+\DeclareOption{nodvidriver}{%
+  \def\bxjs at driver@opt{nodvidriver}%
+  \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
   \let\bxjs at driver@given\bxjs at driver@@pdfmode}
@@ -467,9 +479,10 @@
   \bxjs at set@keyval{fancyhdr}{#1}{}}
 \newif\ifbxjs at dvi@opt
 \let\bxjs at dvidriver@@dvipdfmx=\bxjs at driver@@dvipdfmx
-\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@dvips=\bxjs at driver@@dvips
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
+\let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
 \define at key{bxjs}{dvi}{%
   \expandafter\let\expandafter\bxjs at tmpa\csname
    bxjs at dvidriver@@#1\endcsname
@@ -497,6 +510,10 @@
 \let\bxjs at kv@wholezwlines at true\bxjs at whole@zw at linestrue
 \let\bxjs at kv@wholezwlines at false\bxjs at whole@zw at linesfalse
 \define at key{bxjs}{whole-zw-lines}{\bxjs at set@keyval{wholezwlines}{#1}{}}
+\newif\ifbxjs at xkanjiskip@cmd \bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at true\bxjs at xkanjiskip@cmdtrue
+\let\bxjs at kv@xkanjiskipcmd at false\bxjs at xkanjiskip@cmdfalse
+\define at key{bxjs}{xkanjiskip-cmd}{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
 \newif\ifbxjs at hyperref@enc \bxjs at hyperref@enctrue
 \let\bxjs at kv@hyperrefenc at true\bxjs at hyperref@enctrue
 \let\bxjs at kv@hyperrefenc at false\bxjs at hyperref@encfalse
@@ -615,6 +632,9 @@
     \g at addto@macro\@classoptionslist{,dvipdfmx}
   \fi\fi
 \fi
+\ifx\bxjs at driver@given\bxjs at driver@@none
+  \bxjs at papersizefalse
+\fi
 \def\bxjs@@minimal{minimal}
 \ifx\bxjs at jadriver\relax
   \ifx j\jsEngine
@@ -945,7 +965,9 @@
 \ifbxjs at papersize
   \ifx\bxjs at driver@given\bxjs at driver@@dvipdfmx
     \PassOptionsToPackage{dvipdfm}{geometry}
-  \fi
+  \else\ifx\bxjs at driver@given\bxjs at driver@@dvimode
+    \PassOptionsToPackage{dvipdfm}{geometry}
+  \fi\fi
   \let\bxPapersizeSpecialDone=t
 \else
   \PassOptionsToPackage{driver=none}{geometry}



More information about the tex-live-commits mailing list