diff options
author | Karl Berry <karl@freefriends.org> | 2018-09-01 22:16:58 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-09-01 22:16:58 +0000 |
commit | 7296fc79309858e6bcb41b7e4e28dfa73e3dd773 (patch) | |
tree | a14049ee3ff57d81b1e5e3cff8c6d1820ca25db8 | |
parent | 6680343d25dad119fdee522e6395982d66d24153 (diff) |
jlreq (1sep18)
git-svn-id: svn://tug.org/texlive/trunk@48535 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/jlreq/README-ja.md | 5 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/jlreq/README.md | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html | 27 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks-ja.html | 25 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks-ja.md | 26 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks.html | 21 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks.md | 22 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/jlreq/jlreq.html | 5 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty | 75 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty | 88 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/jlreq/jlreq.cls | 131 |
11 files changed, 275 insertions, 154 deletions
diff --git a/Master/texmf-dist/doc/latex/jlreq/README-ja.md b/Master/texmf-dist/doc/latex/jlreq/README-ja.md index d38548b4644..df4d5028984 100644 --- a/Master/texmf-dist/doc/latex/jlreq/README-ja.md +++ b/Master/texmf-dist/doc/latex/jlreq/README-ja.md @@ -29,7 +29,7 @@ その他,`oneside / twoside / onecolumn / twocolumn / titlepage / notitlepage / draft / final / openright / openany / leqno / fleqn`というよくあるオプションを受け付けます.
-標準的な文書クラスと同じように中身を書くことができますが,次のような命令が追加 / 拡張されています.
+標準的な文書クラスと同じように中身を書くことができますが,次のような命令が追加 / 拡張されています.なお,本ドキュメントでは[日本語組版処理の要件](https://www.w3.org/TR/jlreq/ja/)における用語を断りなく使います.
### `\jlreqsetup`
設定用命令です.プリアンブルでしか使えません.文書に対する設定は,クラスオプションとして行うか`\jlreqsetup`を通じて行うかします.どちらで設定するかは設定項目によります.
@@ -395,6 +395,9 @@ JFMの名前は次の通りです.`[]`で囲まれている文字は設定に - `\jlreqsetup`に`footnote_second_indent`と`endnote_second_indent`を追加.
* 2018-08-15
- バグ修正.
+* 2018-09-01
+ - `\mag`が`1000`でない場合も動くようにした(つもり).
+ - バグ修正.
--------------
diff --git a/Master/texmf-dist/doc/latex/jlreq/README.md b/Master/texmf-dist/doc/latex/jlreq/README.md index db94ef0fa07..b9a49687f2c 100644 --- a/Master/texmf-dist/doc/latex/jlreq/README.md +++ b/Master/texmf-dist/doc/latex/jlreq/README.md @@ -93,7 +93,9 @@ This package is distributed under the BSD 2-Clause License. See [LICENSE](LICENS - Added `footnote_second_indent` and `endnote_second_indent` to `\jlreqsetup`.
* 2018-08-15
- Fixed bugs.
-
+* 2018-09-01
+ - jlreq works with unusual `\mag`.
+ - Fixed bugs.
--------------
Noriyuki Abe
diff --git a/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html b/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html index c7a342fed69..60d4f9d9bc1 100644 --- a/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html +++ b/Master/texmf-dist/doc/latex/jlreq/jlreq-ja.html @@ -102,12 +102,12 @@ <p>と配置します.<code>make install</code>とすると,$TEXMF=$TEXMFHOMEとしてこのコピーを行います.</p>
<h2 id="使い方">使い方</h2>
<p>通常通り</p>
-<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>
+<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" 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>
+<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>
+<p>標準的な文書クラスと同じように中身を書くことができますが,次のような命令が追加 / 拡張されています.なお,本ドキュメントでは<a href="https://www.w3.org/TR/jlreq/ja/">日本語組版処理の要件</a>における用語を断りなく使います.</p>
<h3 id="jlreqsetup"><code>\jlreqsetup</code></h3>
<p>設定用命令です.プリアンブルでしか使えません.文書に対する設定は,クラスオプションとして行うか<code>\jlreqsetup</code>を通じて行うかします.どちらで設定するかは設定項目によります.</p>
<h3 id="section"><code>\section</code></h3>
@@ -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>
-<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>
+<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>
@@ -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>
-<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>
+<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></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>
-<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>
+<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></div>
+<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>
@@ -309,14 +309,14 @@ </ul>
<h3 id="modifyheading"><code>\ModifyHeading</code></h3>
<p>既に(上のどれかを使い)定義された見出し命令の設定を変更します.たとえば</p>
-<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>
+<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" 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>
+<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></div>
+<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 id="ページスタイル">ページスタイル</h2>
<pre><code>\DeclarePageStyle{<ページスタイル名>}{<設定>}
@@ -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>
-<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>
+<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>
@@ -477,6 +477,11 @@ <ul>
<li>バグ修正.</li>
</ul></li>
+<li>2018-09-01
+<ul>
+<li><code>\mag</code>が<code>1000</code>でない場合も動くようにした(つもり).</li>
+<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-trimmarks-ja.html b/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks-ja.html index d6fe74f89b5..9acc37879e5 100644 --- a/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks-ja.html +++ b/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks-ja.html @@ -58,7 +58,7 @@ <article class="markdown-body"> <h1 id="jlreq-trimmarks">jlreq-trimmarks</h1> <h2 id="これは何">これは何?</h2> -<p>トンボ(トリムマーク)を出力するためのパッケージです.<a href="https://osdn.jp/projects/luatex-ja/wiki/FrontPage">LuaTeX-ja</a> / pLaTeX / upLaTeX / dvipdfmx / Dvips / dviout上で動きます.以下の機能を提供します.</p> +<p>トンボ(トリムマーク)を出力するためのパッケージです.<a href="https://osdn.jp/projects/luatex-ja/wiki/FrontPage">LuaTeX-ja</a> / pLaTeX / upLaTeX / dvipdfmx / Dvips / dviout上で動きます.jlreqクラスファイルのみでなく,汎用的に動くように設計されています.以下の機能を提供します.</p> <ul> <li>トンボの出力</li> <li>可能な場合には,TrimBox / BleedBoxを設定</li> @@ -71,6 +71,9 @@ <p>ドライバおよびエンジンを指定して<code>\usepackage</code>で読み込みます.エンジンは省略が可能です.</p> <pre><code>\usepackage[dvipdfmx,platex]{jlreq-trimmarks} </code></pre> +<p>なお,クラスファイルの<code>tombow</code>オプションは使わないでください.</p> +<h2 id="ノート">ノート</h2> +<p>jlreq-trimmarksは紙サイズを設定しますが,その他のパッケージとの兼ね合いで正しく機能しないことがあります.その際は<a href="https://github.com/zr-tex8r/BXpapersize">bxpapersize</a>のようなより強力なパッケージを試してみてください.</p> <h2 id="オプション">オプション</h2> <p>以下のパッケージオプションを受け付けます.keyval形式です.</p> <h3 id="platex-uplatex-lulatex"><code>platex</code>, <code>uplatex</code>, <code>lulatex</code></h3> @@ -81,16 +84,12 @@ </ul> <p>です.</p> <h3 id="dvipdfmxdvipsdviout"><code>dvipdfmx</code>,<code>dvips</code>,<code>dviout</code></h3> -<p>dviドライバの指定です.省略時は</p> -<ul> -<li><code>lualatex</code>利用時はLuaLaTeXによりPDF出力が行われると見なされる.</li> -<li><code>platex</code>または<code>uplatex</code>利用時は<code>dvipdfmx</code>.</li> -</ul> +<p>dviドライバの指定です.エンジンに<code>lualatex</code>を利用する場合は指定する必要はありません.省略時は<code>dvipdfmx</code>が使われます.</p> <h3 id="trimmarks_paper"><code>trimmarks_paper</code></h3> <p>トンボ付きの紙サイズを指定します.</p> <ul> <li><code>trimmarks_paper=a4</code>のように,<code>a0--a10</code>, <code>b0--b10</code>, <code>c2--c8</code>(BはJIS B列)を指定できる他,<code>trimmarks_paper={<width>,<height>}</code>と直接寸法を指定することができます.</li> -<li><code>a4+{1cm,2cm}</code>のように<code><紙サイズ>+{<寸法横>,<寸法縦>}</code>とした場合は,指定された紙サイズから指定された寸法だけ増やした紙サイズを設定します.</li> +<li><code>a4+{1cm,2cm}</code>や<code>{10cm,20cm}+{1cm,2cm}</code>のように<code><紙サイズ>+{<寸法横>,<寸法縦>}</code>とした場合は,指定された紙サイズから指定された寸法だけ増やした紙サイズを設定します.</li> <li><code>a4+2cm</code>は<code>a4+{2cm,2cm}</code>と等価です.</li> <li><code>+2cm</code>と紙サイズの部分を省略すると,現在の紙サイズを利用します.</li> <li>デフォルトは<code>+2in</code>です.</li> @@ -98,19 +97,19 @@ <h3 id="landscape"><code>landscape</code></h3> <p>紙のサイズの縦と横とを入れ替えます.ただし入れ替えるのは<code>trimmarks_paper</code>で明示的に指定された値に限ります.例えば<code>landscape,trimmarks_paper=+{1cm,2cm}</code>とすると,もともとの紙サイズ(これは入れ替わらない)の横幅が2cm増え,縦幅が1cm増えた紙サイズとなります.</p> <h3 id="show"><code>show</code></h3> -<p>何を出力するか指定します.<code>show={trimmarks,banner,digital}</code>のようにカンマ区切りのリストを与えます.引数を与えない場合は全て表示します.</p> +<p>出力する対象を指定します.<code>show={trimmarks,banner,digital}</code>のようにカンマ区切りのリストを与えます.引数を与えない場合は全て表示します.</p> <ul> <li><code>trimmarks</code>:トンボ自身を出力します.</li> <li><code>banner</code>:日付などを出力します.</li> <li><code>digital</code>:TrimBoxとBleedBoxの設定を行います(デジタルトンボ).</li> <li><code>no</code>:何も表示しません.</li> </ul> +<h3 id="bleed_margin"><code>bleed_margin</code></h3> +<p>仕上がりと裁ち落としの間(ドブ)の長さを指定します.</p> <h2 id="jlreqtrimmarkssetup"><code>\jlreqtrimmarkssetup</code></h2> <p>パッケージオプションで指定できない設定を行えます.keyval形式です.</p> <h3 id="banner"><code>banner</code></h3> <p><code>show=banner</code>時に出力される文字列.</p> -<h3 id="bleed_margin"><code>bleed_margin</code></h3> -<p>仕上がりと裁ち落としの間(ドブ)の長さを指定します.</p> <h3 id="trimmarks_width"><code>trimmarks_width</code></h3> <p>トンボ自身の太さを指定します.</p> <h3 id="color"><code>color</code></h3> @@ -140,6 +139,12 @@ <li><code>trimmarks_paper</code>を拡張.</li> <li>パッケージオプション<code>landscape</code>を追加.</li> </ul></li> +<li>2018-09-01 +<ul> +<li><code>bleed_margin</code>を<code>\jlreqtrimmarkssetup</code>からパッケージオプションに移した.</li> +<li><code>\mag</code>が<code>1000</code>でない場合も動くようにした(つもり)</li> +<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-trimmarks-ja.md b/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks-ja.md index d488bd1f181..c76deae6780 100644 --- a/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks-ja.md +++ b/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks-ja.md @@ -1,7 +1,7 @@ # jlreq-trimmarks ## これは何? -トンボ(トリムマーク)を出力するためのパッケージです.[LuaTeX-ja](https://osdn.jp/projects/luatex-ja/wiki/FrontPage) / pLaTeX / upLaTeX / dvipdfmx / Dvips / dviout上で動きます.以下の機能を提供します. +トンボ(トリムマーク)を出力するためのパッケージです.[LuaTeX-ja](https://osdn.jp/projects/luatex-ja/wiki/FrontPage) / pLaTeX / upLaTeX / dvipdfmx / Dvips / dviout上で動きます.jlreqクラスファイルのみでなく,汎用的に動くように設計されています.以下の機能を提供します. * トンボの出力 * 可能な場合には,TrimBox / BleedBoxを設定 @@ -20,6 +20,11 @@ $TEXMF/tex/latex/jlreq内にjlreq-trimmarks.styとjlreq-helpers.styを配置し \usepackage[dvipdfmx,platex]{jlreq-trimmarks} ```` +なお,クラスファイルの`tombow`オプションは使わないでください. + +## ノート +jlreq-trimmarksは紙サイズを設定しますが,その他のパッケージとの兼ね合いで正しく機能しないことがあります.その際は[bxpapersize](https://github.com/zr-tex8r/BXpapersize)のようなより強力なパッケージを試してみてください. + ## オプション 以下のパッケージオプションを受け付けます.keyval形式です. @@ -32,15 +37,12 @@ $TEXMF/tex/latex/jlreq内にjlreq-trimmarks.styとjlreq-helpers.styを配置し です. ### `dvipdfmx`,`dvips`,`dviout` -dviドライバの指定です.省略時は - -* `lualatex`利用時はLuaLaTeXによりPDF出力が行われると見なされる. -* `platex`または`uplatex`利用時は`dvipdfmx`. +dviドライバの指定です.エンジンに`lualatex`を利用する場合は指定する必要はありません.省略時は`dvipdfmx`が使われます. ### `trimmarks_paper` トンボ付きの紙サイズを指定します. * `trimmarks_paper=a4`のように,`a0--a10`, `b0--b10`, `c2--c8`(BはJIS B列)を指定できる他,`trimmarks_paper={<width>,<height>}`と直接寸法を指定することができます. -* `a4+{1cm,2cm}`のように`<紙サイズ>+{<寸法横>,<寸法縦>}`とした場合は,指定された紙サイズから指定された寸法だけ増やした紙サイズを設定します. +* `a4+{1cm,2cm}`や`{10cm,20cm}+{1cm,2cm}`のように`<紙サイズ>+{<寸法横>,<寸法縦>}`とした場合は,指定された紙サイズから指定された寸法だけ増やした紙サイズを設定します. * `a4+2cm`は`a4+{2cm,2cm}`と等価です. * `+2cm`と紙サイズの部分を省略すると,現在の紙サイズを利用します. * デフォルトは`+2in`です. @@ -49,22 +51,22 @@ dviドライバの指定です.省略時は 紙のサイズの縦と横とを入れ替えます.ただし入れ替えるのは`trimmarks_paper`で明示的に指定された値に限ります.例えば`landscape,trimmarks_paper=+{1cm,2cm}`とすると,もともとの紙サイズ(これは入れ替わらない)の横幅が2cm増え,縦幅が1cm増えた紙サイズとなります. ### `show` -何を出力するか指定します.`show={trimmarks,banner,digital}`のようにカンマ区切りのリストを与えます.引数を与えない場合は全て表示します. +出力する対象を指定します.`show={trimmarks,banner,digital}`のようにカンマ区切りのリストを与えます.引数を与えない場合は全て表示します. * `trimmarks`:トンボ自身を出力します. * `banner`:日付などを出力します. * `digital`:TrimBoxとBleedBoxの設定を行います(デジタルトンボ). * `no`:何も表示しません. +### `bleed_margin` +仕上がりと裁ち落としの間(ドブ)の長さを指定します. + ## `\jlreqtrimmarkssetup` パッケージオプションで指定できない設定を行えます.keyval形式です. ### `banner` `show=banner`時に出力される文字列. -### `bleed_margin` -仕上がりと裁ち落としの間(ドブ)の長さを指定します. - ### `trimmarks_width` トンボ自身の太さを指定します. @@ -88,6 +90,10 @@ dviドライバの指定です.省略時は * 2018-08-08 - `trimmarks_paper`を拡張. - パッケージオプション`landscape`を追加. +* 2018-09-01 + - `bleed_margin`を`\jlreqtrimmarkssetup`からパッケージオプションに移した. + - `\mag`が`1000`でない場合も動くようにした(つもり) + - バグ修正 -------------- diff --git a/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks.html b/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks.html index 1186f439f7f..9ecdcdf93ae 100644 --- a/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks.html +++ b/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks.html @@ -58,7 +58,7 @@ <article class="markdown-body"> <h1 id="jlreq-trimmarks">jlreq-trimmarks</h1> <h2 id="what-is-this">What is this?</h2> -<p>This package outputs trim marks. It works with <a href="https://osdn.jp/projects/luatex-ja/wiki/FrontPage">LuaTeX-ja</a> / pLaTeX / upLaTeX / dvipdfmx / Dvips / dviout. It provides the following.</p> +<p>This package outputs trim marks. It works with <a href="https://osdn.jp/projects/luatex-ja/wiki/FrontPage">LuaTeX-ja</a> / pLaTeX / upLaTeX / dvipdfmx / Dvips / dviout and any document class (not only with jlreq class). It provides the following.</p> <ul> <li>Output trim marks</li> <li>Set TrimBox and BleedBox if possible.</li> @@ -71,6 +71,9 @@ <p>Load it by <code>\usepackage</code> with specifying the TeX engine and the DVI driver.</p> <pre><code>\usepackage[dvipdfmx,platex]{jlreq-trimmarks} </code></pre> +<p>Do not use <code>tombow</code> option in the document class.</p> +<h2 id="note">Note</h2> +<p>jlreq-trimmarks sets the size of the paper. However, it may not work due to a conflict with other packages. In this case, please use more powerful package, e.g., <a href="https://github.com/zr-tex8r/BXpapersize">bxpapersize</a>.</p> <h2 id="options">Options</h2> <p>The following package options (keyval style) are available.</p> <h3 id="platex-uplatex-lulatex"><code>platex</code>, <code>uplatex</code>, <code>lulatex</code></h3> @@ -80,11 +83,7 @@ <li>guessed one if the jlreq class is not loaded.</li> </ul> <h3 id="dvipdfmx-dvips-dviout"><code>dvipdfmx</code>, <code>dvips</code>, <code>dviout</code></h3> -<p>Set the dvi driver. If it is not specified, then</p> -<ul> -<li>the package outputs PDF file via LuaLaTeX when the engine is <code>lualatex</code>.</li> -<li>the driver is <code>dvipdmx</code> if the engine is <code>platex</code> or <code>uplatex</code></li> -</ul> +<p>Set the dvi driver. You do not have to specify it when using the engine <code>lualatex</code>. If it is not specified (with <code>platex</code> or <code>uplatex</code>), then <code>dvipdfmx</code> is used.</p> <h3 id="trimmarks_paper"><code>trimmarks_paper</code></h3> <p>Set the size of the paper including trim marks.</p> <ul> @@ -104,12 +103,12 @@ <li><code>digital</code>:TrimBox and BleedBox.</li> <li><code>no</code>: nothing will be showed</li> </ul> +<h3 id="bleed_margin"><code>bleed_margin</code></h3> +<p>Set the bleed margin.</p> <h2 id="jlreqtrimmarkssetup"><code>\jlreqtrimmarkssetup</code></h2> <p>Set the additional settings with the keyval style.</p> <h3 id="banner"><code>banner</code></h3> <p>The things which the package outputs when <code>show=banner</code> is specified in the package option.</p> -<h3 id="bleed_margin"><code>bleed_margin</code></h3> -<p>Set the bleed margin.</p> <h3 id="trimmarks_width"><code>trimmarks_width</code></h3> <p>Set the width of trim marks.</p> <h3 id="color"><code>color</code></h3> @@ -137,6 +136,12 @@ <li>Extended <code>trimmarks_paper</code>.</li> <li>Added a package option <code>landscape</code>.</li> </ul></li> +<li>2018-09-01 +<ul> +<li>Moved <code>bleed_margin</code> from <code>\jlreqtrimmarkssetup</code> to a package option.</li> +<li>jlreq-trimmarks works with unusugal<code>\mag</code>.</li> +<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/doc/latex/jlreq/jlreq-trimmarks.md b/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks.md index 8be01236445..bcaaf774185 100644 --- a/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks.md +++ b/Master/texmf-dist/doc/latex/jlreq/jlreq-trimmarks.md @@ -1,7 +1,7 @@ # jlreq-trimmarks ## What is this? -This package outputs trim marks. It works with [LuaTeX-ja](https://osdn.jp/projects/luatex-ja/wiki/FrontPage) / pLaTeX / upLaTeX / dvipdfmx / Dvips / dviout. It provides the following. +This package outputs trim marks. It works with [LuaTeX-ja](https://osdn.jp/projects/luatex-ja/wiki/FrontPage) / pLaTeX / upLaTeX / dvipdfmx / Dvips / dviout and any document class (not only with jlreq class). It provides the following. * Output trim marks * Set TrimBox and BleedBox if possible. @@ -19,6 +19,11 @@ Load it by `\usepackage` with specifying the TeX engine and the DVI driver. \usepackage[dvipdfmx,platex]{jlreq-trimmarks} ```` +Do not use `tombow` option in the document class. + +## Note +jlreq-trimmarks sets the size of the paper. However, it may not work due to a conflict with other packages. In this case, please use more powerful package, e.g., [bxpapersize](https://github.com/zr-tex8r/BXpapersize). + ## Options The following package options (keyval style) are available. @@ -29,10 +34,7 @@ Set the engine. If it is not specified, then the engine is * guessed one if the jlreq class is not loaded. ### `dvipdfmx`, `dvips`, `dviout` -Set the dvi driver. If it is not specified, then - -* the package outputs PDF file via LuaLaTeX when the engine is `lualatex`. -* the driver is `dvipdmx` if the engine is `platex` or `uplatex` +Set the dvi driver. You do not have to specify it when using the engine `lualatex`. If it is not specified (with `platex` or `uplatex`), then `dvipdfmx` is used. ### `trimmarks_paper` Set the size of the paper including trim marks. @@ -54,15 +56,15 @@ Specify the types of trim marks which the package outputs. It is specified with * `digital`:TrimBox and BleedBox. * `no`: nothing will be showed +### `bleed_margin` +Set the bleed margin. + ## `\jlreqtrimmarkssetup` Set the additional settings with the keyval style. ### `banner` The things which the package outputs when `show=banner` is specified in the package option. -### `bleed_margin` -Set the bleed margin. - ### `trimmarks_width` Set the width of trim marks. @@ -85,6 +87,10 @@ This package is distributed under the BSD 2-Clause License. See [LICENSE](LICENS * 2018-08-08 - Extended `trimmarks_paper`. - Added a package option `landscape`. +* 2018-09-01 + - Moved `bleed_margin` from `\jlreqtrimmarkssetup` to a package option. + - jlreq-trimmarks works with unusugal`\mag`. + - Fixed bugs. -------------- diff --git a/Master/texmf-dist/doc/latex/jlreq/jlreq.html b/Master/texmf-dist/doc/latex/jlreq/jlreq.html index 7f58c1119d4..9deb07b3a6c 100644 --- a/Master/texmf-dist/doc/latex/jlreq/jlreq.html +++ b/Master/texmf-dist/doc/latex/jlreq/jlreq.html @@ -183,6 +183,11 @@ <ul>
<li>Fixed bugs.</li>
</ul></li>
+<li>2018-09-01
+<ul>
+<li>jlreq works with unusual <code>\mag</code>.</li>
+<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 9532669172a..9bf28042489 100644 --- a/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty +++ b/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty @@ -162,14 +162,14 @@ % もしカンマがない場合は\ifjlreq@resultがfalseになる. \newcommand*{\jlreq@helper@dividebycomma}[1]{\jlreq@helper@dividebycomma@#1,\jlreq@endmark} \def\jlreq@helper@dividebycomma@#1,#2\jlreq@endmark{% - \jlreq@remove@spaceandbracket{#1}{\jlreq@resulta}% - \jlreq@remove@spaceandbracket{#2}{\jlreq@resultb}% + \jlreq@helper@trim{#1}{\jlreq@resulta}% + \jlreq@helper@trim{#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}% + \expandafter\jlreq@helper@trim\expandafter{\jlreq@resultb}{\jlreq@resultb}% }% } \def\jlreq@helper@removelastcomma#1,\jlreq@endmark{#1} @@ -245,6 +245,7 @@ % キー指定しないkeyval(独自実装) % \jlreq@parsekeyval@nokey{<action>}{<parse対象>} % action内では#1=key, #2=val +% <parse対象>は一回だけ展開される. \newcommand{\jlreq@parsekeyval@nokey}[2]{% \begingroup \def\jlreq@do{}% @@ -265,11 +266,10 @@ \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 - }% + \ifx\jlreq@tempb\@empty\else + \edef\@tempa{\noexpand\jlreq@parsekeyval@nokey@iv{\expandonce{\jlreq@tempb}}{\expandonce{\jlreq@tempa}}}% + \@tempa + \fi \jlreq@parsekeyval@nokey@i } \long\def\jlreq@parsekeyval@nokey@iv#1#2{% @@ -280,29 +280,36 @@ % #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 + \long\def\jlreq@helper@trim##1##2{\edef##2{\jlreq@helper@trim@i{##1}}} + \long\def\jlreq@helper@trim@i##1{% + \jlreq@iffirsttoken{##1}{#1}% + % 先頭スペースの除去.{}を外さないために\jlreq@uniqtokenを前後にいったん挟む. + {\jlreq@helper@trim@ii##1\jlreq@uniqtoken\jlreq@endmark}% + % 後方スペースの除去.先頭に\jlreq@uniqtokenを加えて{}が外れるのを防ぐ. + {\jlreq@helper@trim@iii\jlreq@uniqtoken##1\jlreq@uniqtoken#1\jlreq@uniqtoken\jlreq@endmark}% } - \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@helper@trim@ii#1##1\jlreq@endmark{% + \expandafter\expandafter\expandafter\jlreq@helper@trim@i\jlreq@helper@trim@vi\jlreq@uniqtoken##1\jlreq@endmark + } + \long\def\jlreq@helper@trim@iii##1#1\jlreq@uniqtoken##2\jlreq@endmark{% + \jlreq@ifempty{##2}% + {\expandafter\jlreq@helper@trim@iv\jlreq@helper@trim@v##1\jlreq@endmark}% + {\jlreq@helper@trim@iii##1\jlreq@uniqtoken#1\jlreq@uniqtoken\jlreq@endmark}% }% + \long\def\jlreq@helper@trim@iv##1{\expandafter\unexpanded\expandafter{\@gobble ##1}} + \long\def\jlreq@helper@trim@v##1\jlreq@uniqtoken\jlreq@endmark{{##1}} + \long\def\jlreq@helper@trim@vi##1\jlreq@uniqtoken\jlreq@endmark{\expandafter{\@gobble ##1}} } \jlreq@do{ } -\long\def\jlreq@removelastuniqtoken#1\jlreq@uniqtoken{#1} -\long\def\jlreq@remove@spaceandbracket@iv#1{\edef\jlreq@tempa{\unexpanded{#1}}} + +\long\def\jlreq@remove@spaceandbracket#1#2{% + \begingroup + \jlreq@helper@trim{#1}{\jlreq@tempa}% + \edef\jlreq@do{\unexpanded{\jlreq@remove@spaceandbracket@{#2}}\expandonce{\jlreq@tempa}\noexpand\jlreq@endmark}% + \expandafter\endgroup + \jlreq@do +} +\long\def\jlreq@remove@spaceandbracket@#1#2\jlreq@endmark{\edef#1{\unexpanded{#2}}} % \jlreq@switch{str}{ % {str}{abcd} @@ -507,11 +514,17 @@ \def\jlreq@for@noexpand#1:={\@for#1:=\@empty} -\def\jlreq@swap#1#2{% - \let\jlreq@swaptoken=#1% +\def\jlreq@helper@swap#1#2{% + \let\jlreq@helper@swaptoken=#1% \let#1=#2% - \let#2=\jlreq@swaptoken - \let\jlreq@swaptoken=\@undefined + \let#2=\jlreq@helper@swaptoken + \let\jlreq@helper@swaptoken=\@undefined +} +\def\jlreq@helper@swap@register#1#2{% + \edef\jlreq@helper@swaptoken{\the#1}% + #1=#2% + #2=\jlreq@helper@swaptoken\relax + \let\jlreq@helper@swaptoken=\@undefined } \endinput diff --git a/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty b/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty index d6242c6c56d..e5d13f08ff7 100644 --- a/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty +++ b/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty @@ -1,5 +1,5 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{jlreq-trimmarks}[2018/08/08 jlreq-trimmarks] +\ProvidesPackage{jlreq-trimmarks}[2018/09/01 jlreq-trimmarks] \RequirePackage{xkeyval,etoolbox} \RequirePackage{jlreq-helpers} @@ -123,12 +123,17 @@ \newif\ifjlreq@trimmarks@show \jlreq@trimmarks@showtrue \newif\ifjlreq@trimmarks@show@artbox \jlreq@trimmarks@show@artboxfalse \tombowdatetrue +% flag: `show` is specified or not +\newif\ifjlreq@trimmarks@option@show \jlreq@trimmarks@option@showfalse + \DeclareOptionX{show}{% + \jlreq@trimmarks@showtrue \jlreq@ifempty{#1}{ \jlreq@trimmarks@showtrue\tombowdatetrue\jlreq@trimmarks@digitaltrue }{ \jlreq@trimmarks@showfalse\tombowdatefalse\jlreq@trimmarks@digitalfalse \@for\jlreq@trimmarks@tempa:=#1\do{% + \expandafter\jlreq@helper@trim\expandafter{\jlreq@trimmarks@tempa}{\jlreq@trimmarks@tempa} \jlreq@switch{\jlreq@trimmarks@tempa}{ {trimmarks}{\jlreq@trimmarks@showtrue} {banner}{\tombowdatetrue} @@ -139,6 +144,10 @@ } } } +\def\jlreq@trimmarks@bleed{3mm} +\DeclareOptionX{bleed_margin}{\def\jlreq@trimmarks@bleed{#1}} + + \newif\ifjlreq@trimmarks@landscape \jlreq@trimmarks@landscapefalse \jlreq@trimmarks@DeclareOption{landscape}{\jlreq@trimmarks@landscapetrue} \jlreq@trimmarks@afterpkg@addtodeleteif{\ifjlreq@trimmarks@landscape} @@ -149,27 +158,37 @@ \let\@removeelement=\jlreq@temporary@original@@removeelement \let\jlreq@temporary@original@@removeelement=\@undefined -\def\jlreq@trimmarks@setpapersize#1{% +\ifjlreq@trimmarks@option@show\else + \ifx o\jlreq@trimmarks@driver + \jlreq@trimmarks@digitalfalse + \jlreq@trimmarks@showtrue + \jlreq@trimmarks@show@artboxfalse + \fi +\fi + +\def\jlreq@trimmarks@setpapersize#1{ \jlreq@ifcontains{#1}{+}{ - \def\@tempa##1+##2\jlreq@endmark{% - \jlreq@ifempty{##1}{ + \def\@tempa##1+##2\jlreq@endmark{ + \jlreq@helper@trim{##1}{\jlreq@trimmarks@tempa} + \jlreq@helper@trim{##2}{\jlreq@trimmarks@tempb} + \ifx\jlreq@trimmarks@tempa\@empty \let\jlreq@tempa=\paperwidth \let\jlreq@tempb=\paperheight - }{ - \jlreq@trimmarks@analyzepapersize{##1} + \else + \expandafter\jlreq@trimmarks@analyzepapersize\expandafter{\jlreq@trimmarks@tempa} \let\jlreq@tempa=\jlreq@resulta \let\jlreq@tempb=\jlreq@resultb - \ifjlreq@trimmarks@landscape\jlreq@swap{\jlreq@tempa}{\jlreq@tempb}\fi - } - \jlreq@trimmarks@analyzepapersize{##2} - \ifjlreq@trimmarks@landscape\jlreq@swap{\jlreq@resulta}{\jlreq@resultb}\fi + \ifjlreq@trimmarks@landscape\jlreq@helper@swap{\jlreq@tempa}{\jlreq@tempb}\fi + \fi + \expandafter\jlreq@trimmarks@analyzepapersize\expandafter{\jlreq@trimmarks@tempb} + \ifjlreq@trimmarks@landscape\jlreq@helper@swap{\jlreq@resulta}{\jlreq@resultb}\fi \edef\jlreq@trimmarks@paperwidth{\the\dimexpr\jlreq@tempa + \jlreq@resulta\relax} \edef\jlreq@trimmarks@paperheight{\the\dimexpr\jlreq@tempb + \jlreq@resultb\relax} } \@tempa#1\jlreq@endmark }{ \jlreq@trimmarks@analyzepapersize{#1} - \ifjlreq@trimmarks@landscape\jlreq@swap{\jlreq@resulta}{\jlreq@resultb}\fi + \ifjlreq@trimmarks@landscape\jlreq@helper@swap{\jlreq@resulta}{\jlreq@resultb}\fi \edef\jlreq@trimmarks@paperwidth{\jlreq@resulta} \edef\jlreq@trimmarks@paperheight{\jlreq@resultb} } @@ -186,7 +205,6 @@ \newcommand{\jlreqtrimmarkssetup}[1]{% \jlreq@parsekeyval{% {banner}{\@bannertoken{##1}\maketombowbox} - {bleed_margin}{\def\jlreq@trimmarks@bleed{##1}\maketombowbox} {trimmarks_width}{\setlength{\@tombowwidth}{##1}\maketombowbox} {color}{ \jlreq@ifempty{##1}{ @@ -231,7 +249,6 @@ \jobname\space(\number\year-\two@digits\month-\two@digits\day \space\two@digits\hour:\two@digits\minute)% }, - bleed_margin=3mm, color={} } @@ -257,18 +274,41 @@ \setlength{\pdfpageheight}{\dimexpr\jlreq@trimmarks@paperheight\relax} \fi -\hoffset=\dimexpr(\jlreq@trimmarks@paperwidth - \paperwidth)/2 - 1in\relax -\voffset=\dimexpr(\jlreq@trimmarks@paperheight - \paperheight)/2 - 1in\relax +\hoffset=\dimexpr(\jlreq@trimmarks@paperwidth - \paperwidth)/2 - \ifx l\jlreq@engine 1in\else 1truein\fi\relax +\voffset=\dimexpr(\jlreq@trimmarks@paperheight - \paperheight)/2 - \ifx l\jlreq@engine 1in\else 1truein\fi\relax +\ifx l\jlreq@engine\else + \@ifundefined{@tombowreset@@paper}{ + \AtBeginDocument{% + \addtolength{\oddsidemargin}{\dimexpr 1truein - 1in\relax}% + \addtolength{\evensidemargin}{\dimexpr 1truein - 1in\relax}% + \addtolength{\topmargin}{\dimexpr 1truein - 1in\relax}% + } + }{ + \def\@tombowreset@@paper{% + \@@topmargin\topmargin + \iftombow + \@@paperwidth\paperwidth + \advance\@@paperwidth 2\dimexpr\@tombowbleed\relax + \@@paperheight\paperheight \advance\@@paperheight 10mm\relax + \advance\@@paperheight 2\dimexpr\@tombowbleed\relax + % 1in -> 1truein + \advance\@@topmargin 1truein\relax \advance\@themargin 1truein\relax + \fi + } + } +\fi \ifx l\jlreq@trimmarks@driver\else - \edef\@tempa{\noexpand\AtBeginDvi{\noexpand\special{papersize=\the\dimexpr\jlreq@trimmarks@paperwidth\relax,\the\dimexpr\jlreq@trimmarks@paperheight\relax}}} + \jlreq@helper@divide{\the\mag pt}{1000pt} + \edef\@tempa{\noexpand\AtBeginDvi{\noexpand\special{papersize=\the\dimexpr\strip@pt\jlreq@resultdimen\dimexpr\jlreq@trimmarks@paperwidth\relax\relax, \the\dimexpr\strip@pt\jlreq@resultdimen\dimexpr\jlreq@trimmarks@paperheight\relax\relax}}} \@tempa \fi -\@ifundefined{stockwidth}{\newdimen\stockwidth}{} -\@ifundefined{stockheight}{\newdimen\stockheight}{} +\@ifundefined{stockheight}{\newlength{\stockheight}}{} +\@ifundefined{stockwidth}{\newlength{\stockwidth}}{} \setlength{\stockwidth}{\dimexpr\jlreq@trimmarks@paperwidth\relax} \setlength{\stockheight}{\dimexpr\jlreq@trimmarks@paperheight\relax} + \def\maketombowbox{% \setbox\@TL\hbox to\z@{\yoko\hss \vrule width\dimexpr 10mm + \jlreq@trimmarks@bleed\relax height\@tombowwidth depth\z@ @@ -313,7 +353,7 @@ \vrule height.5\@tombowwidth depth.5\@tombowwidth width10mm\hss}% } \def\@outputtombow{% - % 6mm: from plcore + % 6mm = \@tombowbleed: from plcore \@@paperwidth=\dimexpr\@@paperwidth - 6mm + 2\dimexpr\jlreq@trimmarks@bleed\relax\relax \@@paperheight=\dimexpr\@@paperheight - 6mm + 2\dimexpr\jlreq@trimmarks@bleed\relax\relax \ifjlreq@trimmarks@show @@ -338,7 +378,13 @@ } \ifjlreq@trimmarks@digital - \def\jlreq@trimmarks@pttobp#1{\strip@pt\dimexpr0.9963\dimexpr#1\relax\relax} + \ifx l\jlreq@engine + \setlength\jlreq@resultdimen{1pt} + \else + \jlreq@helper@divide{\the\mag pt}{1000pt} + \fi + % 0.9963 = 1pt/1bp (almost) + \edef\jlreq@trimmarks@pttobp#1{\noexpand\strip@pt\noexpand\dimexpr\strip@pt\jlreq@resultdimen\noexpand\dimexpr0.9963\noexpand\dimexpr#1\unexpanded{\relax\relax\relax}} \edef\jlreq@trimmarks@trimboxsize{% [% \jlreq@trimmarks@pttobp{(\jlreq@trimmarks@paperwidth - \paperwidth)/2} @@ -374,7 +420,7 @@ \fi \ifx s\jlreq@trimmarks@driver \edef\@tempa{\noexpand\special{ps:SDict begin - [ /TrimBox \jlreq@trimmarks@trimboxsize /PAGE pdfmark + [ /TrimBox \jlreq@trimmarks@trimboxsize /PAGE pdfmark \ifjlreq@trimmarks@show@artbox [ /ArtBox \jlreq@trimmarks@trimboxsize /PAGE pdfmark \fi [ /BleedBox \jlreq@trimmarks@bleedboxsize /PAGE pdfmark end}}% diff --git a/Master/texmf-dist/tex/latex/jlreq/jlreq.cls b/Master/texmf-dist/tex/latex/jlreq/jlreq.cls index d513a760f98..d3712ede72a 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/15 jlreq]
+\ProvidesClass{jlreq}[2018/09/01 jlreq]
\RequirePackage{xkeyval,everyhook,filehook,etoolbox,ifthen}
\RequirePackage{jlreq-helpers}
@@ -406,18 +406,28 @@ % 現在行の残りを得る.
\ifx l\jlreq@engine
- % 以下のコードはおかしい.
+ % 以下のコードはLuaTeX-jaのバグ?に依存している
+ % https://ja.osdn.net/projects/luatex-ja/ticket/36489
\newcommand*{\jlreq@calc@current@linewidth@onecolumn}{%
- \dimexpr\zposx{jlreq@rest@width.pos.\the\jlreq@zref@reference@count} sp - \@totalleftmargin -
- \ifodd\jlreq@currentpage
- \oddsidemargin
- \else
- \evensidemargin
- \fi
- \iftombow - 1in\fi
- - 1in - \hoffset\relax
+ \dimexpr
+ \zposx{jlreq@rest@width.pos.\the\jlreq@zref@reference@count} sp - \@totalleftmargin -
+ \ifodd\jlreq@currentpage
+ \oddsidemargin
+ \else
+ \evensidemargin
+ \fi
+ \iftombow -1in \fi
+ - \pdfvariable horigin - \hoffset
+ \relax
}
\else
+ % トンボ出力時にはjlreq-trimmarksであることを仮定する.
+ % 新しいpLaTeXに対しては,jlreq-trimmarksは内部の1inを1trueinに書き換える
+ \@ifundefined{@tombowreset@@paper}{
+ \def\jlreq@tombow@adjust{\iftombow -1in \fi}
+ }{
+ \def\jlreq@tombow@adjust{\iftombow -1truein \fi}
+ }
\newcommand*{\jlreq@calc@current@linewidth@onecolumn}{%
\dimexpr
\jlreq@ifydir{%
@@ -436,7 +446,7 @@ - \topmargin - \headheight - \headsep - \voffset
- \zposy{jlreq@rest@width.pos.\the\jlreq@zref@reference@count} sp
}%
- \iftombow - 1in\fi
+ \jlreq@tombow@adjust
- \@totalleftmargin - 1in
\relax
}
@@ -1158,25 +1168,18 @@ %. ページレイアウト
% landscapeの場合縦横をひっくり返す
\if@landscape
- \jlreq@swap{\paperwidth}{\paperheight}
+ \jlreq@helper@swap@register{\paperwidth}{\paperheight}
\fi
% \pdfpagewidthとか設定
\ifx l\jlreq@engine
- \let\jlreq@pagewidth=\pagewidth
- \let\jlreq@pageheight=\pageheight
+ \setlength{\pagewidth}{\paperwidth}
+ \setlength{\pageheight}{\paperheight}
\else
- \let\jlreq@pagewidth=\pdfpagewidth
- \let\jlreq@pageheight=\pdfpageheight
-\fi
-\setlength{\jlreq@pagewidth}{\paperwidth}
-\setlength{\jlreq@pageheight}{\paperheight}
-\iftombow
- \addtolength{\jlreq@pagewidth}{2in}
- \addtolength{\jlreq@pageheight}{2in}
+ \setlength{\pdfpagewidth}{\paperwidth}
+ \setlength{\pdfpageheight}{\paperheight}
\fi
-
\ifx l\jlreq@engine
\def\jlreq@expand@speciallength#1{%
% zhやzwを\zhや\zwにする.
@@ -1203,6 +1206,11 @@ \jlreq@tempdimb=1\zw
\divide\jlreq@tempdima\jlreq@tempdimb
\multiply\jlreq@tempdima\jlreq@tempdimb
+ \ifdim\jlreq@tempdima>0pt
+ \ifnum 0\ifdim\jlreq@tempdima>25\zw 1\fi\ifdim\jlreq@tempdima<15\zw 1\fi>0
+ \jlreq@note{並列注の字詰め方向の長さ(行長)は,15字から20字くらいである.ケースによっては25字程度にする場合もある (4.2.7).}
+ \fi
+ \fi
\edef\jlreq@do{
\noexpand\setlength{\noexpand\marginparwidth}{\the\jlreq@tempdima}
\noexpand\setlength{\noexpand\marginparpush}{\the\dimexpr 0.5\zw\relax} % 同上:4.2.7.g
@@ -1215,11 +1223,6 @@ \setlength{\marginparsep}{0pt}
\fi
-\ifdim\marginparwidth>0pt
- \ifnum 0\ifdim\marginparwidth>25\zw 1\fi\ifdim\marginparwidth<15\zw 1\fi>0
- \jlreq@note{並列注の字詰め方向の長さ(行長)は,15字から20字くらいである.ケースによっては25字程度にする場合もある (4.2.7).}
- \fi
-\fi
% 縦書きの時は脚注に固定
% (TODO: 頭注)
\if@tate\@mparswitchfalse\fi
@@ -1345,13 +1348,13 @@ }
\def\jlreq@setsidemargin@by@fore@edge#1{
\jlreq@setsidemargin@by@gutter{#1}
- \@tempdima=\evensidemargin
- \evensidemargin=\oddsidemargin
- \oddsidemargin=\@tempdima
+ \jlreq@helper@swap@register{\oddsidemargin}{\evensidemargin}
\ifjlreq@determine@kihonhanmen@warning@first
\jlreq@note{基本版面の配置はのどの空き量を指定する (2.4.1.b).}
\fi
}
+\jlreq@aftercls@addtodeletecs{\jlreq@setsidemargin@by@gutter}
+\jlreq@aftercls@addtodeletecs{\jlreq@setsidemargin@by@fore@edge}
\ifx\jlreq@option@gutter\@empty
\ifx\jlreq@option@fore@edge\@empty
@@ -1377,36 +1380,41 @@ \else
\jlreq@setsidemargin@by@gutter{\jlreq@speciallength{\jlreq@option@gutter}}
\ifx\jlreq@option@fore@edge\@empty\else
- \ifjlreq@determine@kihonhanmen@warning@first\else
+ \ifjlreq@determine@kihonhanmen@warning@first
\ClassWarningNoLine{jlreq}{fore_edge is ignored}
\fi
\fi
\fi
-\addtolength{\oddsidemargin}{-1in}
-\addtolength{\evensidemargin}{-1in}
+\ifx l\jlreq@engine
+ \addtolength{\oddsidemargin}{-1in}
+ \addtolength{\evensidemargin}{-1in}
+\else
+ \addtolength{\oddsidemargin}{-1truein}
+ \addtolength{\evensidemargin}{-1truein}
+\fi
%.. 縦
% \topmarginに全体の頭からテキストの頭までの長さを入れる
% 天の値からtopmarginを設定する
\def\jlreq@settopmarginbyhead#1{
\if@tate
- \setlength{\topmargin}{\dimexpr #1 - \headsep - \headheight - 1in\relax}
+ \setlength{\topmargin}{\dimexpr #1 - \headsep - \headheight\relax}
\if@twocolumn
\addtolength{\topmargin}{\dimexpr\marginparwidth + \marginparsep\relax}
\fi
\jlreq@note{縦組の場合は地の空き量を指定する (2.4.1.b).}
\else
- \setlength{\topmargin}{\dimexpr #1 - \headsep - \headheight - 1in - \topskip + \Cht\relax}
+ \setlength{\topmargin}{\dimexpr #1 - \headsep - \headheight - \topskip + \Cht\relax}
\fi
}
\jlreq@aftercls@addtodeletecs{\jlreq@settopmarginbyhead}
% 地の値から
\def\jlreq@settopmarginbyfoot#1{
\if@tate
- \setlength{\topmargin}{\dimexpr\paperheight - \textwidth - \headsep - \headheight - 1in - #1 - \marginparsep - \marginparwidth\relax}
+ \setlength{\topmargin}{\dimexpr\paperheight - \textwidth - \headsep - \headheight - #1 - \marginparsep - \marginparwidth\relax}
\else
\jlreq@note{横組の場合は天の空き量を指定する (2.4.1.b).}
- \setlength{\topmargin}{\dimexpr\paperheight - \textheight + \topskip - 1\zh - \headsep - \headheight - 1in - #1\relax}
+ \setlength{\topmargin}{\dimexpr\paperheight - \textheight + \topskip - 1\zh - \headsep - \headheight - #1\relax}
\fi
}
\jlreq@aftercls@addtodeletecs{\jlreq@settopmarginbyfoot}
@@ -1442,7 +1450,11 @@ \fi
\fi
\fi
-
+\ifx l\jlreq@engine
+ \addtolength{\topmargin}{-1in}
+\else
+ \addtolength{\topmargin}{-1truein}
+\fi
%.. 下
\setlength{\footskip}{\dimexpr\headsep + \if@tate\marginparwidth + \marginparsep\else\topskip - \Cht\fi + \headheight\relax}
% \maxdepth + \topskip = フォントサイズ×1.5(だってさ)
@@ -1612,6 +1624,7 @@ % ラベルフォーマットでは#1=カウンタ名,見出し文字列フォーマットでは#1=見出し文字列,副題フォーマットでは#1=副題
% ラベルのみのフォーマットは目次に使われる.
\newcommand{\jlreq@BlockHeading@start}[5]{%
+ \if@noskipsec\leavevmode\fi
\edef\jlreq@BlockHeading@start@format{\unexpanded{#4}}% この二つは\parを含むかもしれないので引数渡しはしない(後の\@ifstarで詰まる)
\edef\jlreq@BlockHeading@start@totalformat{\unexpanded{#5}}%
\jlreq@BlockHeading@start@{#1}{#2}{#3}%
@@ -2224,7 +2237,7 @@ }
\def\jlreq@SetBlockHeadingSpaces@iii#1{%
\@for\@tempa:=#1\do{%
- \expandafter\jlreq@remove@spaceandbracket\expandafter{\@tempa}{\@tempa}%
+ \expandafter\jlreq@helper@trim\expandafter{\@tempa}{\@tempa}%
\expandafter\jlreq@iffirsttoken@ignorespaces\expandafter{\@tempa}{_}{%
\ifx\jlreq@lastdimen\@empty\else\eappto\jlreq@set{{\expandonce{\jlreq@lastdimen}}}\fi%
\def\jlreq@lastdimen{}%
@@ -2513,12 +2526,13 @@ %.. 窓見出し
\def\jlreq@CutinHeading@start#1#2#3#4#5#6#7{%
+ \if@noskipsec\leavevmode\fi
\par
- \ifnum\hangafter=1
+ \ifnum\hangafter=1 \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi{%
\jlreq@CutinHeading@start@{#2}{#3}{#4}{#5}{#6}{#7}%
- \else
+ }{%
\ClassError{jlreq}{Can not use \expandafter\string\csname#1\endcsname\space here}{\@ehc}%
- \fi
+ }%
}
% 1 = 書式指定,2 = インデント, 3 = 見出しと本文の間, 4 = これを越えたら二行以上,5 = これを越えたら三行以上,6 = テキスト
\def\jlreq@CutinHeading@start@#1#2#3#4#5#6{%
@@ -2825,12 +2839,12 @@ \ifx l\jlreq@engine
\def\jlreq@hook@prenote{%
\jlreq@lastnodechar=\lastnodechar\relax
- \ifnum\lastnodechar>-1\inhibitglue\fi
+ \ifnum\jlreq@lastnodechar>-1 \inhibitglue\fi
}
\else
% (u)platexの時は代入すると\inhibitglueが効かなくなる
\def\jlreq@hook@prenote{%
- \ifnum\lastnodechar>-1\inhibitglue\fi
+ \ifnum\lastnodechar>-1 \inhibitglue\fi
\jlreq@lastnodechar=\lastnodechar\relax
}
\fi
@@ -3160,7 +3174,7 @@ % \jlreq@tempcにセクション名たちを入れていく
\def\jlreq@tempc{}
\@for\jlreq@tempa:=#1\do{
- \expandafter\jlreq@remove@spaceandbracket\expandafter{\jlreq@tempa}{\jlreq@tempa}%
+ \expandafter\jlreq@helper@trim\expandafter{\jlreq@tempa}{\jlreq@tempa}%
\jlreq@switch{\jlreq@tempa}{
{headings}{\jlreq@tempatrue}
{paragraph}{
@@ -4694,7 +4708,7 @@ \def\jlreq@do{}%
\def\jlreq@keyvallist{}%
\@for\@tempa:=#1\do{%
- \expandafter\jlreq@remove@spaceandbracket\expandafter{\@tempa}{\@tempa}%
+ \expandafter\jlreq@helper@trim\expandafter{\@tempa}{\@tempa}%
\expandafter\jlreq@ifcontains\expandafter{\@tempa}{=}{%
\expandafter\appto\expandafter\jlreq@keyvallist\expandafter{\@tempa,}%
}{%
@@ -5108,13 +5122,24 @@ %. その他諸々
%.. 縦中横
-\DeclareRobustCommand*{\tatechuyoko}[1]{%
- \jlreq@ifydir{\ClassError{jlreq}{\string\tatechuyoko\space is not allowed in yoko mode}{\@ehc}}{}%
- \jlreq@lastnodechar=\lastnodechar
- \ifvmode\leavevmode\fi
+\edef\@tempa{%
+ \unexpanded{%
+ \jlreq@ifydir{\ClassError{jlreq}{\string\tatechuyoko\space is not allowed in yoko mode}{\@ehc}}{}%
+ \ifvmode\leavevmode\fi
+ }%
+ \ifx l\jlreq@engine\unexpanded{%
+ \jlreq@lastnodechar=\lastnodechar\relax
+ \ifnum\jlreq@lastnodechar>-1 \inhibitglue\fi
+ }\else\unexpanded{%
+ \ifnum\lastnodechar>-1 \inhibitglue\fi
+ \jlreq@lastnodechar=\lastnodechar\relax
+ }\fi
+}
+
+\expandafter\protected\expandafter\def\expandafter\tatechuyoko\expandafter#\expandafter1\expandafter{%
+ \@tempa
% 前のJFM glue
- \ifnum\jlreq@lastnodechar=-1\else
- \inhibitglue
+ \ifnum\jlreq@lastnodechar>-1
\jlreq@calc@jfmglue{\char\jlreq@lastnodechar}{阿}%
\jlreq@ifgluezero\jlreq@resultskip{}{\hskip\jlreq@resultskip}%
\fi
|