Re: uptex-0.11

名前: 土村
日時: 2007-08-22 20:02:35
IPアドレス: 133.11.136.*

>>49183 機能拡張する作業は楽しいものです。 しかしながら、upTeX は TeX (Web2C), pTeX の下流に位置するソフトです。 dvips などの dviware にも手が入っています。 上流の更新に追従して将来にわたって拡張機能を維持していくには、 多機能であるほど多くのエネルギーを必要とします。 追従できずにメンテナンスが止まってしまっては、元も子もありません。 私の pTeX の UTF-8 対応は、機能拡張だと思われてる方が多いでしょうが、 実際にパッチを見ていただくとわかるのですが、むしろコード整理の副産物で、 メンテナンス性を高めた上でのオマケみたいなものです。 upTeX には期待していますから、やみくもに互換性を維持するのではなく、 切るべきところは切って、複雑度を上げずにやっていただきたいと願っています。 今を逃せば、これから先に互換性を切る機会はほとんど現れないでしょうから。 # 前にも書いたと思いますが、umin*/ugoth* も必要ないと思っています。 # ぜひ ujis/ujisg を推奨していただければと思います。 もちろん、開発方針の決定権は ttk さんにありますから、 私の意見は参考にお聞き下さい。 ---------- 念のため確認します。 \jis なんかのプリミティブは、美文書作成入門にも載ってませんから、 一般ユーザが使う機会はそれほどないはずですよね。 スタイルファイルの中で使われるのがほとんどだと 思ってよいでしょうか。 引用前後します。 > 以上が私の考えとなるのですが、また土村さんが私とは異なる「upTeX の存在 > 意義」を考えておられることも明らかだと思われます。それがどんなものである それがなぜか、私の考える存在意義もほとんど同じです。 しかしながら結論の > ここから私が導く結論は、 > pTeX の互換性を最大限保存すること(\jis プリミティブの保存等)は > upTeX の存在意義を保つために不可欠である だけは正反対になってしまいます。不思議です。(^^;) 私はスタイルファイルをまったくといってよいほど書きません。 互換性維持を、TeX コンパイラにやらせるのか、 マクロで吸収するのか、どちらが考えやすいか、 人によって違うということでしょうか。 「\jis なんかを廃止までせずとも、 機能は残すが、細かな文字表の違いまでの動作保証はしない」 ぐらいでも、互換性に傷がつくとは思えませんが、どうでしょうか。 > # 含めた「方法論」です。例えば、安田さんは藤田先生の縦組マクロを upTeX > # で動作させるのに数行直さなければなりませんでしたが(>>49165)、これで # マクロを数行直すことが許されるのなら、 # 数行の perl スクリプトで変換することは許されませんでしょうか。 # \jis → \ucs に変換するぐらいは perl の数行で十分です。 \jis 等のプリミティブがどこで使われているか、 ptetex3 の $TEXMF/ptex/ 以下を検索してみました。 \jis は platex/base/ 以下と jsclasses/ 以下に \postbreakpenalty\jis"2148=10000 % 5000 “ \prebreakpenalty\jis"2149=10000 % 5000 ” のような感じでたくさんあるのと、 UTF/OTF の otf.sty にある次の一行。 \char\jis\@tempcnta% \euc は platex/base/ 以下と jsclasses/ 以下に \char\euc"A1A1 \char\euc"A1A2 の2例が何度も。\jis で書くなら "2121, "2122 と等価ですね。 # 全角スペース/全角句点を直接書いてもよさそうに思えますが? \sjis は platex209/ 以下のみ。いくらなんでも無視していいでしょう。 \kuten は用例なし。 \postbreakpenalty の引数に来ている例は、 upTeX で厳密に処理するとすれば、ひょっとすると \ucs プリミティブでも使って多値に対応させる必要があるでしょうか。 結局マクロを修正することになるのだとしたら、 TeX コンパイラ側ではあまり頑張らないのが得策だと思うのですが。

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)