Alla domanda 1) I pattern vengono caricati durante la creazione del formato; il formato è quel particolare file con estensione fmt che contiene il “dump” della memoria di pdftex vergine, e che viene automaticamente caricato quando si da (direttamente da terminale o indirettamente tramite il bottone dell’editor) il comando di eseguire latex oppure pdflatex; in effetti a livello di linea di comando dare il comando pdflatex myfile vuol dire dare il comando pdftex &pdflatex.fmt myfile (l’estensione non si scrive, io lho messa per mettere in evidenza chi è il file di formato.
I pattern scritti da me per l’italiano, da Knuth per l’inglese (americano) da Bernard Gaulle per il francese, eccetera sono scritti in chiaro e in ordine alfabetico per comodità di chi li scrive, ma non sono nell’ordine giusto per la struttura di ricerca del programma pdftex (o tex all’inizio della storia); la creazione del file di formato serve tra le altre cose per costruire l’hash (la struttura indicizzata con cui memorizzare i pattern) nel modo più efficace per minimizzare il tempo di accesso; nota che per l’italiano ci sono meno di 350 pattern, per l’inglese di Knuth ci sono quasi 5000 pattern; per il tedesco ci sono circa 12000 pattern, eccetera. Con numeri di pattern in generale molto grandi Frank Liang, colui che ha scritto per Knuth il programma di sillabazione, ha dovuto “inventare” un nuovo tipo di hash.
Lavorando con più lingue ogni hash è identificato da un numero da 0 a 255; quello corrisponde la valore conservato nel contatore (TeX) delle lingue ae associato al nome di una lingua, serve a babel per selezionare l’hash da usare quando si specifica una data lingua, non per caricare i pattern.
Alla domanda 2)
Avevo letto male i valori di Reichert. In realtà mi era sfuggito che \hfuzz era già stato definito prima di porre \vfuzz \hfuzz; la seconda espressione significa \vfuzz=\hafuzz (in linguaggio TeX primitivo il segno di uguale, come operatore di assegnazione, è facoltativo).
Ora devo correggere quello che ti ho scritto; \raggedbottom, confermo, non ha nessun significato per la sillabazione; per la sillabazione non servono nemmeno \vfuzz, né \widowpenalty, né (caso mai fossero indicati) \clubpenalty e \@clubpenalty, né \hbadness; per la sillabazione servono solo \tolerance, ed \emergencystretch.
\clubpenalty e \widowpenalty servono per minimizzare le righe ofane e le righe vedove (una riga orfana non ha un passato ma ha un futuro; è la prima riga di un capoverso se viene lasciata sola alla fine di una pagina; una riga vedova ha un passato ma non ha un futuro, è l’ultima riga di un capoverso se viene lasciata sola dopo la fine di una pagina all’inizio della pagina successiva. (\@clubpenalty è il vero valore per la penalità delle righe orfane mentre \clubpenalty viene reimpostato di tanto in tanto in certi comandi o in certi ambienti, ma poi viene ripristinato al valore contenuto in \@clubpenalty)
\hfuzz e \vfuzz servono per minimizzare i messaggi di errore per righe o per pagine troppo piene che sporgono dalla gabbia in orizzontale o in verticale.
\hbadness serve anch’esso per dare la possibilità TeX di dare messaggi in relazioni a righe troppo piene o troppo vuote, non solo in base alla loro lunghezza effettiva, quanto in relazione alla “badness” della riga (io nella GuidaGuIT ho tradotto “badness” con bruttezza).
In sostanza la maggior parte delle impostazioni di Reichert servono per ridurre i warning che TeX emette quando le cose non sono perfette, ma solo\tolerance e \emergency stretch hanno qualche effetto sulla sillabazione.
A me pare che normalmente il pacchetto microtype sia molto più efficace di tutti quei parametri, e se uno si trovasse davanti ad un capoverso veramente impossibile da giustificare bene (per esempio quando si riproducono dei comandi scritti in carattere typewriter (ne hai visto gli effetti anche tu nella traduzione, perché con quel carattere non è possibile la divisione in sillabe) allora brutto per brutto o lo si sistema cambiando l’ordine delle parole o aggiungendo\togliendo un paio di parole, oppure tanto vale comporlo ragged right (ambiente flushleft) oppure aprendo un gruppo e impostando:
`
{\tolerance=9999
capoverso bruttissimo
\par}
`
9999 è una tolleranza altissima ma non infinita come la porrebbe l’ambiente sloppypar.
Così credo di essermi espresso meglio e forse questo lungo messaggio sul forum potrebbe servire anche ad altri lettori per imparare quello che ho cercato di descrivere nella GuidaGuIT, ma che scoraggia i più dal leggerlo.