天地有情

[LaTeX] eledmac --- 学術的に重要なエディションの組版

§1 はじめに

(更新版: 2017/04/10) 旧名:[eledmac.sty の使い方 備忘録]

eledmac パッケージは LaTeX2e で学術的に重要なエディションを組版するもので,
plain TeXの EDMAC, TABMAC, EDSTANZA マクロを LaTeX2e に移植したものです.
このパッケージは次の2つのパッケージから成ります.

(a) eledmac
(b) eledpar

eledpar パッケージは,コラムごと,あるいは見開きページで対訳を作るためのパッケージです.
本編では eledmac について説明します.

eledmac パッケージの特長は次の通りです.

★ ページごと・セクションごとに自動的に行番号をつけます
★ 10.1 や 12.a, 12.b のような番号づけもできます
★ 異なる読みを,行番号とリンクさせて自動的に挿入することができます
★ 何段にもわたる脚注・後注を作成できます
★ 脚注を段組にできます

1.1 インストール

TeXLive/W32TeX などには標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc eledmac を実行するか,
上記に同梱の eledmac.pdf をお読み下さい.

§2 使い方

2.1プリアンブルに
  \usepackage {reledmac}
  を記述します.

重要:

eledmac00.png

§3 サンプル

(注意)文書をコンパイルしたときに,xargs.sty および suffix.sty が見つからないという
    エラーメッセージが表示されたら,CTAN からダウンロードしてインストールしてください.

(1)行番号の付け方とコマンド

行番号を自動的につけるには,テキストを次のように囲んでセクションをつくります.

----------------------------
\beginnumbering
<text>
\endnumbering
----------------------------

\beginnumbering は行番号を0にリセットし,\jobname.nn ファイルを読み込んで行番号を管理します.
nn はセクションの番号です.

実際に行番号をつけるには,そのパラグラフを \pstart と \pend で囲む必要があります.

----------------------------
\beginnumbering
\pstart
<text 1>
\pend

<text 2>

\pstart
<text 3>
\pend
\endnumbering
----------------------------

上のように入力すると,text 1 と text 3 には行番号がつきますが,text 2 には行番号はつきません.
なお,text 3 の行番号は text 1 の続きになります.

   ●サンプル01(行番号を付けるサンプル)

【ソースファイル】(sample01.tex)
-----------------------------------------------
\documentclass{jsarticle}
\usepackage{reledmac}
\firstlinenum{1} %% 行番号は 1 からスタート(default=0)
\linenumincrement{1} %% 行番号は 1 づつ増加(default=5)
%
\begin{document}
\section{吾輩は猫}
\beginnumbering
\pstart
吾輩は猫である.名前はまだ無い.

どこで生れたかとんと見当がつかぬ.
何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している.
吾輩はここで始めて人間というものを見た.
しかもあとで聞くとそれは書生という人間中で一番獰悪な種族であったそうだ.
この書生というのは時々我々を捕えて煮て食うという話である.
しかしその当時は何という考もなかったから別段恐しいとも思わなかった.
ただ彼の掌に載せられてスーと持ち上げられた時何だかフワフワした感じがあった
ばかりである.
\pend

掌の上で少し落ちついて書生の顔を見たのがいわゆる人間というものの見始であろう.
この時妙なものだと思った感じが今でも残っている.
第一毛をもって装飾されべきはずの顔がつるつるしてまるで薬缶だ.
その後猫にもだいぶ逢ったがこんな片輪には一度も出会わした事がない.
のみならず顔の真中があまりに突起している.
そうしてその穴の中から時々ぷうぷうと煙を吹く.
どうも咽せぽくて実に弱った.
これが人間の飲む煙草というものである事はようやくこの頃知った.

\pstart
この書生の掌の裏でしばらくはよい心持に坐っておったが,
しばらくすると非常な速力で運転し始めた.
書生が動くのか自分だけが動くのか分らないが無暗に眼が廻る.
胸が悪くなる.到底助からないと思っていると,どさりと音がして眼から火が出た.
それまでは記憶しているがあとは何の事やらいくら考え出そうとしても分らない.
\pend
\endnumbering
\end{document}
-----------------------------------------------

【結果】

eledmac01.png


\pstart と \pend を何回も入力する煩わしさを取り除くために \autopar というコマンドが用意されています.
詳しくはマニュアルを見て下さい.


(2) 行番号付け関連のコマンド

   ■ 行番号の初期値とステップ

行番号の初期値は0,ステップ(何行ごとに行番号をつけるか)は5に設定されています.変更するには次のコマンド(例)をプリアンブルに書き込みます.

----------------------------
\firstlinenum{100} %% 行番号は 100 からスタート
\linenumincrement{2} %% 行番号は 2 づつ増加
----------------------------

   ■ \lineation

行番号はセクションごとにつけるか,ページごとにつけるか選ぶことができます.デフォルトはセクションです.
----------------------------
\lineation{section}
\lineation{page}
----------------------------

   ■ \linenummargin

行番号を付ける位置を \linenummargin で指定します. left, right, inner, outer の4種類があります.
デフォルトは左側で次のようになっています.

----------------------------
\linenummargin{left}
----------------------------

(3)行番号の変更

デフォルトでは,行番号はセクションの初めの1から始まって1行ずつ大きくなっていきますが,10.1 のような
複雑な行番号をつけることもできます.

   ■ \startsub & \endsub

\startsub と \endsub で囲まれた部分は複行番号(sub-line)付けをされます.5, 6, 7 行目ときたのが,
7.1, 7.2, ... のようになります.

7.a, 7.b, ... のようにアルファベットにしたい場合にはプリアンブルに次のように記述します.

----------------------------
\sublinenumberstyle{alph}
----------------------------

\sublinenumberstyle{<style>}の style パラメータには次が記述できます.

★ Alph   Uppercase letters     (A. . . Z).
★ alph   Lowercase letters     (a. . . z).
★ arabic  Arabic numerals      (1, 2, . . . ) % default
★ Roman  Uppercase Roman numerals  (I, II, . . . )
★ roman  Lowercase Roman numerals  (i, ii, . . . )



   ●サンプル02(枝番号を付けるサンプル)

【ソースファイル】(sample02.tex)

-----------------------------------------------
  
\firstsublinenum{1}
\sublinenumincrement{1}
\sublinenumberstyle{alph} %% 枝番号を a, b, c, ...とする
%
\begin{document}
\beginnumbering
     :
   (途中省略)
     :
\startsub
\pstart
この書生の掌の裏でしばらくはよい心持に坐っておったが,
しばらくすると非常な速力で運転し始めた.

書生が動くのか自分だけが動くのか分らないが無暗に眼が廻る.
胸が悪くなる.到底助からないと思っていると,どさりと音がして眼から火が出た.
それまでは記憶しているがあとは何の事やらいくら考え出そうとしても分らない.
\pend
\endsub
\endnumbering
\end{document}
-----------------------------------------------


sample01.tex に次をプリアンブル部に追加記述します.

\firstsublinenum{1}
\sublinenumincrement{1}
\sublinenumberstyle{alph}

例えば,枝番号(7.a , 7.b, ..)付きにするには,次のように記述します.

------------------------------
\startsub
\pstart
<text>
\pend
\endsub
------------------------------

【結果】

eledmac02.png

   ■ \startlock & \endlock
\startlock と \endlock で囲まれた部分は行番号づけがストップします.
\startlock を宣言すると \endlock を宣言するまで行番号が凍結されます.韻文の時に使えます.

行番号が凍結されている時,紙面上の何行かが同じ行番号を持つことになります.
それらのうちのどの行に番号づけをするかを指定することができます.

------------------------------
\lockdisp{<arg>}
------------------------------

arg の部分には,first(デフォルト), last, all が入ります.


   ●サンプル03(行番号の凍結と表示のサンプル)


sample02.tex の \startsub → \startlock に,\eddsub → endlock に変更し,
\lockdisp{all}を追加した例です.

【ソースファイル】(sample03.tex)
-----------------------------------------------
\begin{document}
\beginnumbering
     :
   (途中省略)
     :

\lockdisp{all} %% lockされている行を表示
\startlock %% lock開始
\pstart
この書生の掌の裏でしばらくはよい心持に坐っておったが,
しばらくすると非常な速力で運転し始めた.

書生が動くのか自分だけが動くのか分らないが無暗に眼が廻る.
胸が悪くなる.到底助からないと思っていると,どさりと音がして眼から火が出た.
それまでは記憶しているがあとは何の事やらいくら考え出そうとしても分らない.
\pend
\endlock %% lock終了
\endnumbering
\end{document}
-----------------------------------------------

【結果】

eledmac03.png


   ■ \setline & \advanceline

断片を印刷する時など,行番号を自動的につけさせるのではなく,自分で行番号を指定したい時があります.
この場合には \setline と \advanceline というコマンドが使えます.マージンに印刷される行番号も,
apparatus に印刷される行番号も変更されます.

------------------------------
\setline{<num>}
\advanceline{<num>}
------------------------------

\setline はその行の番号をセットします.num は0以上の数です.\advanceline は現在の行番号に,
どれだけの行数を足すかを決めます.num は正の数でも負の数でも構いません.

   ●サンプル04(行番号の任意設定)

【ソースファイル】(sample04.tex)
-----------------------------------------------
\documentclass{scrartcl}
\usepackage{eledmac}
\firstlinenum{1}
\linenumincrement{1}
\begin{document}
\section{吾輩は猫}
\beginnumbering
\setline{100} %% 行番号を 100 からに設定
\pstart
吾輩は猫である.名前はまだ無い.

どこで生れたかとんと見当がつかぬ.
何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している.
吾輩はここで始めて人間というものを見た.
しかもあとで聞くとそれは書生という人間中で一番獰悪な種族であったそうだ.
この書生というのは時々我々を捕えて煮て食うという話である.
しかしその当時は何という考もなかったから別段恐しいとも思わなかった.
ただ彼の掌に載せられてスーと持ち上げられた時何だかフワフワした感じがあった
ばかりである.
\pend
\endnumbering
\end{document}
-----------------------------------------------

eledmac04.png

§4 apparatus

(1)\edtext{}{}

apparatus をつけるには次のコマンドを使います.

---------------------------------
\edtext{<lemma>}{<commands>}
---------------------------------

(2)サンプル
--------------------------------------------------------------
\edtext{吾輩は猫である.}{\Afootnote{三毛猫}} 名前はまだ無い.
--------------------------------------------------------------

次のように出力されます.

【結果】

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
1 吾輩は猫である.名前はまだ無い.%%本文箇所(1行目)

--------------------------------------
1 吾輩は猫である.]三毛猫 %%脚注部
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

(3)commands

commands には,apparatus や後注(endnotes)を出力するコマンドとその内容が入ります.
command の種類は次に挙げる10通りあります.

●\Afootnote
●\Bfootnote
●\Cfootnote
●\Dfootnote
●\Efootnote

●\Aendnote
●\Bendnote
●\Cendnote
●\Dendnote
●\Eendnote

上の5つが apparatus 用,下の5つが endnotes 用です.それぞれ6つ以上使うことも不可能ではありません.
詳しくはマニュアルを参照してください.footnote と endnote も,ページの上から A, B, C, D, E の順番に並びます.


§5 フォント

eledmac では次のようなコマンドを用いて本文,行番号,脚注のフォントを指定することができます.

(1)\notefontsetup

脚注のフォントのサイズを指定することができます.
デフォルトでは \footnotesize に設定されていますが,これは次のようにして変更することができます.

-------------------------------------------
\renewcommand*{\notefontsetup}{\small}
-------------------------------------------

(2)\numlabfont

行番号は余白に小さいフォントで印刷されます.次のように定義されています.
デフォルトでは \scriptsize に設定されていますが,これは次のようにして変更することができます.
\renewcommand{\numlabfont}{\normalfont\tiny}

§6 相互参照

(1)\edlabel

ラベルをつける時は 次のコマンドを使います.

----------------------------------
\edlabel{<lab>}
----------------------------------

lab にはスペース以外の文字・記号が使えます.

(2)\edpageref, \lineref , \sublineref

\edlabel の後ろであっても前であってもページ番号や行番号を参照できます.

● ページを参照する時は \edpageref{<:lab>:}
● 行番号を参照する時は \lineref{<:lab>:}
● 副行番号を参照する時は \sublineref{<:lab>:}

というコマンドを使います.

\edlabel は本文か,\edtext の最初の引数には入りますが, apparatus には入りません.
これに対して \edpageref, \lineref, \sublineref は apparatus の中でも使えます.

\edlabel は .aux ファイルを使って番号を管理するので少なくとも2回以上 コンパイル を実行する
必要があります.

\edlabel{foo} というコマンドが2箇所以上に書き込まれていたら警告が出ます.
この場合,\edpageref, \lineref, \sublineref で参照すると一番最後に書き込まれた
\edlabel{foo} が参照されます.
また \edlabel{foo} が定義されていないのに参照した場合も,当然警告が出ます.

§7 メモリのリミットについて

eledmac は行番号や脚注についてのたくさんの情報を扱うので,1つのセクションがあまりに長いと
メモリが足りなくなってしまう場合があります.対策としては

(a) LaTeX のメモリ容量を増やす
(b) 1つのセクションを短くする

(b)の方法の欠点は,セクションを分けると行番号が1に戻ってしまうことです.
これを避けるために,\pausenumbering \resumenumbering が用意されています.
この2つは \pend と \pstart の間で使います.

■■■■■■■■■■■■■
\beginnumbering
\pstart
Paragraph of text.
\pend
\pausenumbering

\resumenumbering
\pstart
Another paragraph.
\pend
\endnumbering
■■■■■■■■■■■■■

(EOF)
スポンサーサイト
  1. 2013/11/26(火) 12:41:46|
  2. LaTeX Tools
  3. | トラックバック:0
  4. | コメント:0
<<[LaTeX] enumitem --- リスト環境のレイアウトを制御 | ホーム | Koma-Script 入門 ~初歩の初歩~>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://konoyonohana.blog.fc2.com/tb.php/57-0ca2b125
この記事にトラックバックする(FC2ブログユーザー)