Concilio dei topini

eTeX

Topino 106

Dopo aver letto il TeXbook annunciai che intendevo leggere il manuale di eTeX—pardon: $\varepsilon$-$\TeX$. Si è verificata una speciale circostanza per cui in questo caso ho realmente completato qualcosa che mi ero preposto di fare, ovvero il manuale di eTeX è lungo solo 20 pagine, a differenza delle 500 del TeXbook, e quindi non ne ho procrastinato la lettura.

(Per tirare fuori il manuale di eTeX eseguire texdoc etex.)

Il manuale di eTeX comincia come l’introduzione di Linux: cioè noi stiamo sviluppando un nuovo sistema alternativo a TeX, il New Typesetting System Project, però temporaneamente, solo per adesso anno corrente 1998, abbiamo questa versioncina estesa di TeX che poi in realtà verra usata così com’è per sempre.

Quali sono le novità di eTeX? \unless per negare gli \if, qualche \if in più, un sacco di variabili riflessive, ad esempio il livello corrente di nidificazione degli \if o il tipo di \if corrente, le espressioni aritmetiche con \numexpr (con prodotti e divisioni consecutive concatenate anti-overflow!), che permettono di fare cicli puri (cioè solo espandendo macro anziché assegnando variabili), 32767 registri anziché 256 (però mi raccomando solo i primi 256 sono memoria statica, non abusare), 32767 versioni di varie cose di cui TeX ne ha una sola, \scantokens che non ho capito a cosa serve e su internet dicono di non usarlo, un comando \lastlinefit per impostare se l’ultima riga di un paragrafo mi sono già stufato di spiegarlo, \middle che si può usare tra \left e \right, \unexpanded, \detokenize e \protected che mi sembrava ci dovesse essere qualche primitiva in più per controllare l’espansione per fare tutte le magie di LaTeX, e infine la cosa più importante: scrivere da destra verso sinistra. Però bisogna stare attenti che questo algoritmo si chiama TeX--XeT e non va confuso con TeX-XeT che è quello di Knuth dell’87.

Secondo la tradizione del mondo TeX, eTeX non ha un vero e proprio codice sorgente suo ma viene definito come un diff dal sorgente originale di TeX, tex.web. Per ogni sistema operativo c’è poi il suo diff per generare il Pascal compilabile specifico. Compilando questo sbuca fuori INITEX che poi si succhia le macro iniziali e produce plain e-TeX (da non confondere con e-plain TeX) o LaTeX. La catena di Sant’Antonio serve perché Knuth tuttora debugga TeX e lo fa sul suo file originale, quindi per avere le patch conviene fare così.

Prossimo obiettivo: il manuale di LaTeX.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

© 2024 Concilio dei topini Torna sù