texlive[45566] Master/texmf-dist: bxjscls (21oct17)

commits+karl at tug.org commits+karl at tug.org
Sat Oct 21 23:37:59 CEST 2017


Revision: 45566
          http://tug.org/svn/texlive?view=revision&revision=45566
Author:   karl
Date:     2017-10-21 23:37:58 +0200 (Sat, 21 Oct 2017)
Log Message:
-----------
bxjscls (21oct17)

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/bxjspandoc.sty
    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-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md	2017-10-21 21:37:58 UTC (rev 45566)
@@ -98,6 +98,11 @@
 更新履歴
 --------
 
+  * Version 1.7  〈2017/10/21〉
+      - 和文空白命令(`\jaenspace` 等)を追加。
+      - `everyparhook` オプションを新設。
+  * Version 1.6b 〈2017/09/28〉
+      - Pandoc モードでは bxcjkjatype に autotilde を付けない。
   * Version 1.6a 〈2017/09/24〉
       - `bxjspandoc` パッケージを新設。
       - Pandoc モードで起こる細かい不具合に対処した。

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-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex	2017-10-21 21:37:58 UTC (rev 45566)
@@ -12,13 +12,14 @@
   \renewcommand*{\XeLaTeX}{XeLaTeX}}
 \usepackage{shortvrb}
 \MakeShortVerb{\|}
-\newcommand{\PkgVersion}{1.6a}
-\newcommand{\PkgDate}{2017/09/24}
+\newcommand{\PkgVersion}{1.7}
+\newcommand{\PkgDate}{2017/10/21}
 \newcommand{\Pkg}[1]{\textsf{#1}}
 \newcommand{\Meta}[1]{$\langle$\mbox{}#1\mbox{}$\rangle$}
 \newcommand{\Note}{\par\noindent ※}
 \newcommand{\Means}{:\ }
 \newcommand{\jemph}{\textsf}
+\newcommand{\wbr}{\linebreak[0]}
 \providecommand{\pTeX}{p\TeX}
 \providecommand{\pLaTeX}{p\LaTeX}
 \providecommand{\upTeX}{u\pTeX}
@@ -790,9 +791,13 @@
   \Pkg{hyperref}パッケージについて
   「PDF文字列の文字コード設定を補正する処理」
   を行うか否か。
-\item |xkanjiskip-cmd=|\Meta{真偽値}\Means
-  |\>| を和欧文間空白を挿入する命令として定義するか否か。
+\item |jaspace-cmd=|\Meta{真偽値}\Means
+  以下に挙げる和文空白命令を定義するか否か。
   (詳しくは\ref{ssec:ja-settings}節を参照。)
+  \begin{quote}
+    |\jaenspace|、|\jathinspace|、|\>|、
+    |\_|(|\|\,+\,全角空白)
+  \end{quote}
 \item |layout=|\Meta{値}\Means
   レイアウトの変種を選択する。
   現状では、過去の版との互換性を維持するために用いられている。
@@ -1234,6 +1239,14 @@
   ただし |nozw| 指定時は定義されない。
 \item |\zwspace|\Means
   全角(|\jsZw|)幅の水平空き。
+\item |\_|(|\|\,の後に全角空白文字)\Means
+  |\zwspace| の別名。
+  全角幅の水平空き。
+  \Note \Pkg{jlreq}クラスと互換の命令。
+  ただしBXJSクラスはJLREQの和字間隔の規定とは無関係であり、
+  この命令は単純に |\hspace|\wbr|{\jsZw}| と等価である。
+\item |\jaenspace|\Means
+  半角(0.5|\jsZw|)幅の水平空き。
 \end{itemize}
 
 \subsubsection{standard和文ドライバの場合}
@@ -1286,15 +1299,18 @@
 \item |\autospacing|/|\noautospacing|\Means
   和文間空白の挿入を有効/無効にする。
   {\pLaTeX}の同名の命令と同等。
+\item |\jathinspace|\Means
+  和欧文間空白を挿入する。
 \item |\>|\Means
-  和欧文間空白を挿入する。%
+  (非数式モードで
   \footnote{|\>| という命令名は、plain {\TeX}では数式中の空白
     ({\LaTeX}の |\:| と同等)を表す。
     このため、実際には{\LaTeX}でも |\>| は |\:| と同等の命令として
     定義されている。
     この「plain互換の |\>|」を利用したコードが影響を受けるのを避ける
-    ため、数式中では |\>| は従来通り |\:| と同等の動作を行う。}
-  ただし |xkanjiskip-cmd=false| 指定時は定義されない。%
+    ため、数式中では |\>| は従来通り |\:| と同等の動作を行う。}%
+    )和欧文間空白を挿入する。
+  \Note |jaspace-cmd=false| 指定時は定義されない。%
   \footnote{ただし、standard和文ドライバで自動的に読み込まれる
     \Pkg{zxjatype}や\Pkg{bxcjkjatype}のパッケージは、
     それ自体が同様の機能の |\>| を提供することにも注意を要する。}

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-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx	2017-10-21 21:37:58 UTC (rev 45566)
@@ -68,7 +68,9 @@
 %<*driver>
 \ProvidesFile{bxjscls.dtx}
 %</driver>
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 BXJS document classes]
+% [2017/09/28 v1.6b BXJS document classes]
+% [2017/09/24 v1.6a 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]
@@ -1788,13 +1790,14 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{macro}{\ifbxjs at xkanjiskip@cmd}
-% 〔スイッチ〕 |xkanjiskip-cmd| の指定値。
+% \begin{macro}{\ifbxjs at jaspace@cmd}
+% 〔スイッチ〕 |jaspace-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}[true]{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
+\newif\ifbxjs at jaspace@cmd \bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at true\bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at false\bxjs at jaspace@cmdfalse
+\define at key{bxjs}{jaspace-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#1}{}}
+\define at key{bxjs}{xkanjiskip-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#1}{}}
 %    \end{macrocode}
 % \end{macro}
 %
@@ -1808,6 +1811,24 @@
 %    \end{macrocode}
 % \end{macro}
 %
+% \begin{macro}{\bxjs at everyparhook}
+% |everyparhook| の指定値。
+%    \begin{macrocode}
+\chardef\bxjs at everyparhook@none=0
+\chardef\bxjs at everyparhook@compat=1
+\chardef\bxjs at everyparhook@modern=2
+\if j\jsEngine
+  \let\bxjs at everyparhook\bxjs at everyparhook@compat
+\else
+  \let\bxjs at everyparhook\bxjs at everyparhook@modern
+\fi
+\def\bxjs at kv@everyparhook at none{\let\bxjs at everyparhook\bxjs at everyparhook@none}
+\def\bxjs at kv@everyparhook at compat{\let\bxjs at everyparhook\bxjs at everyparhook@compat}
+\def\bxjs at kv@everyparhook at modern{\let\bxjs at everyparhook\bxjs at everyparhook@modern}
+\define at key{bxjs}{everyparhook}{\bxjs at set@keyval{everyparhook}{#1}{}}
+%    \end{macrocode}
+% \end{macro}
+%
 % \end{ZRnote}
 %
 % \paragraph{オプションの実行}
@@ -4574,7 +4595,20 @@
 % 前のアキがちょうどゼロの場合にもうまくいくように,多少変えてあります。
 % |\everyparhook| も挿入しています。
 %
+% \begin{ZRnote}
+% |\everyparhook| の挿入は |everyparhook=compat| の時のみ行う。
+% \begin{macro}{\bxjs at if@ceph}
+% |everyparhook=compat| である場合にのみ直後のトークンを実行する。
 %    \begin{macrocode}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
+  \let\bxjs at if@ceph\@firstofone
+\else \let\bxjs at if@ceph\@gobble
+\fi
+%    \end{macrocode}
+% \end{macro}
+% \end{ZRnote}
+%
+%    \begin{macrocode}
 \def\@sect#1#2#3#4#5#6[#7]#8{%
   \ifnum #2>\c at secnumdepth
     \let\@svsec\@empty
@@ -4636,11 +4670,10 @@
         \unskip
         \@tempskipa #1\relax
         \hskip -\@tempskipa
-        \bxjs at ltj@inhibitglue
       \else
         \clubpenalty \@clubpenalty
-        \everypar{\everyparhook}%
-      \fi\everyparhook}%
+        \everypar\expandafter{\bxjs at if@ceph\everyparhook}%
+      \fi\bxjs at if@ceph\everyparhook}%
   \else
     \par \nobreak
     \vskip \@tempskipa
@@ -4667,14 +4700,6 @@
   \@xsect{#3}}
 %    \end{macrocode}
 %
-% \begin{ZRnote}
-% 上記の定義中の |\bxjs at ltj@inhibitglue| は{Lua\TeX-ja}で
-% 用いられるフック。
-%    \begin{macrocode}
-\let\bxjs at ltj@inhibitglue\@empty
-%    \end{macrocode}
-% \end{ZRnote}
-%
 % \paragraph{柱関係の命令}
 %
 % \begin{macro}{\chaptermark}
@@ -7170,7 +7195,9 @@
 % これの初期値を先述の |\jsInhibitGlueAtParTop| とする。
 %    \begin{macrocode}
 \def\everyparhook{\jsInhibitGlueAtParTop}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
 \AtBeginDocument{\everypar{\everyparhook}}
+\fi
 %    \end{macrocode}
 % \end{macro}
 % \end{ZRnote}
@@ -7186,10 +7213,12 @@
 % 高いので,専用の命令 |\jsc at ig@temp| に置き換えました(Issue \#54)。
 %
 % \begin{ZRnote}
-% \begin{macro}{\@inhibitglue}
-% JSクラスでの |\jsInhibitGlueAtParTop| の実装。
-% (これは{(u)\pTeX}専用である。)
+% 次の |\@inhibitglue| はJSクラスでの |\jsInhibitGlueAtParTop| の
+% 実装である。
+% エンジンが |(u)platex| の場合はこれを採用する。
+% \end{ZRnote}
 %    \begin{macrocode}
+\ifx j\jsEngine
 \def\@inhibitglue{%
   \futurelet\@let at token\@@inhibitglue}
 \begingroup
@@ -7217,10 +7246,18 @@
       \inhibitglue
     \fi
   \fi}
+\fi
 %    \end{macrocode}
-% \end{macro}
 %
+% \begin{ZRnote}
+% ここからしばらく
+% 「(本物の)|\everypar| に追加した |\everyparhook| を保持する」
+% ためのパッチ処理が続く。
+% これは、|everyparhook=compat| の場合にのみ実行する。
 % \end{ZRnote}
+%    \begin{macrocode}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
+%    \end{macrocode}
 %
 % これだけではいけないようです。あちこちに |\everypar| を初期化するコマンドが
 % 隠されていました。
@@ -7293,7 +7330,6 @@
       \clubpenalty \@clubpenalty
       \everypar{\everyparhook}%
     \fi
-    \bxjs at ltj@inhibitglue
     \everyparhook}%
   \if at noitemarg
     \@noitemargfalse
@@ -7335,6 +7371,13 @@
     \fi\everyparhook}}
 %    \end{macrocode}
 %
+% \begin{ZRnote}
+% 「|\everyparhook| 用のパッチ処理」はここまで。
+% \end{ZRnote}
+%    \begin{macrocode}
+\fi
+%    \end{macrocode}
+%
 % |\@gnewline| についてはちょっと複雑な心境です。
 % もともとのp\LaTeXe は段落の頭にグルーが入る方で統一されていました。
 % しかし |\\| の直後にはグルーが入らず,不統一でした。
@@ -7344,7 +7387,13 @@
 %
 % しかし単に戻すだけでも駄目みたいなので,ここでも最後にグルーを消しておきます。
 %
+% \begin{ZRnote}
+% \Note |luatexja| を読みこんだ場合に lltjcore.sty によって上書きされる
+% のを防ぐため遅延させる。
+% \end{ZRnote}
 %    \begin{macrocode}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@none\else
+\AtEndOfPackage{%
 \def\@gnewline #1{%
   \ifvmode
     \@nolnerr
@@ -7352,6 +7401,8 @@
     \unskip \reserved at e {\reserved at f#1}\nobreak \hfil \break \null
     \jsInhibitGlue \ignorespaces
   \fi}
+}
+\fi
 %    \end{macrocode}
 %
 % \section{いろいろなロゴ}
@@ -8233,6 +8284,43 @@
 \fi
 %    \end{macrocode}
 %
+% \paragraph{段落頭でのグルー挿入禁止}
+%
+% \begin{macro}{\bxjs at check@everyparhook}
+% 本体開始時において |\everyparhook| を検査して、
+% “結局何もしない”ことになっている場合は、
+% 副作用を完全に無くすために |\everyparhook| を空にする。
+%    \begin{macrocode}
+\@onlypreamble\bxjs at check@everyparhook
+\def\bxjs at check@everyparhook{%
+  \ifx\jsInhibitGlueAtParTop\@empty
+    \def\bxjs at tmpa{\jsInhibitGlueAtParTop}%
+    \ifx\everyparhook\bxjs at tmpa
+      \let\everyparhook\@empty
+    \fi
+  \fi}
+\AtBeginDocument{\bxjs at check@everyparhook}
+%    \end{macrocode}
+% \end{macro}
+%
+% |everyparhook=modern| の場合の、|\everyparhook| の有効化の実装。
+% \Note 本体開始時ではなく最初から有効化していることに注意。
+%    \begin{macrocode}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@modern
+%    \end{macrocode}
+% まず |\everypar| を“乗っ取る”処理を行う。
+%    \begin{macrocode}
+  \let\bxjs at everypar\everypar
+  \newtoks\everypar
+  \everypar\bxjs at everypar
+%    \end{macrocode}
+% そして本物の |\everypar| では、最後で常に |\everyparhook| が実行される
+% ようにする。
+%    \begin{macrocode}
+  \bxjs at everypar{\the\expandafter\everypar\everyparhook}%
+\fi
+%    \end{macrocode}
+%
 % \paragraph{fancyhdr対策}
 % |fancyhdr| オプションの値が |true| であり、
 % かつ |fancyhdr| が使用された場合に以下の対策を行う。
@@ -8312,6 +8400,54 @@
   \global\let\bxjs at pagestyle@hook\relax}
 %    \end{macrocode}
 %
+% \paragraph{和文空白命令}
+%    \begin{macrocode}
+\ifbxjs at jaspace@cmd
+%    \end{macrocode}
+%
+% \begin{macro}{\jaenspace}
+% 半角幅の水平空き。
+%    \begin{macrocode}
+  \def\jaenspace{\hskip.5\jsZw\relax}
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\jathinspace}
+% 和欧文間空白を入れるユーザ命令。
+% \Note minimalではダミー定義。
+%    \begin{macrocode}
+  \def\jathinspace{\hskip\z at skip}
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\_}
+% 全角空白文字1つからなる名前の制御綴。
+% |\zwspace| と等価になる。
+%    \begin{macrocode}
+  \def\ {\zwspace}
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\jaspace}
+% |jlreq| クラスと互換の命令。
+%    \begin{macrocode}
+  \DeclareRobustCommand*{\jaspace}[1]{%
+    \expandafter\ifx\csname bxjs at jaspace@@#1\endcsname\relax
+      \ClassError\bxjs at clsname
+       {Unknown jaspace: #1}{\@eha}%
+    \else
+      \csname bxjs at jaspace@@#1\endcsname
+    \fi}
+  \def\bxjs at jaspace@@zenkaku{\hskip 1\jsZw\relax}
+  \def\bxjs at jaspace@@nibu{\hskip .5\jsZw\relax}
+  \def\bxjs at jaspace@@shibu{\hskip .25\jsZw\relax}
+%    \end{macrocode}
+% \end{macro}
+%
+%    \begin{macrocode}
+\fi
+%    \end{macrocode}
+%
 % 終わり。
 %    \begin{macrocode}
 \fi
@@ -8801,6 +8937,39 @@
 %    \end{macrocode}
 % \end{macro}
 %
+% \begin{macro}{\jsCheckHyperrefUnicode}
+% 「|hyperref| の |unicode| オプションの値を検証する」ための
+% 本体開始時のフック。
+%    \begin{macrocode}
+\@onlypreamble\jsCheckHyperrefUnicode
+\let\jsCheckHyperrefUnicode\@empty
+\AtBeginDocument{\jsCheckHyperrefUnicode}
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\bxjs at check@hyperref at unicode}
+% |hyperref| の |unicode| オプションの値を本体開始時に検証する。
+%    \begin{macrocode}
+\@onlypreamble\bxjs at check@hyperref at unicode
+\def\bxjs at check@hyperref at unicode#1{%
+  \g at addto@macro\jsCheckHyperrefUnicode{%
+    \@tempswafalse
+    \begingroup
+      \expandafter\ifx\csname ifHy at unicode\endcsname\relax
+        \aftergroup\@tempswatrue \fi
+      \expandafter\ifx\csname ifHy at unicode\expandafter\endcsname
+          \csname if#1\endcsname
+        \aftergroup\@tempswatrue \fi
+    \endgroup
+    \if at tempswa\else
+      \ClassError\bxjs at clsname
+       {The value of hyperref 'unicode' key is not suitable\MessageBreak
+        for the present engine (must be #1)}%
+       {\@ehc}%
+    \fi}}
+%    \end{macrocode}
+% \end{macro}
+%
 % \begin{macro}{\bxjs at urgent@special}
 % DVIのなるべく早い位置にspecialを出力する。
 %    \begin{macrocode}
@@ -8879,16 +9048,10 @@
 \fi
 %    \end{macrocode}
 %
-% 和欧文間空白の命令 |\>| の実装。
+% 和欧文間空白の命令 |\jathinspace| の実装。
 %    \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
+\ifbxjs at jaspace@cmd
+  \def\jathinspace{\hskip\xkanjiskip}
 \fi
 %    \end{macrocode}
 %
@@ -8970,7 +9133,7 @@
 % |unicode| にしてはいけない。
 %    \begin{macrocode}
 \ifbxjs at hyperref@enc
-  \bxjs at fix@hyperref at unicode{false}
+  \bxjs at check@hyperref at unicode{false}
 \fi
 %    \end{macrocode}
 %
@@ -9034,10 +9197,14 @@
 % オプション(プリセット指定)に渡す。
 % (|auto| ならば |\bxjs at get@kanjiEmbed| を実行する。)
 % スケール値(|\jsScale|)の反映は bxcjkjatype の側で行われる。
+% \Note Pandocモードでは |autotilde| を指定しない。
 %    \begin{macrocode}
 \bxjs at adjust@jafont{f}
 \edef\bxjs at tmpa{\bxjs at catopt\bxjs at tmpa\bxjs at jp@font}
-\edef\bxjs at tmpa{\bxjs at catopt\bxjs at tmpa{whole,autotilde}}
+\edef\bxjs at tmpa{\bxjs at catopt\bxjs at tmpa{whole}}
+\def\bxjs at tmpb{pandoc}\ifx\bxjs at tmpb\bxjs at jadriver\else
+  \edef\bxjs at tmpa{\bxjs at catopt\bxjs at tmpa{autotilde}}
+\fi
 \edef\bxjs at next{%
   \noexpand\RequirePackage[\bxjs at tmpa]{bxcjkjatype}[2013/10/15]% v0.2c
 }\bxjs at next
@@ -9119,11 +9286,10 @@
   \CJKforced{#1}}
 %    \end{macrocode}
 %
-% |\>| は |bxcjkjatype| で定義されているが、保護付のマクロに変換する。
+% 和欧文間空白の命令 |\jathinspace| の実装。
 %    \begin{macrocode}
-\ifbxjs at xkanjiskip@cmd
-  \protected\def\>{%
-    \relax\ifmmode \mskip\medmuskip \else \CJKecglue\ignorespaces \fi}
+\ifbxjs at jaspace@cmd
+  \protected\def\jathinspace{\CJKecglue}
 \fi
 %    \end{macrocode}
 %
@@ -9213,8 +9379,19 @@
 % 近いものが得られるらしい。
 %
 % 従って、|\jsInhibitGlueAtParTop| は結局何もしないことにする。
+%
+% 強制改行直後のグルー禁止処理、のような怪しげな何か。
+%
 %    \begin{macrocode}
-\let\jsInhibitGlueAtParTop\@empty
+\AtEndOfPackage{%
+\def\@gnewline #1{%
+  \ifvmode \@nolnerr
+  \else
+    \unskip \reserved at e {\reserved at f#1}\nobreak \hfil \break \null
+    \nobreak \hskip-1sp\hskip1sp\relax
+    \ignorespaces
+  \fi}
+}
 %    \end{macrocode}
 %
 % \paragraph{共通命令の実装}
@@ -9255,12 +9432,10 @@
   #1}
 %    \end{macrocode}
 %
-% |\>| は |zxjatype| で定義されているが、standardの仕様に合わせて変更する。
-% \Note 元は |\ignorespaces| でなく |\relax|(|\scan_stop:|)だった。
+% |\jathinspace| の実装。
 %    \begin{macrocode}
-\ifbxjs at xkanjiskip@cmd
-  \protected\def\>{%
-    \relax\ifmmode \mskip\medmuskip \else \CJKecglue\ignorespaces \fi}
+\ifbxjs at jaspace@cmd
+  \protected\def\jathinspace{\CJKecglue}
 \fi
 %    \end{macrocode}
 %
@@ -9375,20 +9550,53 @@
 %
 % \paragraph{段落頭でのグルー挿入禁止}
 %
+% 基本的に現状の |ltjs*| クラスの処理に合わせる。
+% \Note |\jsInhibitGlueAtParTop| は使わない。
+%
+% \begin{macro}{\ltjfakeparbegin}
+% 現在の{\LuaTeX-ja}で定義されているマクロで、
+% 段落中で段落冒頭用の処理を発動する。
+% 未定義である場合にに備えて同等のものを用意する。
 %    \begin{macrocode}
-\protected\def\@inhibitglue{%
-  \directlua{%
-    luatexja.jfmglue.create_beginpar_node()}}
-\let\bxjs at ltj@inhibitglue\@inhibitglue
-\let\@@inhibitglue\@undefined
+\ifx\ltjfakeparbegin\@undefined
+  \protected\def\ltjfakeparbegin{%
+    \ifhmode
+      \relax\directlua{%
+        luatexja.jfmglue.create_beginpar_node()}}
+    \fi}
+\fi
 %    \end{macrocode}
+% \end{macro}
 %
+% |ltjs*| クラスの定義と同等になるようにパッチを当てる。
+%    \begin{macrocode}
+\unless\ifnum\bxjs at everyparhook=\bxjs at everyparhook@none
+\begingroup
+  \let\%\@percentchar \def\@#1{[[\detokenize{#1}]]}
+  \@gobble\if\def\bxjs at tmpa{\@{\everypar{}\fi}}
+  \ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
+    \@gobble\if\def\bxjs at tmpa{\@{\everypar{\everyparhook}\fi}}\fi
+  \directlua{
+    local function patchcmd(cs, code, from, to)
+      tex.sprint(code:gsub(from:gsub("\%W", "\%\%\%0"), "\%0"..to)
+        :gsub("macro:", \@\gdef..cs, 1):gsub("->", "{", 1).."}")
+    end
+    patchcmd(\@\@xsect, [[\meaning\@xsect]],
+      \@{\hskip-\@tempskipa}, \@\ltjfakeparbegin)
+    patchcmd(\@\@item, [[\meaning\@item]],
+      \bxjs at tmpa, \@\ltjfakeparbegin)}
+\endgroup
+\fi
+%    \end{macrocode}
+%
 % \paragraph{hyperref対策}
 %
 % |unicode| にするべき。
+% \Note 1.6c版より、固定ではなく既定設定+検証に切り替えた。
 %    \begin{macrocode}
 \ifbxjs at hyperref@enc
-  \bxjs at fix@hyperref at unicode{true}
+  \PassOptionsToPackage{unicode}{hyperref}
+  \bxjs at check@hyperref at unicode{true}
 \fi
 %    \end{macrocode}
 %
@@ -9415,13 +9623,11 @@
   \ltjjachar`#1\relax}
 %    \end{macrocode}
 %
-% |\>| の実装。
+% |\jathinspace| の実装。
 %    \begin{macrocode}
-\ifbxjs at xkanjiskip@cmd
-  \protected\def\>{%
-    \relax\ifmmode \mskip\medmuskip
-    \else \hskip\ltjgetparameter{xkanjiskip}\ignorespaces
-    \fi}
+\ifbxjs at jaspace@cmd
+  \protected\def\jathinspace{%
+    \hskip\ltjgetparameter{xkanjiskip}\relax}
 \fi
 %    \end{macrocode}
 %
@@ -9472,6 +9678,24 @@
 % \end{macro}
 % \end{macro}
 %
+% \paragraph{和文空白命令}
+% \begin{macro}{\>}
+% 非数式中では |\jathinspace| と等価になるように再定義する。
+% \Note 数式中では従来通り(|\:| と等価)。
+%    \begin{macrocode}
+\ifbxjs at jaspace@cmd
+  \bxjs at protected\def\bxjs at choice@jathinspace{%
+    \relax\ifmmode \mskip\medmuskip
+    \else \jathinspace\ignorespaces
+    \fi}
+  \jsAtEndOfClass{%
+    \ifjsWitheTeX \let\>\bxjs at choice@jathinspace
+    \else \def\>{\protect\bxjs at choice@jathinspace}%
+    \fi}
+\fi
+%    \end{macrocode}
+% \end{macro}
+%
 % \paragraph{和文・和欧文間空白の初期値}
 %
 %    \begin{macrocode}
@@ -9725,6 +9949,33 @@
 %    \end{macrocode}
 %
 %^^A----------------
+%\subsection{全角空白文字}
+%
+%    \begin{macrocode}
+\ifnum0\if x\jsEngine1\fi\if l\jsEngine1\fi>\z@
+  \catcode"3000=\active
+  \begingroup \catcode`\!=7
+  \protected\gdef!!!!3000{\zwspace}
+  \endgroup
+\else\ifx\DeclareUnicodeCharacter\@undefined\else
+  \DeclareUnicodeCharacter{3000}{\bxjs at zsp@char}
+  \bxjs at protected\def\bxjs at zsp@char{\zwspace}
+\fi\fi
+%    \end{macrocode}
+%
+%^^A----------------
+% \paragraph{hyperref対策}
+%
+% |hyperref| の |unicode| オプションの固定を行う。
+%    \begin{macrocode}
+\if j\jsEngine
+  \bxjs at fix@hyperref at unicode{false}
+\else
+  \bxjs at fix@hyperref at unicode{true}
+\fi
+%    \end{macrocode}
+%
+%^^A----------------
 % \subsection{完了}
 % おしまい。
 %    \begin{macrocode}

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls	2017-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls	2017-10-21 21:37:58 UTC (rev 45566)
@@ -22,7 +22,7 @@
 %% in the same archive or directory.)
 \NeedsTeXFormat{LaTeX2e}
 \ProvidesClass{bxjsarticle}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 BXJS document classes]
 %% このファイルは日本語文字を含みます.
 \def\bxjs at clsname{bxjsarticle}
 \newif\ifjsc at needsp@tch
@@ -541,14 +541,27 @@
 \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}[true]{\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}[true]{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
+\newif\ifbxjs at jaspace@cmd \bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at true\bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at false\bxjs at jaspace@cmdfalse
+\define at key{bxjs}{jaspace-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#1}{}}
+\define at key{bxjs}{xkanjiskip-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#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
 \define at key{bxjs}{hyperref-enc}[true]{\bxjs at set@keyval{hyperrefenc}{#1}{}}
+\chardef\bxjs at everyparhook@none=0
+\chardef\bxjs at everyparhook@compat=1
+\chardef\bxjs at everyparhook@modern=2
+\if j\jsEngine
+  \let\bxjs at everyparhook\bxjs at everyparhook@compat
+\else
+  \let\bxjs at everyparhook\bxjs at everyparhook@modern
+\fi
+\def\bxjs at kv@everyparhook at none{\let\bxjs at everyparhook\bxjs at everyparhook@none}
+\def\bxjs at kv@everyparhook at compat{\let\bxjs at everyparhook\bxjs at everyparhook@compat}
+\def\bxjs at kv@everyparhook at modern{\let\bxjs at everyparhook\bxjs at everyparhook@modern}
+\define at key{bxjs}{everyparhook}{\bxjs at set@keyval{everyparhook}{#1}{}}
 \let\bxjs at ltx@removeelement\@removeelement
 \def\@removeelement#1#2#3{%
   \def\reserved at a{#2}%
@@ -1323,6 +1336,10 @@
   \@ifstar
     {\@ssect{#3}{#4}{#5}{#6}}%
     {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
+  \let\bxjs at if@ceph\@firstofone
+\else \let\bxjs at if@ceph\@gobble
+\fi
 \def\@sect#1#2#3#4#5#6[#7]#8{%
   \ifnum #2>\c at secnumdepth
     \let\@svsec\@empty
@@ -1370,11 +1387,10 @@
         \unskip
         \@tempskipa #1\relax
         \hskip -\@tempskipa
-        \bxjs at ltj@inhibitglue
       \else
         \clubpenalty \@clubpenalty
-        \everypar{\everyparhook}%
-      \fi\everyparhook}%
+        \everypar\expandafter{\bxjs at if@ceph\everyparhook}%
+      \fi\bxjs at if@ceph\everyparhook}%
   \else
     \par \nobreak
     \vskip \@tempskipa
@@ -1399,7 +1415,6 @@
     \endgroup
   \fi
   \@xsect{#3}}
-\let\bxjs at ltj@inhibitglue\@empty
 \newcommand*\chaptermark[1]{}
 \setcounter{secnumdepth}{3}
 \newcounter{part}
@@ -1989,7 +2004,10 @@
   \llap{\@makefnmark\hskip0.3\jsZw}#1}
 \let\jsInhibitGlueAtParTop\@empty
 \def\everyparhook{\jsInhibitGlueAtParTop}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
 \AtBeginDocument{\everypar{\everyparhook}}
+\fi
+\ifx j\jsEngine
 \def\@inhibitglue{%
   \futurelet\@let at token\@@inhibitglue}
 \begingroup
@@ -2017,6 +2035,8 @@
       \inhibitglue
     \fi
   \fi}
+\fi
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
 \def\@doendpe{%
   \@endpetrue
   \def\par{%
@@ -2069,7 +2089,6 @@
       \clubpenalty \@clubpenalty
       \everypar{\everyparhook}%
     \fi
-    \bxjs at ltj@inhibitglue
     \everyparhook}%
   \if at noitemarg
     \@noitemargfalse
@@ -2103,6 +2122,9 @@
       \clubpenalty \@clubpenalty
       \everypar{\everyparhook}%
     \fi\everyparhook}}
+\fi
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@none\else
+\AtEndOfPackage{%
 \def\@gnewline #1{%
   \ifvmode
     \@nolnerr
@@ -2110,6 +2132,8 @@
     \unskip \reserved at e {\reserved at f#1}\nobreak \hfil \break \null
     \jsInhibitGlue \ignorespaces
   \fi}
+}
+\fi
 \if at jslogo
   \IfFileExists{jslogo.sty}{%
     \RequirePackage{jslogo}%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls	2017-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls	2017-10-21 21:37:58 UTC (rev 45566)
@@ -22,7 +22,7 @@
 %% in the same archive or directory.)
 \NeedsTeXFormat{LaTeX2e}
 \ProvidesClass{bxjsbook}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 BXJS document classes]
 %% このファイルは日本語文字を含みます.
 \def\bxjs at clsname{bxjsbook}
 \newif\ifjsc at needsp@tch
@@ -550,14 +550,27 @@
 \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}[true]{\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}[true]{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
+\newif\ifbxjs at jaspace@cmd \bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at true\bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at false\bxjs at jaspace@cmdfalse
+\define at key{bxjs}{jaspace-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#1}{}}
+\define at key{bxjs}{xkanjiskip-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#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
 \define at key{bxjs}{hyperref-enc}[true]{\bxjs at set@keyval{hyperrefenc}{#1}{}}
+\chardef\bxjs at everyparhook@none=0
+\chardef\bxjs at everyparhook@compat=1
+\chardef\bxjs at everyparhook@modern=2
+\if j\jsEngine
+  \let\bxjs at everyparhook\bxjs at everyparhook@compat
+\else
+  \let\bxjs at everyparhook\bxjs at everyparhook@modern
+\fi
+\def\bxjs at kv@everyparhook at none{\let\bxjs at everyparhook\bxjs at everyparhook@none}
+\def\bxjs at kv@everyparhook at compat{\let\bxjs at everyparhook\bxjs at everyparhook@compat}
+\def\bxjs at kv@everyparhook at modern{\let\bxjs at everyparhook\bxjs at everyparhook@modern}
+\define at key{bxjs}{everyparhook}{\bxjs at set@keyval{everyparhook}{#1}{}}
 \let\bxjs at ltx@removeelement\@removeelement
 \def\@removeelement#1#2#3{%
   \def\reserved at a{#2}%
@@ -1350,6 +1363,10 @@
   \@ifstar
     {\@ssect{#3}{#4}{#5}{#6}}%
     {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
+  \let\bxjs at if@ceph\@firstofone
+\else \let\bxjs at if@ceph\@gobble
+\fi
 \def\@sect#1#2#3#4#5#6[#7]#8{%
   \ifnum #2>\c at secnumdepth
     \let\@svsec\@empty
@@ -1397,11 +1414,10 @@
         \unskip
         \@tempskipa #1\relax
         \hskip -\@tempskipa
-        \bxjs at ltj@inhibitglue
       \else
         \clubpenalty \@clubpenalty
-        \everypar{\everyparhook}%
-      \fi\everyparhook}%
+        \everypar\expandafter{\bxjs at if@ceph\everyparhook}%
+      \fi\bxjs at if@ceph\everyparhook}%
   \else
     \par \nobreak
     \vskip \@tempskipa
@@ -1426,7 +1442,6 @@
     \endgroup
   \fi
   \@xsect{#3}}
-\let\bxjs at ltj@inhibitglue\@empty
 \newcommand*\chaptermark[1]{}
 \setcounter{secnumdepth}{2}
 \newcounter{part}
@@ -2096,7 +2111,10 @@
   \llap{\@makefnmark\hskip0.3\jsZw}#1}
 \let\jsInhibitGlueAtParTop\@empty
 \def\everyparhook{\jsInhibitGlueAtParTop}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
 \AtBeginDocument{\everypar{\everyparhook}}
+\fi
+\ifx j\jsEngine
 \def\@inhibitglue{%
   \futurelet\@let at token\@@inhibitglue}
 \begingroup
@@ -2124,6 +2142,8 @@
       \inhibitglue
     \fi
   \fi}
+\fi
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
 \def\@doendpe{%
   \@endpetrue
   \def\par{%
@@ -2176,7 +2196,6 @@
       \clubpenalty \@clubpenalty
       \everypar{\everyparhook}%
     \fi
-    \bxjs at ltj@inhibitglue
     \everyparhook}%
   \if at noitemarg
     \@noitemargfalse
@@ -2210,6 +2229,9 @@
       \clubpenalty \@clubpenalty
       \everypar{\everyparhook}%
     \fi\everyparhook}}
+\fi
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@none\else
+\AtEndOfPackage{%
 \def\@gnewline #1{%
   \ifvmode
     \@nolnerr
@@ -2217,6 +2239,8 @@
     \unskip \reserved at e {\reserved at f#1}\nobreak \hfil \break \null
     \jsInhibitGlue \ignorespaces
   \fi}
+}
+\fi
 \if at jslogo
   \IfFileExists{jslogo.sty}{%
     \RequirePackage{jslogo}%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty	2017-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty	2017-10-21 21:37:58 UTC (rev 45566)
@@ -21,7 +21,7 @@
 %% same distribution. (The sources need not necessarily be
 %% in the same archive or directory.)
 \ProvidesPackage{bxjscjkcat}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 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-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty	2017-10-21 21:37:58 UTC (rev 45566)
@@ -21,7 +21,7 @@
 %% same distribution. (The sources need not necessarily be
 %% in the same archive or directory.)
 \ProvidesPackage{bxjscompat}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 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-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def	2017-10-21 21:37:58 UTC (rev 45566)
@@ -21,7 +21,7 @@
 %% same distribution. (The sources need not necessarily be
 %% in the same archive or directory.)
 \ProvidesFile{bxjsja-minimal.def}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 BXJS document classes]
 %% このファイルは日本語文字を含みます
 \def\DeclareJaTextFontCommand#1#2{%
   \DeclareRobustCommand#1[1]{%
@@ -286,6 +286,21 @@
     \bxjs at do@precisetext
   \fi
 \fi
+\@onlypreamble\bxjs at check@everyparhook
+\def\bxjs at check@everyparhook{%
+  \ifx\jsInhibitGlueAtParTop\@empty
+    \def\bxjs at tmpa{\jsInhibitGlueAtParTop}%
+    \ifx\everyparhook\bxjs at tmpa
+      \let\everyparhook\@empty
+    \fi
+  \fi}
+\AtBeginDocument{\bxjs at check@everyparhook}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@modern
+  \let\bxjs at everypar\everypar
+  \newtoks\everypar
+  \everypar\bxjs at everypar
+  \bxjs at everypar{\the\expandafter\everypar\everyparhook}%
+\fi
 \ifbxjs at fancyhdr
 \@onlypreamble\bxjs at adjust@fancyhdr
 \def\bxjs at adjust@fancyhdr{%
@@ -323,7 +338,22 @@
 \AtBeginDocument{%
   \bxjs at pagestyle@hook
   \global\let\bxjs at pagestyle@hook\relax}
+\ifbxjs at jaspace@cmd
+  \def\jaenspace{\hskip.5\jsZw\relax}
+  \def\jathinspace{\hskip\z at skip}
+  \def\ {\zwspace}
+  \DeclareRobustCommand*{\jaspace}[1]{%
+    \expandafter\ifx\csname bxjs at jaspace@@#1\endcsname\relax
+      \ClassError\bxjs at clsname
+       {Unknown jaspace: #1}{\@eha}%
+    \else
+      \csname bxjs at jaspace@@#1\endcsname
+    \fi}
+  \def\bxjs at jaspace@@zenkaku{\hskip 1\jsZw\relax}
+  \def\bxjs at jaspace@@nibu{\hskip .5\jsZw\relax}
+  \def\bxjs at jaspace@@shibu{\hskip .25\jsZw\relax}
 \fi
+\fi
 \endinput
 %%
 %% End of file `bxjsja-minimal.def'.

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def	2017-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def	2017-10-21 21:37:58 UTC (rev 45566)
@@ -21,7 +21,7 @@
 %% same distribution. (The sources need not necessarily be
 %% in the same archive or directory.)
 \ProvidesFile{bxjsja-modern.def}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 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-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def	2017-10-21 21:37:58 UTC (rev 45566)
@@ -21,7 +21,7 @@
 %% same distribution. (The sources need not necessarily be
 %% in the same archive or directory.)
 \ProvidesFile{bxjsja-pandoc.def}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 BXJS document classes]
 \input{bxjsja-standard.def}
 \RequirePackage{bxjspandoc}
 \@onlypreamble\bxjs at set@dupload at proc
@@ -92,6 +92,20 @@
   \if at tempswa\ifx\jsParagraphMark\bxjs at org@paragraph at mark
     \let\jsParagraphMark\@empty
   \fi\fi}
+\ifnum0\if x\jsEngine1\fi\if l\jsEngine1\fi>\z@
+  \catcode"3000=\active
+  \begingroup \catcode`\!=7
+  \protected\gdef!!!!3000{\zwspace}
+  \endgroup
+\else\ifx\DeclareUnicodeCharacter\@undefined\else
+  \DeclareUnicodeCharacter{3000}{\bxjs at zsp@char}
+  \bxjs at protected\def\bxjs at zsp@char{\zwspace}
+\fi\fi
+\if j\jsEngine
+  \bxjs at fix@hyperref at unicode{false}
+\else
+  \bxjs at fix@hyperref at unicode{true}
+\fi
 \endinput
 %%
 %% End of file `bxjsja-pandoc.def'.

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def	2017-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def	2017-10-21 21:37:58 UTC (rev 45566)
@@ -21,7 +21,7 @@
 %% same distribution. (The sources need not necessarily be
 %% in the same archive or directory.)
 \ProvidesFile{bxjsja-standard.def}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 BXJS document classes]
 %% このファイルは日本語文字を含みます
 \input{bxjsja-minimal.def}
 \bxjs at simplejasetupfalse
@@ -235,6 +235,26 @@
     }%
   }%
 }
+\@onlypreamble\jsCheckHyperrefUnicode
+\let\jsCheckHyperrefUnicode\@empty
+\AtBeginDocument{\jsCheckHyperrefUnicode}
+\@onlypreamble\bxjs at check@hyperref at unicode
+\def\bxjs at check@hyperref at unicode#1{%
+  \g at addto@macro\jsCheckHyperrefUnicode{%
+    \@tempswafalse
+    \begingroup
+      \expandafter\ifx\csname ifHy at unicode\endcsname\relax
+        \aftergroup\@tempswatrue \fi
+      \expandafter\ifx\csname ifHy at unicode\expandafter\endcsname
+          \csname if#1\endcsname
+        \aftergroup\@tempswatrue \fi
+    \endgroup
+    \if at tempswa\else
+      \ClassError\bxjs at clsname
+       {The value of hyperref 'unicode' key is not suitable\MessageBreak
+        for the present engine (must be #1)}%
+       {\@ehc}%
+    \fi}}
 \@onlypreamble\bxjs at urgent@special
 \def\bxjs at urgent@special#1{%
   \AtBeginDvi{\special{#1}}%
@@ -281,14 +301,8 @@
       \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
+\ifbxjs at jaspace@cmd
+  \def\jathinspace{\hskip\xkanjiskip}
 \fi
 \ifbxjs at jp@jismmiv
   \PassOptionsToPackage{prefer2004jis}{pxchfon}
@@ -335,7 +349,7 @@
 \endgroup}
 \@gtempa
 \ifbxjs at hyperref@enc
-  \bxjs at fix@hyperref at unicode{false}
+  \bxjs at check@hyperref at unicode{false}
 \fi
 \if \ifx\bxjs at driver@given\bxjs at driver@@dvipdfmx T%
     \else\ifjsWithpTeXng T\else F\fi\fi T%
@@ -372,7 +386,10 @@
 \else\if p\jsEngine
 \bxjs at adjust@jafont{f}
 \edef\bxjs at tmpa{\bxjs at catopt\bxjs at tmpa\bxjs at jp@font}
-\edef\bxjs at tmpa{\bxjs at catopt\bxjs at tmpa{whole,autotilde}}
+\edef\bxjs at tmpa{\bxjs at catopt\bxjs at tmpa{whole}}
+\def\bxjs at tmpb{pandoc}\ifx\bxjs at tmpb\bxjs at jadriver\else
+  \edef\bxjs at tmpa{\bxjs at catopt\bxjs at tmpa{autotilde}}
+\fi
 \edef\bxjs at next{%
   \noexpand\RequirePackage[\bxjs at tmpa]{bxcjkjatype}[2013/10/15]% v0.2c
 }\bxjs at next
@@ -422,9 +439,8 @@
   \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}
+\ifbxjs at jaspace@cmd
+  \protected\def\jathinspace{\CJKecglue}
 \fi
 \ifx t\bxjs at enablejfam
   \ClassWarningNoLine\bxjs at clsname
@@ -455,7 +471,15 @@
     \PassOptionsToPackage{unicode}{hyperref}
   \fi
 \fi
-\let\jsInhibitGlueAtParTop\@empty
+\AtEndOfPackage{%
+\def\@gnewline #1{%
+  \ifvmode \@nolnerr
+  \else
+    \unskip \reserved at e {\reserved at f#1}\nobreak \hfil \break \null
+    \nobreak \hskip-1sp\hskip1sp\relax
+    \ignorespaces
+  \fi}
+}
 \newskip\jsKanjiSkip
 \newskip\jsXKanjiSkip
 \ifx\CJKecglue\@undefined
@@ -480,9 +504,8 @@
 \def\bxjs at jachar#1{%
   \xeCJKDeclareCharClass{CJK}{`#1}\relax
   #1}
-\ifbxjs at xkanjiskip@cmd
-  \protected\def\>{%
-    \relax\ifmmode \mskip\medmuskip \else \CJKecglue\ignorespaces \fi}
+\ifbxjs at jaspace@cmd
+  \protected\def\jathinspace{\CJKecglue}
 \fi
 \ifx t\bxjs at enablejfam
   \@enablejfamtrue
@@ -530,13 +553,33 @@
 \ltjsetparameter{jaxspmode={`〒,2}}
 \ltjsetparameter{alxspmode={`+,3}}
 \ltjsetparameter{alxspmode={`\%,3}}
-\protected\def\@inhibitglue{%
-  \directlua{%
-    luatexja.jfmglue.create_beginpar_node()}}
-\let\bxjs at ltj@inhibitglue\@inhibitglue
-\let\@@inhibitglue\@undefined
+\ifx\ltjfakeparbegin\@undefined
+  \protected\def\ltjfakeparbegin{%
+    \ifhmode
+      \relax\directlua{%
+        luatexja.jfmglue.create_beginpar_node()}}
+    \fi}
+\fi
+\unless\ifnum\bxjs at everyparhook=\bxjs at everyparhook@none
+\begingroup
+  \let\%\@percentchar \def\@#1{[[\detokenize{#1}]]}
+  \@gobble\if\def\bxjs at tmpa{\@{\everypar{}\fi}}
+  \ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
+    \@gobble\if\def\bxjs at tmpa{\@{\everypar{\everyparhook}\fi}}\fi
+  \directlua{
+    local function patchcmd(cs, code, from, to)
+      tex.sprint(code:gsub(from:gsub("\%W", "\%\%\%0"), "\%0"..to)
+        :gsub("macro:", \@\gdef..cs, 1):gsub("->", "{", 1).."}")
+    end
+    patchcmd(\@\@xsect, [[\meaning\@xsect]],
+      \@{\hskip-\@tempskipa}, \@\ltjfakeparbegin)
+    patchcmd(\@\@item, [[\meaning\@item]],
+      \bxjs at tmpa, \@\ltjfakeparbegin)}
+\endgroup
+\fi
 \ifbxjs at hyperref@enc
-  \bxjs at fix@hyperref at unicode{true}
+  \PassOptionsToPackage{unicode}{hyperref}
+  \bxjs at check@hyperref at unicode{true}
 \fi
 \protected\def\autospacing{%
   \ltjsetparameter{autospacing=true}}
@@ -552,11 +595,9 @@
   \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}
+\ifbxjs at jaspace@cmd
+  \protected\def\jathinspace{%
+    \hskip\ltjgetparameter{xkanjiskip}\relax}
 \fi
 \ifx f\bxjs at enablejfam
   \ClassWarningNoLine\bxjs at clsname
@@ -572,6 +613,16 @@
   \DeclareJaMathFontCommand{\mathmc}{\mcfamily}
   \DeclareJaMathFontCommand{\mathgt}{\gtfamily}
 \fi
+\ifbxjs at jaspace@cmd
+  \bxjs at protected\def\bxjs at choice@jathinspace{%
+    \relax\ifmmode \mskip\medmuskip
+    \else \jathinspace\ignorespaces
+    \fi}
+  \jsAtEndOfClass{%
+    \ifjsWitheTeX \let\>\bxjs at choice@jathinspace
+    \else \def\>{\protect\bxjs at choice@jathinspace}%
+    \fi}
+\fi
 \setkanjiskip{0pt plus.1\jsZw minus.01\jsZw}
 \ifx\jsDocClass\jsSlide \setxkanjiskip{0.1em}
 \else \setxkanjiskip{0.25em plus 0.15em minus 0.06em}

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty	2017-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty	2017-10-21 21:37:58 UTC (rev 45566)
@@ -21,7 +21,7 @@
 %% same distribution. (The sources need not necessarily be
 %% in the same archive or directory.)
 \ProvidesPackage{bxjspandoc}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 BXJS document classes]
 %% このファイルは日本語文字を含みます.
 \def\bxjsp at pkgname{bxjscjkcat}
 \let\bxjsp at engine=n

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls	2017-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls	2017-10-21 21:37:58 UTC (rev 45566)
@@ -22,7 +22,7 @@
 %% in the same archive or directory.)
 \NeedsTeXFormat{LaTeX2e}
 \ProvidesClass{bxjsreport}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 BXJS document classes]
 %% このファイルは日本語文字を含みます.
 \def\bxjs at clsname{bxjsreport}
 \newif\ifjsc at needsp@tch
@@ -549,14 +549,27 @@
 \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}[true]{\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}[true]{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
+\newif\ifbxjs at jaspace@cmd \bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at true\bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at false\bxjs at jaspace@cmdfalse
+\define at key{bxjs}{jaspace-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#1}{}}
+\define at key{bxjs}{xkanjiskip-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#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
 \define at key{bxjs}{hyperref-enc}[true]{\bxjs at set@keyval{hyperrefenc}{#1}{}}
+\chardef\bxjs at everyparhook@none=0
+\chardef\bxjs at everyparhook@compat=1
+\chardef\bxjs at everyparhook@modern=2
+\if j\jsEngine
+  \let\bxjs at everyparhook\bxjs at everyparhook@compat
+\else
+  \let\bxjs at everyparhook\bxjs at everyparhook@modern
+\fi
+\def\bxjs at kv@everyparhook at none{\let\bxjs at everyparhook\bxjs at everyparhook@none}
+\def\bxjs at kv@everyparhook at compat{\let\bxjs at everyparhook\bxjs at everyparhook@compat}
+\def\bxjs at kv@everyparhook at modern{\let\bxjs at everyparhook\bxjs at everyparhook@modern}
+\define at key{bxjs}{everyparhook}{\bxjs at set@keyval{everyparhook}{#1}{}}
 \let\bxjs at ltx@removeelement\@removeelement
 \def\@removeelement#1#2#3{%
   \def\reserved at a{#2}%
@@ -1332,6 +1345,10 @@
   \@ifstar
     {\@ssect{#3}{#4}{#5}{#6}}%
     {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
+  \let\bxjs at if@ceph\@firstofone
+\else \let\bxjs at if@ceph\@gobble
+\fi
 \def\@sect#1#2#3#4#5#6[#7]#8{%
   \ifnum #2>\c at secnumdepth
     \let\@svsec\@empty
@@ -1379,11 +1396,10 @@
         \unskip
         \@tempskipa #1\relax
         \hskip -\@tempskipa
-        \bxjs at ltj@inhibitglue
       \else
         \clubpenalty \@clubpenalty
-        \everypar{\everyparhook}%
-      \fi\everyparhook}%
+        \everypar\expandafter{\bxjs at if@ceph\everyparhook}%
+      \fi\bxjs at if@ceph\everyparhook}%
   \else
     \par \nobreak
     \vskip \@tempskipa
@@ -1408,7 +1424,6 @@
     \endgroup
   \fi
   \@xsect{#3}}
-\let\bxjs at ltj@inhibitglue\@empty
 \newcommand*\chaptermark[1]{}
 \setcounter{secnumdepth}{2}
 \newcounter{part}
@@ -2126,7 +2141,10 @@
   \llap{\@makefnmark\hskip0.3\jsZw}#1}
 \let\jsInhibitGlueAtParTop\@empty
 \def\everyparhook{\jsInhibitGlueAtParTop}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
 \AtBeginDocument{\everypar{\everyparhook}}
+\fi
+\ifx j\jsEngine
 \def\@inhibitglue{%
   \futurelet\@let at token\@@inhibitglue}
 \begingroup
@@ -2154,6 +2172,8 @@
       \inhibitglue
     \fi
   \fi}
+\fi
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
 \def\@doendpe{%
   \@endpetrue
   \def\par{%
@@ -2206,7 +2226,6 @@
       \clubpenalty \@clubpenalty
       \everypar{\everyparhook}%
     \fi
-    \bxjs at ltj@inhibitglue
     \everyparhook}%
   \if at noitemarg
     \@noitemargfalse
@@ -2240,6 +2259,9 @@
       \clubpenalty \@clubpenalty
       \everypar{\everyparhook}%
     \fi\everyparhook}}
+\fi
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@none\else
+\AtEndOfPackage{%
 \def\@gnewline #1{%
   \ifvmode
     \@nolnerr
@@ -2247,6 +2269,8 @@
     \unskip \reserved at e {\reserved at f#1}\nobreak \hfil \break \null
     \jsInhibitGlue \ignorespaces
   \fi}
+}
+\fi
 \if at jslogo
   \IfFileExists{jslogo.sty}{%
     \RequirePackage{jslogo}%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls	2017-10-21 10:30:18 UTC (rev 45565)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls	2017-10-21 21:37:58 UTC (rev 45566)
@@ -22,7 +22,7 @@
 %% in the same archive or directory.)
 \NeedsTeXFormat{LaTeX2e}
 \ProvidesClass{bxjsslide}
-  [2017/09/24 v1.6a BXJS document classes]
+  [2017/10/21 v1.7 BXJS document classes]
 %% このファイルは日本語文字を含みます.
 \def\bxjs at clsname{bxjsslide}
 \newif\ifjsc at needsp@tch
@@ -541,14 +541,27 @@
 \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}[true]{\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}[true]{\bxjs at set@keyval{xkanjiskipcmd}{#1}{}}
+\newif\ifbxjs at jaspace@cmd \bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at true\bxjs at jaspace@cmdtrue
+\let\bxjs at kv@jaspacecmd at false\bxjs at jaspace@cmdfalse
+\define at key{bxjs}{jaspace-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#1}{}}
+\define at key{bxjs}{xkanjiskip-cmd}[true]{\bxjs at set@keyval{jaspacecmd}{#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
 \define at key{bxjs}{hyperref-enc}[true]{\bxjs at set@keyval{hyperrefenc}{#1}{}}
+\chardef\bxjs at everyparhook@none=0
+\chardef\bxjs at everyparhook@compat=1
+\chardef\bxjs at everyparhook@modern=2
+\if j\jsEngine
+  \let\bxjs at everyparhook\bxjs at everyparhook@compat
+\else
+  \let\bxjs at everyparhook\bxjs at everyparhook@modern
+\fi
+\def\bxjs at kv@everyparhook at none{\let\bxjs at everyparhook\bxjs at everyparhook@none}
+\def\bxjs at kv@everyparhook at compat{\let\bxjs at everyparhook\bxjs at everyparhook@compat}
+\def\bxjs at kv@everyparhook at modern{\let\bxjs at everyparhook\bxjs at everyparhook@modern}
+\define at key{bxjs}{everyparhook}{\bxjs at set@keyval{everyparhook}{#1}{}}
 \let\bxjs at ltx@removeelement\@removeelement
 \def\@removeelement#1#2#3{%
   \def\reserved at a{#2}%
@@ -1321,6 +1334,10 @@
   \@ifstar
     {\@ssect{#3}{#4}{#5}{#6}}%
     {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
+  \let\bxjs at if@ceph\@firstofone
+\else \let\bxjs at if@ceph\@gobble
+\fi
 \def\@sect#1#2#3#4#5#6[#7]#8{%
   \ifnum #2>\c at secnumdepth
     \let\@svsec\@empty
@@ -1368,11 +1385,10 @@
         \unskip
         \@tempskipa #1\relax
         \hskip -\@tempskipa
-        \bxjs at ltj@inhibitglue
       \else
         \clubpenalty \@clubpenalty
-        \everypar{\everyparhook}%
-      \fi\everyparhook}%
+        \everypar\expandafter{\bxjs at if@ceph\everyparhook}%
+      \fi\bxjs at if@ceph\everyparhook}%
   \else
     \par \nobreak
     \vskip \@tempskipa
@@ -1397,7 +1413,6 @@
     \endgroup
   \fi
   \@xsect{#3}}
-\let\bxjs at ltj@inhibitglue\@empty
 \newcommand*\chaptermark[1]{}
 \setcounter{secnumdepth}{3}
 \newcounter{part}
@@ -1987,7 +2002,10 @@
   \llap{\@makefnmark\hskip0.3\jsZw}#1}
 \let\jsInhibitGlueAtParTop\@empty
 \def\everyparhook{\jsInhibitGlueAtParTop}
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
 \AtBeginDocument{\everypar{\everyparhook}}
+\fi
+\ifx j\jsEngine
 \def\@inhibitglue{%
   \futurelet\@let at token\@@inhibitglue}
 \begingroup
@@ -2015,6 +2033,8 @@
       \inhibitglue
     \fi
   \fi}
+\fi
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@compat
 \def\@doendpe{%
   \@endpetrue
   \def\par{%
@@ -2067,7 +2087,6 @@
       \clubpenalty \@clubpenalty
       \everypar{\everyparhook}%
     \fi
-    \bxjs at ltj@inhibitglue
     \everyparhook}%
   \if at noitemarg
     \@noitemargfalse
@@ -2101,6 +2120,9 @@
       \clubpenalty \@clubpenalty
       \everypar{\everyparhook}%
     \fi\everyparhook}}
+\fi
+\ifnum\bxjs at everyparhook=\bxjs at everyparhook@none\else
+\AtEndOfPackage{%
 \def\@gnewline #1{%
   \ifvmode
     \@nolnerr
@@ -2108,6 +2130,8 @@
     \unskip \reserved at e {\reserved at f#1}\nobreak \hfil \break \null
     \jsInhibitGlue \ignorespaces
   \fi}
+}
+\fi
 \if at jslogo
   \IfFileExists{jslogo.sty}{%
     \RequirePackage{jslogo}%



More information about the tex-live-commits mailing list