summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-08-16 20:48:00 +0000
committerKarl Berry <karl@freefriends.org>2018-08-16 20:48:00 +0000
commit03e475af0478ac4e6cbe4fbe68e56f7461694064 (patch)
treef0882fe9fa215951c97b8c5883e86475cce754e7 /Master
parentd2ffec2a2f1cd6175f94d852756963a3e7526851 (diff)
jlreq (16aug18)
git-svn-id: svn://tug.org/texlive/trunk@48414 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex/jlreq/README-ja.md4
-rw-r--r--Master/texmf-dist/doc/latex/jlreq/README.md2
-rw-r--r--Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html26
-rw-r--r--Master/texmf-dist/doc/latex/jlreq/jlreq.html4
-rw-r--r--Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty71
-rw-r--r--Master/texmf-dist/tex/latex/jlreq/jlreq.cls55
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds1
7 files changed, 110 insertions, 53 deletions
diff --git a/Master/texmf-dist/doc/latex/jlreq/README-ja.md b/Master/texmf-dist/doc/latex/jlreq/README-ja.md
index 9ef3dfafe03..d38548b4644 100644
--- a/Master/texmf-dist/doc/latex/jlreq/README-ja.md
+++ b/Master/texmf-dist/doc/latex/jlreq/README-ja.md
@@ -389,10 +389,12 @@ JFMの名前は次の通りです.`[]`で囲まれている文字は設定に
* 2018-06-17
- シリーズbもゴシックにするようにした.
- バグ修正.
-* 2018-07-31
+* 2018-08-08
- `\DeclarePageStyle`に`nombre_ii`等を追加.
- バグ修正.
- `\jlreqsetup`に`footnote_second_indent`と`endnote_second_indent`を追加.
+* 2018-08-15
+ - バグ修正.
--------------
diff --git a/Master/texmf-dist/doc/latex/jlreq/README.md b/Master/texmf-dist/doc/latex/jlreq/README.md
index 01292255cf0..db94ef0fa07 100644
--- a/Master/texmf-dist/doc/latex/jlreq/README.md
+++ b/Master/texmf-dist/doc/latex/jlreq/README.md
@@ -91,6 +91,8 @@ This package is distributed under the BSD 2-Clause License. See [LICENSE](LICENS
- Added `nombre_ii` etc. to `\DeclarePageStyle`.
- Fixed bugs.
- Added `footnote_second_indent` and `endnote_second_indent` to `\jlreqsetup`.
+* 2018-08-15
+ - Fixed bugs.
--------------
diff --git a/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html b/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html
index b3d28bf3e7e..c7a342fed69 100644
--- a/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html
+++ b/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html
@@ -102,9 +102,9 @@
<p>と配置します.<code>make install</code>とすると,$TEXMF=$TEXMFHOMEとしてこのコピーを行います.</p>
<h2 id="使い方">使い方</h2>
<p>通常通り</p>
-<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>
+<div class="sourceCode" id="cb1"><pre class="sourceCode latex"><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></div>
<p>とします.これで横書きのarticle相当の文書クラスとなります.エンジンは自動判定されますが,指定する場合はクラスオプションに<code>platex/uplatex/lualatex</code>のいずれかを渡してください.縦書きにするには<code>tate</code>オプションを渡します.また,reportやbook相当の文書クラスとするには,それぞれ<code>report</code>や<code>book</code>オプションを渡します.たとえば,縦書きの本を作成するには</p>
-<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>
+<div class="sourceCode" id="cb2"><pre class="sourceCode latex"><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></div>
<p>とします.</p>
<p>その他,<code>oneside / twoside / onecolumn / twocolumn / titlepage / notitlepage / draft / final / openright / openany / leqno / fleqn</code>というよくあるオプションを受け付けます.</p>
<p>標準的な文書クラスと同じように中身を書くことができますが,次のような命令が追加 / 拡張されています.</p>
@@ -117,7 +117,7 @@
<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>
-<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>
+<div class="sourceCode" id="cb3"><pre class="sourceCode latex"><code class="sourceCode latex"><a class="sourceLine" id="cb3-1" data-line-number="1">刊行できる<span class="fu">\sidenote</span>{原稿}{印刷などの方法により……}を入手する仕事である.</a></code></pre></div>
<p>とします.後の説明も参照してください.</p>
<h3 id="endnote"><code>\endnote</code></h3>
<p>後注を指定します.<code>\footnote</code>と同様の書式です.デフォルトでは,注自身の出力は見出し直前に行われます.この動作は<code>\jlreqsetup</code>に<code>endnote_position</code>を渡すことで制御できます.詳しくは後の注関係の説明をご覧ください.また<code>\theendnotes</code>を実行するとその場に出力をします.</p>
@@ -136,7 +136,7 @@
<ul>
<li><p>ルビや圏点は提供されません.<a href="https://github.com/zr-tex8r/PXrubrica">PXrubrica</a>または<code>luatexja-ruby</code>(LuaLaTeX,LuaTeX-jaパッケージに付属)を使うと良いかと思います.</p></li>
<li><p>日本語組版処理の要件2.3.2.dによれば,横組みにおける二段組の最後のページの各段の行数は揃えることが望ましいとされていますが,この処理は行われません.<code>nidanfloat</code>パッケージを使い,</p>
-<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>
+<div class="sourceCode" id="cb5"><pre class="sourceCode latex"><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></div>
<p>とするとこの処理が行われます.ただし,最終ページでの<code>\newpage</code>や<code>\clearpage</code>が正しく動作しません.詳しくは<code>nidanfloat</code>パッケージのマニュアルをご覧ください.</p></li>
<li><p>フォントを設定する機能は有していません.和文フォントは,LuaLaTeX利用時は<code>luatexja-fontspec</code>や<code>luatexja-preset</code>(いずれもLuaTeX-jaパッケージに付属)により設定することができます.dvipdfmxを使う場合は,<a href="https://github.com/zr-tex8r/PXchfon">PXchfon</a>での設定が可能です.</p></li>
</ul>
@@ -272,10 +272,10 @@
</ul>
<h4 id="連続して掲げる見出しの行取り">連続して掲げる見出しの行取り</h4>
<p><code>\SetBlockHeadingSpaces</code>により,見出しが連続して掲げられたときの行取りを設定することができます.<code>\SetBlockHeadingSpaces</code>は</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>
+<div class="sourceCode" id="cb7"><pre class="sourceCode latex"><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>
+<a class="sourceLine" id="cb7-4" data-line-number="4">}</a></code></pre></div>
<p>のように使います.この意味は次の通りです.</p>
<ul>
<li><code>\part</code>,<code>\section</code>,<code>\subsection</code>という順番で見出しが掲げられていて,その前後が見出しでない場合は,<code>\part</code>は三行取り+前に一行空き,<code>\section</code>と<code>\subsection</code>は二行取りとなります.</li>
@@ -309,14 +309,14 @@
</ul>
<h3 id="modifyheading"><code>\ModifyHeading</code></h3>
<p>既に(上のどれかを使い)定義された見出し命令の設定を変更します.たとえば</p>
-<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>
+<div class="sourceCode" id="cb8"><pre class="sourceCode latex"><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></div>
<p>とすると,<code>\section</code>のフォントなどの設定はそのままに,行取りのみが10行に変更されます.見出しの種類を変更することはできません.</p>
<h3 id="saveheading"><code>\SaveHeading</code></h3>
<p>見出し命令の定義を待避します.</p>
-<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>
+<div class="sourceCode" id="cb9"><pre class="sourceCode latex"><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>
+<a class="sourceLine" id="cb9-4" data-line-number="4"><span class="fu">\restoresection</span> <span class="co">% \sectionの中身を元に戻す.</span></a></code></pre></div>
<p>のように使います.</p>
<h2 id="ページスタイル">ページスタイル</h2>
<pre><code>\DeclarePageStyle{&lt;ページスタイル名&gt;}{&lt;設定&gt;}
@@ -339,7 +339,7 @@
<p><code>\NewPageStyle</code>,<code>\RenewPageStyle</code>,<code>\ProvidePageStyle</code>もあります.<code>\ModifyPageStyle</code>により既存のページスタイルを改変することが可能です.</p>
<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>
+<div class="sourceCode" id="cb11"><pre class="sourceCode LaTeX"><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></div>
<p>のようにオプションで指定する必要があります.</p>
<h3 id="platexuplatexの場合">pLaTeX/upLaTeXの場合</h3>
<p>JFMの名前は次の通りです.<code>[]</code>で囲まれている文字は設定により入ったり入らなかったりします.</p>
@@ -467,12 +467,16 @@
<li>シリーズbもゴシックにするようにした.</li>
<li>バグ修正.</li>
</ul></li>
-<li>2018-07-31
+<li>2018-08-08
<ul>
<li><code>\DeclarePageStyle</code>に<code>nombre_ii</code>等を追加.</li>
<li>バグ修正.</li>
<li><code>\jlreqsetup</code>に<code>footnote_second_indent</code>と<code>endnote_second_indent</code>を追加.</li>
</ul></li>
+<li>2018-08-15
+<ul>
+<li>バグ修正.</li>
+</ul></li>
</ul>
<hr />
<p>Noriyuki Abe <a href="https://github.com/abenori/jlreq" class="uri">https://github.com/abenori/jlreq</a></p>
diff --git a/Master/texmf-dist/doc/latex/jlreq/jlreq.html b/Master/texmf-dist/doc/latex/jlreq/jlreq.html
index cda3e4835df..7f58c1119d4 100644
--- a/Master/texmf-dist/doc/latex/jlreq/jlreq.html
+++ b/Master/texmf-dist/doc/latex/jlreq/jlreq.html
@@ -179,6 +179,10 @@
<li>Fixed bugs.</li>
<li>Added <code>footnote_second_indent</code> and <code>endnote_second_indent</code> to <code>\jlreqsetup</code>.</li>
</ul></li>
+<li>2018-08-15
+<ul>
+<li>Fixed bugs.</li>
+</ul></li>
</ul>
<hr />
<p>Noriyuki Abe <a href="https://github.com/abenori/jlreq" class="uri">https://github.com/abenori/jlreq</a></p>
diff --git a/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty b/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty
index 41bb74447fd..9532669172a 100644
--- a/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty
+++ b/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty
@@ -1,7 +1,7 @@
% エンジン非依存のマクロ集
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{jlreq-helpers}[2018/08/08 jlreq-helpers]
+\ProvidesPackage{jlreq-helpers}[2018/08/15 jlreq-helpers]
\RequirePackage{xkeyval,etoolbox}
%. helper1
@@ -162,9 +162,15 @@
% もしカンマがない場合は\ifjlreq@resultがfalseになる.
\newcommand*{\jlreq@helper@dividebycomma}[1]{\jlreq@helper@dividebycomma@#1,\jlreq@endmark}
\def\jlreq@helper@dividebycomma@#1,#2\jlreq@endmark{%
- \def\jlreq@resulta{#1}%
- \def\jlreq@resultb{#2}%
- \ifx\jlreq@resultb\@empty\jlreq@resultfalse\else\jlreq@resulttrue\expandafter\def\expandafter\jlreq@resultb\expandafter{\jlreq@helper@removelastcomma#2\jlreq@endmark}\fi
+ \jlreq@remove@spaceandbracket{#1}{\jlreq@resulta}%
+ \jlreq@remove@spaceandbracket{#2}{\jlreq@resultb}%
+ \ifx\jlreq@resultb\@empty\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi{%
+ \jlreq@resultfalse
+ }{%
+ \jlreq@resulttrue
+ \expandafter\def\expandafter\jlreq@resultb\expandafter{\jlreq@helper@removelastcomma#2\jlreq@endmark}%
+ \expandafter\jlreq@remove@spaceandbracket\expandafter{\jlreq@resultb}{\jlreq@resultb}%
+ }%
}
\def\jlreq@helper@removelastcomma#1,\jlreq@endmark{#1}
@@ -243,21 +249,60 @@
\begingroup
\def\jlreq@do{}%
\def\jlreq@parsekeyval@nokey@execute##1##2{#1}%
- \expandafter\jlreq@parsekeyval@nokey@#2,\jlreq@endmark,%
+ \expandafter\jlreq@parsekeyval@nokey@i#2,\jlreq@endmark,%
\expandafter\endgroup
\jlreq@do
}
-\long\def\jlreq@parsekeyval@nokey@#1,{%
- \jlreq@ifendmark{#1}{}{\jlreq@ifempty{#1}{\jlreq@parsekeyval@nokey@}{\jlreq@parsekeyval@nokey@@#1=\jlreq@endmark}}%
+\long\def\jlreq@parsekeyval@nokey@i#1,{\jlreq@ifendmark{#1}{}{\jlreq@parsekeyval@nokey@ii#1=\jlreq@endmark}}
+\long\def\jlreq@parsekeyval@nokey@ii#1=#2\jlreq@endmark{%
+ \jlreq@ifempty{#2}{\jlreq@parsekeyval@nokey@iii{#2}{#1}}{%
+ \edef\jlreq@tempa{%
+ \noexpand\jlreq@parsekeyval@nokey@iii{\jlreq@parsekeyval@nokey@removeequal{#2}}{\unexpanded{#1}}%
+ }%
+ \jlreq@tempa
+ }%
}
-\long\def\jlreq@parsekeyval@nokey@@#1=#2\jlreq@endmark{%
- \jlreq@ifempty{#2}{\jlreq@parsekeyval@nokey@@@{}{#1}}{\expandafter\jlreq@parsekeyval@nokey@@@\expandafter{\jlreq@parsekeyval@nokey@@@@#2\jlreq@endmark}{#1}}%
+\long\def\jlreq@parsekeyval@nokey@iii#1#2{%
+ \jlreq@remove@spaceandbracket{#1}{\jlreq@tempa}%
+ \jlreq@remove@spaceandbracket{#2}{\jlreq@tempb}%
+ \ifx\jlreq@tempa\@empty\expandafter\@gobble\else\expandafter\@firstofone\fi
+ {%
+ \edef\@tempa{\noexpand\jlreq@parsekeyval@nokey@iv{\expandonce{\jlreq@tempb}}{\expandonce{\jlreq@tempa}}}%
+ \@tempa
+ }%
+ \jlreq@parsekeyval@nokey@i
+}
+\long\def\jlreq@parsekeyval@nokey@iv#1#2{%
+ \eappto\jlreq@do{\expandonce{\jlreq@parsekeyval@nokey@execute{#1}{#2}}}%
}
-\long\def\jlreq@parsekeyval@nokey@@@#1#2{%
- \eappto\jlreq@do{\expandonce{\jlreq@parsekeyval@nokey@execute{#2}{#1}}}%
- \jlreq@parsekeyval@nokey@
+\long\def\jlreq@parsekeyval@nokey@removeequal#1{\jlreq@parsekeyval@nokey@removeequal@\jlreq@uniqtoken#1\jlreq@endmark}
+\long\def\jlreq@parsekeyval@nokey@removeequal@#1=\jlreq@endmark{\expandafter\unexpanded\expandafter{\@gobble#1}}
+
+% #1の先頭のスペースを削除し,#2に入れる.ただし#1={ X}の時は" X"が入る.
+\def\jlreq@do#1{% #1 = " "として後で実行
+ \long\def\jlreq@remove@spaceandbracket##1##2{%
+ \begingroup
+ \def\jlreq@tempa{}%
+ \futurelet\jlreq@nextchar\jlreq@remove@spaceandbracket@i##1\jlreq@uniqtoken#1\jlreq@uniqtoken\jlreq@endmark
+ \edef\jlreq@do{\noexpand\edef\noexpand##2{\noexpand\unexpanded{\expandonce{\jlreq@tempa}}}}%
+ \expandafter\endgroup
+ \jlreq@do
+ }
+ \def\jlreq@remove@spaceandbracket@i{%
+ \ifx#1\jlreq@nextchar\expandafter\jlreq@remove@spaceandbracket@ii\else\expandafter\jlreq@remove@spaceandbracket@iii\fi
+ }%
+ \def\jlreq@remove@spaceandbracket@ii#1{\futurelet\jlreq@nextchar\jlreq@remove@spaceandbracket@i}%
+ \long\def\jlreq@remove@spaceandbracket@iii##1#1\jlreq@uniqtoken##2\jlreq@endmark{%
+ \jlreq@ifempty{##2}{%
+ \expandafter\jlreq@remove@spaceandbracket@iv\expandafter{\jlreq@removelastuniqtoken##1}%
+ }{%
+ \jlreq@remove@spaceandbracket@iv{##1}%
+ }%
+ }%
}
-\long\def\jlreq@parsekeyval@nokey@@@@#1=\jlreq@endmark{#1}
+\jlreq@do{ }
+\long\def\jlreq@removelastuniqtoken#1\jlreq@uniqtoken{#1}
+\long\def\jlreq@remove@spaceandbracket@iv#1{\edef\jlreq@tempa{\unexpanded{#1}}}
% \jlreq@switch{str}{
% {str}{abcd}
diff --git a/Master/texmf-dist/tex/latex/jlreq/jlreq.cls b/Master/texmf-dist/tex/latex/jlreq/jlreq.cls
index 9291611a4c3..d513a760f98 100644
--- a/Master/texmf-dist/tex/latex/jlreq/jlreq.cls
+++ b/Master/texmf-dist/tex/latex/jlreq/jlreq.cls
@@ -5,7 +5,7 @@
%%
% (based on JLReq 20120403 https://www.w3.org/TR/2012/NOTE-jlreq-20120403/ja/)
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{jlreq}[2018/08/08 jlreq]
+\ProvidesClass{jlreq}[2018/08/15 jlreq]
\RequirePackage{xkeyval,everyhook,filehook,etoolbox,ifthen}
\RequirePackage{jlreq-helpers}
@@ -1948,18 +1948,13 @@
\newif\ifjlreq@column@spanning@possible\jlreq@column@spanning@possiblefalse
% a,bみたいなのをaとbにわける.カンマがなければbは空.引数を{a}{b}として##2を呼び出す.
\def\jlreq@parsecomma##1##2{%
- \def\jlreq@tempa####1####2{##2}%
- \def\@tempa####1,####2\jlreq@endmark{%
- \jlreq@ifempty{####2}{%
- \def\@tempa{}%
- }{%
- \def\@tempa########1,\jlreq@endmark{\def\@tempa{########1}}%
- \@tempa####2\jlreq@endmark
- }%
- \edef\@tempa{\unexpanded{\jlreq@tempa{####1}}{\expandonce{\@tempa}}}%
- \edef\jlreq@do{\jlreq@expandtwice{\@tempa}}%
+ \jlreq@helper@dividebycomma{##1}%
+ \ifjlreq@result\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi{%
+ \edef\jlreq@do{\noexpand\jlreq@tempa{\expandonce{\jlreq@resulta}}{\expandonce{\jlreq@resultb}}}%
+ }{%
+ \edef\jlreq@do{\noexpand\jlreq@tempa{##1}{}}%
}%
- \@tempa##1,\jlreq@endmark
+ \def\jlreq@tempa####1####2{##2}%
\jlreq@do
}%
\jlreq@parsekeyval[BlockHeading:#1]{
@@ -2173,14 +2168,15 @@
\newcommand{\SetBlockHeadingSpaces}[1]{%
\begingroup
% 現段階の情報をクリアする
- \@for\jlreq@tempa:=\jlreq@BlockHeading@spaces@headingslist\do{%
- \expandafter\let\csname jlreq@BlockHeading@spaces@setlist@\jlreq@tempa\endcsname=\@undefined
- }%
- \def\jlreq@BlockHeading@spaces@headingslist{}%
\def\jlreq@tempa{}% 見出しリスト
\def\jlreq@tempb{}% 設定リスト \def\jlreq@BlockHeading@spaces@***{{**}{**}...}ってのを入れる
\jlreq@SetBlockHeadingSpaces#1\jlreq@endmark
\edef\jlreq@do{%
+ \unexpanded{%
+ \@for\@tempa:=\jlreq@BlockHeading@spaces@headingslist\do{%
+ \expandafter\let\csname jlreq@BlockHeading@spaces@setlist@\@tempa\endcsname=\@undefined
+ }%
+ }%
\unexpanded{\def\jlreq@BlockHeading@spaces@headingslist}{\expandonce{\jlreq@tempa}}%
\expandonce{\jlreq@tempb}%
}%
@@ -2188,12 +2184,12 @@
\jlreq@do
}
\def\jlreq@SetBlockHeadingSpaces{% カンマを無視する処理
- \@ifnextchar,{\expandafter\jlreq@SetBlockHeadingSpaces@\@gobble}{\jlreq@SetBlockHeadingSpaces@}%
+ \@ifnextchar,{\expandafter\jlreq@SetBlockHeadingSpaces@i\@gobble}{\jlreq@SetBlockHeadingSpaces@i}%
}
-\def\jlreq@SetBlockHeadingSpaces@{%
- \@ifnextchar[{\jlreq@SetBlockHeadingSpaces@@}{\jlreq@SetBlockHeadingSpaces@@[]}%
+\def\jlreq@SetBlockHeadingSpaces@i{%
+ \@ifnextchar[{\jlreq@SetBlockHeadingSpaces@ii}{\jlreq@SetBlockHeadingSpaces@ii[]}%
}
-\def\jlreq@SetBlockHeadingSpaces@@[#1]#2{%
+\def\jlreq@SetBlockHeadingSpaces@ii[#1]#2{%
\jlreq@ifendmark{#2}{}{%
\def\jlreq@headings{}% 見出し名リスト
\jlreq@BlockHeading@gyodori@parsekeyval[BlockHeadingSpaces]{#1}{}{}{}%
@@ -2205,7 +2201,7 @@
\jlreq@ifempty{##2}{\jlreq@tempbtrue}{\jlreq@tempbfalse}% 後ろ開きが空ならば\jlreq@tempbtrue
}%
\expandafter\jlreq@do\jlreq@totalset
- \jlreq@SetBlockHeadingSpaces@@@{#2}%
+ \jlreq@SetBlockHeadingSpaces@iii{#2}%
\eappto\jlreq@tempa{,\expandonce{\jlreq@headings}}% \jlreq@tempaに\jlreq@headingsを追加
\ifjlreq@tempb
\ifx\jlreq@lastdimen\@empty\else % 最後が寸法だったので\jlreq@SetBlockHeadingSpaces@totalsetを改変
@@ -2226,12 +2222,13 @@
\jlreq@SetBlockHeadingSpaces
}%
}
-\def\jlreq@SetBlockHeadingSpaces@@@#1{%
+\def\jlreq@SetBlockHeadingSpaces@iii#1{%
\@for\@tempa:=#1\do{%
+ \expandafter\jlreq@remove@spaceandbracket\expandafter{\@tempa}{\@tempa}%
\expandafter\jlreq@iffirsttoken@ignorespaces\expandafter{\@tempa}{_}{%
\ifx\jlreq@lastdimen\@empty\else\eappto\jlreq@set{{\expandonce{\jlreq@lastdimen}}}\fi%
\def\jlreq@lastdimen{}%
- \expandafter\jlreq@SetBlockHeadingSpaces@@@@\@tempa{\jlreq@endmark}%
+ \expandafter\jlreq@SetBlockHeadingSpaces@iv\@tempa{\jlreq@endmark}%
}{%
\ifjlreq@tempa
% 最初が寸法なので,全体の設定(\jlreq@totalset)に組み込む.
@@ -2247,7 +2244,7 @@
\jlreq@tempafalse
}%
}
-\def\jlreq@SetBlockHeadingSpaces@@@@#1#{%
+\def\jlreq@SetBlockHeadingSpaces@iv#1#{%
\expandafter\jlreq@ifcontains\expandafter{\@gobble #1}{_}{%
\ClassWarning{jlreq}{Unusual heading name `\@gobble #1' is found. You forgot a comma? (in SetBlockHeadingSpaces)}%
}{}%
@@ -2257,9 +2254,9 @@
\ClassWarning{jlreq}{The heading name `\@gobble #1' ends with `*'. Do you mean `\@tempa{*}'? (in SetBlockHeadingSpaces)}%
}}{}%
\appto\jlreq@headings{#1}%
- \jlreq@SetBlockHeadingSpaces@@@@@
+ \jlreq@SetBlockHeadingSpaces@v
}
-\def\jlreq@SetBlockHeadingSpaces@@@@@#1{%
+\def\jlreq@SetBlockHeadingSpaces@v#1{%
% 空っぽの場合は{_{r:0pt}{r:0pt}{}}
\jlreq@ifendmark{#1}{\appto\jlreq@set{{_{r:0pt}{r:0pt}{}}}}{%
\jlreq@iffirsttoken{#1}{*}{% *始まりの場合は{_*{}{}{}}
@@ -3163,6 +3160,7 @@
% \jlreq@tempcにセクション名たちを入れていく
\def\jlreq@tempc{}
\@for\jlreq@tempa:=#1\do{
+ \expandafter\jlreq@remove@spaceandbracket\expandafter{\jlreq@tempa}{\jlreq@tempa}%
\jlreq@switch{\jlreq@tempa}{
{headings}{\jlreq@tempatrue}
{paragraph}{
@@ -4015,7 +4013,7 @@
% _iiが存在するか調べて\ifjlreq@headii@existに入れる
\newif\ifjlreq@headii@exist
\jlreq@headii@existfalse
- \@for\jlreq@tempa:=\jlreq@odd@running@head@ii,\jlreq@odd@running@head@ii\do{%
+ \jlreq@for@noexpand\jlreq@tempa:=\jlreq@odd@running@head@ii,\jlreq@odd@running@head@ii\do{%
\expandafter\ifx\jlreq@tempa\@empty\else\jlreq@headii@existtrue\fi
}%
% markの処理
@@ -4026,7 +4024,7 @@
% * 例えば_<見出し命令>が_sectionならば,\jlreq@markdata@sectionに{{<I1>}{<I2>}{<I3>}}を追加する.ここで<I1>,<I2>,<I3>は
% - I1: @iiが無いときにodd or even
% - I2: @iiが無ければ0,あれば1.
- % - I3: マーク出力命令がleftかrightか.(上述のようにoddかevenかで判定される.)
+ % - I3: マーク出力命令がleftかrightに応じて l or r.(上述のようにoddかevenかで判定される.)
% * 他にも_sectionが指定されている柱があれば,\jlreq@markdata@sectionにさらに追加で加えていく.
% * \jlreq@(odd|even)@running@head(@ii)@heading@levelに<見出し命令>のレベルを入れる.レベルが不明な時は\relaxになる.
% また,\jlreq@headingmarklistに<見出し命令>の一覧を入れる.
@@ -4696,6 +4694,7 @@
\def\jlreq@do{}%
\def\jlreq@keyvallist{}%
\@for\@tempa:=#1\do{%
+ \expandafter\jlreq@remove@spaceandbracket\expandafter{\@tempa}{\@tempa}%
\expandafter\jlreq@ifcontains\expandafter{\@tempa}{=}{%
\expandafter\appto\expandafter\jlreq@keyvallist\expandafter{\@tempa,}%
}{%
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index 9f32669467d..71bf0548748 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -180,6 +180,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`);
'bibtool', "die 'skipping, requires compilation'",
'bibtools', "die 'skipping, ca.2000, await request'",
'bibtopicprefix', "&MAKEflatten",
+ 'bibutils', "die 'skipping, requires compilation'",
'bickham', "die 'skipping, support for nonfree font'",
'bigints', "&MAKEflatten",
'bin-cjkutils',"&MAKEbin_cjkutils",