texlive[46121] Master/texmf-dist: jlreq (22dec17)

commits+karl at tug.org commits+karl at tug.org
Fri Dec 22 22:23:18 CET 2017


Revision: 46121
          http://tug.org/svn/texlive?view=revision&revision=46121
Author:   karl
Date:     2017-12-22 22:23:18 +0100 (Fri, 22 Dec 2017)
Log Message:
-----------
jlreq (22dec17)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/jlreq/README-ja.md
    trunk/Master/texmf-dist/doc/latex/jlreq/README.md
    trunk/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html
    trunk/Master/texmf-dist/doc/latex/jlreq/jlreq.html
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bjlreq-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bjlreq.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bjlreqg-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bjlreqg.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bzjlreq-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bzjlreq.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bzjlreqg-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bzjlreqg.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/jlreq-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/jlreq.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/jlreqg-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/jlreqg.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubjlreq-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubjlreq.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubjlreqg-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubjlreqg.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubzjlreq-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubzjlreq.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubzjlreqg-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubzjlreqg.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ujlreq-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ujlreq.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ujlreqg-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ujlreqg.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/uzjlreq-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/uzjlreq.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/uzjlreqg-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/uzjlreqg.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/zjlreq-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/zjlreq.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/zjlreqg-v.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/jlreq/zjlreqg.tfm
    trunk/Master/texmf-dist/tex/latex/jlreq/jlreq.cls
    trunk/Master/texmf-dist/tex/luatex/jlreq/jfm-jlreq.lua
    trunk/Master/texmf-dist/tex/luatex/jlreq/jfm-jlreqv.lua

Modified: trunk/Master/texmf-dist/doc/latex/jlreq/README-ja.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/jlreq/README-ja.md	2017-12-22 21:22:52 UTC (rev 46120)
+++ trunk/Master/texmf-dist/doc/latex/jlreq/README-ja.md	2017-12-22 21:23:18 UTC (rev 46121)
@@ -200,8 +200,13 @@
 }
 ```
 
-のように使います.
+のように使います.この意味は次の通りです.
 
+* `\part`,`\section`,`\subsection`という順番で見出しが掲げられていて,その前後が見出しでない場合は,`\part`は三行取り+前に一行空き,`\section`と`\subsection`は二行取りとなります.
+* `\section`,`\subsection`という順番で見出しが掲げられていて,その前後が乱し出ない場合は,全体で五行取りとし,`\section`と`\subsection`との間に`23pt`の空き,`\subsection`の後に`16pt`の空きを入れます.
+
+個々の設定は以下のようになります.
+
 * 各々の``{}``内には``_<見出し命令名>``か``<寸法>``をカンマ区切りで並べます.
 * 先頭に``[]``で囲まれた設定を追加できます.これは連続して掲げられた見出し全体への設定となります.``lines / before_lines / after_lines / before_space / after_space``が利用可能です.各々の意味は上述の行取り指定と同じです.
 * 寸法はそのまま空き量を表します.
@@ -209,7 +214,7 @@
 * 見出しに対する``{}``で囲まれた設定内では,``lines / before_lines / after_lines / before_space / after_space``が利用可能です.各々の意味は上述の行取り指定と同じです.
 * ``{}``で囲まれた部分を``*``のみにすると(例えば``_section{*}``とすると)単独で掲げた場合と同じ設定を使います.
 
-なお,見出しが連続しているかは単純に別行見出しの命令が並んで書かれているかのみで判断します.従ってそれらの命令間に出力には関係しないような命令が挟まっていたとしても,見出しが連続して掲げられているとは判断されません.ただし,見出し命令の間に空白または`\label`のみが挟まれている場合は,見出しが連続していると判断されます.
+なお,見出しが連続しているかは単純に別行見出しの命令が並んで書かれているかのみで判断します.従ってそれらの命令間に出力には関係しないような命令が挟まっていたとしても,見出しが連続して掲げられているとは判断されません.ただし,見出し命令の間に空白,改行または`\label[<オプション>]{<引数>}…{<引数>}`という形のもののみが挟まれている場合は,見出しが連続していると判断されます.
 
 ### 同行見出し
 `\DeclareRuninHeading`で作成します.通常の文書クラスにおける`\section`と同様の,`\<命令名>*[running head]{見出し文字列}`という書式の命令が作成されます.設定は以下の通り.
@@ -259,6 +264,35 @@
 
 `\NewPageStyle`,`\RenewPageStyle`,`\ProvidePageStyle`もあります.`\ModifyPageStyle`により既存のページスタイルを改変することが可能です.
 
+## JFM
+以下のような独自のJFMを使います.パッケージによっては,パッケージ独自のJFMや,また標準のJFMを使うように設定がし直される場合があります.例えばLuaTeX-jaに付属するluatexja-presetパッケージは通常LuaTeX-ja標準のJFMを使います.本クラスファイルで使っているJFMを使う場合は,
+```LaTeX
+\usepackage[jfm_yoko=jlreq,jfm_tate=jlreqv,hiragino-pron]{luatexja-preset}
+```
+のようにオプションで指定する必要があります.
+
+### pLaTeX/upLaTeXの場合
+JFMの名前は次の通りです.`[]`で囲まれている文字は設定により入ったり入らなかったりします.
+```
+[u][b][z]jlreq[g][-v]
+```
+それぞれの文字は以下の場合に入ります.
+
+* `u`: upLaTeX利用時
+* `b`: ぶら下げ組み利用時.(クラスオプションに`hanging_punctuation`が指定された時.)
+* `z`: 行頭における開き括弧類の前の空きが,段落開始時が全角二分,折り返し時が二分の時.(クラスオプションに`open_bracket_pos=zenkakunibu_nibu`が指定された時.)
+* `g`: ゴシック用フォント.
+* `-v`: 縦書き用.
+
+例えば,ぶら下げ組みを利用せず,クラスオプションに`open_bracket_pos=zenkakunibu_nibu`が指定されいてるソースをpLaTeXで処理した場合,横書き明朝体には`zjlreq`という名前のJFMが使われます.
+
+### LuaLaTeXの場合
+* 横書き用のJFMは`jlreq`
+* 縦書き用のJFMは`jlreqv`
+
+となります.ゴシックも同じJFMを使います.
+
+
 ## その他
 * クラスオプション`jlreq_notes`が渡されると,日本語組版処理の記述と矛盾する設定が行われた場合に通知がされます.
 
@@ -310,6 +344,10 @@
     - `\contentsname` と `\indexname`に入っていたスペースを削除.
 * 2017-12-02
     - バグ修正
+* 2017-12-22
+    - JFMを改善.
+    - 別行見出しの間の`\label`の検出方法を変更.
+    - `\theequation`,`\thefigure`,`\thetable`に章番号を追加.
 
 
 

Modified: trunk/Master/texmf-dist/doc/latex/jlreq/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/jlreq/README.md	2017-12-22 21:22:52 UTC (rev 46120)
+++ trunk/Master/texmf-dist/doc/latex/jlreq/README.md	2017-12-22 21:23:18 UTC (rev 46121)
@@ -64,6 +64,10 @@
     - Removed a space from `\contentsname` and `\indexname`.
 * 2017-12-02
     - Fixed bugs.
+* 2017-12-22
+    - Improved JFM.
+    - Change the way to detect `\label` between block headings.
+    - Added chapter number to `\theequation`,`\thefigure`,`\thetable`.
 
 
 

Modified: trunk/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html
===================================================================
--- trunk/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html	2017-12-22 21:22:52 UTC (rev 46120)
+++ trunk/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html	2017-12-22 21:23:18 UTC (rev 46121)
@@ -53,45 +53,45 @@
       border-style: none;
     }
     div.sourceCode { overflow-x: auto; text-indent: 0em;}
-    code > span.kw { color: #007020; font-weight: bold; } /* Keyword */
-    code > span.dt { color: #902000; } /* DataType */
-    code > span.dv { color: #40a070; } /* DecVal */
-    code > span.bn { color: #40a070; } /* BaseN */
-    code > span.fl { color: #40a070; } /* Float */
-    code > span.ch { color: #4070a0; } /* Char */
-    code > span.st { color: #4070a0; } /* String */
-    code > span.co { color: #008000; } /* Comment */
-    code > span.ot { color: #007020; } /* Other */
-    code > span.al { color: #ff0000; font-weight: bold; } /* Alert */
-    code > span.fu { color: #0040FF; } /* Function */
-    code > span.er { color: #ff0000; font-weight: bold; } /* Error */
-    code > span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
-    code > span.cn { color: #880000; } /* Constant */
-    code > span.sc { color: #4070a0; } /* SpecialChar */
-    code > span.vs { color: #4070a0; } /* VerbatimString */
-    code > span.ss { color: #bb6688; } /* SpecialString */
-    code > span.im { } /* Import */
-    code > span.va { color: #19177c; } /* Variable */
-    code > span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
-    code > span.op { color: #666666; } /* Operator */
-    code > span.bu { color: #0040FF; } /* BuiltIn */
-    code > span.ex { } /* Extension */
-    code > span.pp { color: #bc7a00; } /* Preprocessor */
-    code > span.at { color: #7d9029; } /* Attribute */
-    code > span.do { color: #ba2121; font-style: italic; } /* Documentation */
-    code > span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
-    code > span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
-    code > span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
+    code span.kw { color: #007020; font-weight: bold; } /* Keyword */
+    code span.dt { color: #902000; } /* DataType */
+    code span.dv { color: #40a070; } /* DecVal */
+    code span.bn { color: #40a070; } /* BaseN */
+    code span.fl { color: #40a070; } /* Float */
+    code span.ch { color: #4070a0; } /* Char */
+    code span.st { color: #4070a0; } /* String */
+    code span.co { color: #008000; } /* Comment */
+    code span.ot { color: #007020; } /* Other */
+    code span.al { color: #ff0000; font-weight: bold; } /* Alert */
+    code span.fu { color: #0040FF; } /* Function */
+    code span.er { color: #ff0000; font-weight: bold; } /* Error */
+    code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
+    code span.cn { color: #880000; } /* Constant */
+    code span.sc { color: #4070a0; } /* SpecialChar */
+    code span.vs { color: #4070a0; } /* VerbatimString */
+    code span.ss { color: #bb6688; } /* SpecialString */
+    code span.im { } /* Import */
+    code span.va { color: #19177c; } /* Variable */
+    code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
+    code span.op { color: #666666; } /* Operator */
+    code span.bu { color: #0040FF; } /* BuiltIn */
+    code span.ex { } /* Extension */
+    code span.pp { color: #bc7a00; } /* Preprocessor */
+    code span.at { color: #7d9029; } /* Attribute */
+    code span.do { color: #ba2121; font-style: italic; } /* Documentation */
+    code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
+    code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
+    code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
   </style>
 </head>
 <body>
 <article class="markdown-body">
 <h1 id="jlreq">jlreq</h1>
-<h2>これは何?</h2>
+<h2 id="これは何">これは何?</h2>
 <p><a href="https://www.w3.org/TR/jlreq/ja/">日本語組版処理の要件</a>の実装を試みる<a href="https://osdn.jp/projects/luatex-ja/wiki/FrontPage">LuaTeX-ja</a> / pLaTeX / upLaTeX用のクラスファイルと,それに必要なJFMの組み合わせです.</p>
-<h2>提供されるもの</h2>
+<h2 id="提供されるもの">提供されるもの</h2>
 <p>クラスファイルjlreq.clsと,横書きLuaTeX-ja用のJFMであるjfm-jlreq.luaが用意されています.また,縦書きのJFMやpLaTeX / upLaTeX 用のJFMを生成するいくつかのスクリプトがあります.</p>
-<h2>インストール</h2>
+<h2 id="インストール">インストール</h2>
 <p><code>make</code>で必要なJFMを生成してください.その後,</p>
 <ul>
 <li>*.tfm -> $TEXMF/fonts/tfm/public/jlreq</li>
@@ -100,11 +100,11 @@
 <li>jlreq.cls -> $TEXMF/tex/latex/jlreq</li>
 </ul>
 <p>と配置します.<code>make install</code>とすると,$TEXMF=$TEXMFHOMEとしてこのコピーを行います.</p>
-<h2>使い方</h2>
+<h2 id="使い方">使い方</h2>
 <p>通常通り</p>
-<div class="sourceCode"><pre class="sourceCode latex"><code class="sourceCode latex"><span class="bu">\documentclass</span>{<span class="ex">jlreq</span>}</code></pre></div>
+<pre class="sourceCode latex" id="cb1"><code class="sourceCode latex"><a class="sourceLine" id="cb1-1" data-line-number="1"><span class="bu">\documentclass</span>{<span class="ex">jlreq</span>}</a></code></pre>
 <p>とします.これで横書きのarticle相当の文書クラスとなります.エンジンは自動判定されますが,指定する場合はクラスオプションに<code>platex/uplatex/lualatex</code>のいずれかを渡してください.縦書きにするには<code>tate</code>オプションを渡します.また,reportやbook相当の文書クラスとするには,それぞれ<code>report</code>や<code>book</code>オプションを渡します.たとえば,縦書きの本を作成するには</p>
-<div class="sourceCode"><pre class="sourceCode latex"><code class="sourceCode latex"><span class="bu">\documentclass</span>[tate,book]{<span class="ex">jlreq</span>}</code></pre></div>
+<pre class="sourceCode latex" id="cb2"><code class="sourceCode latex"><a class="sourceLine" id="cb2-1" data-line-number="1"><span class="bu">\documentclass</span>[tate,book]{<span class="ex">jlreq</span>}</a></code></pre>
 <p>とします.</p>
 <p>その他,<code>oneside / twoside / onecolumn / twocolumn / titlepage / notitlepage / draft / final / openright / openany / leqno / fleqn</code>というよくあるオプションを受け付けます.</p>
 <p>標準的な文書クラスと同じように中身を書くことができますが,次のような命令が追加 / 拡張されています.</p>
@@ -112,33 +112,34 @@
 <p>設定用命令です.プリアンブルでしか使えません.文書に対する設定は,クラスオプションとして行うか<code>\jlreqsetup</code>を通じて行うかします.どちらで設定するかは設定項目によります.</p>
 <h3 id="section"><code>\section</code></h3>
 <p><code>\section*[running head]{見出し文字列}[副題]</code>というように,通常の書式に加えて副題を受け付けられるように拡張されています.その他,<code>\part</code>(articleのみ),<code>\chapter</code>(book/reportのみ),<code>\subsection</code>,<code>\subsubsection</code>も副題を受け付けます.</p>
-<h3 id="abstract"><code>abstract</code>環境</h3>
+<h3 id="abstract環境"><code>abstract</code>環境</h3>
 <p>プリアンブルにもかけるようになっています.プリアンブルに書かれた場合は,<code>\maketitle</code>とともに出力されます.二段組の場合は,段組にならず概要を出力することができます.</p>
 <h3 id="sidenote"><code>\sidenote</code></h3>
 <p>この命令は傍注の幅が正の時にのみ定義されます.デフォルトの基本版面ではこの幅は0に設定されています.従って<code>\sidenote</code>は定義されません.後の基本版面の設定を参考にしてください.</p>
 <p><code>\sidenote</code>は傍注(縦組みの場合は脚注)を出力します.内部では<code>\marginpar</code>を使っています.デフォルトでは<code>\footnote</code>と同様の書式となりますが,<code>\jlreqsetup</code>で<code>sidenote_type=symbol</code>が指定されている場合,その書式は<code>\sidenote{該当項目}{注}</code>となります.たとえば</p>
-<div class="sourceCode"><pre class="sourceCode latex"><code class="sourceCode latex">刊行できる<span class="fu">\sidenote</span>{原稿}{印刷などの方法により……}を入手する仕事である.</code></pre></div>
+<pre class="sourceCode latex" id="cb3"><code class="sourceCode latex"><a class="sourceLine" id="cb3-1" data-line-number="1">刊行できる<span class="fu">\sidenote</span>{原稿}{印刷などの方法により……}を入手する仕事である.</a></code></pre>
 <p>とします.後の説明も参照してください.</p>
 <h3 id="endnote"><code>\endnote</code></h3>
 <p>後注を指定します.<code>\footnote</code>と同様の書式です.デフォルトでは,注自身の出力は見出し直前に行われます.この動作は<code>\jlreqsetup</code>に<code>endnote_position</code>を渡すことで制御できます.詳しくは後の注関係の説明をご覧ください.また<code>\theendnotes</code>を実行するとその場に出力をします.</p>
 <h3 id="warichu"><code>\warichu</code></h3>
 <p>割注を出力します.行分割位置などは自動で計算されます.(複数回のコンパイルが必要.)<code>\warichu*</code>ではこれらの位置を手動で指定できます.書式は</p>
-<pre><code>\warichu*{(一行目前) & (一行目後)\\ (二行目前) & (二行目後)...}</code></pre>
+<pre><code>\warichu*{(一行目前) & (一行目後)\\ (二行目前) & (二行目後)...}
+</code></pre>
 <p>です.<code>&</code>が省略されている場合は自動で調整されます.</p>
 <h3 id="tatechuyoko"><code>\tatechuyoko</code></h3>
 <p>縦中横を出力します.<code>\tatechuyoko{<文字列>}</code>とします.縦書きでない場所で使うとエラーになります.</p>
 <h3 id="jafontsize"><code>\jafontsize</code></h3>
 <p>和文フォントサイズを指定する<code>\fontsize</code>です.クラスオプションで<code>jafontscale=0.9</code>とされている場合,<code>\fontsize{9pt}{15pt}</code>とすると和文フォントのサイズは<code>8.1pt</code>となりますが,<code>\jafontsize{9pt}{15pt}</code>とすると<code>9pt</code>となります.(欧文フォントサイズは<code>10pt</code>となる.)なお,第二引数は<code>\fontsize</code>の第二引数と全く同じです.</p>
-<h3 id="section-1"><code>\ </code></h3>
+<h3 id="-"><code>\ </code></h3>
 <p>全角空白(U+3000)一文字からなるマクロです.和文間隔を挿入します.LuaLaTeXでは<code> </code>のみでも和文間隔を入力できます.</p>
-<h3>その他</h3>
+<h3 id="その他">その他</h3>
 <ul>
 <li>ルビや圏点は提供されません.<a href="https://github.com/zr-tex8r/PXrubrica">PXrubrica</a>またはluatexja-ruby(LuaLaTeX,LuaTeX-jaパッケージに付属)を使うと良いかと思います.</li>
-<li><p>日本語組版処理の要件2.3.2.dによれば,二段組の最後のページの各段の行数は揃えることが望ましいとされていますが,この処理は行われません.<code>nidanfloat</code>パッケージを使い,</p>
-<div class="sourceCode"><pre class="sourceCode latex"><code class="sourceCode latex"><span class="bu">\usepackage</span>[balance]{<span class="ex">nidanfloat</span>}</code></pre></div>
-<p>とするとこの処理が行われます.ただし,最終ページでの<code>\newpage</code>や<code>\clearpage</code>が正しく動作しません.詳しくは<code>nidanfloat</code>パッケージのマニュアルをご覧ください.</p></li>
+<li>日本語組版処理の要件2.3.2.dによれば,二段組の最後のページの各段の行数は揃えることが望ましいとされていますが,この処理は行われません.<code>nidanfloat</code>パッケージを使い,</li>
 </ul>
-<h2>各種設計</h2>
+<pre class="sourceCode latex" id="cb5"><code class="sourceCode latex"><a class="sourceLine" id="cb5-1" data-line-number="1"><span class="bu">\usepackage</span>[balance]{<span class="ex">nidanfloat</span>}</a></code></pre>
+<p>とするとこの処理が行われます.ただし,最終ページでの<code>\newpage</code>や<code>\clearpage</code>が正しく動作しません.詳しくは<code>nidanfloat</code>パッケージのマニュアルをご覧ください.</p>
+<h2 id="各種設計">各種設計</h2>
 <p>設計はクラスオプションまたは<code>\jlreqsetup</code>によりkeyval形式で行います.以下では次の用法を使います.</p>
 <ul>
 <li><code>[A/B]</code>:AまたはBです.<code>[A/B/C]</code>等も同様.</li>
@@ -148,7 +149,7 @@
 <li><code>zw</code>, <code>zh</code>:全角幅として解釈されます.</li>
 </ul></li>
 </ul>
-<h3>基本版面</h3>
+<h3 id="基本版面">基本版面</h3>
 <p>クラスオプションです.</p>
 <ul>
 <li><code>paper=[<紙サイズ名>/{<寸法>,<寸法>}]</code>:紙サイズです.紙サイズ名はa0からa10,b0からb10,c2からc8を指定できます.B列はJIS B列です.また,<code>{<横>,<縦>}</code>と直接寸法を指定することもできます.</li>
@@ -171,13 +172,13 @@
 <li><code>column_gap=<寸法;zw,zh></code>:段間(<code>twocolumn</code>指定時のみ).</li>
 <li><code>sidenote_length=<寸法;zw,zh></code>:傍注の幅を指定します.</li>
 </ul>
-<h3>組み方</h3>
+<h3 id="組み方">組み方</h3>
 <p>クラスオプションです.</p>
 <ul>
 <li><code>open_bracket_pos=[zenkaku_tentsuki/zenkakunibu_nibu/nibu_tentsuki]</code>:始め括弧が行頭に来た際の配置方法を指定します.それぞれ段落開始全角折り返し行頭天付き(デフォルト),段落開始全角二分折り返し行頭二分,段落開始二分折り返し行頭天付きを意味します.</li>
 <li><code>hanging_punctuation</code>:ぶら下げ組をします.</li>
 </ul>
-<h3>注関係</h3>
+<h3 id="注関係">注関係</h3>
 <p><code>\jlreqsetup</code>で指定します.</p>
 <ul>
 <li><code>reference_mark=[inline/interlinear]</code>:合印の配置方法を指定します.<code>inline</code>にすると該当項目の後ろの行中に配置します.<code>interlinear</code>を指定すると該当項目の上(横組)または右(縦組)に配置します.</li>
@@ -186,13 +187,13 @@
 <li><code>sidenote_keyword_font=<命令></code>:<code>sidenote_symbol=symbol</code>の時に,注のついている単語のフォント指定.デフォルトは無し(強調しない)</li>
 <li><code>endnote_position=[headings/paragraph/{_<見出し名1>,_<見出し名2>,...}]</code>:後注の出力場所を指定します.<code>headings</code>は各見出しの直前(デフォルト),<code>paragraph</code>は改段落の際に出力します.また,<code>endnote_position={_chapter,_section}</code>とすると,<code>\chapter</code>と<code>\section</code>の直前に出力します.</li>
 </ul>
-<h3>キャプション</h3>
+<h3 id="キャプション">キャプション</h3>
 <p>図表のキャプションを<code>\jlreqsetup</code>で変更できます.</p>
 <ul>
 <li><code>caption_font=<命令></code>:キャプション自身のフォントを指定します.</li>
 <li><code>caption_label_font=<命令></code>:キャプションのラベルのフォントを指定します.</li>
 </ul>
-<h3>引用</h3>
+<h3 id="引用">引用</h3>
 <p><code>quote / quotation / verse</code>環境の挙動を<code>\jlreqsetup</code>で指定できます.</p>
 <ul>
 <li><code>quote_indent=<寸法></code>:字下げを指定します.デフォルトは2zwです.一行の長さが文字サイズの整数倍になるように調整されます.</li>
@@ -200,22 +201,23 @@
 <li><code>quote_beforeafter_space=<寸法></code>:前後の空きを指定します.<code>quote_beforeafter_space=1\baselineskip</code>とすると一行あきます.</li>
 <li><code>quote_fontsize=[normalsize/small/footnotesize/scriptsize/tiny]</code>:フォントサイズを指定します.</li>
 </ul>
-<h3>箇条書き</h3>
+<h3 id="箇条書き">箇条書き</h3>
 <p><code>\jlreqsetup</code>で指定します.</p>
 <ul>
 <li><code>itemization_beforeafter_space=<寸法></code>:箇条書きの前後の空きを指定します.</li>
 <li><code>itemization_itemsep=<寸法></code>:項目同士の空きを指定します.</li>
 </ul>
-<h3>定理環境</h3>
+<h3 id="定理環境">定理環境</h3>
 <p><code>\jlreqsetup</code>で指定します.</p>
 <ul>
 <li><code>theorem_beforeafter_space=<寸法></code>:定理環境の前後の空きを指定します.</li>
 </ul>
-<h2>見出し</h2>
+<h2 id="見出し">見出し</h2>
 <p>見出しの設定は,<code>\Declare***Heading</code>という命令で行います(***には見出しの種類に応じた文字列が入る).書式はすべて</p>
-<pre><code>\Declare***Heading{<命令名>}{<レベル>}{<設定>}</code></pre>
+<pre><code>\Declare***Heading{<命令名>}{<レベル>}{<設定>}
+</code></pre>
 <p>となっています.また,<code>\New***Heading</code>,<code>\Renew***Heading</code>,<code>\Provide***Heading</code>も同時に用意されます.それぞれ<code>\newcommand</code>,<code>\renewcommand</code>,<code>\providecommand</code>に対応した動きをします.</p>
-<h3>扉見出し</h3>
+<h3 id="扉見出し">扉見出し</h3>
 <p><code>\DeclareTobiraHeading</code>で作成します.通常のクラスファイルにおける<code>\section</code>等と同じ書式の命令ができます.設定は以下の通り.</p>
 <ul>
 <li><code>type=[han/naka]</code>:<code>han</code>だと半扉見出しを,<code>naka</code>だと中扉見出しを作ります.</li>
@@ -223,9 +225,9 @@
 <li><code>label_format=<書式></code>:ラベルを出力する命令を指定します.たとえば<code>label_format={第\thechapter 章}</code>のように指定します.</li>
 <li><code>format=<書式></code>:実際に出力する書式を指定します.<code>format={\null\vfil {\Huge\bfseries #1#2}}</code>のようにします.<code>#1</code>はラベルに,<code>#2</code>は見出し文字列に置き換えられます.</li>
 </ul>
-<h3>別行見出し</h3>
+<h3 id="別行見出し">別行見出し</h3>
 <p><code>\DeclareBlockHeading</code>で作成します.<code>\<命令名>*[running head]{見出し文字列}[副題]</code>という書式の命令を作成します.設定は以下の通り.</p>
-<h4>書式関連</h4>
+<h4 id="書式関連">書式関連</h4>
 <ul>
 <li><code>font=<命令></code>:見出しのフォントを指定します.</li>
 <li><code>subtitle_font=<命令></code>:副題のフォントを指定します.</li>
@@ -232,7 +234,7 @@
 <li><code>label_format=<命令></code>:ラベルのフォーマットを指定します.<code>label_format={第\thechapter 章}</code>などのようにします.</li>
 <li><code>subtitle_format=<命令></code>:副題のフォーマットを指定します.<code>subtitle_format={「#1」}</code>のようにします.<code>#1</code>が副題自身になります.</li>
 </ul>
-<h4>インデント関連</h4>
+<h4 id="インデント関連">インデント関連</h4>
 <ul>
 <li><code>align=[left/center/right]</code>:見出し位置の横方向の配置場所を指定します.</li>
 <li><code>indent=<寸法></code>:見出し全体の字下げ量を指定します.</li>
@@ -241,7 +243,7 @@
 <li><code>second_heading_text_indent=[<寸法>/{<寸法>,<寸法>}]</code>:見出し文字列の二行目以降のインデントを指定します.一行目の頭を起点として指定しますが,<code>second_heading_text_indent=*1\zw</code>のように先頭に<code>*</code>をつけるとラベルの頭を起点としての指定になります.(ラベルがない時は一行目の頭が起点.)また,<code>second_heading_text_indent={<ラベルがある時>,<ラベルがない時>}</code>という指定をすると,ラベルの有無に応じて値を変更することができます.<code><ラベルがある時></code>の指定ではやはり<code>*</code>を使うことができます.</li>
 <li><code>subtitle_indent=<寸法></code>:副題のインデント量を指定します.見出し文字列の一行目を起点として指定します.</li>
 </ul>
-<h4 id="-1">その他</h4>
+<h4 id="その他-1">その他</h4>
 <ul>
 <li><code>subtitle_break=[true/false]</code>:見出し文字列と副題の間を改行するか指定します.</li>
 <li><code>allowbreak_if_evenpage=[true/false]</code>:見出しが偶数ページにあった場合,その直後の改ページを許可します.</li>
@@ -249,7 +251,7 @@
 <li><code>afterindent=[true/false]</code>:見出し直後の段落の字下げを行うかを指定します.</li>
 <li><code>column_spanning=[true/false]</code>: 段抜きの見出しにします.pagebreak=clearpageまたはcleardoublepageの時にしか使えません.</li>
 </ul>
-<h4>行取り</h4>
+<h4 id="行取り">行取り</h4>
 <p>行取りの指定は以下のいずれかの方法で行うことができます.</p>
 <ul>
 <li>行数を指定し,その中央に配置します.<code>lines=<自然数値></code>により行数を指定します.<code>before_lines=<自然数値></code>や<code>after_lines=<自然数値></code>により,さらに前後に追加する行数を指定します.たとえば<code>lines=3,after_lines=1</code>とすれば,四行の中に配置され,前の空きよりも後ろの空きの方が一行分大きくなります.<code>before_lines</code>により指定された空きはページ頭には入りませんが,<code>before_lines=*1</code>というように<code>*</code>を先頭につけると常に入るようになります.</li>
@@ -256,14 +258,19 @@
 <li>行数と,前後いずれかの空きを指定します.<code>lines=<自然数値></code>により行数を,<code>before_space=<寸法></code>または<code>after_space=<寸法></code>のいずれかの指定によりそれぞれ前または後ろの空きを指定します.</li>
 <li>前後の空きを指定します.<code>before_space=<寸法></code>および<code>after_space=<寸法></code>を指定します.</li>
 </ul>
-<h4>連続して掲げる見出しの行取り</h4>
+<h4 id="連続して掲げる見出しの行取り">連続して掲げる見出しの行取り</h4>
 <p><code>\SetBlockHeadingSpaces</code>により,見出しが連続して掲げられたときの行取りを設定することができます.<code>\SetBlockHeadingSpaces</code>は</p>
-<div class="sourceCode"><pre class="sourceCode latex"><code class="sourceCode latex"><span class="fu">\SetBlockHeadingSpaces</span>{
-  {_part{lines=3,before_lines=1},_section{lines=2},_subsection{lines=2}}
-  [lines=5]{_section,23pt,_subsection,16pt}
-}</code></pre></div>
-<p>のように使います.</p>
+<pre class="sourceCode latex" id="cb7"><code class="sourceCode latex"><a class="sourceLine" id="cb7-1" data-line-number="1"><span class="fu">\SetBlockHeadingSpaces</span>{</a>
+<a class="sourceLine" id="cb7-2" data-line-number="2">  {_part{lines=3,before_lines=1},_section{lines=2},_subsection{lines=2}}</a>
+<a class="sourceLine" id="cb7-3" data-line-number="3">  [lines=5]{_section,23pt,_subsection,16pt}</a>
+<a class="sourceLine" id="cb7-4" data-line-number="4">}</a></code></pre>
+<p>のように使います.この意味は次の通りです.</p>
 <ul>
+<li><code>\part</code>,<code>\section</code>,<code>\subsection</code>という順番で見出しが掲げられていて,その前後が見出しでない場合は,<code>\part</code>は三行取り+前に一行空き,<code>\section</code>と<code>\subsection</code>は二行取りとなります.</li>
+<li><code>\section</code>,<code>\subsection</code>という順番で見出しが掲げられていて,その前後が乱し出ない場合は,全体で五行取りとし,<code>\section</code>と<code>\subsection</code>との間に<code>23pt</code>の空き,<code>\subsection</code>の後に<code>16pt</code>の空きを入れます.</li>
+</ul>
+<p>個々の設定は以下のようになります.</p>
+<ul>
 <li>各々の<code>{}</code>内には<code>_<見出し命令名></code>か<code><寸法></code>をカンマ区切りで並べます.</li>
 <li>先頭に<code>[]</code>で囲まれた設定を追加できます.これは連続して掲げられた見出し全体への設定となります.<code>lines / before_lines / after_lines / before_space / after_space</code>が利用可能です.各々の意味は上述の行取り指定と同じです.</li>
 <li>寸法はそのまま空き量を表します.</li>
@@ -271,14 +278,14 @@
 <li>見出しに対する<code>{}</code>で囲まれた設定内では,<code>lines / before_lines / after_lines / before_space / after_space</code>が利用可能です.各々の意味は上述の行取り指定と同じです.</li>
 <li><code>{}</code>で囲まれた部分を<code>*</code>のみにすると(例えば<code>_section{*}</code>とすると)単独で掲げた場合と同じ設定を使います.</li>
 </ul>
-<p>なお,見出しが連続しているかは単純に別行見出しの命令が並んで書かれているかのみで判断します.従ってそれらの命令間に出力には関係しないような命令が挟まっていたとしても,見出しが連続して掲げられているとは判断されません.ただし,見出し命令の間に空白または<code>\label</code>のみが挟まれている場合は,見出しが連続していると判断されます.</p>
-<h3>同行見出し</h3>
+<p>なお,見出しが連続しているかは単純に別行見出しの命令が並んで書かれているかのみで判断します.従ってそれらの命令間に出力には関係しないような命令が挟まっていたとしても,見出しが連続して掲げられているとは判断されません.ただし,見出し命令の間に空白,改行または<code>\label[<オプション>]{<引数>}…{<引数>}</code>という形のもののみが挟まれている場合は,見出しが連続していると判断されます.</p>
+<h3 id="同行見出し">同行見出し</h3>
 <p><code>\DeclareRuninHeading</code>で作成します.通常の文書クラスにおける<code>\section</code>と同様の,<code>\<命令名>*[running head]{見出し文字列}</code>という書式の命令が作成されます.設定は以下の通り.</p>
 <ul>
 <li><code>font=<命令></code>:見出しのフォントを指定します.</li>
 <li><code>indent=<寸法></code> 見出し文字列全体の字下げ量を指定します.</li>
 </ul>
-<h3>窓見出し</h3>
+<h3 id="窓見出し">窓見出し</h3>
 <p><code>\DeclareCutinHeading</code>で作成します.<code>\<命令名>{見出し文字列}</code>という書式の命令を作成します.設定は以下の通り.</p>
 <ul>
 <li><code>font=<命令></code>:見出しのフォントを指定します.</li>
@@ -288,17 +295,18 @@
 </ul>
 <h3 id="modifyheading"><code>\ModifyHeading</code></h3>
 <p>既に(上のどれかを使い)定義された見出し命令の設定を変更します.たとえば</p>
-<div class="sourceCode"><pre class="sourceCode latex"><code class="sourceCode latex"><span class="fu">\ModifyHeading</span>{section}{lines=10}</code></pre></div>
+<pre class="sourceCode latex" id="cb8"><code class="sourceCode latex"><a class="sourceLine" id="cb8-1" data-line-number="1"><span class="fu">\ModifyHeading</span>{section}{lines=10}</a></code></pre>
 <p>とすると,<code>\section</code>のフォントなどの設定はそのままに,行取りのみが10行に変更されます.見出しの種類を変更することはできません.</p>
 <h3 id="saveheading"><code>\SaveHeading</code></h3>
 <p>見出し命令の定義を待避します.</p>
-<div class="sourceCode"><pre class="sourceCode latex"><code class="sourceCode latex"><span class="fu">\SaveHeading</span>{section}{<span class="fu">\restoresection</span>} <span class="co">% \sectionの中身を\restoresectionに待避.</span>
-<span class="fu">\RenewBlockHeading</span>{section}{1}{font=……} <span class="co">% \sectionを新しく定義する.</span>
-……
-<span class="fu">\restoresection</span> <span class="co">% \sectionの中身を元に戻す.</span></code></pre></div>
+<pre class="sourceCode latex" id="cb9"><code class="sourceCode latex"><a class="sourceLine" id="cb9-1" data-line-number="1"><span class="fu">\SaveHeading</span>{section}{<span class="fu">\restoresection</span>} <span class="co">% \sectionの中身を\restoresectionに待避.</span></a>
+<a class="sourceLine" id="cb9-2" data-line-number="2"><span class="fu">\RenewBlockHeading</span>{section}{1}{font=……} <span class="co">% \sectionを新しく定義する.</span></a>
+<a class="sourceLine" id="cb9-3" data-line-number="3">……</a>
+<a class="sourceLine" id="cb9-4" data-line-number="4"><span class="fu">\restoresection</span> <span class="co">% \sectionの中身を元に戻す.</span></a></code></pre>
 <p>のように使います.</p>
-<h2>ページスタイル</h2>
-<pre><code>\DeclarePageStyle{<ページスタイル名>}{<設定>}</code></pre>
+<h2 id="ページスタイル">ページスタイル</h2>
+<pre><code>\DeclarePageStyle{<ページスタイル名>}{<設定>}
+</code></pre>
 <p>によりページスタイルを定義することができます.<code><設定></code>はkeyval形式です.定義したページスタイルは<code>\pagestyle</code>で適用できます.設定は以下の通り.</p>
 <ul>
 <li><code>yoko</code>:横書きで上下に出力します.デフォルト.</li>
@@ -313,13 +321,36 @@
 <li><code>odd_running_head=<書式></code>,<code>even_running_head=<書式></code>:それぞれ奇数ページ,偶数ページの柱を指定します.<code>_section</code>のように<code>_</code>から始まる名前を指定すると,対応する見出しを出力します.(<code>_section</code>だと現在の<code>\section</code>を出力する.)</li>
 </ul>
 <p><code>\NewPageStyle</code>,<code>\RenewPageStyle</code>,<code>\ProvidePageStyle</code>もあります.<code>\ModifyPageStyle</code>により既存のページスタイルを改変することが可能です.</p>
-<h2 id="-2">その他</h2>
+<h2 id="jfm">JFM</h2>
+<p>以下のような独自のJFMを使います.パッケージによっては,パッケージ独自のJFMや,また標準のJFMを使うように設定がし直される場合があります.例えばLuaTeX-jaに付属するluatexja-presetパッケージは通常LuaTeX-ja標準のJFMを使います.本クラスファイルで使っているJFMを使う場合は,</p>
+<pre class="sourceCode LaTeX" id="cb11"><code class="sourceCode latex"><a class="sourceLine" id="cb11-1" data-line-number="1"><span class="bu">\usepackage</span>[jfm_yoko=jlreq,jfm_tate=jlreqv,hiragino-pron]{<span class="ex">luatexja-preset</span>}</a></code></pre>
+<p>のようにオプションで指定する必要があります.</p>
+<h3 id="platexuplatexの場合">pLaTeX/upLaTeXの場合</h3>
+<p>JFMの名前は次の通りです.<code>[]</code>で囲まれている文字は設定により入ったり入らなかったりします.</p>
+<pre><code>[u][b][z]jlreq[g][-v]
+</code></pre>
+<p>それぞれの文字は以下の場合に入ります.</p>
 <ul>
+<li><code>u</code>: upLaTeX利用時</li>
+<li><code>b</code>: ぶら下げ組み利用時.(クラスオプションに<code>hanging_punctuation</code>が指定された時.)</li>
+<li><code>z</code>: 行頭における開き括弧類の前の空きが,段落開始時が全角二分,折り返し時が二分の時.(クラスオプションに<code>open_bracket_pos=zenkakunibu_nibu</code>が指定された時.)</li>
+<li><code>g</code>: ゴシック用フォント.</li>
+<li><code>-v</code>: 縦書き用.</li>
+</ul>
+<p>例えば,ぶら下げ組みを利用せず,クラスオプションに<code>open_bracket_pos=zenkakunibu_nibu</code>が指定されいてるソースをpLaTeXで処理した場合,横書き明朝体には<code>zjlreq</code>という名前のJFMが使われます.</p>
+<h3 id="lualatexの場合">LuaLaTeXの場合</h3>
+<ul>
+<li>横書き用のJFMは<code>jlreq</code></li>
+<li>縦書き用のJFMは<code>jlreqv</code></li>
+</ul>
+<p>となります.ゴシックも同じJFMを使います.</p>
+<h2 id="その他-2">その他</h2>
+<ul>
 <li>クラスオプション<code>jlreq_notes</code>が渡されると,日本語組版処理の記述と矛盾する設定が行われた場合に通知がされます.</li>
 </ul>
-<h2>ライセンス</h2>
+<h2 id="ライセンス">ライセンス</h2>
 <p>このパッケージは二条項BSDライセンスの元で配布されています.詳しくは<a href="LICENSE" class="uri">LICENSE</a>をご覧ください.</p>
-<h2>履歴</h2>
+<h2 id="履歴">履歴</h2>
 <ul>
 <li>2017-02-08
 <ul>
@@ -387,10 +418,15 @@
 <ul>
 <li>バグ修正</li>
 </ul></li>
+<li>2017-12-22
+<ul>
+<li>JFMを改善.</li>
+<li>別行見出しの間の<code>\label</code>の検出方法を変更.</li>
+<li><code>\theequation</code>,<code>\thefigure</code>,<code>\thetable</code>に章番号を追加.</li>
+</ul></li>
 </ul>
 <hr />
-<p>Noriyuki Abe<br />
-<a href="https://github.com/abenori/jlreq" class="uri">https://github.com/abenori/jlreq</a></p>
+<p>Noriyuki Abe <a href="https://github.com/abenori/jlreq" class="uri">https://github.com/abenori/jlreq</a></p>
 </article>
 </body>
 </html>

Modified: trunk/Master/texmf-dist/doc/latex/jlreq/jlreq.html
===================================================================
--- trunk/Master/texmf-dist/doc/latex/jlreq/jlreq.html	2017-12-22 21:22:52 UTC (rev 46120)
+++ trunk/Master/texmf-dist/doc/latex/jlreq/jlreq.html	2017-12-22 21:23:18 UTC (rev 46121)
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html>
+<html lang="ja">
 <head>
   <meta charset="utf-8">
   <meta name="generator" content="pandoc">
@@ -140,10 +140,15 @@
 <ul>
 <li>Fixed bugs.</li>
 </ul></li>
+<li>2017-12-22
+<ul>
+<li>Improved JFM.</li>
+<li>Change the way to detect <code>\label</code> between block headings.</li>
+<li>Added chapter number to <code>\theequation</code>,<code>\thefigure</code>,<code>\thetable</code>.</li>
+</ul></li>
 </ul>
 <hr />
-<p>Noriyuki Abe<br />
-<a href="https://github.com/abenori/jlreq" class="uri">https://github.com/abenori/jlreq</a></p>
+<p>Noriyuki Abe <a href="https://github.com/abenori/jlreq" class="uri">https://github.com/abenori/jlreq</a></p>
 </article>
 </body>
 </html>

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bjlreq-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bjlreq.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bjlreqg-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bjlreqg.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bzjlreq-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bzjlreq.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bzjlreqg-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/bzjlreqg.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/jlreq-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/jlreq.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/jlreqg-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/jlreqg.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubjlreq-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubjlreq.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubjlreqg-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubjlreqg.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubzjlreq-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubzjlreq.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubzjlreqg-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ubzjlreqg.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ujlreq-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ujlreq.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ujlreqg-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/ujlreqg.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/uzjlreq-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/uzjlreq.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/uzjlreqg-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/uzjlreqg.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/zjlreq-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/zjlreq.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/zjlreqg-v.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/tfm/public/jlreq/zjlreqg.tfm
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/latex/jlreq/jlreq.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/jlreq/jlreq.cls	2017-12-22 21:22:52 UTC (rev 46120)
+++ trunk/Master/texmf-dist/tex/latex/jlreq/jlreq.cls	2017-12-22 21:23:18 UTC (rev 46121)
@@ -5,7 +5,7 @@
 %%
 % (based on JLReq 20120403 https://www.w3.org/TR/2012/NOTE-jlreq-20120403/ja/)
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{jlreq}[2017/12/02 jlreq]
+\ProvidesClass{jlreq}[2017/12/22 jlreq]
 \RequirePackage{xkeyval,everyhook,filehook,etoolbox,ifthen}
 
 %. helper1
@@ -101,12 +101,54 @@
 }
 \jlreq at do
 
+% #1(skipレジスタ)が0か(展開不可).
 \def\jlreq at ifgluezero#1{%
-  \edef\@tempa{\the#1}%
-  \edef\@tempb{\detokenize{0.0pt}}%
-  \ifx\@tempa\@tempb\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+  \begingroup
+    \edef\@tempa{\the#1}%
+    \edef\@tempb{\detokenize{0.0pt}}%
+    \edef\jlreq at do{\ifx\@tempa\@tempb\noexpand\@firstoftwo\else\noexpand\@secondoftwo\fi}%
+  \expandafter\endgroup
+  \jlreq at do
 }
 
+% #1が#2で終わるか(展開不可)
+\def\jlreq at ifendswith#1#2{%
+  \jlreq at ifempty{#2}{\@firstoftwo}{%
+    \begingroup
+      \def\jlreq at tempa##1#2\jlreq at uniqtoken##2\jlreq at endmark{%
+        \edef\jlreq at do{\jlreq at ifempty{##2}{\noexpand\@secondoftwo}{\noexpand\@firstoftwo}}%
+      }%
+      \jlreq at tempa#1\jlreq at uniqtoken#2\jlreq at uniqtoken\jlreq at endmark
+    \expandafter\endgroup
+    \jlreq at do
+  }%
+}
+% #1が#2で始まるか(展開不可)
+\def\jlreq at ifstartswith#1#2{%
+  \jlreq at ifempty{#2}{\@firstoftwo}{%
+    \jlreq at ifempty{#1}{\@secondoftwo}{%
+      \begingroup
+        \def\jlreq at tempa##1#2##2\jlreq at endmark{%
+          \edef\jlreq at do{\jlreq at ifempty{##1}{\noexpand\@firstoftwo}{\noexpand\@secondoftwo}}%
+        }%
+        \jlreq at tempa#1#2\jlreq at endmark
+      \expandafter\endgroup
+      \jlreq at do
+    }%
+  }%
+}
+% #1が#2を含むか(展開不可){}内に#2があってもFALSE判定.
+\def\jlreq at ifcontains#1#2{%
+  \jlreq at ifempty{#2}{\@firstoftwo}{%
+    \begingroup
+      \def\jlreq at tempa##1#2##2\jlreq at endmark{%
+        \edef\jlreq at do{\jlreq at ifempty{##2}{\noexpand\@secondoftwo}{\noexpand\@firstoftwo}}%
+      }%
+      \jlreq at tempa#1#2\jlreq at endmark
+    \expandafter\endgroup
+    \jlreq at do
+  }%
+}
 
 % @removeelementの括弧があっても動くかもしれない版
 % 次の変数を使う:\jlreq at tempa:消したいやつ,\jlreq at tempb:消していない分を放り込んでいく
@@ -144,7 +186,7 @@
   \ifx\jlreq at nextchar\reserved at d\let\reserved at b\reserved at a\fi
   \reserved at b
 }
-% \@ifsart
+% 空白を無視しない\@ifsart
 \def\jlreq at ifstar#1#2{\jlreq at ifnextchar *{\edef\reserved at a*{\unexpanded{#1}}\reserved at a}{#2}}
 % カンマで区切って,その前と後ろを\jlreq at resulta,\jlreq at resultbに入れる
 % もしカンマがない場合は\ifjlreq at resultがfalseになる.
@@ -849,282 +891,171 @@
   \xkanjiskip=\jlreq at xkanjiskip
 \fi
 
-% 禁則処理,表1,2に従う
-% 行末
-% 初め括弧類
+% 文字クラスのリスト(必要なものだけ)
+% 開き括弧(文字クラス1)
+\edef\jlreq at charlist@openingbrackets{(〔[{〈《「『【‘“\ifx p\jlreq at engine\else ⦅〘〖«〝\fi}
+% 閉じ括弧(文字クラス2)
+\edef\jlreq at charlist@closingbrackets{)〕]}〉》」』】’”\ifx p\jlreq at engine\else⦆〙〗»〟\fi}
+% ハイフン(文字クラス3)
+\edef\jlreq at charlist@hyphens{‐〜\ifx p\jlreq at engine\else ゠–\fi}
+% 区切り約物(文字クラス4)
+\edef\jlreq at charlist@dividingpunctuationmarks{!?\ifx p\jlreq at engine\else ‼⁇⁈⁉\fi}
+% 中点類(文字クラス5)
+\edef\jlreq at charlist@middlenodes{・:;}
+% 句点類(文字クラス6)
+\edef\jlreq at charlist@fullstops{。.}
+% 読点類(文字クラス7)
+\edef\jlreq at charlist@commas{、,}
+% 分離禁止文字(文字クラス8)
+\edef\jlreq at charlist@inseparablecharacters{—…‥\ifx p\jlreq at engine\else 〳〴〵\fi}
+% 繰返し記号(文字クラス9)
+\edef\jlreq at charlist@iterationmarks{ヽヾゝゞ々\ifx p\jlreq at engine\else 〻\fi}
+% 長音記号(文字クラス10)
+\edef\jlreq at charlist@prolongedsoundmark{ー}
+% 小書きの仮名(文字クラス11)
+\edef\jlreq at charlist@smallkana{ぁぃぅぇぉァィゥェォっゃゅょゎッャュョヮヵヶ\ifx p\jlreq at engine\else ゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ\fi}%ㇷ゚
+% 前置省略記号(文字クラス12)
+\edef\jlreq at charlist@prefixedabbreviations{¥$£#\ifx p\jlreq at engine\else €№\fi}
+% 平仮名(文字クラス15)
+\edef\jlreq at charlist@hiragana{あいうえおかがきぎくぐけげこごさざしじすずせぜそぞただちぢつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもやゆよらりるれろわゐゑをん\ifx p\jlreq at engine\else ゔ\fi}% か゚き゚く゚け゚こ゚
+% 片仮名(文字クラス16)
+\edef\jlreq at charlist@katakana{アイウエオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモヤユヨラリルレロワヰヱヲンヴ\ifx p\jlreq at engine\else ヷヸヹヺ\fi}% カ゚キ゚ク゚ケ゚コ゚セ゚ツ゚ト゚
+
 \ifx l\jlreq at engine
-  \newcommand*{\jlreq at setpostbreakpenalty}[2]{\ltjsetparameter{postbreakpenalty={`#1,#2}}}
-  \newcommand*{\jlreq at setprebreakpenalty}[2]{\ltjsetparameter{prebreakpenalty={`#1,#2}}}
-  \newcommand*{\jlreq at setjaxspmode}[2]{\ltjsetparameter{jaxspmode={`#1,#2}}}
+  \newcommand*{\jlreq at setpostbreakpenalty@}[2]{\ltjsetparameter{postbreakpenalty={`#1,#2}}}
+  \newcommand*{\jlreq at setprebreakpenalty@}[2]{\ltjsetparameter{prebreakpenalty={`#1,#2}}}
+  \newcommand*{\jlreq at addjaxspmode@}[2]{%
+    \jlreq at tempcnta=\ltjgetparameter{jaxspmode}{`#1}%
+    \jlreq at switch{#2}{
+      {pre}{%
+        \ifnum\jlreq at tempcnta=2
+          \ltjsetparameter{jaxspmode={`#1,allow}}%
+        \else\ifnum\jlreq at tempcnta=0
+          \ltjsetparameter{jaxspmode={`#1,preonly}}%
+        \fi\fi
+      }
+      {post}{%
+        \ifnum\jlreq at tempcnta=1
+          \ltjsetparameter{jaxspmode={`#1,allow}}%
+        \else\ifnum\jlreq at tempcnta=0
+          \ltjsetparameter{jaxspmode={`#1,postonly}}%
+        \fi\fi
+      }
+    }%
+  }
+  \newcommand*{\jlreq at deljaxspmode@}[2]{%
+    \jlreq at tempcnta=\ltjgetparameter{jaxspmode}{`#1}%
+    \jlreq at switch{#2}{
+      {pre}{%
+        \ifnum\jlreq at tempcnta=2
+          \ltjsetparameter{jaxspmode={`#1,postonly}}%
+        \else\ifnum\jlreq at tempcnta=1
+          \ltjsetparameter{jaxspmode={`#1,inhibit}}%
+        \fi\fi
+      }
+      {post}{%
+        \ifnum\jlreq at tempcnta=3
+          \ltjsetparameter{jaxspmode={`#1,preonly}}%
+        \else\ifnum\jlreq at tempcnta=2
+          \ltjsetparameter{jaxspmode={`#1,inhibit}}%
+        \fi\fi
+      }
+    }%
+  }
 \else
-  \newcommand*{\jlreq at setpostbreakpenalty}[2]{\postbreakpenalty`#1=#2}
-  \newcommand*{\jlreq at setprebreakpenalty}[2]{\prebreakpenalty`#1=#2}
-  \newcommand*{\jlreq at setjaxspmode}[2]{%
+  \newcommand*{\jlreq at setpostbreakpenalty@}[2]{\postbreakpenalty`#1=#2}
+  \newcommand*{\jlreq at setprebreakpenalty@}[2]{\prebreakpenalty`#1=#2}
+  \newcommand*{\jlreq at addjaxspmode@}[2]{%
+    \jlreq at tempcnta=\inhibitxspcode`#1
     \jlreq at switch{#2}{
-      {inhibit}{\inhibitxspcode`#1=0}
-      {preonly}{\inhibitxspcode`#1=1}
-      {postonly}{\inhibitxspcode`#1=2}
-      {allow}{\inhibitxspcode`#1=3}
-      {\inhibitxspcode`#1=#2}
-    }
+      {pre}{%
+        \ifnum\jlreq at tempcnta=1
+          \inhibitxspcode`#1=3
+        \else\ifnum\jlreq at tempcnta=0
+          \inhibitxspcode`#1=2
+        \fi\fi
+      }
+      {post}{%
+        \ifnum\jlreq at tempcnta=2
+          \inhibitxspcode`#1=3
+        \else\ifnum\jlreq at tempcnta=0
+          \inhibitxspcode`#1=1
+        \fi\fi
+      }
+    }%
   }
+  \newcommand*{\jlreq at deljaxspmode@}[2]{%
+    \jlreq at tempcnta=\inhibitxspcode`#1
+    \jlreq at switch{#2}{
+      {pre}{%
+        \ifnum\jlreq at tempcnta=3
+          \inhibitxspcode`#1=1
+        \else\ifnum\jlreq at tempcnta=2
+          \inhibitxspcode`#1=0
+        \fi\fi
+      }
+      {post}{%
+        \ifnum\jlreq at tempcnta=3
+          \inhibitxspcode`#1=2
+        \else\ifnum\jlreq at tempcnta=1
+          \inhibitxspcode`#1=0
+        \fi\fi
+      }
+    }%
+  }
 \fi
+% #1{...}{#3}を...が#2のリストに対して適用.
+\newcommand*\jlreq at iterateapply[3]{%
+  \edef\jlreq at tempa{#2}%
+  \expandafter\@tfor\expandafter\@tempa\expandafter:\expandafter=\jlreq at tempa\do{%
+    \expandafter#1\expandafter{\@tempa}{#3}%
+  }%
+}
+\def\jlreq at setpostbreakpenalty{\jlreq at iterateapply{\jlreq at setpostbreakpenalty@}}
+\def\jlreq at setprebreakpenalty{\jlreq at iterateapply{\jlreq at setprebreakpenalty@}}
+\def\jlreq at addjaxspmode{\jlreq at iterateapply{\jlreq at addjaxspmode@}}
+\def\jlreq at deljaxspmode{\jlreq at iterateapply{\jlreq at deljaxspmode@}}
+
+\jlreq at aftercls@addtodeletecs{\jlreq at iterateapply}
 \jlreq at aftercls@addtodeletecs{\jlreq at setpostbreakpenalty}
+\jlreq at aftercls@addtodeletecs{\jlreq at setpostbreakpenalty@}
 \jlreq at aftercls@addtodeletecs{\jlreq at setprebreakpenalty}
-\jlreq at aftercls@addtodeletecs{\jlreq at setjaxspmode}
+\jlreq at aftercls@addtodeletecs{\jlreq at setprebreakpenalty@}
+\jlreq at aftercls@addtodeletecs{\jlreq at addjaxspmode}
+\jlreq at aftercls@addtodeletecs{\jlreq at addjaxspmode@}
+\jlreq at aftercls@addtodeletecs{\jlreq at deljaxspmode}
+\jlreq at aftercls@addtodeletecs{\jlreq at deljaxspmode@}
 
-\jlreq at setpostbreakpenalty{(}{10000}
-\jlreq at setpostbreakpenalty{〔}{10000}
-\jlreq at setpostbreakpenalty{[}{10000}
-\jlreq at setpostbreakpenalty{{}{10000}
-\jlreq at setpostbreakpenalty{〈}{10000}
-\jlreq at setpostbreakpenalty{《}{10000}
-\jlreq at setpostbreakpenalty{「}{10000}
-\jlreq at setpostbreakpenalty{『}{10000}
-\jlreq at setpostbreakpenalty{【}{10000}
-\ifx p\jlreq at engine\else
-\jlreq at setpostbreakpenalty{⦅}{10000}
-\jlreq at setpostbreakpenalty{〘}{10000}
-\jlreq at setpostbreakpenalty{〖}{10000}
-\jlreq at setpostbreakpenalty{«}{10000}
-\jlreq at setpostbreakpenalty{〝}{10000}
-\fi
-\jlreq at setpostbreakpenalty{‘}{10000}
-\jlreq at setpostbreakpenalty{“}{10000}
-% 前置省略記号
-\jlreq at setpostbreakpenalty{¥}{10000}
-\jlreq at setpostbreakpenalty{$}{10000}
-\jlreq at setpostbreakpenalty{£}{10000}
-\jlreq at setpostbreakpenalty{#}{10000}
-\ifx p\jlreq at engine\else
-\jlreq at setpostbreakpenalty{€}{10000}
-\jlreq at setpostbreakpenalty{№}{10000}
-\fi
-% 行頭
-% 終わり括弧類
-\jlreq at setprebreakpenalty{)}{10000}
-\jlreq at setprebreakpenalty{〕}{10000}
-\jlreq at setprebreakpenalty{]}{10000}
-\jlreq at setprebreakpenalty{}}{10000}
-\jlreq at setprebreakpenalty{〉}{10000}
-\jlreq at setprebreakpenalty{》}{10000}
-\jlreq at setprebreakpenalty{」}{10000}
-\jlreq at setprebreakpenalty{』}{10000}
-\jlreq at setprebreakpenalty{】}{10000}
-\ifx p\jlreq at engine\else
-\jlreq at setprebreakpenalty{⦆}{10000}
-\jlreq at setprebreakpenalty{〙}{10000}
-\jlreq at setprebreakpenalty{〗}{10000}
-\jlreq at setprebreakpenalty{»}{10000}
-\jlreq at setprebreakpenalty{〟}{10000}
-\fi
-\jlreq at setprebreakpenalty{’}{10000}
-\jlreq at setprebreakpenalty{”}{10000}
-% ハイフン類
-\jlreq at setprebreakpenalty{‐}{10000}
-\ifx p\jlreq at engine\else
-\jlreq at setprebreakpenalty{゠}{10000}
-\jlreq at setprebreakpenalty{–}{10000}
-\jlreq at setprebreakpenalty{〜}{10000}
-\fi
-% 区切り約物
-\jlreq at setprebreakpenalty{!}{10000}
-\jlreq at setprebreakpenalty{?}{10000}
-\ifx p\jlreq at engine\else
-\jlreq at setprebreakpenalty{‼}{10000}
-\jlreq at setprebreakpenalty{⁇}{10000}
-\jlreq at setprebreakpenalty{⁈}{10000}
-\jlreq at setprebreakpenalty{⁉}{10000}
-\fi
-% 中点類
-\jlreq at setprebreakpenalty{・}{10000}
-\jlreq at setprebreakpenalty{:}{10000}
-\jlreq at setprebreakpenalty{;}{10000}
-% 句点類
-\jlreq at setprebreakpenalty{。}{10000}
-\jlreq at setprebreakpenalty{.}{10000}
-% 読点類
-\jlreq at setprebreakpenalty{、}{10000}
-\jlreq at setprebreakpenalty{,}{10000}
-% 繰返し記号
-\jlreq at setprebreakpenalty{ヽ}{10000}
-\jlreq at setprebreakpenalty{ヾ}{10000}
-\jlreq at setprebreakpenalty{ゝ}{10000}
-\jlreq at setprebreakpenalty{ゞ}{10000}
-\jlreq at setprebreakpenalty{々}{10000}
-\ifx p\jlreq at engine\else
-\jlreq at setprebreakpenalty{〻}{10000}
-\fi
-% 長音記号
-\jlreq at setprebreakpenalty{ー}{10000}
-% 小書きの仮名
-\jlreq at setprebreakpenalty{ぁ}{10000}
-\jlreq at setprebreakpenalty{ぃ}{10000}
-\jlreq at setprebreakpenalty{ぅ}{10000}
-\jlreq at setprebreakpenalty{ぇ}{10000}
-\jlreq at setprebreakpenalty{ぉ}{10000}
-\jlreq at setprebreakpenalty{ァ}{10000}
-\jlreq at setprebreakpenalty{ィ}{10000}
-\jlreq at setprebreakpenalty{ゥ}{10000}
-\jlreq at setprebreakpenalty{ェ}{10000}
-\jlreq at setprebreakpenalty{ォ}{10000}
-\jlreq at setprebreakpenalty{っ}{10000}
-\jlreq at setprebreakpenalty{ゃ}{10000}
-\jlreq at setprebreakpenalty{ゅ}{10000}
-\jlreq at setprebreakpenalty{ょ}{10000}
-\jlreq at setprebreakpenalty{ゎ}{10000}
-\ifx p\jlreq at engine\else
-\jlreq at setprebreakpenalty{ゕ}{10000}
-\jlreq at setprebreakpenalty{ゖ}{10000}
-\fi
-\jlreq at setprebreakpenalty{ッ}{10000}
-\jlreq at setprebreakpenalty{ャ}{10000}
-\jlreq at setprebreakpenalty{ュ}{10000}
-\jlreq at setprebreakpenalty{ョ}{10000}
-\jlreq at setprebreakpenalty{ヮ}{10000}
-\jlreq at setprebreakpenalty{ヵ}{10000}
-\jlreq at setprebreakpenalty{ヶ}{10000}
-\ifx p\jlreq at engine\else
-\jlreq at setprebreakpenalty{ㇰ}{10000}
-\jlreq at setprebreakpenalty{ㇱ}{10000}
-\jlreq at setprebreakpenalty{ㇲ}{10000}
-\jlreq at setprebreakpenalty{ㇳ}{10000}
-\jlreq at setprebreakpenalty{ㇴ}{10000}
-\jlreq at setprebreakpenalty{ㇵ}{10000}
-\jlreq at setprebreakpenalty{ㇶ}{10000}
-\jlreq at setprebreakpenalty{ㇷ}{10000}
-\jlreq at setprebreakpenalty{ㇸ}{10000}
-\jlreq at setprebreakpenalty{ㇹ}{10000}
-\jlreq at setprebreakpenalty{ㇺ}{10000}
-\jlreq at setprebreakpenalty{ㇻ}{10000}
-\jlreq at setprebreakpenalty{ㇼ}{10000}
-\jlreq at setprebreakpenalty{ㇽ}{10000}
-\jlreq at setprebreakpenalty{ㇾ}{10000}
-\jlreq at setprebreakpenalty{ㇿ}{10000}
-\fi
+% 行末禁則
+\jlreq at setpostbreakpenalty{\jlreq at charlist@openingbrackets}{10000}
+\jlreq at setpostbreakpenalty{\jlreq at charlist@prefixedabbreviations}{10000}
 
+% 行頭禁則
+\jlreq at setprebreakpenalty{\jlreq at charlist@closingbrackets}{10000}
+\jlreq at setprebreakpenalty{\jlreq at charlist@hyphens}{10000}
+\jlreq at setprebreakpenalty{\jlreq at charlist@dividingpunctuationmarks}{10000}
+\jlreq at setprebreakpenalty{\jlreq at charlist@middlenodes}{10000}
+\jlreq at setprebreakpenalty{\jlreq at charlist@fullstops}{10000}
+\jlreq at setprebreakpenalty{\jlreq at charlist@commas}{10000}
+\jlreq at setprebreakpenalty{\jlreq at charlist@iterationmarks}{10000}
+\jlreq at setprebreakpenalty{\jlreq at charlist@prolongedsoundmark}{10000}
+\jlreq at setprebreakpenalty{\jlreq at charlist@smallkana}{10000}
+
 % xkanjiskip
-% 初め括弧類(二分)
-\jlreq at setjaxspmode{(}{preonly}
-\jlreq at setjaxspmode{〔}{preonly}
-\jlreq at setjaxspmode{[}{preonly}
-\jlreq at setjaxspmode{{}{preonly}
-\jlreq at setjaxspmode{〈}{preonly}
-\jlreq at setjaxspmode{《}{preonly}
-\jlreq at setjaxspmode{「}{preonly}
-\jlreq at setjaxspmode{『}{preonly}
-\jlreq at setjaxspmode{【}{preonly}
-\ifx p\jlreq at engine\else
-\jlreq at setjaxspmode{⦅}{preonly}
-\jlreq at setjaxspmode{〘}{preonly}
-\jlreq at setjaxspmode{〖}{preonly}
-\jlreq at setjaxspmode{«}{preonly}
-\jlreq at setjaxspmode{〝}{preonly}
-\fi
-\jlreq at setjaxspmode{‘}{preonly}
-\jlreq at setjaxspmode{“}{preonly}
-% 終わり括弧類(二分)
-\jlreq at setjaxspmode{)}{postonly}
-\jlreq at setjaxspmode{〕}{postonly}
-\jlreq at setjaxspmode{]}{postonly}
-\jlreq at setjaxspmode{}}{postonly}
-\jlreq at setjaxspmode{〉}{postonly}
-\jlreq at setjaxspmode{》}{postonly}
-\jlreq at setjaxspmode{」}{postonly}
-\jlreq at setjaxspmode{』}{postonly}
-\jlreq at setjaxspmode{】}{postonly}
-\ifx p\jlreq at engine\else
-\jlreq at setjaxspmode{⦆}{postonly}
-\jlreq at setjaxspmode{〙}{postonly}
-\jlreq at setjaxspmode{〗}{postonly}
-\jlreq at setjaxspmode{»}{postonly}
-\jlreq at setjaxspmode{〟}{postonly}
-\fi
-\jlreq at setjaxspmode{’}{postonly}
-\jlreq at setjaxspmode{”}{postonly}
-% ハイフン類(二分)
-\jlreq at setjaxspmode{‐}{inhibit}
-\ifx p\jlreq at engine\else
-\jlreq at setjaxspmode{゠}{inhibit}
-\jlreq at setjaxspmode{–}{inhibit}
-\jlreq at setjaxspmode{〜}{inhibit}
-\fi
-% 区切り約物
-\jlreq at setjaxspmode{!}{postonly}
-\jlreq at setjaxspmode{?}{postonly}
-\ifx p\jlreq at engine\else
-\jlreq at setjaxspmode{‼}{postonly}
-\jlreq at setjaxspmode{⁇}{postonly}
-\jlreq at setjaxspmode{⁈}{postonly}
-\jlreq at setjaxspmode{⁉}{postonly}
-\fi
-% 中点類
-\jlreq at setjaxspmode{・}{postonly}
-\jlreq at setjaxspmode{:}{postonly}
-\jlreq at setjaxspmode{;}{postonly}
-% 句点類(二分)
-\jlreq at setjaxspmode{。}{postonly}
-\jlreq at setjaxspmode{.}{postonly}
-% 読点類(二分)
-\jlreq at setjaxspmode{、}{postonly}
-\jlreq at setjaxspmode{,}{postonly}
-% 分離禁止文字
-\jlreq at setjaxspmode{—}{inhibit}
-\jlreq at setjaxspmode{…}{inhibit}
-\jlreq at setjaxspmode{‥}{inhibit}
-\ifx p\jlreq at engine\else
-\jlreq at setjaxspmode{〳}{inhibit}
-\jlreq at setjaxspmode{〴}{inhibit}
-\jlreq at setjaxspmode{〵}{inhibit}
-\fi
-% 前置省略記号
-\jlreq at setjaxspmode{¥}{inhibit}
-\jlreq at setjaxspmode{$}{inhibit}
-\jlreq at setjaxspmode{£}{inhibit}
-\jlreq at setjaxspmode{#}{inhibit}
-\ifx p\jlreq at engine\else
-\jlreq at setjaxspmode{€}{inhibit}
-\jlreq at setjaxspmode{№}{inhibit}
-\fi
-% 後置省略記号
-\jlreq at setjaxspmode{°}{inhibit}
-\jlreq at setjaxspmode{′}{inhibit}
-\jlreq at setjaxspmode{″}{inhibit}
-\jlreq at setjaxspmode{℃}{inhibit}
-\jlreq at setjaxspmode{¢}{inhibit}
-\jlreq at setjaxspmode{%}{inhibit}
-\jlreq at setjaxspmode{‰}{inhibit}
-\ifx p\jlreq at engine\else
-\jlreq at setjaxspmode{㏋}{inhibit}
-\jlreq at setjaxspmode{ℓ}{inhibit}
-\jlreq at setjaxspmode{㌃}{inhibit}
-\jlreq at setjaxspmode{㌍}{inhibit}
-\jlreq at setjaxspmode{㌔}{inhibit}
-\jlreq at setjaxspmode{㌘}{inhibit}
-\jlreq at setjaxspmode{㌢}{inhibit}
-\jlreq at setjaxspmode{㌣}{inhibit}
-\jlreq at setjaxspmode{㌦}{inhibit}
-\jlreq at setjaxspmode{㌧}{inhibit}
-\jlreq at setjaxspmode{㌫}{inhibit}
-\jlreq at setjaxspmode{㌶}{inhibit}
-\jlreq at setjaxspmode{㌻}{inhibit}
-\jlreq at setjaxspmode{㍉}{inhibit}
-\jlreq at setjaxspmode{㍊}{inhibit}
-\jlreq at setjaxspmode{㍍}{inhibit}
-\jlreq at setjaxspmode{㍑}{inhibit}
-\jlreq at setjaxspmode{㍗}{inhibit}
-\jlreq at setjaxspmode{㎎}{inhibit}
-\jlreq at setjaxspmode{㎏}{inhibit}
-\jlreq at setjaxspmode{㎜}{inhibit}
-\jlreq at setjaxspmode{㎝}{inhibit}
-\jlreq at setjaxspmode{㎞}{inhibit}
-\jlreq at setjaxspmode{㎡}{inhibit}
-\jlreq at setjaxspmode{㏄}{inhibit}
-\fi
+\jlreq at addjaxspmode{\jlreq at charlist@iterationmarks}{pre}
+\jlreq at addjaxspmode{\jlreq at charlist@iterationmarks}{post}
+\jlreq at addjaxspmode{\jlreq at charlist@prolongedsoundmark}{pre}
+\jlreq at addjaxspmode{\jlreq at charlist@prolongedsoundmark}{post}
+\jlreq at addjaxspmode{\jlreq at charlist@smallkana}{pre}
+\jlreq at addjaxspmode{\jlreq at charlist@smallkana}{post}
+\jlreq at addjaxspmode{\jlreq at charlist@hiragana}{pre}
+\jlreq at addjaxspmode{\jlreq at charlist@hiragana}{post}
+\jlreq at addjaxspmode{\jlreq at charlist@katakana}{pre}
+\jlreq at addjaxspmode{\jlreq at charlist@katakana}{post}
+\jlreq at addjaxspmode{\jlreq at charlist@dividingpunctuationmarks}{post}
+
 % 分割禁止(分離禁止文字は特定の並びで分割禁止だが,とりあえず一括で禁止しておく.)
-\jlreq at setprebreakpenalty{—}{10000}
-\jlreq at setprebreakpenalty{…}{10000}
-\jlreq at setprebreakpenalty{‥}{10000}
+\jlreq at setprebreakpenalty{\jlreq at charlist@inseparablecharacters}{10000}
 % ¥100とか70%とか……
 
 %.. 文字範囲
@@ -1228,13 +1159,6 @@
 \DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal}
 
 %.. 和文
-% 必要になりそうなリスト
-% 開き括弧(文字クラス1)
-\edef\jlreq at charlist@openingbrackets{(〔[{〈《「『【‘“\ifx p\jlreq at engine\else ⦅〘〖«〝\fi}
-% 閉じ括弧(文字クラス2)
-\edef\jlreq at charlist@closingbrackets{)〕]}〉》」』】’”\ifx p\jlreq at engine\else⦆〙〗»〟\fi}
-% 区切り約物(文字クラス4)
-\edef\jlreq at charlist@dividingpunctuationmarks{!?\ifx p\jlreq at engine\else ‼⁇⁈⁉\fi}
 % JFMに関連する設定
 \ifx l\jlreq at engine
   % この値は後でjfm-jlreq内で読む
@@ -1243,8 +1167,8 @@
   % \item後の行頭括弧のために仕込み.
   \jlreq at saveoriginalcs{list}
   \jlreq at saveoriginalcs{endlist}
-  \pretocmd{\list}{\jlreq at pushhook@postpar{\directlua{luatexja.jfmglue.create_beginpar_node()}}}{}{}% ltjsclassesから
-  \apptocmd{\endlist}{\jlreq at pophook@postpar}
+  \pretocmd{\list}{\jlreq at pushhook@postpar{\ltjfakeparbegin}}{}{}
+  \apptocmd{\endlist}{\jlreq at pophook@postpar}{}{}
 \else
   % 非LuaTeXの場合はJFMの入れ替えと\everyparでの処理で対処.
   % 行頭括弧に対して\inhibitglueを入れたりする命令を作る
@@ -1294,8 +1218,8 @@
 \ifx l\jlreq at engine
   \RequirePackage{luatexja-adjust}
   \ltjenableadjust[lineend=extended,priority=true]
-  \ltjsetparameter{stretch_priority={kanjiskip=10,xkanjiskip=-30}}
-  \ltjsetparameter{shrink_priority={kanjiskip=0,xkanjiskip=0}}
+  \ltjsetparameter{stretch_priority={kanjiskip=0,xkanjiskip=10}}
+  \ltjsetparameter{shrink_priority={kanjiskip=0,xkanjiskip=-30}}
 \fi
 
 \ifx p\jlreq at engine
@@ -1394,7 +1318,6 @@
   \AtBeginDocument{\catcode` =\active}
 \fi
 
-
 % \jaspace
 \DeclareRobustCommand*{\jaspace}[1]{%
   \ifcsname jlreq at jaspace@#1\endcsname\csname jlreq at jaspace@#1\endcsname
@@ -1474,20 +1397,23 @@
     \fi
   }
 \fi
+
+% \jafontsize
+\def\@tempa#1{
+  \newcommand*{\jafontsize}[2]{%
+    \begingroup
+      \jlreq at iffloat{##1}{%
+        \edef\jlreq at do{\noexpand\fontsize{\strip at pt\dimexpr#1\dimexpr##1pt\relax\relax}}%
+      }{%
+        \edef\jlreq at do{\noexpand\fontsize{\the\dimexpr#1\dimexpr##1\relax\relax}}%
+      }%
+    \expandafter\endgroup
+    \jlreq at do{##2}%
+  }
+}
 \jlreq at divide{\jlreq at fontsize}{\jlreq at jafontsize}
-\edef\jlreq at jafontinvscale{\strip at pt\jlreq at resultdimen}
-\newcommand*{\jafontsize}[2]{%
-  \begingroup
-    \jlreq at iffloat{#1}{%
-      \jlreq at tempdima=\jlreq at jafontinvscale\dimexpr #1pt\relax
-      \edef\jlreq at do{\noexpand\fontsize{\strip at pt\jlreq at tempdima}{\unexpanded{#2}}}%
-    }{%
-      \jlreq at tempdima=\jlreq at jafontinvscale\dimexpr#1\relax
-      \edef\jlreq at do{\noexpand\fontsize{\expandonce{\the\jlreq at tempdima}}{\unexpanded{#2}}}%
-    }%
-  \expandafter\endgroup
-  \jlreq at do
-}
+\edef\jlreq at do{\noexpand\@tempa{\strip at pt\jlreq at resultdimen}}
+\jlreq at do
 
 \renewcommand{\normalsize}{%
   \@setfontsize\normalsize{\jlreq at fontsize}{\jlreq at baselineskip}%
@@ -1627,11 +1553,13 @@
 \ifdim\marginparwidth>0pt
   \setlength{\marginparsep}{2\zw} % フォントサイズ×2(4.2.7:特に問題に~e)
 \else
-  \setlength{\marginparsep}{0pt} % フォントサイズ×2(4.2.7:特に問題に~e)
+  \setlength{\marginparsep}{0pt}
 \fi
 
-\ifdim\marginparwidth>25\zw\relax
-  \jlreq at note{並列注の字詰め方向の長さ(行長)は,15字から20字くらいである.ケースによっては25字程度にする場合もある (4.2.7).}
+\ifdim\marginparwidth>0pt
+  \ifnum 0\ifdim\marginparwidth>25\zw 1\fi\ifdim\marginparwidth<15\zw 1\fi>0
+    \jlreq at note{並列注の字詰め方向の長さ(行長)は,15字から20字くらいである.ケースによっては25字程度にする場合もある (4.2.7).}
+  \fi
 \fi
 % 縦書きの時は脚注に固定
 % (TODO: 頭注)
@@ -1926,7 +1854,6 @@
 % ラベルフォーマットでは#1=カウンタ名,見出し文字列フォーマットでは#1=見出し文字列,副題フォーマットでは#1=副題
 % ラベルのみのフォーマットは目次に使われる.
 \newcommand{\jlreq at startBlockHeading}[5]{%
-  % 一端フックを無効化
   \edef\jlreq at BlockHeading@start at format{\unexpanded{#4}}% この二つは\parを含むかもしれないので引数渡しはしない(後の\@ifstarで詰まる)
   \edef\jlreq at BlockHeading@start at totalformat{\unexpanded{#5}}%
   \jlreq at BlockHeading@start@{#1}{#2}{#3}%
@@ -1964,11 +1891,13 @@
   \expandafter\xdef\csname jlreq at BlockHeading@spaces at current@format@\the\jlreq at BlockHeading@spaces at current@count\endcsname{%
     \unexpanded{#5}%
   }%
-  \expandafter\xdef\csname jlreq at BlockHeading@spaces at current@before@\the\jlreq at BlockHeading@spaces at current@count\endcsname{
+  \expandafter\xdef\csname jlreq at BlockHeading@spaces at current@before@\the\jlreq at BlockHeading@spaces at current@count\endcsname{%
     \expandonce{\jlreq at resulta}%
   }%
   \expandafter\xdef\csname jlreq at BlockHeading@spaces at current@after@\the\jlreq at BlockHeading@spaces at current@count\endcsname{}%
-  \jlreq at BlockHeading@start at afterheading
+  \ifx\jlreq at BlockHeading@spaces at headingslist\@empty\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+    {\jlreq at BlockHeading@spaces at outputwospace\ignorespaces}%
+    {\jlreq at BlockHeading@start at afterheading}%
 }
 
 \def\jlreq at BlockHeading@start at afterheading{\futurelet\jlreq at nextchar\jlreq at BlockHeading@start at afterheading@}
@@ -1979,7 +1908,7 @@
 % スペースを読み飛ばす
 \expandafter\def\expandafter\jlreq at BlockHeading@start at afterheading@@\space{\jlreq at BlockHeading@start at afterheading}
 \def\jlreq at BlockHeading@start at afterheading@@@{%
-  \def\jlreq at do{\jlreq at BlockHeading@spaces at output\jlreq at BlockHeading@spaces at clear}%
+  \def\jlreq at do{\jlreq at BlockHeading@spaces at output}%
   \expandafter\@for\expandafter\@tempa\expandafter:\expandafter=\jlreq at BlockHeading@allheadings\do{%
     \expandafter\ifx\csname\@tempa\endcsname\jlreq at nextchar\def\jlreq at do{}\fi
   }%
@@ -1986,21 +1915,35 @@
   % \jlreq at BlockHeading@HeadingSpaces at ignoretokens内のものは特別扱いする
   \expandafter\@tfor\expandafter\@tempa\expandafter:\expandafter=\jlreq at BlockHeading@HeadingSpaces at ignoretokens\do{%
     \expandafter\ifx\@tempa\jlreq at nextchar
-      \edef\jlreq at do{%
-        \unexpanded{\let\jlreq at BlockHeading@start at savecs=}\expandonce{\@tempa}%
-        \noexpand\pretocmd\expandonce{\@tempa}{\noexpand\let\expandonce{\@tempa}=\noexpand\jlreq at BlockHeading@start at savecs\noexpand\jlreq at BlockHeading@HeadingSpaces at saveafter}{}{}%
-        \noexpand\apptocmd\expandonce{\@tempa}{\unexpanded{\jlreq at endmark\jlreq at BlockHeading@start at afterheading}}{}{}%
-      }%
+      \def\jlreq at do{\jlreq at BlockHeading@start at afterheading@saveafter at cs}%
     \fi
   }%
   \jlreq at do
 }
 
-\def\jlreq at BlockHeading@HeadingSpaces at saveafter#1\jlreq at endmark{%
-  \csxappto{jlreq at BlockHeading@spaces at current@after@\the\jlreq at BlockHeading@spaces at current@count}{\unexpanded{#1}}%
+% コントロールシークエンスを保存
+\def\jlreq at BlockHeading@start at afterheading@saveafter at cs#1{%
+  \csgappto{jlreq at BlockHeading@spaces at current@after@\the\jlreq at BlockHeading@spaces at current@count}{#1}%
+  \jlreq at BlockHeading@start at afterheading@saveafter at option
 }
+% オプションがあれば保存
+\def\jlreq at BlockHeading@start at afterheading@saveafter at option{%
+  \@ifnextchar[{\jlreq at BlockHeading@start at afterheading@saveafter at option@}{\jlreq at BlockHeading@start at afterheading@saveafter at arguments}%
+}
+\def\jlreq at BlockHeading@start at afterheading@saveafter at option@[#1]{%
+  \csxappto{jlreq at BlockHeading@spaces at current@after@\the\jlreq at BlockHeading@spaces at current@count}{\unexpanded{[#1]}}%
+  \jlreq at BlockHeading@start at afterheading@saveafter at arguments
+}
+% 引数を保存し続けるループ
+\def\jlreq at BlockHeading@start at afterheading@saveafter at arguments{%
+  \jlreq at ifnextchar\bgroup{\jlreq at BlockHeading@start at afterheading@saveafter at arguments@}{\jlreq at BlockHeading@start at afterheading}%
+}
+\def\jlreq at BlockHeading@start at afterheading@saveafter at arguments@#1{%
+  \csxappto{jlreq at BlockHeading@spaces at current@after@\the\jlreq at BlockHeading@spaces at current@count}{\unexpanded{{#1}}}%
+  \jlreq at BlockHeading@start at afterheading@saveafter at arguments
+}
 
-% 特別扱いしたいトークンの列を並べる
+% 特別扱いしたいマクロを並べる
 \def\jlreq at BlockHeading@HeadingSpaces at ignoretokens{\label}
 
 % \jlreq at resultaにaux吐き出しとかを入れて,\jlreq at resultbに出力を入れる(縦方向調整なし)
@@ -2036,7 +1979,7 @@
 % {1 = 配置(clr)}{2 = 字下げ}{3 = 字上げ}{4 = 出力}
 \long\def\jlreq at BlockHeading@start at makeoutput@#1#2#3#4{%
   \edef\jlreq at result{%
-    \noindent
+    \noexpand\noindent
     \jlreq at ifempty{#2}{}{\unexpanded{\hskip #2}}%
     \noexpand\vbox{%
       \noexpand\noindent
@@ -2422,7 +2365,7 @@
   \@ifundefined{#1}{\DeclareBlockHeading{#1}{#2}{#3}}{}%
 }
 
-% 別行見出しが連続した場合の処理
+%.. 別行見出しが連続した場合の処理
 % 設定値保存に次のマクロを使う
 % \jlreq at BlockHeading@spaces at headingslist
 %   : スペースを考慮しないとならない見出しのリスト.,_chapter_section_subsection,_section_subsection,...みたいな感じ
@@ -2532,9 +2475,14 @@
   }%
 }
 \def\jlreq at SetBlockHeadingSpaces@@@@#1#{%
-  \expandafter\jlreq at SetBlockHeadingSpaces@ifcontainsunderbar\expandafter{\@gobble #1}{%
+  \expandafter\jlreq at ifcontains\expandafter{\@gobble #1}{_}{%
     \ClassWarning{jlreq}{Unusual heading name `\@gobble #1' is found. You forgot a comma? (in SetBlockHeadingSpaces)}%
   }{}%
+  \jlreq at ifendswith{#1}{*}{{%
+    \def\@tempa_##1*{\def\@tempa{##1}}%
+    \@tempa#1
+    \ClassWarning{jlreq}{The heading name `\@gobble #1' ends with `*'. Do you mean `\@tempa{*}'? (in SetBlockHeadingSpaces)}%
+  }}{}%
   \appto\jlreq at headings{#1}%
   \jlreq at SetBlockHeadingSpaces@@@@@
 }
@@ -2551,15 +2499,7 @@
     \@gobble % \jlreq at endmarkを食う
   }%
 }
-% #1に_が含まれているか
-\def\jlreq at SetBlockHeadingSpaces@ifcontainsunderbar@#1_#2\jlreq at endmark{%
-  \jlreq at ifempty{#2}{\@secondoftwo}{\@firstoftwo}%
-}
-\def\jlreq at SetBlockHeadingSpaces@ifcontainsunderbar#1{%
-  \jlreq at SetBlockHeadingSpaces@ifcontainsunderbar@#1_\jlreq at endmark
-}
 
-
 % 現在の情報に基づき出力
 \def\jlreq at BlockHeading@spaces at output{%
   \@ifundefined{jlreq at BlockHeading@spaces at setlist@\jlreq at BlockHeading@spaces at current@sequence}{%
@@ -2571,10 +2511,18 @@
 
 % 連続スペース情報とか無視して各々の見出しを出力する
 \def\jlreq at BlockHeading@spaces at outputwospace{%
-  \jlreq at tempcnta=0
-  \@whilenum\jlreq at tempcnta<\jlreq at BlockHeading@spaces at current@count\do{%
+  \begingroup
+    \jlreq at tempcnta=0
+    \def\jlreq at do{}%
+    \jlreq at BlockHeading@spaces at outputwospace@
+    \jlreq at BlockHeading@spaces at clear
+  \expandafter\endgroup
+  \jlreq at do
+}
+\def\jlreq at BlockHeading@spaces at outputwospace@{%
+  \ifnum\jlreq at tempcnta<\jlreq at BlockHeading@spaces at current@count
     \advance\jlreq at tempcnta by 1
-    \csname jlreq at BlockHeading@spaces at current@before@\the\jlreq at tempcnta\endcsname
+    \eappto\jlreq at do{\csexpandonce{jlreq at BlockHeading@spaces at current@before@\the\jlreq at tempcnta}}%
     \edef\jlreq at tempa{%
       \unexpanded{\long\def\jlreq at tempa##1}{\csexpandonce{jlreq at BlockHeading@spaces at current@format@\the\jlreq at tempcnta}}%
     }%
@@ -2586,10 +2534,9 @@
           {\csexpandonce{jlreq at BlockHeading@spaces at current@output@\the\jlreq at tempcnta}}%
       }}%
     }%
-    \edef\jlreq at do{\jlreq at tempb}%
-    \jlreq at do
-    \csname jlreq at BlockHeading@spaces at current@after@\the\jlreq at tempcnta\endcsname
-  }%
+    \eappto\jlreq at do{\jlreq at tempb\csexpandonce{jlreq at BlockHeading@spaces at current@after@\the\jlreq at tempcnta}}%
+    \expandafter\jlreq at BlockHeading@spaces at outputwospace@
+  \fi
 }
 
 \def\jlreq at BlockHeading@spaces at output@#1#2\jlreq at endmark{%
@@ -2608,6 +2555,7 @@
       \expandonce{\jlreq at result}%
     \fi
   }%
+  \jlreq at BlockHeading@spaces at clear
   \jlreq at do
 }
 % jlreq at resultに出力すべきものを入れていく
@@ -2657,16 +2605,18 @@
 
 % 連続見出しスペース調整用のデータをすべてクリアする
 \def\jlreq at BlockHeading@spaces at clear{%
-  \jlreq at tempcnta=0
-  \@whilenum\jlreq at tempcnta<\jlreq at BlockHeading@spaces at current@count\do{%
-    \advance\jlreq at tempcnta by 1
-    \expandafter\global\expandafter\let\csname jlreq at BlockHeading@spaces at current@space@\the\jlreq at tempcnta\endcsname=\@undefined
-    \expandafter\global\expandafter\let\csname jlreq at BlockHeading@spaces at current@output@\the\jlreq at tempcnta\endcsname=\@undefined
-    \expandafter\global\expandafter\let\csname jlreq at BlockHeading@spaces at current@before@\the\jlreq at tempcnta\endcsname=\@undefined
-    \expandafter\global\expandafter\let\csname jlreq at BlockHeading@spaces at current@after@\the\jlreq at tempcnta\endcsname=\@undefined
-  }%
-  \gdef\jlreq at BlockHeading@spaces at current@sequence{}%
-  \global\jlreq at BlockHeading@spaces at current@count=0
+  \begingroup
+    \jlreq at tempcnta=0
+    \@whilenum\jlreq at tempcnta<\jlreq at BlockHeading@spaces at current@count\do{%
+      \advance\jlreq at tempcnta by 1
+      \expandafter\global\expandafter\let\csname jlreq at BlockHeading@spaces at current@space@\the\jlreq at tempcnta\endcsname=\@undefined
+      \expandafter\global\expandafter\let\csname jlreq at BlockHeading@spaces at current@output@\the\jlreq at tempcnta\endcsname=\@undefined
+      \expandafter\global\expandafter\let\csname jlreq at BlockHeading@spaces at current@before@\the\jlreq at tempcnta\endcsname=\@undefined
+      \expandafter\global\expandafter\let\csname jlreq at BlockHeading@spaces at current@after@\the\jlreq at tempcnta\endcsname=\@undefined
+    }%
+    \gdef\jlreq at BlockHeading@spaces at current@sequence{}%
+    \global\jlreq at BlockHeading@spaces at current@count=0
+  \endgroup
 }
 
 %.. 同行見出し
@@ -2732,38 +2682,43 @@
 % 1 = 書式指定,2 = インデント, 3 = 見出しと本文の間, 4 = これを越えたら二行以上,5 = これを越えたら三行以上,6 = テキスト
 \def\jlreq at CutinHeading@start@#1#2#3#4#5#6{%
   % 一行で処理したときの見出し長さを計測
-  \setbox\@tempboxa=\hbox{#1#6}%
-  \@tempdima=\wd\@tempboxa
-  % 何行必要かを\jlreq at CutinHeading@linecountに入れる
-  \ifdim\@tempdima>#5\def\jlreq at CutinHeading@linecount{3}%
-  \else\ifdim\@tempdima>#4\def\jlreq at CutinHeading@linecount{2}%
-  \else\def\jlreq at CutinHeading@linecount{1}\fi\fi
-  % \@tempdimaが実際の一行の長さに近い
-  \divide\@tempdima by \jlreq at CutinHeading@linecount
-  % \jlreq at resultboxに見出し部分を,\jlreq at CutinHeading@linecountに見出し自身に何行使うかを入れる
-  \ifnum\jlreq at CutinHeading@linecount=1\relax
-    \setbox\jlreq at resultbox=\vbox{\parindent=0pt\rightskip=0pt\leftskip=0pt\hbox{#1#6}}%
-    \def\jlreq at CutinHeading@linecount{2}%
-  \else
-    \jlreq at inlinenote@determinelength{#6}{#1}{}{\jlreq at CutinHeading@linecount}{\jlreq at CutinHeading@linecount}{\@tempdima}{\linewidth}%
-    \def\jlreq at CutinHeading@linecount{3}%
-  \fi
-  % 普通の一行の高さ/深さに合わせて見出しのボックスを作る
-  \setbox\@tempboxa=\vtop to \dimexpr\numexpr\jlreq at CutinHeading@linecount - 1\relax\baselineskip + 1\zh\relax{\vskip 0pt plus 1fill minus 1fill \box\jlreq at resultbox\vskip 0pt plus 1fill minus 1fill}%
-  % 高さを通常の一行のそれにする
-  \setbox\jlreq at tempboxa=\hbox{阿}%
-  \dp\@tempboxa=\dimexpr\ht\@tempboxa + \dp\@tempboxa - \ht\jlreq at tempboxa\relax
-  \ht\@tempboxa=\ht\jlreq at tempboxa
-  \noindent
-  \hspace*{#2}%
-  \copy\@tempboxa
-  % でかい見出しボックスの分をキャンセルする空きを入れる
-  % \baselineskip - \ht\jlreq at tempboxaはTeXが挿入するスキップの分
-  \hspace*{#3}%
-  \vspace{-\dimexpr\ht\@tempboxa + \dp\@tempboxa + \baselineskip - \ht\jlreq at tempboxa\relax}%
-  \par
-  \hangindent=\dimexpr#2 + \wd\@tempboxa + #3\relax
-  \hangafter=-\jlreq at CutinHeading@linecount\relax
+  \begingroup
+    \setbox\@tempboxa=\hbox{#1#6}%
+    \@tempdima=\wd\@tempboxa
+    % 何行必要かを\jlreq at CutinHeading@linecountに入れる
+    \ifdim\@tempdima>#5\def\jlreq at CutinHeading@linecount{3}%
+    \else\ifdim\@tempdima>#4\def\jlreq at CutinHeading@linecount{2}%
+    \else\def\jlreq at CutinHeading@linecount{1}\fi\fi
+    % \@tempdimaが実際の一行の長さに近い
+    \divide\@tempdima by \jlreq at CutinHeading@linecount
+    % \jlreq at resultboxに見出し部分を,\jlreq at CutinHeading@linecountに見出し自身に何行使うかを入れる
+    \ifnum\jlreq at CutinHeading@linecount=1\relax
+      \setbox\jlreq at resultbox=\vbox{\parindent=0pt\rightskip=0pt\leftskip=0pt\hbox{#1#6}}%
+      \def\jlreq at CutinHeading@linecount{2}%
+    \else
+      \jlreq at inlinenote@determinelength{#6}{#1}{}{\jlreq at CutinHeading@linecount}{\jlreq at CutinHeading@linecount}{\@tempdima}{\linewidth}%
+      \def\jlreq at CutinHeading@linecount{3}%
+    \fi
+    % 普通の一行の高さ/深さに合わせて見出しのボックスを作る
+    \setbox\@tempboxa=\vtop to \dimexpr\numexpr\jlreq at CutinHeading@linecount - 1\relax\baselineskip + 1\zh\relax{\vskip 0pt plus 1fill minus 1fill \box\jlreq at resultbox\vskip 0pt plus 1fill minus 1fill}%
+    % 高さを通常の一行のそれにする
+    \setbox\jlreq at tempboxa=\hbox{阿}%
+    \dp\@tempboxa=\dimexpr\ht\@tempboxa + \dp\@tempboxa - \ht\jlreq at tempboxa\relax
+    \ht\@tempboxa=\ht\jlreq at tempboxa
+    \noindent
+    \hspace*{#2}%
+    \copy\@tempboxa
+    \hspace*{#3}%
+    \par
+    % でかい見出しボックスの分をキャンセルする空きを入れる
+    % \baselineskip - \ht\jlreq at tempboxaはTeXが挿入するスキップの分
+    \vskip -\dimexpr\ht\@tempboxa + \dp\@tempboxa + \baselineskip - \ht\jlreq at tempboxa\relax\relax
+    \edef\jlreq at do{%
+      \noexpand\hangindent=\the\dimexpr#2 + \wd\@tempboxa + #3\relax\relax
+      \noexpand\hangafter=-\jlreq at CutinHeading@linecount\relax
+    }%
+  \expandafter\endgroup
+  \jlreq at do
   \prevdepth=0pt
   % 改段落が起こっても\hang****をキープするように\parを書き換えておく(終わったら元に戻す).
   \def\par{%
@@ -2771,10 +2726,8 @@
     \jlreq at tempcnta=\hangafter\relax
     \jlreq at tempdima=\hangindent\relax
     \@@par
-    \ifnum\jlreq at tempcnta<-\prevgraf\relax
-      \ifjlreq at tempa\else
-        \advance\jlreq at tempcnta by \prevgraf\relax
-      \fi
+    \ifjlreq at tempa\else\advance\jlreq at tempcnta by \prevgraf\relax\fi
+    \ifnum\jlreq at tempcnta<0
       \hangafter=\jlreq at tempcnta\relax
       \hangindent=\jlreq at tempdima\relax
     \else
@@ -3000,7 +2953,7 @@
 % 文字サイズは6ポイントくらい(4.2.3.a)とりあえす\scriptsize
 
 % \footnoteと\footnotemarkの前後に\jlreq at hook@prenote/\jlreq at hook@postnoteを入れる
-\jlreq at saveoriginalcs{footnote}%
+\jlreq at saveoriginalcs{footnote}
 \edef\jlreq at do{
   \unexpanded{\long\def\jlreq at fixjfm@footnote@[#1]#2}{%
     \expandonce{\footnote[#1]{#2}}%
@@ -3138,7 +3091,9 @@
 \else
   \renewcommand*{\thefootnote}{\arabic{footnote}\hbox{})\inhibitglue}
 \fi
+\ifthenelse{\equal{\jlreq at article@type}{article}}{}{\@addtoreset{footnote}{chapter}}
 
+
 %.. 後注(4.2.4)
 \def\jlreq at endnotemarkname{@thefnmark}% 合印用番号を一時的に入れるマクロ名
 \def\jlreq at endnotecounter{footnote}% 後注用のカウンタ名
@@ -4092,7 +4047,12 @@
 
 %.. figure環境
 \newcounter{figure}
-\renewcommand*{\thefigure}{\arabic{figure}}
+\ifthenelse{\equal{\jlreq at article@type}{article}}{%
+  \renewcommand{\thefigure}{\@arabic\c at figure}
+}{%
+  \@addtoreset{figure}{chapter}
+  \renewcommand{\thefigure}{\ifnum\c at chapter>\z@\thechapter.\fi \@arabic\c at figure}
+}
 \newcommand*{\fps at figure}{h}
 \newcommand*{\ftype at figure}{1}
 \newcommand*{\ext at figure}{lof}
@@ -4104,7 +4064,12 @@
 
 %.. table環境
 \newcounter{table}
-\renewcommand*{\thetable}{\arabic{table}}
+\ifthenelse{\equal{\jlreq at article@type}{article}}{%
+  \renewcommand{\thetable}{\@arabic\c at table}
+}{%
+  \@addtoreset{table}{chapter}
+  \renewcommand{\thetable}{\ifnum\c at chapter>\z@\thechapter.\fi \@arabic\c at table}
+}
 \newcommand*{\fps at table}{h}
 \newcommand*{\ftype at table}{2}
 \newcommand*{\ext at table}{lot}
@@ -4487,7 +4452,12 @@
 \setlength\fboxsep{.3\zw}
 \setlength\fboxrule{\jlreq at omotekeiwidth} % 根拠はない
 % 後で
-\renewcommand{\theequation}{\@arabic\c at equation}
+\ifthenelse{\equal{\jlreq at article@type}{article}}{%
+  \renewcommand{\theequation}{\@arabic\c at equation}
+}{%
+  \@addtoreset{equation}{chapter}
+  \renewcommand{\theequation}{\ifnum\c at chapter>\z@\thechapter.\fi \@arabic\c at equation}
+}
 
 %. 目次
 \setcounter{tocdepth}{3}
@@ -4728,20 +4698,18 @@
   \hbox{\yoko 
     \setbox\jlreq at tempboxa=\hbox{阿}%
     \vrule width 0pt height \ht\jlreq at tempboxa depth \dp\jlreq at tempboxa #1}%
-  \def\jlreq at do{%
-    % 後ろのJFM glue
-    \jlreq at ifletter{\jlreq at nextchar}{%
-      \jlreq at expandmacros{\jlreq at nextchar}{\jlreq at tempa}%
-      \def\jlreq at tempb####1####2\jlreq at endmark{\def\jlreq at tempa{####1}}%
-      \expandafter\jlreq at tempb\jlreq at tempa\jlreq at endmark
-      \jlreq at calc@jfmglue{\char\jlreq at lastnodechar}{\jlreq at tempa}%
-      \jlreq at calc@jfmglue{阿}{\jlreq at tempa}%
-      \jlreq at ifgluezero\jlreq at resultskip{}{\hskip\jlreq at resultskip}%
-      \inhibitglue
-    }{}%
-  }%
-  \futurelet\jlreq at nextchar\jlreq at do
+  \futurelet\jlreq at nextchar\jlreq at tatechuyoko@
 }
+\def\jlreq at tatechuyoko@{%
+  \jlreq at ifletter{\jlreq at nextchar}{%
+    \jlreq at expandmacros{\jlreq at nextchar}{\jlreq at tempa}%
+    \def\jlreq at tempb##1##2\jlreq at endmark{\def\jlreq at tempa{##1}}%
+    \expandafter\jlreq at tempb\jlreq at tempa\jlreq at endmark
+    \jlreq at calc@jfmglue{阿}{\jlreq at tempa}%
+    \jlreq at ifgluezero\jlreq at resultskip{}{\hskip\jlreq at resultskip}%
+    \inhibitglue
+  }{}%
+}
 
 % 日にち
 \newif\if西暦
@@ -4749,13 +4717,19 @@
 \def\和暦{\西暦false}
 % #1年#2月#3日 #4は\numberとか\kansujiとか
 \def\jlreq at wareki#1#2#3#4{%
+  \jlreq at warekiyear{#1}{#2}{#3}{#4}%
+  #4#2月#4#3日%
+}
+\def\jlreq at warekiyear#1#2#3#4{%
   % 昭和:1989年1月7日まで
   \ifnum0\ifnum#1<1988 1\fi\ifnum#1=1989 \ifnum#2=1 \ifnum#3<8 1\fi\fi\fi>0
     昭和\jlreq at warekiyear@{#1}{1926}{#4}%
-  \else
+  % 平成:2019年4月末日まで
+  \else%\ifnum0\ifnum#1<2019 1\fi\ifnum#1=1989 \ifnum#2<5 1\fi\fi>0
     平成\jlreq at warekiyear@{#1}{1989}{#4}%
-  \fi
-  #4#2月#4#3日%
+%  \else
+%    新元号\jlreq at warekiyear@{#1}{2019}{#4}%
+  \fi%\fi
 }
 \def\jlreq at warekiyear@#1#2#3{\ifnum#1=#2 元年\else #3\numexpr#1-#2+1\relax 年\fi}
 \def\today{%

Modified: trunk/Master/texmf-dist/tex/luatex/jlreq/jfm-jlreq.lua
===================================================================
--- trunk/Master/texmf-dist/tex/luatex/jlreq/jfm-jlreq.lua	2017-12-22 21:22:52 UTC (rev 46120)
+++ trunk/Master/texmf-dist/tex/luatex/jlreq/jfm-jlreq.lua	2017-12-22 21:23:18 UTC (rev 46121)
@@ -12,8 +12,10 @@
 \ltjsetparameter{stretch_priority={kanjiskip=0,xkanjiskip=0}}
 ]]
 
+local stretch_width = 0.25 -- 空き第四段階の空き量
+
 local hyphen_glue = {
-	[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+	[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 	[2] = {0, 0, 0},
 	[300] = {0, 0, 0},
 	[301] = {0, 0, 0},
@@ -22,16 +24,17 @@
 	[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
 	[6] = {0, 0, 0},
 	[7] = {0, 0, 0},
-	[8] = {0, 0, 0},
+	[8] = {0, stretch_width, 0, priority = {-1,0}},
 	[9] = {0, 0, 0},
 	[10] = {0, 0, 0},
 	[11] = {0, 0, 0},
-	[12] = {0, 0, 0},
-	[13] = {0, 0, 0},
-	[14] = {0, 0, 0},
-	[15] = {0, 0, 0},
-	[16] = {0, 0, 0},
-	[0] = {0, 0, 0},
+	[12] = {0, stretch_width, 0, priority = {-1,0}},
+	[13] = {0, stretch_width, 0, priority = {-1,0}},
+	[14] = {0, stretch_width, 0, priority = {-1,0}},
+	[15] = {0, stretch_width, 0, priority = {-1,0}},
+	[16] = {0, stretch_width, 0, priority = {-1,0}},
+	[0] = {0, stretch_width, 0, priority = {-1,0}},
+	[27] = {0, stretch_width, 0, priority = {-1,0}},
 --[[
 	[20] = {0, 0, 0},
 	[21] = {0, 0, 0},
@@ -40,7 +43,6 @@
 	[24] = {0, 0, 0},
 	[25] = {0, 0, 0},
 	[26] = {0, 0, 0},
-	[27] = {0, 0, 0},
 	[28] = {0, 0, 0},
 	[29] = {0, 0, 0},
 	[30] = {0, 0, 0},
@@ -47,13 +49,11 @@
 ]]
 }
 
-
-
 local jfm = {
 	dir = 'yoko',
 	zw = 1.0,
 	zh = 1.0,
-	version = 2,
+	version = 3,
 	-- 文字クラス4,9,10,11,15,16,19との間は(x)kanjiskipで調整する.
 	kanjiskip = {0, 0.25, 0},
 	xkanjiskip = {0.25, 0.25, 0.125},
@@ -84,7 +84,8 @@
 			[15] = {0, 0, 0},
 			[16] = {0, 0, 0},
 			[0] = {0, 0, 0},
-		--[[
+			[27] = {0, 0, 0},
+--[[
 			[20] = {0, 0, 0},
 			[21] = {0, 0, 0},
 			[22] = {0, 0, 0},
@@ -92,7 +93,6 @@
 			[24] = {0, 0, 0},
 			[25] = {0, 0, 0},
 			[26] = {0, 0, 0},
-			[27] = {0, 0, 0},
 			[28] = {0, 0, 0},
 			[29] = {0, 0, 0},
 			[30] = {0, 0, 0},
@@ -107,7 +107,7 @@
 		width = 0.5,height = 0.88,depth = 0.12,
 		align = 'left',
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[301] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
@@ -116,16 +116,17 @@
 			[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
+			[8] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
 			[9] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[10] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[11] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[12] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[13] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[14] = {0, 0, 0},
-			[15] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[16] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[0] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
+			[12] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[13] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[14] = {0, stretch_width, 0, priority = {-1,0}},
+			[15] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[16] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[0] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[27] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
@@ -134,7 +135,6 @@
 			[24] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[25] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[26] = {0.5, 0, 0, ratio = 0, priority = {0,-2}},
-			[27] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[28] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[29] = {0, 0, 0},
 			[30] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
@@ -170,25 +170,26 @@
 		width = 1,height = 0.88,depth = 0.12,
 		align = 'middle',
 		glue = {
-			[1] = {0.5, 0.5, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
 			[302] = {0, 0, 0},
 			[4] = {0, 0, 0},
-			[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
+			[5] = {0.25, stretch_width, 0.25, ratio = 1, priority = {-1,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0, 0, 0},
+			[8] = {0, stretch_width, 0, priority = {-1,0}},
 			[9] = {0, 0, 0},
 			[10] = {0, 0, 0},
 			[11] = {0, 0, 0},
-			[12] = {0, 0, 0},
-			[13] = {0, 0, 0},
-			[14] = {0, 0, 0},
-			[15] = {0, 0, 0},
-			[16] = {0, 0, 0},
---			[0] = {0, 0, 0},
+			[12] = {0, stretch_width, 0, priority = {-1,0}},
+			[13] = {0, stretch_width, 0, priority = {-1,0}},
+			[14] = {0, stretch_width, 0, priority = {-1,0}},
+			[15] = {0, stretch_width, 0, priority = {-1,0}},
+			[16] = {0, stretch_width, 0, priority = {-1,0}},
+			[0] = {0, stretch_width, 0, priority = {-1,0}},
+--			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
@@ -197,9 +198,6 @@
 			[24] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[25] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[26] = {0, 0, 0},
-		]]
---			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
-		--[[
 			[28] = {0, 0, 0},
 			[29] = {0, 0, 0},
 			[30] = {0, 0, 0},
@@ -214,7 +212,7 @@
 		width = 0.5,height = 0.88,depth = 0.12,
 		align = 'middle',
 		glue = {
-			[1] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
+			[1] = {0.25, stretch_width, 0.25, ratio = 0, priority = {-1,-1}},
 			[2] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[300] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[301] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
@@ -223,16 +221,17 @@
 			[5] = {0.5, 0, 0.5, ratio = 0.5, priority = {0,-1}},
 			[6] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[7] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
-			[8] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
+			[8] = {0.25, stretch_width, 0.25, ratio = 0, priority = {-1,-1}},
 			[9] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[10] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[11] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
-			[12] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
-			[13] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
-			[14] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
-			[15] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
-			[16] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
-			[0] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
+			[12] = {0.25, stretch_width, 0.25, ratio = 0, priority = {-1,-1}},
+			[13] = {0.25, stretch_width, 0.25, ratio = 0, priority = {-1,-1}},
+			[14] = {0.25, stretch_width, 0.25, ratio = 0, priority = {-1,-1}},
+			[15] = {0.25, stretch_width, 0.25, ratio = 0, priority = {-1,-1}},
+			[16] = {0.25, stretch_width, 0.25, ratio = 0, priority = {-1,-1}},
+			[0] = {0.25, stretch_width, 0.25, ratio = 0, priority = {-1,-1}},
+			[27] = {0.25, stretch_width, 0.25, ratio = 0, priority = {-1,-1}},
 		--[[
 			[20] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[21] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
@@ -241,9 +240,6 @@
 			[24] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[25] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[26] = {0.25, 0, 0, ratio = 0, priority = {0,-1}},
-		]]
-			[27] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
-		--[[
 			[28] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[29] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
 			[30] = {0.25, 0, 0.25, ratio = 0, priority = {0,-1}},
@@ -258,7 +254,7 @@
 		width = 0.5,height = 0.88,depth = 0.12,
 		align = 'left',
 		glue = {
-			[1] = {0.5, 0, 0, ratio = 0},
+			[1] = {0.5, stretch_width, 0, ratio = 0, priority = {-1,0}},
 			[2] = {0, 0, 0},
 			[300] = {0.5, 0, 0, ratio = 0},
 			[301] = {0.5, 0, 0, ratio = 0},
@@ -267,16 +263,17 @@
 			[5] = {0.75, 0, 0.25, ratio = 0.33333333, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0.5, 0, 0, ratio = 0},
+			[8] = {0.5, stretch_width, 0, ratio = 0, priority = {-1,0}},
 			[9] = {0.5, 0, 0, ratio = 0},
 			[10] = {0.5, 0, 0, ratio = 0},
 			[11] = {0.5, 0, 0, ratio = 0},
-			[12] = {0.5, 0, 0, ratio = 0},
-			[13] = {0.5, 0, 0, ratio = 0},
-			[14] = {0.5, 0, 0, ratio = 0},
-			[15] = {0.5, 0, 0, ratio = 0},
-			[16] = {0.5, 0, 0, ratio = 0},
-			[0] = {0.5, 0, 0, ratio = 0},
+			[12] = {0.5, stretch_width, 0, ratio = 0, priority = {-1,0}},
+			[13] = {0.5, stretch_width, 0, ratio = 0, priority = {-1,0}},
+			[14] = {0.5, stretch_width, 0, ratio = 0, priority = {-1,0}},
+			[15] = {0.5, stretch_width, 0, ratio = 0, priority = {-1,0}},
+			[16] = {0.5, stretch_width, 0, ratio = 0, priority = {-1,0}},
+			[0] = {0.5, stretch_width, 0, ratio = 0, priority = {-1,0}},
+			[27] = {0.5, stretch_width, 0, ratio = 0, priority = {-1,0}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.5, 0, 0, ratio = 0},
@@ -285,9 +282,6 @@
 			[24] = {0.5, 0, 0, ratio = 0},
 			[25] = {0.5, 0, 0, ratio = 0},
 			[26] = {0.5, 0, 0, ratio = 0},
-		]]
-			[27] = {0.5, 0, 0, ratio = 0},
-		--[[
 			[28] = {0.5, 0, 0, ratio = 0},
 			[29] = {0.5, 0, 0, ratio = 0},
 			[30] = {0.5, 0, 0, ratio = 0},
@@ -302,7 +296,7 @@
 		width = 0.5,height = 0.88,depth = 0.12,
 		align = 'left',
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[301] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
@@ -311,16 +305,17 @@
 			[5] = {0.75, 0, 0.75, ratio = 0.33333333, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
+			[8] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
 			[9] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[10] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[11] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[12] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[13] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[14] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[15] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[16] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-			[0] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
+			[12] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[13] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[14] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[15] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[16] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[0] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
+			[27] = {0.5, stretch_width, 0.5, ratio = 0, priority = {-1,-2}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
@@ -329,9 +324,6 @@
 			[24] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[25] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[26] = {0.5, 0, 0, ratio = 0, priority = {0,-2}},
-		]]
-			[27] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
-		--[[
 			[28] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[29] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
 			[30] = {0.5, 0, 0.5, ratio = 0, priority = {0,-2}},
@@ -345,7 +337,7 @@
 		width = 1,height = 0.88,depth = 0.12,
 		align = 'middle',
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
@@ -354,7 +346,7 @@
 			[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0, 0, 0},
+			[8] = {0, 0, 0}, -- 空き注4
 --			[9] = {0, 0.25, 0, priority = {0,0}},
 --			[10] = {0, 0.25, 0, priority = {0,0}},
 --			[11] = {0, 0.25, 0, priority = {0,0}},
@@ -364,6 +356,7 @@
 --			[15] = {0, 0.25, 0, priority = {0,0}},
 --			[16] = {0, 0.25, 0, priority = {0,0}},
 			[0] = {0, 0.25, 0, priority = {0,0}},
+			[27] = {0, 0.25, 0, priority = {0,0}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0, 0.25, 0, priority = {0,0}},
@@ -372,9 +365,6 @@
 			[24] = {0, 0, 0},
 			[25] = {0, 0, 0},
 			[26] = {0, 0, 0},
-		]]
-			[27] = {0, 0.25, 0, priority = {0,0}},
-		--[[
 			[28] = {0, 0.25, 0, priority = {0,0}},
 			[29] = {0, 0, 0},
 			[30] = {0, 0.25, 0, priority = {0,0}},
@@ -387,7 +377,7 @@
 		height = 0.88,depth = 0.12,
 		align = 'middle',
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
@@ -396,15 +386,17 @@
 			[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0, 0, 0},
+			[8] = {0, stretch_width, 0, priority = {-1,0}},
 --			[9] = {0, 0.25, 0, priority = {0,0}},
 --			[10] = {0, 0.25, 0, priority = {0,0}},
 --			[11] = {0, 0.25, 0, priority = {0,0}},
 --			[12] = {0, 0.25, 0, priority = {0,0}},
 --			[13] = {0, 0.25, 0, priority = {0,0}},
-			[14] = {0, 0, 0},
+			[14] = {0, stretch_width, 0, priority = {-1,0}},
 --			[15] = {0, 0.25, 0, priority = {0,0}},
 --			[16] = {0, 0.25, 0, priority = {0,0}},
+--			[0] = {0, 0.25, 0, priority = {0,0}},
+--			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
@@ -413,9 +405,6 @@
 			[24] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[25] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[26] = {0, 0, 0},
-		]]
-			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
-		--[[
 			[28] = {0, 0.25, 0, priority = {0,0}},
 			[29] = {0, 0, 0},
 			[30] = {0, 0.25, 0, priority = {0,0}},
@@ -428,7 +417,7 @@
 		height = 0.88,depth = 0.12,
 		align = 'middle',
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
@@ -437,15 +426,17 @@
 			[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0, 0, 0},
+			[8] = {0, stretch_width, 0, priority = {-1,0}},
 --			[9] = {0, 0.25, 0, priority = {0,0}},
 --			[10] = {0, 0.25, 0, priority = {0,0}},
 --			[11] = {0, 0.25, 0, priority = {0,0}},
 --			[12] = {0, 0.25, 0, priority = {0,0}},
 --			[13] = {0, 0.25, 0, priority = {0,0}},
-			[14] = {0, 0, 0},
+			[14] = {0, stretch_width, 0, priority = {-1,0}},
 --			[15] = {0, 0.25, 0, priority = {0,0}},
 --			[16] = {0, 0.25, 0, priority = {0,0}},
+--			[0] = {0, 0.25, 0, priority = {0,0}},
+--			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
@@ -454,9 +445,6 @@
 			[24] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[25] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[26] = {0, 0, 0},
-		]]
-			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
-		--[[
 			[28] = {0, 0.25, 0, priority = {0,0}},
 			[29] = {0, 0, 0},
 			[30] = {0, 0.25, 0, priority = {0,0}},
@@ -469,7 +457,7 @@
 		height = 0.88,depth = 0.12,
 		align = 'middle',
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
@@ -478,15 +466,17 @@
 			[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0, 0, 0},
+			[8] = {0, stretch_width, 0, priority = {-1,0}},
 --			[9] = {0, 0.25, 0, priority = {0,0}},
 --			[10] = {0, 0.25, 0, priority = {0,0}},
 --			[11] = {0, 0.25, 0, priority = {0,0}},
 --			[12] = {0, 0.25, 0, priority = {0,0}},
 --			[13] = {0, 0.25, 0, priority = {0,0}},
-			[14] = {0, 0, 0},
+			[14] = {0, stretch_width, 0, priority = {-1,0}},
 --			[15] = {0, 0.25, 0, priority = {0,0}},
 --			[16] = {0, 0.25, 0, priority = {0,0}},
+--			[0] = {0, 0.25, 0, priority = {0,0}},
+--			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.25, 0, 0.125, ratio = 0, priority = {1,-3}},
@@ -495,9 +485,6 @@
 			[24] = {0.25, 0, 0.125, ratio = 0, priority = {1,-3}},
 			[25] = {0.25, 0, 0.125, ratio = 0, priority = {1,-3}},
 			[26] = {0, 0, 0},
-		]]
-			[27] = {0.25, 0, 0.125, ratio = 0, priority = {1,-3}},
-		--[[
 			[28] = {0, 0.25, 0, priority = {0,0}},
 			[29] = {0, 0, 0},
 			[30] = {0, 0.25, 0, priority = {0,0}},
@@ -528,7 +515,8 @@
 			[14] = {0, 0, 0},
 --			[15] = {0, 0.25, 0, priority = {0,0}},
 --			[16] = {0, 0.25, 0, priority = {0,0}},
---			[0] = {0, 0.25, 0, priority = {0,0}},
+			[0] = {0, 0.25, 0, priority = {0,0}},
+			[27] = {0, 0.25, 0, priority = {0,0}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0, 0.25, 0, priority = {0,0}},
@@ -537,9 +525,6 @@
 			[24] = {0, 0, 0},
 			[25] = {0, 0.25, 0, priority = {0,0}},
 			[26] = {0, 0, 0},
-		]]
-			[27] = {0, 0.25, 0, priority = {0,0}},
-		--[[
 			[28] = {0, 0.25, 0, priority = {0,0}},
 			[29] = {0, 0, 0},
 			[30] = {0, 0.25, 0, priority = {0,0}},
@@ -552,7 +537,7 @@
 		height = 0.88,depth = 0.12,
 		align = 'middle',
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
@@ -567,10 +552,11 @@
 --			[11] = {0, 0.25, 0, priority = {0,0}},
 --			[12] = {0, 0.25, 0, priority = {0,0}},
 --			[13] = {0, 0.25, 0, priority = {0,0}},
-			[14] = {0, 0, 0},
+			[14] = {0, stretch_width, 0, priority = {-1,0}},
 --			[15] = {0, 0.25, 0, priority = {0,0}},
 --			[16] = {0, 0.25, 0, priority = {0,0}},
 			[0] = {0, 0.25, 0, priority = {0,0}},
+			[27] = {0, 0.25, 0, priority = {0,0}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0, 0.25, 0, priority = {0,0}},
@@ -579,9 +565,6 @@
 			[24] = {0, 0.25, 0, priority = {0,0}},
 			[25] = {0, 0.25, 0, priority = {0,0}},
 			[26] = {0, 0, 0},
-		]]
-			[27] = {0, 0.25, 0, priority = {0,0}},
-		--[[
 			[28] = {0, 0.25, 0, priority = {0,0}},
 			[29] = {0, 0, 0},
 			[30] = {0, 0.25, 0, priority = {0,0}},
@@ -594,7 +577,7 @@
 		align = 'middle',
 		width= 1,height = 0.88,depth = 0.12,
 		glue = {
-			[1] = {0, 0, 0},
+			[1] = {0, stretch_width, 0, priority = {-1,0}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
@@ -603,16 +586,17 @@
 			[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0, 0, 0},
+			[8] = {0, stretch_width, 0, priority = {-1,0}},
 			[9] = {0, 0, 0},
 			[10] = {0, 0, 0},
 			[11] = {0, 0, 0},
-			[12] = {0, 0, 0},
-			[13] = {0, 0, 0},
-			[14] = {0, 0, 0},
-			[15] = {0, 0, 0},
-			[16] = {0, 0, 0},
-			[0] = {0, 0, 0},
+			[12] = {0, stretch_width, 0, priority = {-1,0}},
+			[13] = {0, stretch_width, 0, priority = {-1,0}},
+			[14] = {0, stretch_width, 0, priority = {-1,0}},
+			[15] = {0, stretch_width, 0, priority = {-1,0}},
+			[16] = {0, stretch_width, 0, priority = {-1,0}},
+			[0] = {0, stretch_width, 0, priority = {-1,0}},
+			[27] = {0, stretch_width, 0, priority = {-1,0}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0, 0, 0},
@@ -621,9 +605,6 @@
 			[24] = {0, 0, 0},
 			[25] = {0, 0, 0},
 			[26] = {0, 0, 0},
-		]]
-			[27] = {0, 0, 0},
-		--[[
 			[28] = {0, 0, 0},
 			[29] = {0, 0, 0},
 			[30] = {0, 0, 0},
@@ -636,7 +617,7 @@
 		height = 0.88,depth = 0.12,
 		align = 'middle',
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
@@ -654,6 +635,8 @@
 			[14] = {0, 0, 0},
 --			[15] = {0, 0.25, 0, priority = {0,0}},
 --			[16] = {0, 0.25, 0, priority = {0,0}},
+--			[0] = {0, 0.25, 0, priority = {0,0}},
+--			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
@@ -663,7 +646,6 @@
 			[25] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[26] = {0, 0, 0},
 		]]
-			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 		--[[
 			[28] = {0, 0.25, 0, priority = {0,0}},
 			[29] = {0, 0, 0},
@@ -677,7 +659,7 @@
 		height = 0.88,depth = 0.12,
 		align = 'middle',
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
@@ -695,6 +677,8 @@
 			[14] = {0, 0, 0},
 --			[15] = {0, 0.25, 0, priority = {0,0}},
 --			[16] = {0, 0.25, 0, priority = {0,0}},
+--			[0] = {0, 0.25, 0, priority = {0,0}},
+--			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
@@ -704,7 +688,6 @@
 			[25] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[26] = {0, 0, 0},
 		]]
-			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 		--[[
 			[28] = {0, 0.25, 0, priority = {0,0}},
 			[29] = {0, 0, 0},
@@ -733,7 +716,7 @@
 		align = 'middle',
 		width = 1,height = 0.88,depth = 0.12,
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
 			[300] = {0, 0, 0},
 			[301] = {0, 0, 0},
@@ -742,10 +725,17 @@
 			[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
-			[8] = {0, 0.25, 0, priority = {0,0}},
-			[12] = {0, 0.25, 0, priority = {0,0}},
-			[13] = {0, 0.25, 0, priority = {0,0}},
+--			[8] = {0, 0.25, 0, priority = {0,0}},
+--			[9] = {0, 0.25, 0, priority = {0,0}},
+--			[10] = {0, 0.25, 0, priority = {0,0}},
+--			[11] = {0, 0.25, 0, priority = {0,0}},
+--			[12] = {0, 0.25, 0, priority = {0,0}},
+--			[13] = {0, 0.25, 0, priority = {0,0}},
 			[14] = {0, 0, 0},
+--			[15] = {0, 0.25, 0, priority = {0,0}},
+--			[16] = {0, 0.25, 0, priority = {0,0}},
+--			[0] = {0, 0.25, 0, priority = {0,0}},
+--			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 		--[[
 			[20] = {0, 0, 0},
 			[21] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
@@ -754,9 +744,6 @@
 			[24] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[25] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[26] = {0, 0, 0},
-		]]
---			[27] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
-		--[[
 			[28] = {0, 0.25, 0, priority = {0,0}},
 			[29] = {0, 0, 0},
 			[30] = {0, 0.25, 0, priority = {0,0}},
@@ -1012,27 +999,31 @@
 			[30] = {0, 0, 0},
 		}
 	},
-	
+]]
 	[27] = {-- 欧文
-		chars = {'jcharbdd'},
+		chars = {'alchar'},
 		glue = {
-			[1] = {0.5, 0, 0.5, ratio = 1, priority = {0,-2}},
+			[1] = {0.5, stretch_width, 0.5, ratio = 1, priority = {-1,-2}},
 			[2] = {0, 0, 0},
-			[3] = {0, 0, 0},
+			[300] = {0, 0, 0},
+			[301] = {0, 0, 0},
+			[302] = {0, 0, 0},
 			[4] = {0, 0, 0},
 			[5] = {0.25, 0, 0.25, ratio = 1, priority = {0,-1}},
 			[6] = {0, 0, 0},
 			[7] = {0, 0, 0},
 			[8] = {0, 0.25, 0, priority = {0,0}},
-			[9] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
-			[10] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
-			[11] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
+--			[9] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
+--			[10] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
+--			[11] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
 			[12] = {0, 0.25, 0, priority = {0,0}},
 			[13] = {0, 0.25, 0, priority = {0,0}},-- 空け注10
 			[14] = {0, 0, 0},
-			[15] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
-			[16] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
-			[0] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
+--			[15] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
+--			[16] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
+--			[0] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
+--			[27] = {0, 0, 0, ratio = 0, priority = {1,0}},
+--[[
 			[20] = {0, 0, 0},
 			[21] = {0, 0.25, 0, priority = {0,0}},
 			[22] = {0.25, 0.25, 0.125, ratio = 1, priority = {1,-3}},
@@ -1044,9 +1035,10 @@
 			[28] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
 			[29] = {0, 0, 0},
 			[30] = {0.25, 0.25, 0.125, ratio = 0, priority = {1,-3}},
+--]]
 		}
 	},
-	
+--[[
 	[28] = { -- 割注始め括弧類
 		chars = {'(', '〔', '['},
 		glue = {

Modified: trunk/Master/texmf-dist/tex/luatex/jlreq/jfm-jlreqv.lua
===================================================================
--- trunk/Master/texmf-dist/tex/luatex/jlreq/jfm-jlreqv.lua	2017-12-22 21:22:52 UTC (rev 46120)
+++ trunk/Master/texmf-dist/tex/luatex/jlreq/jfm-jlreqv.lua	2017-12-22 21:23:18 UTC (rev 46121)
@@ -5,9 +5,9 @@
   ["glue"]={
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -21,24 +21,6 @@
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [8]={
-    0,
-    0.25,
-    0,
-    ["priority"]={ 0, 0 },
-   },
-   [12]={
-    0,
-    0.25,
-    0,
-    ["priority"]={ 0, 0 },
-   },
-   [13]={
-    0,
-    0.25,
-    0,
-    ["priority"]={ 0, 0 },
-   },
    [14]={ 0, 0, 0 },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
@@ -75,6 +57,7 @@
    [14]={ 0, 0, 0 },
    [15]={ 0, 0, 0 },
    [16]={ 0, 0, 0 },
+   [27]={ 0, 0, 0 },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
    [302]={ 0, 0, 0 },
@@ -90,16 +73,16 @@
   ["glue"]={
    [0]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    { 0, 0, 0 },
@@ -121,9 +104,9 @@
    [7]={ 0, 0, 0 },
    [8]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [9]={
@@ -149,33 +132,45 @@
    },
    [12]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [13]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
-   [14]={ 0, 0, 0 },
+   [14]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [15]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [16]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
+   [27]={
+    0.5,
+    0.25,
+    0.5,
+    ["priority"]={ -1, -2 },
+    ["ratio"]=0,
+   },
    [300]={
     0.5,
     0,
@@ -206,11 +201,17 @@
   ["chars"]={ "!", "?", "‼", "⁇", "⁈", "⁉" },
   ["depth"]=0.5,
   ["glue"]={
+   [0]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    {
     0.5,
+    0.25,
     0.5,
-    0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -217,22 +218,52 @@
    [4]={ 0, 0, 0 },
    [5]={
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=1,
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [8]={ 0, 0, 0 },
+   [8]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [9]={ 0, 0, 0 },
    [10]={ 0, 0, 0 },
    [11]={ 0, 0, 0 },
-   [12]={ 0, 0, 0 },
-   [13]={ 0, 0, 0 },
-   [14]={ 0, 0, 0 },
-   [15]={ 0, 0, 0 },
-   [16]={ 0, 0, 0 },
+   [12]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [13]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [14]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [15]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [16]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
    [302]={ 0, 0, 0 },
@@ -248,16 +279,16 @@
   ["glue"]={
    [0]={
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=0,
    },
    {
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=0,
    },
    {
@@ -297,9 +328,9 @@
    },
    [8]={
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=0,
    },
    [9]={
@@ -325,44 +356,44 @@
    },
    [12]={
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=0,
    },
    [13]={
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=0,
    },
    [14]={
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=0,
    },
    [15]={
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=0,
    },
    [16]={
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=0,
    },
    [27]={
     0.25,
-    0,
     0.25,
-    ["priority"]={ 0, -1 },
+    0.25,
+    ["priority"]={ -1, -1 },
     ["ratio"]=0,
    },
    [300]={
@@ -398,14 +429,16 @@
   ["glue"]={
    [0]={
     0.5,
+    0.25,
     0,
-    0,
+    ["priority"]={ -1, 0 },
     ["ratio"]=0,
    },
    {
     0.5,
+    0.25,
     0,
-    0,
+    ["priority"]={ -1, 0 },
     ["ratio"]=0,
    },
    { 0, 0, 0 },
@@ -426,8 +459,9 @@
    [7]={ 0, 0, 0 },
    [8]={
     0.5,
+    0.25,
     0,
-    0,
+    ["priority"]={ -1, 0 },
     ["ratio"]=0,
    },
    [9]={
@@ -450,38 +484,44 @@
    },
    [12]={
     0.5,
+    0.25,
     0,
-    0,
+    ["priority"]={ -1, 0 },
     ["ratio"]=0,
    },
    [13]={
     0.5,
+    0.25,
     0,
-    0,
+    ["priority"]={ -1, 0 },
     ["ratio"]=0,
    },
    [14]={
     0.5,
+    0.25,
     0,
-    0,
+    ["priority"]={ -1, 0 },
     ["ratio"]=0,
    },
    [15]={
     0.5,
+    0.25,
     0,
-    0,
+    ["priority"]={ -1, 0 },
     ["ratio"]=0,
    },
    [16]={
     0.5,
+    0.25,
     0,
-    0,
+    ["priority"]={ -1, 0 },
     ["ratio"]=0,
    },
    [27]={
     0.5,
+    0.25,
     0,
-    0,
+    ["priority"]={ -1, 0 },
     ["ratio"]=0,
    },
    [300]={
@@ -514,16 +554,16 @@
   ["glue"]={
    [0]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    { 0, 0, 0 },
@@ -545,9 +585,9 @@
    [7]={ 0, 0, 0 },
    [8]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [9]={
@@ -573,44 +613,44 @@
    },
    [12]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [13]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [14]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [15]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [16]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [27]={
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=0,
    },
    [300]={
@@ -651,9 +691,9 @@
    },
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -689,9 +729,9 @@
   ["glue"]={
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -705,14 +745,17 @@
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [8]={ 0, 0, 0 },
-   [14]={ 0, 0, 0 },
-   [27]={
+   [8]={
+    0,
     0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [14]={
+    0,
     0.25,
-    0.125,
-    ["priority"]={ 1, -3 },
-    ["ratio"]=0,
+    0,
+    ["priority"]={ -1, 0 },
    },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
@@ -727,9 +770,9 @@
   ["glue"]={
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -743,14 +786,17 @@
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [8]={ 0, 0, 0 },
-   [14]={ 0, 0, 0 },
-   [27]={
+   [8]={
+    0,
     0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [14]={
+    0,
     0.25,
-    0.125,
-    ["priority"]={ 1, -3 },
-    ["ratio"]=0,
+    0,
+    ["priority"]={ -1, 0 },
    },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
@@ -765,9 +811,9 @@
   ["glue"]={
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -781,15 +827,18 @@
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [8]={ 0, 0, 0 },
-   [14]={ 0, 0, 0 },
-   [27]={
+   [8]={
+    0,
     0.25,
     0,
-    0.125,
-    ["priority"]={ 1, -3 },
-    ["ratio"]=0,
+    ["priority"]={ -1, 0 },
    },
+   [14]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
    [302]={ 0, 0, 0 },
@@ -801,6 +850,12 @@
   ["chars"]={ "¥", "$", "£", "#", "€", "№" },
   ["depth"]=0.5,
   ["glue"]={
+   [0]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ 0, 0 },
+   },
    {
     0.5,
     0,
@@ -845,9 +900,9 @@
    },
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -861,7 +916,12 @@
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [14]={ 0, 0, 0 },
+   [14]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [27]={
     0,
     0.25,
@@ -879,9 +939,19 @@
   ["chars"]={ " " },
   ["depth"]=0.5,
   ["glue"]={
-   [0]={ 0, 0, 0 },
+   [0]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   {
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    { 0, 0, 0 },
-   { 0, 0, 0 },
    [4]={ 0, 0, 0 },
    [5]={
     0.25,
@@ -892,16 +962,51 @@
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [8]={ 0, 0, 0 },
+   [8]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [9]={ 0, 0, 0 },
    [10]={ 0, 0, 0 },
    [11]={ 0, 0, 0 },
-   [12]={ 0, 0, 0 },
-   [13]={ 0, 0, 0 },
-   [14]={ 0, 0, 0 },
-   [15]={ 0, 0, 0 },
-   [16]={ 0, 0, 0 },
-   [27]={ 0, 0, 0 },
+   [12]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [13]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [14]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [15]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [16]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [27]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
    [302]={ 0, 0, 0 },
@@ -916,9 +1021,9 @@
   ["glue"]={
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -933,13 +1038,6 @@
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
    [14]={ 0, 0, 0 },
-   [27]={
-    0.25,
-    0.25,
-    0.125,
-    ["priority"]={ 1, -3 },
-    ["ratio"]=0,
-   },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
    [302]={ 0, 0, 0 },
@@ -953,9 +1051,9 @@
   ["glue"]={
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -970,13 +1068,53 @@
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
    [14]={ 0, 0, 0 },
-   [27]={
+   [300]={ 0, 0, 0 },
+   [301]={ 0, 0, 0 },
+   [302]={ 0, 0, 0 },
+  },
+  ["height"]=0.5,
+ },
+ [27]={
+  ["chars"]={ "alchar" },
+  ["depth"]=0.5,
+  ["glue"]={
+   {
+    0.5,
     0.25,
+    0.5,
+    ["priority"]={ -1, -2 },
+    ["ratio"]=1,
+   },
+   { 0, 0, 0 },
+   [4]={ 0, 0, 0 },
+   [5]={
     0.25,
-    0.125,
-    ["priority"]={ 1, -3 },
-    ["ratio"]=0,
+    0,
+    0.25,
+    ["priority"]={ 0, -1 },
+    ["ratio"]=1,
    },
+   [6]={ 0, 0, 0 },
+   [7]={ 0, 0, 0 },
+   [8]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ 0, 0 },
+   },
+   [12]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ 0, 0 },
+   },
+   [13]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ 0, 0 },
+   },
+   [14]={ 0, 0, 0 },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
    [302]={ 0, 0, 0 },
@@ -996,12 +1134,17 @@
   ["chars"]={ "‐" },
   ["depth"]=0.5,
   ["glue"]={
-   [0]={ 0, 0, 0 },
+   [0]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -1015,15 +1158,51 @@
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [8]={ 0, 0, 0 },
+   [8]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [9]={ 0, 0, 0 },
    [10]={ 0, 0, 0 },
    [11]={ 0, 0, 0 },
-   [12]={ 0, 0, 0 },
-   [13]={ 0, 0, 0 },
-   [14]={ 0, 0, 0 },
-   [15]={ 0, 0, 0 },
-   [16]={ 0, 0, 0 },
+   [12]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [13]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [14]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [15]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [16]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [27]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
    [302]={ 0, 0, 0 },
@@ -1036,12 +1215,17 @@
   ["chars"]={ "゠", "–" },
   ["depth"]=0.5,
   ["glue"]={
-   [0]={ 0, 0, 0 },
+   [0]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -1055,15 +1239,51 @@
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [8]={ 0, 0, 0 },
+   [8]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [9]={ 0, 0, 0 },
    [10]={ 0, 0, 0 },
    [11]={ 0, 0, 0 },
-   [12]={ 0, 0, 0 },
-   [13]={ 0, 0, 0 },
-   [14]={ 0, 0, 0 },
-   [15]={ 0, 0, 0 },
-   [16]={ 0, 0, 0 },
+   [12]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [13]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [14]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [15]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [16]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [27]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
    [302]={ 0, 0, 0 },
@@ -1076,12 +1296,17 @@
   ["chars"]={ "〜" },
   ["depth"]=0.5,
   ["glue"]={
-   [0]={ 0, 0, 0 },
+   [0]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    {
     0.5,
-    0,
+    0.25,
     0.5,
-    ["priority"]={ 0, -2 },
+    ["priority"]={ -1, -2 },
     ["ratio"]=1,
    },
    { 0, 0, 0 },
@@ -1095,15 +1320,51 @@
    },
    [6]={ 0, 0, 0 },
    [7]={ 0, 0, 0 },
-   [8]={ 0, 0, 0 },
+   [8]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [9]={ 0, 0, 0 },
    [10]={ 0, 0, 0 },
    [11]={ 0, 0, 0 },
-   [12]={ 0, 0, 0 },
-   [13]={ 0, 0, 0 },
-   [14]={ 0, 0, 0 },
-   [15]={ 0, 0, 0 },
-   [16]={ 0, 0, 0 },
+   [12]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [13]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [14]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [15]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [16]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
+   [27]={
+    0,
+    0.25,
+    0,
+    ["priority"]={ -1, 0 },
+   },
    [300]={ 0, 0, 0 },
    [301]={ 0, 0, 0 },
    [302]={ 0, 0, 0 },
@@ -1113,7 +1374,7 @@
  },
  ["dir"]="tate",
  ["kanjiskip"]={ 0, 0.25, 0 },
- ["version"]=2,
+ ["version"]=3,
  ["xkanjiskip"]={ 0.25, 0.25, 0.125 },
  ["zh"]=1,
  ["zw"]=1,



More information about the tex-live-commits mailing list