texjporg / platex

pLaTeX community edition
BSD 3-Clause "New" or "Revised" License
49 stars 8 forks source link

LaTeX2e 2022-06-01 への対応 #98

Open aminophen opened 2 years ago

aminophen commented 2 years ago

https://github.com/latex3/latex2e/commit/676031375fbd333c3b685d534641eed52b75380f までの develop branch を確認しているところです。

\def\macro{\begingroup
   \catcode`\\12 \catcode`\_12
   \MakePrivateLetters \m@cro@ \iftrue}

追記:上記で hyperref 依存になった doc.sty では .idx への書出し量が格段に増え,その影響なのか(?) mendex が不可解な挙動を起こします。 → https://github.com/texjporg/tex-jp-build/issues/137

aminophen commented 2 years ago

https://github.com/texjporg/platex/commit/df360bebc342b5faadff3e6201417a09eff1206d + mendex の修正により,再びドキュメントのビルドが通るようになりました。さて,本家で OR-lab (output routine) がマージされたので対応を考えないといけません。特に \@makecol が影響を受けます。

aminophen commented 2 years ago

ついに明日 2022-06-01 ですが,色々と頂いておきながら私が忙殺されていて心の余裕がなく,全く追えていません…。とりあえず「致命的に何かが壊れることがないように」という観点で,最短ルートで必要最小限を CTAN / TeX Live へ反映したいです。しかし何から手をつけたらよいでしょう。

遡ってこの辺はキャッチしました。

expl3 はカーネルに組み込まれているので (u)pLaTeX のカーネルに取り込みんだほうがよいのでしょうか。latex-lab 系は開発途上のようにも見え,とりあえず plautopatch に入れる…?

h20y6m commented 2 years ago

あまりちゃんと検討できていませんが…

とりあえず「致命的に何かが壊れることがないように」という観点

全てを確認したわけではありませんが、既存の pLaTeX 文書が壊れるような変更はなさそうだなと思っています。

expl3 はカーネルに組み込まれているので (u)pLaTeX のカーネルに取り込みんだほうがよいのでしょうか。

そうですね、何もしなくてもちゃんと動くようになっていてほしいので pLaTeX カーネルに入れたいですね。

ただ expl3 はカーネルと違って高頻度で更新されるのが気がかりです。(-dev もないのでいきなり壊れる可能性も…)

(できるだけ expl3 に取り込んでもらったり、expl3 側に空の実装(何もしないとか、常に false とか)を用意してもらって pLaTeX 側で実装するみたいなことができるとリスクが減っていいのかなと思ってみたり…)

latex-lab 系は開発途上のようにも見え,とりあえず plautopatch に入れる…?

たしかに latex-lab はかなり実験的な段階のような感じがしますね。私もとりあえずは pLaTeX カーネルとは別にしたい気がするので plautopatch に入れるので良いのではないでしょうか。

aminophen commented 2 years ago

既存の pLaTeX 文書が壊れるような変更はなさそうだなと思っています。

ありがとうございます。

何もしなくてもちゃんと動くようになっていてほしいので pLaTeX カーネルに入れたいですね。 ただ expl3 はカーネルと違って高頻度で更新されるのが気がかりです。(-dev もないのでいきなり壊れる可能性も…)

pLaTeX もフォーマット作成時に plexpl3.ltx を読ませるだけなので,plexpl3 を pLaTeX 本体から分離した方がコンパクトになって更新タイミングを合わせやすいような気がしてきました。

(できるだけ expl3 に取り込んでもらったり、expl3 側に空の実装(何もしないとか、常に false とか)を用意してもらって pLaTeX 側で実装するみたいなことができるとリスクが減っていいのかなと思ってみたり…)

これは欲しいですね。日本語用などのフックを入れる空の実装を必要なところに仕込んでもらえるようにお願いする方向で考えましょう。

aminophen commented 1 year ago

LaTeX2e 2022-06-01 以降で nidanfloat パッケージがエラーを吐くようです。

https://github.com/texjporg/nidanfloat/issues/5

h20y6m commented 1 year ago

platexrelease で 2021-11-15 から 2022-05-31 の間に巻き戻すと pLaTeX が壊れるようです。

例えば和文フォントが全く変わらなくなります。

\RequirePackage[2021/11/15]{platexrelease}
\documentclass{jarticle}
\begin{document}
あいうえおABC{\LARGE かきくけこDEF}\textbf{さしすせそGHI}。
\end{document}

latexrelease による巻き戻しは行われるが、platexrelease は何もしないためのようです。

aminophen commented 1 year ago

latexrelease が platexrelease の知らない新しいバージョンの時はとにかく pLaTeX のコードで上書きする,とすれば良いのかなと思って https://github.com/texjporg/platex/commit/8c805b4a27b815bf12489410f7dfda1910454e95 としてみました。強引ですが…。

aminophen commented 1 year ago

https://github.com/texjporg/platex/issues/98#issuecomment-1142154750 の latex-lab や expl3 の件は全く対処できていませんが,とりあえず platexrelease の修正と #95 だけ入れて pLaTeX2e 2023-02-14 を出します。

aminophen commented 1 year ago

出そうと思ったら git push がいつまでたっても終わらない謎現象に見舞われたので今日は諦めます。

[edit] ようやく 2023-02-19 として出しました。

kojiOnHill commented 1 year ago

95 にコメントしましたが、close済みだったようなので、こちらに再掲します。最新のplatexで\marginparを使ったコードがコンパイルしなくなるようです。

\documentclass{article}
\begin{document}
Main text.
\marginpar{This is marginpar.}
\end{document}
aminophen commented 1 year ago

\marginpar の件の報告ありがとうございます。そちらは #95 にコメントします。