Re: Esiste una documentazione parziale in italiano

#58160
OldClaudio
Partecipante
    Up
    0
    Down
    ::


    Luigi è il grane esperto di ConTeXt mkiv e di LuaTeX, quindi è la persona più indicata per risponderti.

    Io non ho mai usato ConTeXt, anche se l’ho studiato per vedere se avrebbe potuto essermi utile. Ho deciso che per le cose che faccio io il buon vecchio LaTeX è quello che fa per me, ma, come vedi è una conclusione del tutto personale. però conosco abbastanza il sistema TeX per affermare quanto segue:

    1) motori di composizione del sistema TeX sono cinque — probabilmente bisognerebbe citare anche aleph, ma ho il sospetto che da quando sono in giro gli altri motori, stia perdendo il suo fascino, anche perché una buona fetta delle librerie di aleph sono state integrate in LuaTeX. I motori sono (li indico con l’estensione .exe, che manca nelle macchine non Windows, ma preferisco usare questa estensione per essere sicuro di essere capito quando parlo di motori di composizione); (a) tex.exe; (b) pdftex.exe; (c) xetex.exe: (d) context.exe; (e) luatex.exe. Forse per context.exe bisognerebbe fare dei distinguo, ma per semplificare supponiamo che sia così. tex.exe viene ancora distribuito ma di fatto non viene mai usato, perché le sue funzionalità sono tutte incorporate in pdftex.exe, che però può produrre l’uscita in formato .dvi, come tex.exe, oppure in formato .pdf ed è questo formato che lo caratterizza nel nome e lo distingue da tex.exe grazie alle maggiori funzionalità del formato .pdf rispetto al formato .dvi. Di fatto i motori usati si riducono a quattro.

    2) ogni motore di composizione lavora in congiunzione con un file di formato che ha estensione .fmt; quando dai il comando pdflatex, in realtà dai il comando pdftex.exe & latex.fmt; di formati ce ne sono diversi; il più antico, creato da Knuth stesso è plain.fmt; gli altri sono tutti più o meno moderni; alcuni sono usati in ambiti strettissimi; il più diffuso è latex.fmt. In realtà si tratta di una semplificazione; il file di formato viene creato dal motore di composizione nella sua funzione di inizializzatore, e motori diversi creano formati diversi perché le funzionalità del codice eseguibile sono diverse; quindi pdftex.exe può creare pdflatex.fmt, xetex.exe può creare xelatex.fmt; eccetera, ma questi sono sempre la traduzione in linguaggio macchina e in relazione al motore di composizione dello stesso insieme di macro.

    3) Io metterei (pdf)tex.exe & plain.fmt e context.exe sullo stesso piano; non fanno le stesse cose, ma sono essenziali entrambi; context.exe fa molto, molto, molto di più di plain, ma sostanzialmente non richiede pacchetti esterni; sì ne esistono, ma sono pochissimi, non perché non ci sia interesse ad usare context.exe, ma perché context.exe fa già moltissimo per conto suo. Non ho notizie di un xeplain.fmt o di un luaplain.fmt; forse esistono, forse no, ma ho visto usato xetex.exe da solo e anche luatex.exe da solo; Quando Johnathan Kew presentò XeTeX nel 2005 o 2006 ci volle un po’ di tempo prima che uscisse XeLaTeX (xetex.exe & xelatex.fmt) quindi le prime composizioni eseguite con xetex.exe avevano (apparentemente) solo il programma eseguibile e un certo numero di macro definite nella prima parte del file da comporre.

    4) L’enorme sistema di macro scritte da Leslie Lamport ha permesso ad un numero enorme di utenti di affacciarsi al mondo del sistema TeX; non è un caso che esistano pdfLaTeX, XeLaTeX, LuaLaTeX, formati dai relativi motori e l’insieme di macro di LaTeX. A fianco dell’insieme di macro di Leslie Lamport moltissimi autori hanno contribuito con una miriade di pacchetti, senza però coordinarsi reciprocamente e senza un controllo superiore che verificasse la compatibilità reciproca; questo con ConTeXt non succede, come ha ben spiegato Luigi.

    5) Se un utente di LaTeX fosse costretto a usare sistematicamente molti pacchetti, potrebbe costruirsi una classe da solo nella quale sarebbe lui il responsabile di ogni macro e sarebbe lui stesso ad auto coordinarsi per non ridefinire cose esistenti e per gestire le sue macro in modo compatibile; si preparerebbe la minestra da solo, seguendo la metafora di Luigi. Volendo quell’utente potrebbe anche crearsi un file formato con il nome che preferisce, purché abbia estensione /fmt e purché non usi il nome di uno dei formati esistenti, in modo da includere sia l’insieme di macro di LaTeX, sia quelle dei pacchetti che vuole usare. Secondo me non è una buona idea, ma si può fare; anzi è fatto dal sistema TeX commerciale noto come VTeX dove i file di sillabazione in linguaggio macchina sono compilati ad uno ad uno per ogni lingua (almeno così era fino ad alcuni anni fa) e usati come file .fmt secondari da caricare al momento dell’esecuzione senza bisogno di ingombrare la memoria dell’elaboratore con strutture hash di pattern che non vengono usate. Oggi direi che la cosa sia diventata irrilevante data la grandezza delle RAM di tutti i calcolatori piccoli e grandi, personali, nettop, laptop, oppure mainframe.

    6) Se vuoi avere una idea di quanti formati esistono e se hai una distribuzione TeXLive o macTeX va nella cartella …/texlive/2012/texmf-var/web2c/pdftex/per vedere quali e quanti formati sono stati costruiti solo con il motore pdftex.exe; la cartella web2c di quell’albero in pratica contiene sol i file di formato .fmt e i file .log corrispondenti alla loro creazione con tutti i motori possibili, compresi alcuni che non ho nemmeno elencato al punto 1) perché non ho idea di che cosa siano (mi pare che il motore ptex.exe riguardi il giapponese)

    Detto questo, non so se hai le idee più chiare o più scure. ma queste sono cose difficili da spiegare senza fare esempi; se hi mai provato ad usare plaintex (cioè tex.exe & plain) puoi avere una idea abbastanza chiara della differenza fra plain e latex; con context.exe è molto più difficile fare esmepi, perché esso è costrito con il medesimo approccio diretto ad ogni singolo aspetto della composizione tipografica, ma fa con un approccio diverso molte delle cose che si pososno fare con LaTeX; per esempio la gestione dei font è molto diversa, am di fatto puoi selezionare le 5 caratteristiche di ogni font in modo autonomo come con LaTeX ma, per esempio, i corpi sono scelti con comandi del tipo \larger oppure \smaller, quindi comandi relativi al corpo del font in uso in quel momento, e non con comandi assoluti come \Large, \small, eccetera che si possono usare con LaTeX; gli ambienti cominciano con \startambiente e finiscono con \stopambiente, ma non sono sicuro che qualunque cosa definita fra questi due delimitatori rimanga locale (questo dipende dalla mia ignoranza, non da un mio dubbio consapevole). Comunque si può accedere ad un qualunque aspetto tipografico dello stampato senza bisogno di pacchetti esterni o di comandi particolarmente complicati. La rigidezza del formato LaTeX non permette di fare certi errori (ne consente molti, ma certi sono evitati per costruzione); context in mani inesperte può produrre danni non indifferenti; in mai esperte fa cose deliziose.

    Usare pdflatex o xelatex o lualatex o context dipende da quello che vuoi fare; ognuno ha pregi e difetti; ognuno ha applicazioni preferenziali; direi che context è particolarmente adatto in una tipografia avanzata dove vengono predisposti stampati molto complessi e molto strutturati con informazioni raccolte da database adeguati e dove si usano molte tabelle con figure incluse. Luigi fa cose di quel genere, quindi per lui context è particolarmente utile. Per un libro di novelle o per un testo scolastico, specialmente di scienze “dure”, non credo che context sia particolarmente adatto. Tuttavia l’ho detto all’inizio: l’ho studiato, ma non l’ho mai usato per davvero, quindi Luigi può smentirmi alla grande.

    Go to top