Skip to content
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

English documentation of pTeX #6

Open
aminophen opened this issue Oct 5, 2019 · 10 comments
Open

English documentation of pTeX #6

aminophen opened this issue Oct 5, 2019 · 10 comments

Comments

@aminophen
Copy link
Member

今のptex-manualの内容はとても“濃い”のだけど、それでも「英語版に(真っ先に)必要な内容」と対照すると、ほとんどdisjointなんだよなあ

を機に,"Guide of pTeX for developers not interested in Japanese"(日本語に興味のない開発者のための pTeX ガイド)を作ろうとしています。私自身 #2 の issue を立てた時からずっとやりたかったことです。

海外のTeX関連開発者に(u)pTeXエンジンのサポートを積極的に要望していく方針であるなら、少なくとも、「そのために必要な情報」が英語で提供されているべき、だと思っている。つまり「和文組版の概念的説明」ではなく「エンジンの仕様の説明」。

実際に必要なのは多くは和文組版規則とは無関係な部分で、
・レジスタは何個あるのか
・他エンジン互換の拡張プリミティブは何があるのか
・和文文字トークンに対して何の操作ができるのか
・DVIウェアは何が使われているのか
のような話。

このような情報をまとめたドキュメントは,過去にも書かれたことはないと思うのですが,

をベースにたたき台を作りました。ファイル名は後でよりよいものに変えても良いと思っていますが,とりあえず今は eptex-190709 ブランチに ptex-manual-en.tex というファイルで置いています。内容についてレビュー・加筆いただけると助かります。

最近話題になった

  • default support for ptex ? latex3/graphics-cfg#1 のように,海外の LaTeX 開発者に「pTeX ではどの DVI ドライバが使えるのか」が理解されていなかった
  • すでに「本物の e-TeX」は存在せず,etex コマンドは「DVI モードの pdfTeX」になっているので,pdfTeX なプリミティブが無意識のうちに“普通に存在するもの”とみなされ始めている(forum:2705 の \pdfglyphtounicode など)

といった問題が,今後減っていけば嬉しいです。よろしくお願いします。

@aminophen aminophen changed the title pTeX のドキュメント pTeX の英語版ドキュメント Oct 5, 2019
@aminophen
Copy link
Member Author

参考まで,いまのところこんな感じです。 https://github.com/texjporg/ptex-manual/blob/c96d07e6636d831f5ec60184b4617d5a28dcdda5/ptex-manual-en.tex

ptex-guide-01

ptex-guide-02

@aminophen aminophen changed the title pTeX の英語版ドキュメント English documentation of pTeX Oct 5, 2019
@josephwright
Copy link

Thanks very much for this: key differences from e-TeX (or pdfTeX or ... as appropriate) are really useful to know.

@aminophen
Copy link
Member Author

First version of an English guide of pTeX and friends, "ptex-guide-en.pdf", submitted to CTAN. Not completed yet at all, but I'll continue working on it.

@davidcarlisle
Copy link

Thanks a lot for this, I just read through it and some notes below:

page 1

title
Guide of pTeX for developers not interested in Japanese

Perhaps change to

Guide to pTeX for developers unfamiliar with Japanese

(If I said I was "not interested in Japanese" that might be taken as
slightly rude to you, whereas if I said I was "unfamilar with
Japanese", or that I "Could not read Japanese" they are statements of fact.)

page 4

I think change "uppercompatible" to "upward compatible" throughout

do not pass TRIP
do not pass the TRIP

do not pass e-TRIP
do not pass the e-TRIP

page 5

additional cares
additional care

are interpret
are interpreted

page 6

there is some drivers
there are some drivers

page 7

65536 registers oh! I didn't know that, the latex kernel adjusts
allocation in luatex for that, but not for ptex do you fix that up in
the platex initialisation or should we adjust the base code?

\documentclass{article}

\begin{document}

\makeatletter
\showthe\float@count
\show\newdimen
\end{document}

shows 65535 in lualatex and 3267 in uplatex and latex.

Feature of each primative
The features of each primitive

page 13

inserts glues and penalties
inserts glue and penalties

aminophen added a commit that referenced this issue Oct 19, 2019
@aminophen
Copy link
Member Author

@davidcarlisle Thanks for spotting errors, done in 2ef6990.

65536 registers oh! I didn't know that, the latex kernel adjusts
allocation in luatex for that, but not for ptex do you fix that up in
the platex initialisation or should we adjust the base code?

We just increase \e@mathgroup@top to 256 and \e@alloc@top to 65536, and \e@alloc@chardef is let-equal to \omathchardef. All of these are done in plcore.ltx by checking the existence of \omathchar coming from Omega.

\showthe\float@count
\show\newdimen

I was not aware of that; what should I do?

@aminophen
Copy link
Member Author

Oh, noticed that \let\float@count\e@alloc@top is missing in plcore.ltx ... I think I should add that. Thanks for spotting this!

@aminophen
Copy link
Member Author

In the next version, I will add the following explanations; they would be necessary for you to allocate properly in expl3 ;-)

@aminophen
Copy link
Member Author

How to define large integers (using \chardef? \mathchardef? \omathchardef?)

Done (73a1ade).

Number of registers

Done (d48e640, 2b0c304).

@zr-tex8r
Copy link

  • §6.1
    • You should refer to the fact e-(u)pTeX has 256 math families.
  • §6.2
    • additional primitives
      → additional primitives and keywords
      There are some keywods (Q, fi, etc) listed as well as primitives.

@aminophen
Copy link
Member Author

256 math families
additional keywords

Done (ee1e99a) in eptex-190709 branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants