
私は、一部が edmac を使用した plain tex で書かれた批評版で、他の部分は多かれ少なかれ通常の LaTeX である巻を作成するために plain パッケージを使用する可能性を評価しようとしています。ここで扱っているのは非常に複雑な設定で、1990 年代の遺産コードです。作成者はずっと前に亡くなりましたが、プロジェクトの他の人たちは彼のシステムを使い続け、それ以来数巻を制作しており、どうやらそれを放棄するつもりはないようです。印刷された本は確かに素晴らしいです。これまでの巻は、最初に版の章の pdf を生成することによって作成されました。各章の開始番号は、tex ソースで手動で設定する必要があり、これらの pdf はその後、本のメインの LaTeX ファイルに含められました。当然、目次も手動で作成する必要があります。もちろん、もう一度同じようにすることは可能ですが、少なくとも別の、より良い方法があるかどうかを確認したいと思います。前にも述べたように、これは信じられないほど複雑で、2 段階の前処理システムが必要です。Perl スクリプトを介したカスタム サンスクリット エンコーディングの入力ファイルから、2 番目のステップで tex ソース ファイルと edmac の上に抽象化レイヤーを提供するスタイル ファイルを生成する devnag プリプロセッサの dn ファイルまでです。私は、古いシステムのみを使用して最後の巻を作成する技術担当者でしたが、これは、その版を作成するために使用されたプレーン tex を深く理解していなくても可能でした。プレーン tex に他に接したことがないため、LaTeX ファイルに入力できる MWE を作成しようと奮闘しています。それが可能かどうかはわかりませんが、実際のファイルで例を作成することは失敗しました。もちろん、それを試してみました。
\input edmac.doc
\beginnumbering
\pstart
\text{lemma}\Afootnote{note}\
\pend
\endnumbering
\bye
私に与える
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019) (preloaded format=pdftex)
restricted \write18 enabled.
entering extended mode
(./mini.tex (./edmac.doc
EDMAC Critical edition macros.
Revision: 3.7 < Date: 31 Aug 1993 15:57:20 >.
) Section 1 (./mini.1)
Runaway argument?
\Afootnote {note}\^^M\pend \endnumbering \par
! Forbidden control sequence found while scanning use of \text.
<inserted text>
\par
<to be read again>
\bye
l.9 \bye
おそらく何らかの設定が欠落しているのでしょうが、互換性の問題でもあるのでしょうか? 他の MWE はまだ見つかっていません。そもそも、読みやすいドキュメントも見つかりませんでした。edmac.doc に含まれている最後の例は、devnag プリプロセッサ専用だったので試してみましたが、ビルドできませんでした。
答え1
まず、質問に対する答えです。簡単に言うと、 は ではなく\text
で終わるはずです。/
\
エラーメッセージの説明
エラー メッセージには「引数が暴走しましたか?」と表示され、「H」を押すと詳細が表示されることに注意してください。
Runaway argument?
\Afootnote {note}\^^M\pend \endnumbering \par
! Forbidden control sequence found while scanning use of \text.
<inserted text>
\par
<to be read again>
\bye
l.9 \bye
? H
I suspect you have forgotten a `}', causing me
to read past where you wanted me to stop.
I'll try to recover; but if the error is serious,
you'd better type `E' or `X' now and fix your file.
基本的にこれは、 の全体\Afootnote {note}\^^M\pend \endnumbering \par
、そして の一部も ( が と宣言されている\bye
ため、このエラーがキャッチされました) が の引数として扱われた(これは意図したことではありません) ことを意味します。これは、 の呼び出しに何か問題があることを示唆しています。\bye
\outer
\text
\text
edmac
ドキュメントとMWE
のドキュメントはedmac
見つけにくいですtexdoc edmac
。ショー1996年からのTUGから印刷された本としてドキュメントを購入するよう勧めるメールreadme
(アドレスは古いと思います)。しかし、edmac/ledmac/reledmacについてどこかで聞いたことがあるので、実行する方がtexdoc reledmac
便利で、書類歴史に残る、そしてまた言及する
「edmac の概要: 重要な版のための Plain TEX 形式」タグボート11(1990年)、623-643ページ
入手可能なここ。
このドキュメントに従って、次の MWE を準備できます (ドキュメントの例を使用し、名前を質問から\afootnote
更新します)。\Afootnote
\input edmac
\firstlinenum=1
\linenumincrement=1
% Some hacks for narrow columns. Not needed in real documents.
\vsize=20em
\hsize=15em
\hyphenpenalty=0
\exhyphenpenalty=0
\doublehyphendemerits=0
\finalhyphendemerits=0
\pretolerance=9999
\tolerance=9999
\emergencystretch=\maxdimen
\beginnumbering
\pstart This is a sample paragraph, with lines numbered automatically. \pend
The lines of this paragraph are not numbered.
\pstart And here the numbering begins again. \pend
\pstart
I saw my friend \text{Smith}\Afootnote{Jones C, D.}/ on Tuesday.
\pend
\bye
その結果は次のようになります:
頼まれもしないアドバイスです :)
版の各章の PDF を生成します。各章の開始番号は、Tex ソースで手動で設定する必要があり、これらの PDF は、本のメインの LaTeX ファイルに含まれます。当然、目次も手動で作成する必要があります。
なお、この方法(各章の開始ページ番号を手動で指定し、目次を手動で生成する)は、TeXの考案者であり、25冊は、多くの本を準備しています。本の目次を最後に1回だけ準備するだけなので、それほどひどいことではありません。自動化は常にではない価値があり、覚えておくと便利です一般的な枠組みいつそうするかについては。
非常に複雑な設定、1990 年代の遺産コード、[...] それ以来数冊の書籍を出版しています [...]。印刷された書籍は確かに素晴らしいです。 [...] 少なくとも、別の、より良い方法があるかどうか確認したいと思います。
私も同じようなことを何度か試みましたが、失敗する可能性もあるので注意してください。こちらをご覧ください古典的な記事ソフトウェアの書き換えについて: 遺産コードは「戦いの傷跡」があり、ゼロからやろうとすると考えも及ばないような奇妙な状況やコーナーケースにたくさん遭遇しなければなりませんでした。見た目が素晴らしい印刷本を作るのは非常に難しくなるかもしれません。これでは TeX を使用する主な目的 (美しい本) が台無しになります。何かを捨ててゼロからより良い解決策を考え出すのではなく、現在の設定から始めて、カスタム エンコーディングの置き換えなど、不要になったものを徐々に削除することをお勧めします。デヴナグプリプロセッサを他の何か(おそらく異なるスクリプト) ですが、常に「前」と「後」を比較して、出力が変更されていないか、少なくとも何らかの形で損なわれたり悪化したりしていないことを確認します。
プレーンテキストに他に触れたことがない
プレーンTeXの便利なメンタルモデルをすぐに理解したいだけなら、強くこの本を推薦するTeX初心者のための本セルールとレヴィ著。(ハンス・ハーゲンの推薦書を参照)ConTeXtマニュアル) 数日ほどかかると、結局はそれだけの価値があるかもしれません。それでも、前のポイントを参照してください。
MWEをLaTeXファイルに入力できるかどうかは、可能であれば
(1994 年から)「特に、EDMAC は LaTeX2e ではなく独自の出力ルーチンを使用するため、LaTeX 出力ルーチンに固有の多くの処理 (フロート配置など) は実行されません」と記載されているed-nfss.txt
ので、(これがまだ当てはまる場合) これを LaTeX ファイルに入力すると、驚くべき結果になる可能性があります。