-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
今後の pLaTeX/upLaTeX の開発について #10
Comments
この点に関してですが,ここでいう改変というのは仕様変更という意味でしょうか.もしそうであるなら,誰かから提案され,それが妥当であるとなった場合は改変すればよいと思います.妥当性の評価はまた別の問題とも思いますが. バグフィックスの意味であれば,バグということが明らかになれば修正していくべきであろうと思います. |
仕様変更という意味でした。後付けになってしまいますが、狭義にとらわれず、或る(好ましくないとされる)挙動が仕様なのかどうかわからない、という状況下でのコード書き換えおよび新仕様策定も包含させてください。「妥当であるとなった場合は改変すればよい」、私も同じ認識です。 バグフィックスに関しては、yuw さんと同じ意見です。 |
「LaTeX カーネルと同じ基準にする」について、LaTeX team の David さんから直接いただいたコメントを一部抜粋します(転載許可もいただいております)。基本的には、LaTeX 配布物に含まれる latexchanges.tex や ltnews*.tex に各変更の背景や意図が書いてあるそうです。
Really there hasn't been any intention to add major features to the kernel, however apart from bugs the main driving force is recognition of the greater memory available now, so for example many more commands have been made robust as they were only fragile originally as we could not afford any more csnames at the time to make them robust. Related to this there has been some recognition of newer engines, so extended etex register allocation and extended Unicode catcode settings where appropriate.
If the change is purely related to the macro layer so that latexrelease can be used to define the new macro on old distributions or define the old macro with new distributions then the changes are guarded in the source with \IncludeInRelease and have docstrip guards so that both old and new code are copied to latexrelease.sty. If the change is related to a change in the engine (for example many changes this year in luatex, and most recently the change to the number of character classes in xetex) then usually we don't use latexrelease guards as someone with a new distribution can not do \usepackage[2014/01/01]{latexrelease} and use the old luatex code as it simply does not work anymore as the lua and tex interfaces have changed.
as I mentioned above, the document latexchanges.tex has some background to each of the changes covered by the latexrelease package, so I hope that helps. まだ私は latexchanges.tex や ltnews*.tex を精査しきれていないので(従来も少しずつ pLaTeX に反映させてはいましたが)、とりあえず David さんにありがとうとだけ伝えた状態です。個別に疑問が生じたらまた聴いてみてもいいんじゃないかと思います。 |
遅くなりましたが,きえださんありがとうございます. それから,Twitter に書かれていたクローズド云々の批判は確かに反省点で,github での作業開始時点でフォーラムなどでの周知もすべきでした.実際にアセトアミノフェンさんがフォーラムやブログ,Twitter などで広く宣伝してからいくつか提案が外から来るようになってきたので,形式をオープンにするというだけでなくて存在を広く知らせることも大事ですね. アセトアミノフェンさんもありがとうございます.David さんに聞いてみたのですね. |
直接きいてみるという提案および初動は @kuroky49 さんです。ありがとうございました。 David さんのを受けて、もし仮に同じ方針をとるならば…という観点で私が思ったことは:
latexrelease パッケージ対応については、platexrelease の実装を始めた時点で一応いろんな可能性を考慮したつもりですので、向こうの方針ががらりと変わらないかぎり大丈夫です。ただ、ガードの付け方のドキュメント化を私がサボっているので、皆様に迷惑をかけていると思います。数か月以内には…。 |
CTAN への投稿についてもまとめます.create_archive.sh の使い方も(名前は適当だったのですが,LuaTeX-ja から変える必要もないので release.sh にするとか,今後次第では build.sh の方が短くてよいかも).Github の Wiki を活用するときでしょうか. CTAN は今のところ私が上げていますが,誰でも上げれる体制にした方がよいのは確かです.CTAN では投稿者の名前とメールアドレスを管理しているようで,私以外の人が最初に上げるときは私への確認があるかもしれません. |
上記の「具体的な事例から少しずつ」のひとつとして書きます。
「\footnote の合印直後の改行 (#16)」は「過去の仕様で変だと思われる部分」の一例にあたるように思います。私はこれに関しては直したほうがよいと思っているのですが、いかがでしょうか。 |
#16 では形式的にですが,仕様変更の具体的主張がなされておらず,コードのやりとりによって実験が行われている状態に見えます.仕様変更の主張は何かを明記しないと,主張の取り違えや途中からの議論参加の阻害要因になりかねません.
次の2点についての仕様のようにみえますが,現行仕様と変更後の仕様案をはっきりと主張してからでないと,仕様変更の是非について議論が始められないと思います.
|
ご指摘ありがとうございます。そのようにしてみました。 |
ぼちぼち次のリリースのタイミングを計りたいと考えています。
について告知することが最優先事項だと思っています。(追記:これはカーネル plcore に導入した状態でリリースして問題ない変更内容だと思いますので、そのようにします。) ほかに入れたいと考えている修正は、Issue で既出の
のほか
です。ご意見等お願いします。 |
platex / uplatex / jsclasses すべて、いったんリリースしましょう。(texconf16 の前の最後のリリースになるでしょうし、「美文書」に入るバージョンになる可能性も高いです。) ドキュメント pdf はリビルドしました。脚注関係は完全にカーネルに取り込みましたので、exppl2e から削除してあります。あとはリリース作業なのですが、platex / uplatex はなぜか手元で create_archive.sh がうまく動かず .tds.zip が出来ない状態で、jsclasses も今回初なのでよくわからないです。 |
うまく動いていれば,platex.zip を展開すれば platex.tds.zip が出てくるはずです. |
無事動きました(win32)。tar が別の何かと干渉したかなにかで落ちていただけでした…
platex.zip と uplatex.zip を CTAN にアップすれば良いのですね。jsclasses の方はいまは ctan2tds では角藤さん頼みになっていますが、platex のときと同じ手続きが必要でしょうか。 |
jsclasses については,現状の CTAN のファイルを見ると .sty も含まれています.README にある通り生成に ISO-2022-JP の環境が必要なためでしょうか.あとは Release Date が README.md に追加されるとよいと思います. |
とりあえず platex.zip と uplatex.zip をアップしてみました(前回と違う人がアップロードしたのでどういう風になるのかは分かりませんが…)。 jsclasses のほうは、たしかに CTAN には generated files もありますが、TeX Live には手動でコミットされていますので、おそらく使われていない状態なのだと思います。platex と同じ方法を採用してもらえそうな create_archive.sh を作ってアップしてみました。何か問題があったら私に連絡がくるのだと思います。 |
TeX ユーザの集い 2016 で述べましたが、当面の間、pLaTeX / upLaTeX の開発については
という方針でいこうと思います。詳細については講演資料を参照いただければと思います。 TeX Live 2016 の期間中の pLaTeX カーネルのリリースは、(よほど critical な問題を fix する必要が生じない限り)次回を最後にする予定です。リリースする立場にある私の都合で、予定は 2016/11/29 ということで設定します。 予定する変更は
です。 なお、TeX Live 2017 pretest 期間に入るタイミングで、#5, #20 をカーネルに導入します。これと同時に、#26 の plext の大規模改修を行う予定です。 |
次回 pLaTeX と upLaTeX のリリースについて考えていることを書きます。 次回は TeX Live 2017 pretest が始まった直後にリリースする予定です。具体的には 2017/04/08(土) 辺りです。ただし、4月以降は私の身分が変わるため、どうしてもコミットが減らざるを得ないです。 そこで、以下の手順を考えています。
なお pretest では、多少バグの恐れがあっても exppl2e の修正点は全部カーネルに含めてしまうつもりです。アクセント文字のパッチも入れます。pretest が終わる直前(5月中旬)の時点で、危険なものや反対が出たものだけ再び外し、exppl2e に戻せばよいと思っています。 したがって、残っている pLaTeX issue の修正を master に随時マージしていき、upLaTeX のほうも sync させていきます。 |
pLaTeX2e / upLaTeX2e 2017/07/29 を来週末に出す予定です。
|
月末をめどに
テスト版 exppl2e.sty の方には,以下の修正を入れます。
なおアクセント合成文字のベースライン補正と \xkanjiskip 対策 (#5) は保留のままになっていますが,どうしましょうかね。一年経ちますがどのくらいの人が \RequirePackage{exppl2e} しているか未知数ですよね。 |
↑ 月末が多忙のため無理そうなので,早めることにして明後日 8/27 にアップロードします。
は割と緊急のフィックスなので,もう exppl2e ではなくカーネルに入れてしまいます。さらに
は exppl2e に入れます。 |
次のリリースへ向けて,大丈夫そうなものから順に本体へ移してみました。
|
この時から一ヶ月経っているので,2017/10/28(土)に platex / uplatex をリリースします。 |
簡易的ではありますが英語ドキュメント (u)platex-en.pdf を追加したので,これを TeX Live に入れる目的でいったん platex / uplatex を今日 2017-12-06 付でリリースします。カーネル等の変更は,platexrelease パッケージの内部実装絡みのちょっとした改良と,タイポの修正だけです。 なお #56 に書いたような「共通化」は TeX Live 2017 の間は入れないつもりです。ただし,バナーを定義するコードの改善だけは,今回のリリースに含めます。 |
TeX Live 2017 の最後がいつもよりひと月ほど早い
なので,それまでに異論が出なければ,2018 pretest 開始次第すぐに
を出すつもりでいます。他にも何かあれば変更点は追加されるかもしれません。 |
forum:1967 で告知したとおり、「今後の pLaTeX/upLaTeX の開発方針」をこの Issue でオープンに議論します。具体的なことはまだ何も決まっていないと言っていいです。そこで大前提として
これらをいま宣言します。まず決めておきたいのは
です。目標は「次のリリースまで」くらいの曖昧なもので、これも未定ですのでゆっくりあります。(ただし万が一、その期間に何らかのバグフィックスが必要になった場合には、当該箇所にだけ例外的に拙速な決定を下しますのでご容赦ください。)
それでは、ご質問やご意見など遠慮なくお願いします。
いきなり議論よろしくお願いします、というのもアレなので、以下、取っ掛かりになりそうなら参考にしてください。(もちろん無視していただいても構いません)
一点めに対しては、ひとつの意見として「LaTeX カーネルと同じ基準にする」がありましたが、具体化が必要でしょう。二点目に対しては、2016/07/01 版で「テスト用 sty ファイルを TeX Live に入れておいて使ってもらう」を試し始めましたが、もしかするとより良い方法があったかもしれず、「リリースされるものとまんま同じ物が試せるべき」との意見もいただいています。
The text was updated successfully, but these errors were encountered: