Il teTeX HOWTO: La guida locale a Linux-teTeX
Robert Kiesling
v3.7, 9 Novembre 1998
Questo documento descrive i concetti di base relativi all'instal�
lazione e all'uso con le principali distribuzioni di Linux di teTeX,
implementazione di TeX e LaTeX, e di alcuni pacchetti utili come
Ghostscript. "The teTeX HOWTO: The Linux-teTeX Local Guide" � Copy�
right (c) 1997, 1998 di Robert A. Kiesling. I termini esatti per copi�
arlo sono riportati nell'introduzione e nelle appendici. I marchi reg�
istrati appartengono ai loro rispettivi proprietari. Reclami, suggeri�
menti, errori ed altro devono essere inviati a
[email protected]
in modo che io possa mantenere questo documento il pi� completo ed
aggiornato possibile. La traduzione italiana � stata curata da Samuele
Maretti (
[email protected]).
1. Introduzione.
1.1. Copyright (in lingua originale).
The teTeX-HOWTO is copyright (C) 1997, 1998 by Robert Kiesling.
Permission is granted to make and distribute verbatim copies of this
manual provided that the copyright notice and this permission notice
are preserved on all copies.
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided also that
the sections entitled, ``Distribution,'' and, ``GNU General Public
License,'' are included exactly as in the original, and provided that
the entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions. except that the sections entitled, ``Distribution,'' and,
``GNU General Public License,'' may be included in a translation
approved by the Free Software Foundation instead of in the original
English. Please refer to Section ``Distribution and Copyright'' for
terms of copying.
(Ovvero: Volete distribuire copie di questo documento? Fatelo, purch�
vengano mantenute tutte le informazioni riguardanti il copyright.
Volete distribuire delle copie modificate di questo documento? Fatelo,
ma mantenete le condizioni descritte nelle sezioni ``Distribution'' e
``GNU General Public License'' (e ovviamente includete queste
sezioni!) Volete tradurre questo documento? Fatelo, ma lasciate le
sezioni ``Distribution'' e ``GNU General Public License'' in lingua
originale, o includetene una traduzione approvata dalla Free Software
Foundation e comunque traducetelo a partire dall'originale inglese!
ndt)
1.2. Il software descritto in questo documento.
TeX, nel procedimento di preparazione di un documento, tratta solo la
parte di formattazione. Generare un documento con TeX � come compilare
codice sorgente: si ottiene del codice oggetto che deve per� ancora
essere linkato. Si prepara un file con un editor di testi (quello che
� generalmente conosciuto come ``word processing'') e si fa poi
elaborare il file da TeX, ottenendo un file ``indipendente dal
dispositivo'', detto ``file .dvi'' (DeVice Independent).
Hai anche bisogno di programmi in grado di ``tradurre'' l'output in
formato .dvi di TeX in un formato comprensibile dalla tua scheda video
e dalla tua stampante. Questi programmi vengono detti, nell'insieme,
``dviware''. Per esempio, lo stesso TeX fa solo richieste per i font
da usare. � poi compito del driver .dvi fornire effettivamente quei
font al dispositivo di uscita, sia esso lo schermo o la stampante.
Questo passo ulteriore pu� sembrare eccessivamente complicato, ma
l'astrazione fa s� che i documenti possano essere mostrati allo stesso
modo su diversi dispositivi con minime modifiche, se non nessuna, da
apportare al documento originale.
1.2.1. teTeX.
TeX � implementato praticamente per ogni sistema serio esistente al
mondo (ed anche per qualcuno ``meno serio'') quindi gli implementatori
devono far s� che possa essere installato facilmente in ognuno di
essi. Questo, unito all'intrinseca complessit� di ogni installazione
TeX, giustifica in parte la complessit� di teTeX. Giustifica anche il
fatto che installare da soli il sistema sia un lavoro non
indifferente, e a meno che tu non abbia gi� familiarit� con TeX �
facile perdersi fra il gran numero di eseguibili, file di TeX,
documentazione e font.
Per fortuna teTeX fa parte della distribuzione GNU/Linux. Puoi
installare il pacchetto molto pi� facilmente usando gli strumenti di
installazione GNU/Linux. Potresti avere gi� teTeX installato nel tuo
sistema. In questo caso puoi saltare direttamente alla Sezione ``Usare
teTeX''.
Comunque, se vuoi installare il pacchetto, i file necessari per
un'installazione funzionante di teTeX si trovano nei siti della rete
di archivi CTAN. Una lista di tali siti si trova nella Sezione
``Appendice A''.
CTAN � l'acronimo di "Comprehensive TeX Archive Network" (rete degli
archivi completi di TeX), una serie di siti accessibili via FTP
anonimo che archiviano programmi, macro, font e documentazione
riguardanti TeX. Nella tua esperienza con TeX diventerai probabilmente
familiare con almeno uno dei siti CTAN. In questo documento un nome di
percorso come ~CTAN/contrib/pstricks significa ``la directory
contrib/pstricks del sito CTAN pi� vicino''.
L'installazione della distribuzione generica di teTeX descritta nella
Sezione ``Installing the CTAN teTeX distribution'' si concentra sulle
versioni di Linux per i processori Intel. Installare teTeX su un
hardware diverso dovrebbe richiedere solo la sostituzione degli
eseguibili con quelli appropriati alla specifica versione durante il
processo di installazione.
Oltre agli eseguibili, la distribuzione include tutti i pacchetti TeX
e LaTeX, metafont e il suo codice sorgente, bibtex, makeindex, e tutta
la documentazione... pi� di 4 Megabyte. La documentazione descrive
ogni cosa di cui prevedibilmente avrai bisogno per cominciare. Quindi
sarebbe bene installarla tutta. Non solo per leggerla, ma anche perch�
i documenti costituiscono dei buoni esempi di codice ``reale'' per TeX
e LaTeX.
TeX � stato scritto dal Professor Donald Knuth della Stanford
University. � un linguaggio di composizione tipografica di basso
livello che costituisce la base per tutti i pacchetti di livello pi�
alto come LaTeX. Fondamentalmente LaTeX � un insieme di macro che TeX
pu� eseguire e che danno all'utente finale la possibilit� di usare
comodamente dei formati di documenti predefiniti. Se ti piacciono i
formati di LaTeX probabilmente non avrai mai la necessit� di imparare
a programmare TeX a basso livello. La differenza fra i due linguaggi �
analoga a quella fra l'assembler e il C. Puoi avere la velocit� e la
flessibilit� di TeX o la comodit� di LaTeX.
A proposito, le lettere della parola ``TeX'' sono lettere
dell'alfabeto greco, tau-epsilon-chi. Non si tratta di un'associazione
studentesca, ma della radice della parola greca techne, che significa
``arte'' e/o ``scienza''. ``TeX'' non si pronuncia come la prima
sillaba di ``Texas''. TeX � generalmente pronunciato in modo da far
rima con ``yecch'', per usare l'esempio che il Professor Knuth fa in
The TeXBook, che � uno dei testi di riferimento per TeX. (Deve essere
pronunciato ``tec'', come in ``tecnologia'', insomma ndt). Scrivi
``TeX'' con questo esatto uso di lettere maiuscole e minuscole sui
dispositivi a carattere, o, in TeX stesso, utilizzando la macro
\TeX{}.
1.2.2. Editor di testo.
Per preparare un file per TeX pu� essere usato uno qualsiasi degli
editor disponibili sotto Linux (jed, joe, jove, vi, vim, stevie,
Emacs, microemacs) o comunque un editor in grado di leggere e scrivere
file in formato ASCII standard. Quello che personalmente preferisco �
GNU Emacs. Questo per diverse ragioni:
� Emacs dispone di modi TeX e LaTeX usando i quali puoi formattare,
avere anteprime e stampare i documenti.
� Emacs pu� inserire automaticamente, mentre stai digitando, le
``virgolette tipografiche'' di TeX piuttosto di quelle "standard
ASCII".
� Emacs dispone di un supporto integrato per Texinfo, un sistema di
documentazione ipertestuale.
� Emacs � ampiamente supportato. La versione 19.34 e le successive,
ad esempio, sono incluse nelle principali distribuzioni Linux
statunitensi.
� Emacs fa tutto tranne imburrare il pane al mattino.
� Emacs � libero.
1.2.3. dvips .
dvips, scritto da Tomas Rokicki, genera un file Postscript a partire
da un file .dvi. Inoltre esegue Metafont se � necessario per generare
i font bitmapped di cui ha bisogno oppure usa i font Postscript. Pu�
anche tagliare o ridimensionare le pagine e costruire elementi grafici
a partire da istruzioni in un file TeX o LaTeX.
Il programma dvips fa parte della distribuzione teTeX. Ne parliamo
approfonditamente nella Sezione ``Mettere insieme testo e grafica con
dvips''
Molta della complessit� di TeX, e quindi anche di LaTeX, deriva
dall'implementazione di vari sistemi di font e dal modo in cui questi
font sono specificati. Un importante miglioramento di LaTeX 2e
rispetto al suo predecessore � stato il modo in cui l'utente pu�
specificare i font, detto in precedenza ``New Font Selection Scheme''
(nuovo schema di selezione del fonti). Se ne discute nella Sezione
``Caratteri e stili'', ``TeX Font Commands'' e ``Usare font
PostScript''.
teTeX viene distribuito insieme a una dozzina circa di font, e questo
� abbastanza per cominciare. Ci sono anche le descrizioni della
metrica dei font, nei file .tfm (TeX font metric). Per generare gli
altri font di cui puoi avere bisogno devi solo installare i sorgenti
di metafont. I vari driver .dvi provvederanno automaticamente a
richiamare metafont per generare ``al volo'' i caratteri Computer
Modern di cui hanno bisogno.
2. Usare teTeX.
Almeno teoricamente tutto � installato correttamente ed � pronto a
funzionare. teTeX � un pacchetto molto grosso. Vorrai quindi imparare
teTeX, come forse hai gi� fatto con altri programmi complessi,
lentamente, invece di essere sommerso dalla sua complessit�.
Allo stesso tempo, per�, vogliamo fargli fare qualcosa di utile.
Quindi invece di stare a guardare TeX mentre compone
``Hello, World!''
come il Professor Knuth suggerisce nel The TeXBook, eseguiremo TeX su
un paio di documenti di teTeX per provare l'installazione.
2.1. Stampiamo la documentazione.
Le prime volte che usi teTeX sarebbe meglio che tu ti collegassi come
root. Se non lo fai, metafont pu� non essere capace di creare le
directory necessarie per i suoi font. Un'opzione del programma
texconfig consente di dare il permesso di scrittura a tutti sulle
directory dei font, ma se stai lavorando su un sistema multiutente
questo, per motivi di sicurezza, non � desiderabile.
Comunque, se non hai i privilegi per scrivere sulle directory in cui
vengono immagazzinati i font, Metafont si lamenter� di non poter
creare le directory. Non verr� prodotto nulla perch� non ci sono i
caratteri necessari. Questo non � un grosso problema. Scollegati e
ricollegati come root, poi ripeti l'operazione che ha causato
problemi.
Il bello di teTeX � che se fai qualche errore che lo fa ``saltare'',
non vengono mai fatti danni. Non � come un compilatore con il quale
puoi ad esempio danneggiare tutta la partizione di root se un
puntatore punta da qualche parte non prevista. Cosa? Non hai ancora
letto il manuale di teTeX? Beh, � ovvio. Si trova ancora nella
distribuzione, in forma di codice sorgente, ed aspetta di essere
elaborato.
Quindi non aspettiamo oltre, sarai senz'altro ansioso di leggerlo. Si
trova nella directory
/usr/lib/teTeX/texmf/doc/tetex.
Il file che contiene il manuale in formato LaTeX si chiama
TETEXDOC.tex (l'estensione .tex viene usata sia per i file di TeX che
per quelli di LaTeX. Alcuni editor, come emacs, sono in grado di
riconoscere la differenza). C'� anche un file TETEXDOC.dvi che � bene
tenere in un posto sicuro (ad esempio un'altra directory) nel caso pi�
tardi tu voglia provare i tuoi driver .dvi. Dopo averlo messo via,
digita
latex TETEXDOC.tex
LaTeX scriver� alcuni messaggi di avvertimento. Il primo,
LaTeX Warning: Label(s) may have changed. Rerun to get the
cross-references right.
(le etichette potrebbero essere cambiate. Riesegui per avere i giusti
riferimenti incrociati) � standard. � normale costruire l'indice di un
documento eseguendo due volte LaTeX sul documento stesso. Quindi,
ripeti il comando. Gli altri avvertimenti possono essere tranquilla�
mente ignorati. Ti informano del fatto che alcuni dei percorsi FTP di
cui si parla nel documento sono troppo lunghi per lo spazio loro
assegnato. Le Sezioni ``Stile e dimensioni dei paragrafi'' e
``Tolleranze'' descrivono pi� in dettaglio la spaziatura orizzontale.
Noterai che teTeX ha prodotto numerosi file da TETEXDOC.tex. Quello
che ci interessa � TETEXDOC.dvi: � il file indipendente dal
dispositivo che puoi mandare indifferentemente allo schermo o alla
stampante. Se esegui teTeX sotto X Windows, puoi avere un'anteprima
del documento con xdvi.
Per i nostri scopi supporremo che tu abbia una HP LaserJet II. A
questo punto dovresti dare il comando
dvilj2 TETEXDOC.dvi
che produce, a partire da file TETEXDOC.dvi, un file in formato PCL
che contiene anche i ``soft font'', cio� informazioni sui font che
verranno trasmesse alla stampante. Questa possibilit� non � offerta da
TeX o da LaTeX, ma da dvilj2. Gli altri driver .dvi offrono la possi�
bilit� di sfruttare le capacit� del particolare dispositivo che sup�
portano. dvilj2 risponder� alle richieste di font fatte nel documento
LaTeX fornendo il font pi� simile disponibile nel sistema; nel caso di
un documento contenente solo testo, come TETEXDOC.tex, non ci sono
molti problemi. Tutti i font richiesti vengono infatti generati da
metafont, che viene chiamato automaticamente da dvilj2 e provvede a
creare i font che non sono gi� sul sistema (la prima volta che esegui
dvilj2 il programma pu� aver bisogno di generare tutti i font). Ci
sono alcune opzioni di dvilj2 che controllano la generazione dei font,
e ne puoi trovare una descrizione nella relativa pagina di manuale. In
effetti non ci dovrebbe essere bisogno di eseguire direttamente meta�
font; se questo bisogno invece si presenta c'� qualcosa che � andato
storto nell'installazione. Tutti i driver .dvi chiamano direttamente
metafont attraverso la libreria di ricerca dei percorsi kpathsea (la
descrizione di questa va oltre gli scopi di questo documento) e non
dovrai lavorare pi� con metafont per ora (sono forniti tutti i sor�
genti metafont della libreria di font Computer Modern).
Puoi stampare TETEXDOC.lj con il comando
lpr TETEXDOC.lj
Ci pu� essere bisogno di installare un filtro di stampa in grado di
capire il PCL.
La teTeX Guide, un documento di nove pagine, d� alcune informazioni
utili per affinare ulteriormente la configurazione del sistema: di
qualcosa abbiamo gi� parlato, di molto altro non parler� nel teTeX
HOWTO.
Non ho potuto sperimentare di persona alcune delle informazioni
contenute nella prossima sezione poich� ho una stampante non
PostScript HP Deskjet 400, a getto d'inchiostro a colori, collegata
alla porta parallela del computer. Comunque il fatto di non possedere
una stampante PostScript non rappresenta un ostacolo alla capacit� di
stampare testi e grafica nei tuoi documenti. Ghostscript si trova
nella maggior parte delle distribuzioni Linux e potrebbe essere gi�
installato nel tuo sistema.
3. Comandi TeX.
� facile preparare documenti da elaborare con TeX. Prendi un file di
testo, assicurati che fra i paragrafi ci sia una linea vuota, ed
esegui TeX su quel file con il comando
TeX il_tuo_file_di_testo
Il risultato sar� un file con lo stesso nome ed estensione .dvi. TeX
formatta il testo usando il font Computer Modern Roman corpo 10,
interlinea singola e giustificazione su entrambi i margini. Se ricevi
messaggi d'errore a causa di caratteri speciali, come ad esempio il
simbolo di dollaro, inserisci prima di essi il carattere backslash e
riesegui TeX sullo stesso file. A questo punto puoi elaborare il file
prodotto da TeX con il driver .dvi che preferisci (vedi sopra) per
stampare il documento.
Una peculiarit� dei file di input di TeX � l'uso delle virgolette
aperte e chiuse, che devono essere inserite come due accenti gravi o
due apostrofi. Emacs, in modo TeX, � in grado di farlo
automaticamente.
"Queste sono virgolette ASCII."
``Queste sono virgolette `TeX-style'.''
3.1. Una panoramica dei comandi.
I comandi in TeX iniziano con un backslash (``\''). Per esempio, il
comando per cambiare la spaziatura fra le linee �
\baselineskip=24pt
La ``baseline'' � il punto pi� basso dei caratteri su una linea, senza
contare i discendenti. La distanza fra le baseline di due linee � la
\baselineskip, a cui � assegnato un valore di 24 punti.
Le misure o dimensioni in TeX sono date spesso nelle seguenti unit� di
misura:
pt % Punti: 1/72 in.
pc % Pica: 12 pt.
in % Inch (pollici): 72.27 pt.
cm % Centimetri: 2.54 cm = 1 in.
mm % Millimetri: 10 mm = 1 cm.
Alcuni comandi non richiedono di specificare delle misure. Ad esempio:
\smallskip % Approssimativamente 3 punti.
\medskip % Due \smallskip.
\bigskip % Due \medskip.
\smallskip inserisce uno spazio verticale di 3 punti nel documento. Le
misure sono approssimate perch� TeX deve aggiustare le dimensioni per
interruzioni di pagina, titoli di sezione e altre unit� di spazio
verticale. Questo vale anche per la spaziatura orizzontale.
\hsize=6.5in
Questo comando pone la lunghezza delle linee a 6.5 pollici. TeX prova
a riempire la linea aggiustando lo spazio fra le parole e a volte fra
le lettere. Se TeX non riesce a riempire una linea rimanendo entro
una certa tolleranza produce un messaggio di avvertimento, e aggiusta
la spaziatura orizzontale nella linea meglio che pu�. Le tolleranze di
formattazione sono discusse nella sezione ``Tolleranze''.
Ci sono molti altri comandi che specificano dimensioni e tolleranze
orizzontali e verticali, e quelli usati pi� comunemente sono descritti
di seguito.
3.2. Comandi di cambio dei font.
In TeX il font predefinito � il Computer Modern Roman 10 punti. Per
specificare uno stile di carattere diverso, come corsivo, grassetto o
a spaziatura fissa, si possono usare i comandi seguenti.
\rm % Tondo (predefinito).
\it % Corsivo.
\bf % Grassetto.
\tt % Spaziatura fissa (telescrivente).
\sl % Obliquo.
I comandi cambiano lo stile dei caratteri dal punto in cui appaiono
nel testo, come nell'esempio seguente.
Questo testo � in Tondo, \it e questo � in corsivo. \bf Questo testo �
in grassetto e \rm questo testo � di nuovo in tondo.
Per specificare un font per il tuo documento, usa il comando \font.
\font\romantwelve=cmr12
Questo crea il comando di cambio font \romantwelve, che, quando viene
usato nel testo, cambia il font in Computer Modern Roman, 12 punti.
\romantwelve
Questo � il font Computer Modern Roman di 12 punti.
Per avere informazioni sui font compresi nella distribuzione teTeX
leggi il file:
/usr/lib/teTeX/texmf/doc/fonts/fontname/fontname.dvi
Se vuoi stampare un esempio di un font, esegui TeX sul file
/usr/lib/teTeX/texmf/tex/plain/base/fontchart.tex
ed inserisci, quando ti viene richiesto, il nome del font che vuoi
stampare.
Puoi anche cambiare la dimensione di un font per ottenere vari
effetti. L'ingrandimento dei font avviene in maniera esponenziale, e
viene specificato con il comando scaled \magstep, che viene messo dopo
il comando di cambio di font.
\font\sfmedium=cmss12 scaled \magstep 1
Questo comando produce un font sans serif che � del 120 percento pi�
grande del font Computer Modern sans serif 12 punti. I font possono
essere ingranditi a passi da 0 a 5. Ciascun passo produce un ingrandi�
mento del 120 percento rispetto al precedente.
3.3. Stili e dimensioni dei paragrafi.
Come abbiamo detto in precedenza, TeX compone normalmente il testo con
il font Computer Modern Roman di 10 punti. La lunghezza di una linea �
data da \hsize, il cui valore predefinito � 6.5 pollici. Se vuoi ad
esempio cambiare il valore di \hsize a 5.5 pollici usa questo comando.
\hsize=5.5in
In TeX una dimensione � un'unit� di lunghezza modificabile,
orizzontale o verticale. Nella definizione di una dimensione pu�
essere specificato quanto la dimensione pu� essere incrementata o
decrementata. Strettamente legato alla dimensione e lo skip
(``salto''), che � una dimensione posta in uno dei registri interni di
TeX. Gli skip sono definiti con il comando \newskip. La dimensione di
\smallskip, cos� come viene definita da TeX, �:
\newskip\smallskipamount \smallskipamount=3pt plus 1pt minus 1pt
Il comando \smallskip � un'abbreviazione di
\vskip\smallskipamount
Ci sono alcune dimensioni che controllano il formato della pagina. Ne
trovi un riassunto nella sezione ``Formato della pagina''.
TeX formatta i paragrafi giustificando sia il margine sinistro che il
margine destro. Se vuoi che il testo sia giustificato solo a sinistra
puoi usare il comando:
\raggedright
Per comporre una linea giustificata a destra usa il comando
\rightline:
\rightline{Questa � la linea da comporre.}
Il comando \line compone il testo che gli viene dato come argomento in
modo che riempia l'intera linea.
\line{Questo testo verr� spaziato per riempire l'intera linea.}
Per cambiare il margine sinistro definisci il valore di \hoffset, come
in questo esempio:
\hoffset=1.5in
Il comando \parindent specifica il valore dell'indentazione della
prima linea di ciascun paragrafo.
\parindent=.5in
Altre due dimensioni, \leftskip e \rightskip, definiscono
l'indentazione rispettivamente del margine sinistro e destro dei
paragrafi che le seguono.
\leftskip=.5in
\rightskip=.5in
Il comando \narrower � equivalente a
\leftskip=\parindent
\rightskip=\parindent
Cio� \narrower restringe i margini del paragrafo di un valore pari a
\parindent
Come abbiamo detto in precedenza, \baselineskip specifica la distanza
fra le linee. Il valore predefinito � 12 punti. Per avere
approssimativamente un'interlinea doppia usa il comando seguente.
\baselineskip=\baselineskip*1.6
Il comando \parskip specifica una distanza fra i paragrafi che viene
aggiunta a \baselineskip. Normalmente non viene aggiunto nessuno
spazio, ma la distanza fra i paragrafi pu� essere ridotta fino a 1
punto per riempire correttamente la pagina. Per inserire una linea
bianca fra i paragrafi usa il comando:
\parskip=\baselineskip
3.3.1. Tolleranze. (Cosa sono quei rettangoli neri dopo ogni linea?)
TeX formatta normalmente il testo rispettando delle strette
tolleranze. Se, per qualche ragione, il testo non pu� essere
formattato rispettando tali tolleranze, TeX produce un messaggio di
avvertimento e formatta il testo meglio che pu�. Se il testo deve
essere allargato troppo per riempire la linea, TeX ti avverte che la
``\hbox is underfull'' (c'� troppo poco testo nell'``hbox''). Se il
testo deve essere ``compresso'' troppo per entrare nella linea viene
prodotto un messaggio di avvertimento ``overfull \hbox'' (c'� troppo
testo nell'``hbox'').
Per ogni overfull \hbox TeX mette uno slug, un rettangolo nero, dopo
la linea. Lo slug indica che TeX non ha potuto formattare la linea
rispettando la tolleranza specificata dal parametro \hbadness.
Una misura di quanto il testo ``stia bene'' nelle dimensioni
specificate � data dalla sua badness (letteralmente ``cattiva
qualit�''), che � un numero fra 0 e 10000. Una badness di 0 indica che
il testo si adatta perfettamente alla linea, e una badness di 10000
significa che il testo probabilmente non si adatter� mai alla linea.
Il valore predefinito di \hbadness � 1000. Se poni \hbadness a 10000,
TeX non segnaler� linee con troppo poco testo.
A volte TeX permette che una linea si estenda oltre il margine destro.
Questa � una precisa scelta estetica dell'autore di TeX. Il parametro
\hfuzz determina quanto le linee possono oltrepassare il margine, ed
il suo valore predefinito � di 0.1 punti. Se il testo non si adatta
alla linea, il parametro \tolerance determina il modo in cui TeX
tratter� l'``overfull \hbox''. Il valore predefinito di \tolerance �
200. Ponendo il valore di \tolerance a 1000 non verranno pi� emessi
messaggi di avvertimento ``overfull \hbox'' n� stampati slug.
3.4. Formato della pagina.
Oltre alle dimensioni del margine sinistro e della lunghezza della
linea, che abbiamo descritto nella sezione precedente, TeX permette di
specificare i margini superiore ed inferiore e la spaziatura
verticale.
In maniera simile alle dimensioni \hsize e \hoffset, descritte nella
sezione precedente, esistono in TeX i comandi \vsize e \voffset. Il
valore predefinito di \vsize � 8.9 pollici, e quello di \voffset � 0.
Normalmente teTeX posiziona l'inizio della prima linea di testo ad un
pollice dal margine superiore della pagina e ad un pollice dal margine
sinistro. Puoi far s� che il testo inizi ad una distanza minore dal
margine superiore della pagina usando il comando:
\voffset=-0.5in
Se vuoi aggiungere dello spazio verticale in un documento puoi usare i
comandi \smallskip, \medskip, e \bigskip, che aggiungono
approssimativamente 3, 6 e 12 punti di spazio verticale. Queste
misure sono approssimate; TeX infatti pu� aggiustarle fino ad un punto
in modo da riempire correttamente la pagine.
Il comando \vfill aggiunge uno spazio verticale aggiustabile fra i
paragrafi su una pagina. Questo spazio pu� essere allungato
infinitamente, ed aggiunger� spazio in modo da riempire il pi�
possibile il resto della pagina. Se vuoi specificare una dimensione,
usa \vskip come in:
\vskip 10pt
I comandi \hss e \vss sono simili a \hfill e \vfill tranne per il
fatto che lo spazio da essi prodotto pu� essere sia ristretto che
allungato infinitamente.
I comandi \vskip e \vfill producono delle lunghezze ``flessibili''.
Non aggiungono spazio dove non c'� testo, ad esempio all'inizio di una
pagina. Se vuoi inserire uno spazio ``assoluto'' usa il comando
\vglue.
TeX riempie lo spazio definito dalla dimensione \vsize con la maggiore
quantit� di testo possibile prima di iniziare una nuova pagina. Per
forzare un'interruzione di pagina usa la sequenza \vfill \eject. Se
\vfill non venisse usato, nel testo che precede \break verrebbe
modificata la spaziatura in modo da riempire la pagina.
Se vuoi che TeX sia pi� flessibile riguardo all'altezza della pagina,
usa nel tuo documento il comando \raggedbottom. Con questo comando TeX
modificher� leggermente il margine inferiore di ciascuna pagina in
modo da migliorare la spaziatura verticale.
3.5. Numeri di pagina, testatine e fondi di pagina.
teTeX di solito mette il numero di pagina al centro del margine
inferiore della pagina. Se vuoi cambiare posizione e stile del numero
di pagina puoi specificare testatine e fondi pagina diversi cambiando
la definizione di \headline e \footline. La definizione iniziale di
\footline contiene il comando \folio, che stampa il numero di pagina.
La definizione di \headline � \hfil, che fa s� che venga stampata una
linea vuota.
Il comando \pageno � un sinonimo del contatore interno delle pagine di
TeX. Puoi cambiare il numero di pagina cambiando il valore di \pageno.
Se \pageno � negativo i numeri vengono stampati come numeri romani.
\pageno=10
\pageno=-1
Il comando \nopagenumbers � un'abbreviazione di:
\headline={\hfil}
\footline={\hfil}
Il fondo pagina predefinito contiene anche il comando di font \tenrm.
Con questo i numeri di pagina vengono stampati con il font Roman di 10
punti. Se vuoi che vengano stampati con il font Roman di 12 punti
dovresti prima definire un font Roman di 12 punti, e usarlo nella
definizione di \footline. I comandi di font vengono discussi nella
sezione ``Comandi di font''.
\font\rmdodici=cmr12
\footline={\hss\rmdodici\folio\hss}
Puoi mettere una linea orizzontale, detta rule, all'inizio di ogni
pagina ridefinendo \headline nel modo seguente:
\headline={\hrulefill}
Per usare testatine diverse nelle pagine pari e dispari usa il comando
\ifodd, che ha la forma:
\ifodd[condizione][azione-condizione_vera]\else[azione-condizione_falsa
Un esempio di \headline che usa testatine differenti sulle pagine pari
e dispari � il seguente:
\headline={\ifodd\pageno testatina-pagine_dispari \else testatina-pagine_pari}
Questo comando \ifodd usa il primo argomento se il numero di pagina �
dispari, altrimenti usa il secondo argomento.
3.6. Titoli e macro.
In TeX l'unico comando disponibile per i titoli di sezione �
\beginsection. Esso lascia uno spazio prima del proprio argomento,
stampa il testo del titolo in grassetto, aggiunge uno \smallskip dopo
il testo del titolo e inizia il paragrafo successivo senza indentarlo.
I comandi per capitoli e sezioni disponibili in LaTeX, e descritti di
seguito, aggiungono la numerazione delle sezioni, stampano i nomi e i
numeri delle sezioni nella testata delle pagine e aggiungono le
sezioni all'indice.
In TeX puro dovresti scrivere da solo queste funzioni. Il comando \def
permette di definire dei nuovi comandi. Supponi di voler stampare un
titolo di capitolo. Per prima cosa specifica il font che vuoi usare.
Un font sans serif piuttosto grande da usare nei titoli di capitolo
potrebbe essere definito nel modo seguente:
\font\fontsanscapitolo=cmss12 scaled \magstep 4
Puoi usare il comando \fontsanscapitolo dovunque per usare questo
font, che � alto circa 24 punti. Comunque, in questo esempio, verr�
usato principalmente nel comando \titolocapitolosans. Ecco la
definizione di quest'ultimo:
\def\titolocapitolosans#1{\hbox{}\bigskip\bigskip
\noindent{\leftline{\fontsanscapitolo#1}}
\par\bigskip\bigskip\noindent}
Nella prima linea, \hbox{}\bigskip pone uno spazio di 12 punti
all'inizio della pagina inserendo un \hbox{} vuoto. La linea con il
titolo del capitolo non � indentata, e non lo � neppure il paragrafo
che la segue. Se inserisci una linea vuota fra la macro \titolocapi�
tolosans e il paragrafo seguente sar� questa linea bianca a non essere
indentata, e non il testo del paragrafo seguente. Per avere una for�
mattazione corretta usa il comando \titolocapitolosans come in questo
esempio.
Nella definizione, #1 viene sostituito con il primo argomento di
\titolocapitolosans; cio�, il titolo del capitolo. In TeX, i parametri
vengono dichiarati, all'interno delle definizioni, con #1, #2, #3 e
cos� via. Un esempio di come usare \titolocapitolosans �:
\titolocapitolosans{Capitolo 1}
Questo � il testo iniziale del primo paragrafo del capitolo. Il paragrafo
non viene indentato. Il titolo del capitolo � "Capitolo 1."
4. Comandi LaTeX.
4.1. Struttura del documento.
I documenti da elaborare con LaTeX devono rispettare qualche regola in
pi�, ma la preparazione di documenti complessi � molto pi� semplice.
Essenzialmente LaTeX � un linguaggio di marcatura per documenti il cui
scopo � quello di mantenere separati lo stile ed il contenuto. Per
esempio, per ottenere un titolo di sezione con TeX dovresti porre uno
spazio di 36 punti prima del titolo, poi specificare che il titolo
deve essere composto in grassetto, con un carattere di corpo 24, poi
copiare il testo del titolo e il numero di pagina in cui esso appare
nell'indice, infine lasciare uno spazio di 24 punti dopo il titolo.
Con LaTeX, invece, � sufficiente usare il comando \section{}, che fa
tutto questo da solo. Se hai bisogno di cambiare il formato dei titoli
di sezione puoi cambiare la definizione di \section{} invece del testo
nel documento. Grazie a questo se hai bisogno di cambiare il formato
di documenti lunghi pi� di una dozzina di pagine puoi risparmiare ore
di lavoro.
Tutti i documenti LaTeX hanno tre sezioni: un preambolo (preamble), il
corpo (body) del testo, e un ``postambolo'' (postamble). I termini
inglesi indicati fra parentesi fanno parte del gergo tecnico standard
e sono molto usati fra i TeXnici.
Nel preambolo, come minimo, viene specificato il tipo del documento da
produrre (la classe del documento) e viene poi inserita una linea che
indica l'inizio del corpo del testo. Per esempio:
\documentclass{article}
\begin{document}
Il ``postambolo'' � generalmente molto semplice. Tranne in casi molto
particolari contiene una sola linea:
\end{document}
(fine del documento).
Nota la coppia \begin{document} e \end{document}: in LaTeX questo
definisce un environment. Tutto il testo deve essere all'interno di un
environment, e molti comandi funzionano solo all'interno
dell'environment in cui sono chiamati. L'environment document �
comunque l'unico in cui LaTeX impone questa convenzione. Cio�, �
l'unico environment assolutamente necessario in un documento
(un'eccezione � la classe letter, lettera, che richiede anche
\begin{letter} e \end{letter}. Vedi la sezione ``Lettere'').
Comunque, molte istruzioni per la modifica del formato sono
specificate come environment. Sono descritte nelle sezioni seguenti.
Nelle classi di documento si possono specificare dei parametri: per
esempio, se avessimo voluto usare font di corpo 12 invece del corpo 10
nell'esempio precedente avremmo potuto specificare
\documentclass[12pt]{article}
La classe di documento article (articolo) provvede alle modifiche nec�
essarie.
Le classi di documento usate pi� frequentemente sono poche. Sono
descritte nel seguito. La classe report (relazione) � simile alla
classe article, tranne per il fatto che produce una pagina separata
con il titolo e fa s� che ogni sezione inizi in una nuova pagina. La
classe letter include definizioni speciali per indirizzi, saluti e
formule di chiusura, alcune delle quali sono descritte nel seguito.
Puoi includere del codice LaTeX ``inscatolato'', detto comunemente
package, con il comando \usepackage{}.
\usepackage{fancyhdr}
Questo comando include il file di stile fancyhdr.sty da una delle
directory TEXINPUTS che tu e teTeX avete specificato durante i pro�
cessi di installazione e configurazione.
\documentclass{article}
\usepackage{fancyhdr}
\begin{document}
Nota che le dichiarazioni \usepackage{} sono fatte prima di
\begin{document}, cio� nel preambolo.
fancyhdr.sty estende il comando \pagestyle{} in modo che tu possa
creare testatine e fondi pagina personalizzati. Molte classi di
documento LaTeX definiscono questi elementi nei seguenti stili di
pagina standard:
\pagestyle{plain} % stile di pagina standard -- il numero di pagina �
% centrato in basso sulla pagina.
\pagestyle{empty} % nessuna testatina n� fondo pagina.
\pagestyle{headings} % stampa il numero di sezione ed il numero di pagina
% in alto sulla pagina.
\pagestyle{myheadings} % stampa informazioni personalizzate nella testatina.
Tutto quello che si trova a destra del segno di percento su una linea
� un commento.
Il comando \pagestyle{} ha effetto solo nella pagina successiva. Per
cambiare testatine e fondi pagina nella pagina corrente usa invece il
comando
\thispagestyle{stile_di_pagina}
4.1.1. Stili di caratteri.
Gli stili di caratteri dipendono in parte dal font specificato nel
documento. Comunque, i caratteri in grassetto e in corsivo dovrebbero
essere disponibili per ogni font presente nel sistema. Pu� essere
usata anche la sottolineatura sebbene la sua gestione presenti
problemi particolari. Vedi la sezione ``Pacchetti di estensione per
LaTeX ed altre risorse''.
Ci sono vari modi per evidenziare un testo. Quello che pu� essere
usato su tutti i sistemi � il comando \em. Tutto il testo su cui
agisce viene reso in corsivo. Per esempio:
Questa parola verr� {\em evidenziata.}
Se il testo in corsivo � seguito da testo non in corsivo puoi
specificare l'uso di un fattore di correzione. Il comando da usare �
\/.
Questo esempio {\em sar�\/} stampato correttamente.
Questo esempio {\em non} sar� stampato correttamente.
Meno portabili, ma ancora accettabili in casi in cui sono usati da
soli, sono i comandi \it, \bf, e \tt; i caratteri su cui agiscono
verranno stampati rispettivamente in corsivo, in grassetto e con
spaziatura fissa.
{\tt Questo testo sar� stampato con spaziatura fissa,}
{\it questo in corsivo,}
{\bf e questo in grassetto\dots} tutto in un paragrafo.
Il comando \dots stampa tre puntini di sospensione che non verranno
divisi fra pi� linee.
La versione pi� recente di LaTeX, che � quella che hai, include dei
comandi in grado di trattare correttamente i casi in cui un comando di
evidenziazione ne sostituirebbe un altro.
Questo {\it non � {\bf grassetto corsivo!}}
Ci� che accade � che teTeX compone il testo in corsivo finch� non
incontra il comando \bf; poi inizia a comporlo in grassetto.
Per risolvere questa situazione, lo schema di selezione dei font NFSS
richiede tre parametri per ogni carattere: forma, spessore del tratto
e famiglia. Non tutti i font hanno tutti questi stili. Nel caso abbia
bisogno di sostituire il font richiesto con un altro, LaTeX stamper�
un messaggio di avvertimento.
Puoi specificare le seguenti forme per i font:
\textup{testo} % testo tondo (predefinito)
\textit{testo} % corsivo
\textsl{testo} % inclinato
\textsc{testo} % maiuscoletto
Questi sono i due spessori del tratto che la maggior parte dei font
ha:
\textmd{testo} % spessore medio (predefinito)
\textbf{testo} % grassetto
Ci sono tre famiglie generalmente disponibili.
\textrm{text} % roman (predefinito)
\textsf{text} % senza grazie
\texttt{text} % macchina da scrivere (spaziatura fissa, simile al
% Courier)
Usando questi comandi per scegliere gli stili dei caratteri puoi
combinarne gli effetti
\texttt{\textit{Questo esempio dar� probabilmente luogo ad una
sostituzione di font, poich� molti font non includono uno stile macchina
da scrivere corsivo.}}
La famiglia applicata normalmente � Computer Modern, che � un font
bit-mapped. Altre famiglie di font sono in formato PostScript Type 1.
Vedi la sezione ``Usare font PostScript'' per i dettagli.
Ci sono anche vari accenti e caratteri speciali che puoi usare nei
tuoi documenti. Quelli che seguono sono solo alcuni fra quelli
disponibili (prova a stamparli sulla tua stampante)
\'{o} \`{e} \^{o} \"{u} \={o} \c{c} `? `!
\copyright \pounds \dag
Infine, ci sono caratteri che vengono interpretati come comandi da TeX
e LaTeX. Di uno abbiamo gi� parlato, ed � il simbolo di dollaro.
L'insieme completo dei ``meta caratteri'', che debbono essere prece�
duti da un backslash per poter essere usati, � il seguente:
# $ % & _ { }
� possibile usare anche diversi alfabeti, ad esempio greco e
cirillico. Con LaTeX � facile comporre testi non solo in inglese:
questo argomento � trattato in uno dei testi di cui parliamo qui.
4.1.2. Margini ed interlinee.
Modificare i margini in un documento TeX o LaTeX non � una cosa
semplicissima. Molto dipende dall'indentazione relativa del testo di
cui vuoi aggiustare i margini. Anche la posizione dei comandi di
modifica dei margini � significativa.
Per i cambiamenti che devono avere effetto su un intero documento
LaTeX, � possibile usare i comandi \evensidemargin e \oddsidemargin.
Modificano il margine sinistro delle pagine pari e dispari
rispettivamente. Per esempio
\evensidemargin=1cm
\oddsidemargin=1cm
aggiunge 1 centimetro al margine sinistro standard delle pagine pari e
dispari, che � di un pollice (2,54 cm). Questi comandi influenzano
l'intero documento e spostano l'intero corpo del documento a destra e
sinistra sulla pagina, non importa l'impostazione locale dell'inden�
tazione, per cui risulta sicuro usare environment LaTeX come verse e
list.
Quelle che seguono sono alcune macro per la modifica dei margini che
ho scritto. Agiscono in modo differente dai comandi citati. Poich�
usano comandi in TeX puro, non � garantito che rispettino i margini
che sono stati impostati da un environment LaTeX, ma le puoi mettere
ovunque in un documento e cambiare i margini da quel punto in poi.
%% margins.sty -- v. 0.1 di Robert Kiesling
%% Copie di questo codice possono essere distribuite liberamente in
%% forma di testo.
%%
%% Alcuni comandi elementari TeX per la modifica dei margini. Le lunghezze
%% sono in pollici:
%%
%% \leftmargin{1} %% imposta il margine sinistro a 1 pollice
%% \leftindent{1} %% imposta l'indentazione dei paragrafi seguenti a
%% 1 pollice
%% \rightindent{1} %% imposta il margine destro dei paragrafi seguenti
%% a 1 pollice
%% \llength{3} %% imposta la lunghezza delle linee seguenti a 3 pollici
%%
\message{Margins macros...}
\def\lmargin#1{\hoffset = #1 in}
\def\lindent#1{\leftskip = #1 in}
\def\rindent#1{\rightskip = #1 in}
\def\llength#1{\hsize = #1 in}
%%
%% (End of margins macros.}
Metti questo codice in un file di nome margins.sty nella tua directory
$TEXINPUTS locale. I comandi sono spiegati nei commenti del file. Per
usarli in un documento devi includere il file con il comando
\usepackage{margins}
nel preambolo.
Gi� che siamo in argomento: se non vuoi che il testo venga
giustificato a destra, che � quello che viene fatto normalmente, puoi
chiedere a LaTeX di usare lo sbandieramento a destra con il comando:
\raggedright
Anche impostare l'interlinea ha le sue difficolt�.
baselineskip � la misura della distanza fra le linee del testo. �
dato come misura assoluta. Ad esempio
\baselineskip=24pt
oppure, in modo migliore:
\setlength{\baselineskip}{24pt}
La differenza fra le due forme � che setlength rispetter� le
impostazioni che possono essere in effetto nel momento in cui usi il
comando.
Il problema nell'uso di baselineskip � che viene modificata anche la
distanza fra titoli di sezione, note a pi� di pagina e cos� via. Devi
quindi assicurarti che baselineskip sia impostato correttamente per
l'elemento di testo che stai componendo. Ci sono, comunque, packages
LaTeX come setspace.sty che ti aiuteranno in queste circostanze. Vedi
la sezione ``Pacchetti di espansione per LaTeX ed altre risorse''.
4.1.3. Classi di documenti.
In LaTeX sono disponibili classi di documenti che forniscono formati
standard per i documenti, ad esempio environment che facilitano la
formattazione di liste, citazioni, note a pi� di pagina ed altri
elementi di testo. Le classi di documenti pi� usate sono descritte
nelle sezioni seguenti.
4.1.3.1. Articoli e relazioni.
Come abbiamo gi� detto, la classe article e la classe report sono
simili. Le differenze principali consistono nel fatto che la classe
report crea una pagina separata per il titolo e fa cominciare ogni
sezione su una nuova pagina.
Per inserire in queste classi di documento titoli, abstract
(riassunti) e nome dell'autore puoi ad esempio usare:
\title{Le abitudini di accoppiamento dei Cactus}
\author{John Q. Public}
\abstract{Descrizione di come i comuni cactus del deserto cercano delle
pozze d'acqua adatte per poter effettuare i loro rituali di accoppiamento}
nel preambolo. Poi, il comando
\maketitle
dato all'inizio del testo generer� una pagina con il titolo nella
classe report, oppure, nel caso della classe article, il titolo e
l'abstract all'inizio del documento.
Le sezioni possono essere definite con comandi come i seguenti:
\section
\subsection
\subsubsection
Questi comandi producono delle sezioni numerate come quelle comune�
mente usate nei documenti tecnici. Per avere delle sezioni non numer�
ate usa
\section*
\subsection*
\subsubsection*
e cos� via.
In LaTeX sono disponibili molti environment per formattare del
materiale da mettere in evidenza. Puoi inserire delle citazioni usando
l'environment quotation:
\begin{quotation}
Inizio della citazione...
... fine della citazione.
\end{quotation}
Per citazioni pi� corte puoi usare l'environment quote.
Per formattare i versi di una poesia usa l'environment verse:
\begin{verse}
Nel mezzo del cammin di nostra vita\\
mi ritrovai per una selva oscura\\
ch� la diritta via era smarrita
\end{verse}
Nota che per andare a capo al momento giusto devi usare dei doppi
backslash, altrimenti LaTeX riempir� le linee in un environment verse
come fa in qualsiasi altro environment.
Ci sono molti modi per fare una lista. Per avere una lista puntata
puoi usare l'environment list:
\begin{list}
\item
Questa � la prima voce della lista.
\item
Questa � la seconda voce della lista...
\item
... e cos� via.
\end{list}
Per una lista numerata usa l'environment enumerate:
\begin{enumerate}
\item
Voce numero 1.
\item
Voce numero 2.
\item
\dots
\end{enumerate}
Una lista di descrizioni usa l'environment description.
\begin{description}
\item{Forno} Sporco, ha bisogno di una resistenza nuova.
\item{Frigorifero} Sporco. Mi dispiace.
\item{Lavandino e scarico} Sporco, il rubinetto dell'acqua fredda perde.
\end{description}
4.1.3.2. Lettere.
La classe letter usa delle definizioni che consentono di formattare
lettere d'affari.
L'environment letter ha bisogno di un argomento, l'indirizzo del
destinatario della lettera. Il comando address, che deve essere
inserito nel preambolo, definisce l'indirizzo del mittente. Il comando
signature definisce il nome del mittente come deve apparire in
chiusura.
Il sorgente LaTeX di una semplice lettera d'affari pu� essere simile a
questo.
\documentclass[12pt]{letter}
\signature{John Q. Public}
\address{Viale dei giardini, 123\\00100 Roma\\Tel: 123/456-7890}
\begin{document}
\begin{letter}{ACME Mattoni SpA \\Corso Raffaello\\20100 Milano}
\opening{Gentile Signore/Signora:}
A proposito di uno dei vostri mattoni che ho trovato sul tappeto del mio
soggiorno insieme ad alcuni frammenti del vetro rotto della mia finestra...
(Resto del corpo della lettera).
\closing{Distinti saluti,}
\end{letter}
\end{document}
Nota che negli indirizzi ci sono dei doppi backslash che specificano
dove occorre andare a capo.
4.2. Pacchetti di espansione per LaTeX ed altre risorse.
Abbiamo gi� detto che evidenziare il testo sottolineandolo pu� portare
dei problemi particolari. In effetti TeX non ha alcun problema a
sottolineare il testo dato che � una convenzione usata in matematica.
In LaTeX puoi sottolineare le parole con il comando:
\underline{testo da sottolineare}
Il problema � che la sottolineatura non viene spezzata su diverse
linee e, in alcuni casi, il testo sottolineato pu� non essere giusti�
ficato. Comunque c'� un pacchetto di macro per LaTeX, gi� pronto, che
modifica il modo di evidenziazione del testo in modo che usi la sotto�
lineatura. Si chiama ulem.sty, ed � uno dei tanti pacchetti LaTeX che
sono disponibili liberamente su Internet.
Per usare ulem.sty, usa il comando
\usepackage{ulem}
nel preambolo del documento.
Alcuni dei pacchetti disponibili per LaTeX sono:
ifthen
Includi istruzioni condizionali nei tuoi documenti.
initials
Definisce un font per i capolettera.
sanskrit
Font e preprocessore per produrre documenti in Sanscrito.
recipe
Una classe per LaTeX2e per comporre ricette.
refman
Varianti degli stili ``article'' e ``report''.
Per ottenere l'URL completo a partire dal percorso dato nel Catalogue,
unisci il percorso all'indirizzo del sito ed al percorso della
directory di livello pi� alto dell'archivio CTAN che vuoi contattare.
Per esempio, la directory CTAN del sito ftp.tex.ac.uk � ctan/tex-
archive. L'URL completo della directory del pacchetto refman sarebbe:
ftp://ftp.tex.ac.uk/ctan/tex-archive/ +
macros/latex/contrib/supported/refman =
ftp://ftp.tex.ac.uk/ctan/tex-archive/macros/latex/contrib/supported/refman/
Alcuni pacchetti contengono pi� di un file, quindi viene dato solo il
percorso della directory del pacchetto.
Quando hai determinato l'URL, puoi scaricare il pacchetto da uno dei
siti CTAN elencati nella sezione ``Appendice A''. Puoi scaricare una
lista completa del contenuto dell'archivio: � contenuta nel file
FILES.byname, che si trova nella directory principale dell'archivio.
Puoi anche effettuare delle ricerche on line sull'archivio
specificando una parola chiave con il comando ftp
quote site index <parola_chiave>
5. Mettere insieme testo e grafica con dvips .
In generale questa sezione si applica ad un documento TeX o LaTeX in
cui siano presenti testo e grafica. teTeX, come la maggior parte delle
distribuzioni TeX, � predisposto per richiedere i font Computer
Modern. Quando vengono stampati documenti con font scalabili Type 1 o
grafica, la resa dei font e della grafica � compito di dvips. dvips
pu� usare sia font Computer Modern bit-mapped che scalabili Type 1, o
una combinazione dei due. Come prima cosa ci concentreremo sulla
stampa e la visione in anteprima della grafica.
In generale occorrer� seguire questa procedura ogni volta che un
sorgente LaTeX contiene l'istruzione
\includepackage{graphics}
nel proprio preambolo. Questa istruzione fa s� che LaTeX includa il
testo del pacchetto graphics.sty nel sorgente. Ci sono altri comandi
che servono per eseguire operazioni relative alla grafica, e le
istruzioni in documenti in TeX puro possono non suggerirti che c'�
bisogno di usare dvips. La differenza sar� evidente comunque quando il
documento sar� stampato senza figure o altri elementi grafici.
Quindi per ora ci concentreremo sulla stampa di documenti che usano il
pacchetto LaTeX graphics.sty. Probabilmente vuoi dare un'occhiata al
sorgente TeX originale. Non � incluso nella distribuzione teTeX, ma lo
puoi trovare a
~CTAN/macros/latex/packages/graphics/grfguide.tex.
Incluso nella distribuzione teTeX c'� invece il file .dvi gi� elabo�
rato da TeX. C'� una ragione per questo, ed ha a che fare con la
necessit� di includere font Type 1 perch� il documento possa essere
stampato correttamente. Se vuoi elaborare grfguide.tex con LaTeX leggi
la prossima sezione. Per ora, comunque, faremo in modo di ottenere con
dvips un output utilizzabile.
Il file grfguide.dvi si trova nella directory
texmf/doc/latex/graphics
Il primo passo per poter ottenere qualcosa di utile da grfguide.dvi
consiste nel tradurlo in PostScript. Il programma dvips serve a questo
scopo. Fa esattamente quello che il suo nome suggerisce. Ci sono molte
opzioni con le quali pu� essere chiamato, ma la forma pi� semplice (o
quasi) �
dvips -f -r <grfguide.dvi >grfguide.ps
Lo switch -f dice a dvips di lavorare come un filtro, cio� leggere
dallo standard input e scrivere sullo standard output. dvips pu�
anche essere configurato per inviare il suo output direttamente a lpr.
Se puoi stampare file PostScript sulla tua stampante con il comando
lpr puoi digitare semplicemente
dvips -r grfguide.dvi
L'opzione -r dice a dvips di produrre le pagine in ordine inverso cos�
che vengano impilate nell'ordine giusto in uscita dalla stampante.
Usalo se questo � utile per la tua stampante.
dvips e metafont possono dover creare o no i nuovi font di cui
grfguide.dvi ha bisogno, dipende se hai ancora i font che dvilj2 ha
prodotto elaborando l'ultimo documento. Alla fine, comunque, dvips
scriver� l'elenco delle pagine che ha tradotto in PostScript e avrai
cos� un file PostScript pronto per essere inviato a qualunque
dispositivo tu abbia.
Se sei fortunato (e ricco) allora hai una stampante in grado di capire
direttamente il PostScript che potr� stampare direttamente
grfguide.ps. Puoi inviare il file alla coda di stampa usando lpr. Se
per qualche ragione il tuo software di stampa non funziona
correttamente con i file PostScript puoi semplicemente inviare il file
alla stampante con
cat grfguide.ps >/dev/lp0
o a qualunque altra porta la tua stampante � collegata. Comunque
questo non � il metodo raccomandato per l'uso quotidiano.
Se vuoi o devi eseguire Ghostscript manualmente questa � la procedura
standard per usarlo. La prima cosa da fare per eseguire Ghostscript �
vedere quali sono gli argomenti della linea di comando, e si pu� fare
cos�:
gs -help | less
Vedrai una lista dei dispositivi che Ghostscript supporta e molti
altri comandi. Scegli il dispositivo che corrisponde maggiormente alla
tua stampante. In genere stampo testo in bianco e nero e uso il driver
cdjmono, che controlla una stampante a colori Deskjet in modo monocro�
matico (bianco e nero).
La linea di comando che uso �:
gs -dNOPAUSE -sDEVICE=cdjmono -sOutputFile=/tmp/gs.out grfguide.ps -c quit
Questo mette il mio output compatibile HP nella directory /tmp. � una
buona idea usare una directory come /tmp, perch� gs pu� essere un po'
difficile riguardo ai permessi di accesso, e non puoi (n� dovresti)
contare sul fatto di essere sempre collegato come root quando effettui
queste operazioni. Adesso puoi stampare il file:
lpr /tmp/gs.out
Ovviamente puoi mettere tutto in uno script della shell. Sul mio sis�
tema ho due semplici script, pv e pr che inviano il file PostScript
rispettivamente allo schermo o alla stampante. � possibile avere
un'anteprima su schermo senza usare X, ma non � la cosa migliore.
Quindi vale sicuramente la pena installare XFree86 per mostrare il
documento sullo schermo.
L'ordine dei comandi in un comando gs � importante, perch� alcune
delle opzioni dicono a Ghostscript di cercare parti di codice
PostScript nella sua libreria.
� importante ricordare che grfguide.dvi richiede sia font bit mapped
Computer Modern che font scalabili Type 1. Se sei capace di mettere
insieme font scalabili e bit mapped in un documento, sei sulla buona
strada per diventare un TeXnico.
5.1. E se la mia stampante non � supportata?
La distribuzione teTeX ha solo una selezione limitata di driver DVI:
dvips, driver per le stampanti Hewlett Packard LaserJet, e niente di
pi�. Se hai una stampante non compatibile con le LaserJet hai due
possibilit�: puoi usare dvips e Ghostscript, cosa che raccomando
comunque per le ragioni di cui ho gi� parlato, o puoi cercare altri
driver DVI.
Alcuni driver DVI sono stati riscritti per Linux e sono disponibili
gi� compilati. Si trovano nell'archivio Linux sul sito
ftp://sunsite.unc.edu/pub/Linux/apps/tex/dvi/.
Il sito principale su cui viene mantenuta una libreria di driver DVI
si trova all'Universit� dello Utah. Se non riesci a trovare l� un
driver che supporta la tua stampante � molto probabile che non esista.
Puoi anche scrivere da solo il tuo driver DVI usando degli schemi
disponibili l�. L'URL del sito �
ftp://ftp.math.utah.edu/pub/tex/dvi/.
6. Usare font PostScript.
Di solito i font Type 1 di pubblico dominio erano di qualit� molto
minore dei font bit mapped Computer Modern. Questa situazione �
migliorata negli ultimi anni, ma trovare i font che corrispondono
resta compito tuo. Avere molti tipi di font su una macchina pu�
sembrare ridondante e uno spreco di spazio su disco. Inoltre i font
Computer Modern possono sembrare, beh, un po' troppo formali per uso
quotidiano. A volte li paragono a dar da mangiare al cane in una
ciotola di porcellana. Almeno non dovrai pi� spendere un patrimonio
per avere dei font di qualit� professionale.
Uno dei miglioramenti principali di LaTeX2e rispetto ai suoi
predecessori � rappresentato dall'introduzione del New Font Selection
Scheme (adesso si chiama PSNFSS). In passato gli utilizzatori di TeX
dovevano specificare i font con comandi come
\font=bodyroman = cmr10 scaled \magstep 1
che d� risultati molto precisi ma richiede l'abilit� di un disegnatore
di caratteri e di un matematico per essere usato a dovere. Inoltre non
� molto portabile. Se un altro sistema non ha il font cmr10 (questo �
il nome che in TeX viene dato al carattere Computer Modern Roman,
corpo 10, con spessore del tratto medio, predefinito) qualcuno deve
ricodificare le specifiche dei font per l'intero documento. PSNFSS,
invece, ti permette di specificare i font per famiglia (Computer
Modern, URW Nimbus, Helvetica, Utopia e cos� via), tratto (leggero,
medio, grassetto), orientamento (dritto o obliquo), tipo (tondo o
corsivo) e misura (vedi la sezione ``Caratteri e stili'' per una
descrizione dei comandi che consentono di specificare lo stile).
Alcuni font sono archiviati in famiglie. Per esempio, un font Roman
pu� essere archiviato con un font senza grazie, come Helvetica, e un
font a spaziatura fissa, come Courier. Tu, come autore di un documento
LaTeX, puoi specificare un'intera famiglia di font con un comando.
Ci sono, come ho gi� detto, molti font di alta qualit� di pubblico
domino disponibili. Uno di essi � Adobe Utopia, un altro � Bitstream
Charter. Tutti e due sono font di qualit� commerciale che sono stati
donati al pubblico dominio.
Sono anche due dei miei preferiti. Se cerchi su uno dei siti CTAN vi
troverai questi ed altri font. I font in giro sono abbastanza da
permetterti di produrre documenti il cui aspetto � proprio quello che
vuoi, e non solo testi in inglese. TeX � stato concepito in origine
per la composizione di testi matematici, quindi ci sono molti font
disponibili per questo scopo, oltre a font per l'alfabeto cirillico,
greco, kana ed altri troppo numerosi da ricordare.
La cosa importante da cercare sono i file con estensione .pfa o .pfb.
Queste indicano che si tratta proprio dei font scalabili, non solo di
file di metrica. I file di metrica dei font Type 1 hanno estensione
.pfm, in contrapposizione ai file .tfm usati dai font bit mapped. I
due font di cui ho parlato in precedenza sono inclusi nella
distribuzione teTeX, oltre che separatamente.
Ci� che ho detto a proposito della facilit� di selezione dei font con
PSNFSS � vero in questo senso. Se vogliamo usare nel nostro documento
il font Charter invece del Computer Modern, tutto ci� che bisogna fare
� mettere
\renewcommand{\familydefault}{bch}
nel preambolo, dove ``bch'' � la sigla con cui si designa comunemente
il Bitstream Charter. I font Charter si trovano nella directory
/usr/lib/teTeX/texmf/fonts/type1/bitstrea/charter
Qui ci sono i file .pfb dei font Charter: bchb8a.pfb per il Charter
grassetto, bchr8a.pfb per il Charter tondo, bchbi8a.pfb per il Charter
grassetto corsivo. L'``8a'' nel nome del font indica la codifica dei
caratteri. A questo punto non te ne devi preoccupare, perch� la
differenza si ha per i caratteri codificati con 8 bit che hanno valore
maggiore di 128 decimale. Definiscono principalmente gli accenti e
caratteri non inglesi. Le codifiche dei font Type 1 funzionano
generalmente bene per gli alfabeti occidentali perch� sono conformi
allo standard ISO 8859 per gli insiemi di caratteri internazionali,
quindi questo rende ulteriormente vantaggioso il loro uso.
Per comporre un documento in cui sono stati selezionati i font Charter
occorre dare il comando
pslatex document.tex
pslatex � una variante del latex standard di teTeX che definisce le
directory in cui si trovano i font Type 1 e un po' di codice LaTeX da
caricare. Sullo schermo vedrai un avviso di pslatex seguito dalle
informazioni di TeX. In breve tempo avrai un file .dvi che contiene le
richieste per il font Charter. Adesso puoi stampare il file con dvips
e gs, se necessario.
Installare un insieme di font Type 1 non � difficile se segui alcuni
passi fondamentali. Devi decomprimere i font in una sottodirectory di
/usr/lib/teTeX/texmf/fonts/type1, in cui si trovano anche gli altri
font Type 1, e poi eseguire texhash in modo che le routine di ricerca
sappiano che i font sono stati aggiunti. Poi devi aggiungere la
descrizione dei font al file psfonts.map in modo che anche dvips
sappia che si trovano nel sistema. Il formato del file psfonts.map �
descritto in un paio dei testi di cui abbiamo parlato. Ancora, ricorda
di eseguire il programma texhash per aggiornare il database delle
directory di teTeX.
� senz'altro un vantaggio usare il sistema X Windows (XFree86 sotto
Linux) con teTeX, perch� permette di avere anteprime dei documenti di
migliore qualit�. Non � necessario averlo, ma in generale tutto quello
che permette di avere anteprime migliori render� migliore il tuo
lavoro in termini di qualit� dei risultati. Comunque bisogna scendere
a compromessi con la velocit� di editing, che � molto maggiore sul
display a carattere.
7. Appendice A: elenco dei siti CTAN
Questo � il contenuto del file CTAN.sites, che puoi trovare nella
directory principale di ogni sito CTAN.
In order to reduce network load, it is recommended that you use the
Comprehensive TeX Archive Network (CTAN) host which is located in the
closest network proximity to your site. Alternatively, you may wish to
obtain a copy of the CTAN via CD-ROM (see help/CTAN.cdrom for details).
Known mirrors of the CTAN reside on (alphabetically):
cis.utovrm.it (Italia) /TeX
ctan.unsw.edu.au (NSW, Australia) /tex-archive
dongpo.math.ncu.edu.tw (Taiwan) /tex-archive
ftp.belnet.be (Belgium) /packages/TeX
ftp.ccu.edu.tw (Taiwan) /pub/tex
ftp.cdrom.com (West coast, USA) /pub/tex/ctan
ftp.comp.hkbu.edu.hk (Hong Kong) /pub/TeX/CTAN
ftp.cs.rmit.edu.au (Australia) /tex-archive
ftp.cs.ruu.nl (The Netherlands) /pub/tex-archive
ftp.cstug.cz (The Czech Republic) /pub/tex/CTAN
ftp.duke.edu (North Carolina, USA) /tex-archive
ftp.funet.fi (Finland) /pub/TeX/CTAN
ftp.gwdg.de (Deutschland) /pub/dante
ftp.jussieu.fr (France) /pub4/TeX/CTAN
ftp.kreonet.re.kr (Korea) /pub/CTAN
ftp.loria.fr (France) /pub/unix/tex/ctan
ftp.mpi-sb.mpg.de (Deutschland) /pub/tex/mirror/ftp.dante.de
ftp.nada.kth.se (Sweden) /pub/tex/ctan-mirror
ftp.oleane.net (France) /pub/mirrors/CTAN/
ftp.rediris.es (Espa\~na) /mirror/tex-archive
ftp.rge.com (New York, USA) /pub/tex
ftp.riken.go.jp (Japan) /pub/tex-archive
ftp.tu-chemnitz.de (Deutschland) /pub/tex
ftp.u-aizu.ac.jp (Japan) /pub/tex/CTAN
ftp.uni-augsburg.de (Deutschland) /tex-archive
ftp.uni-bielefeld.de (Deutschland) /pub/tex
ftp.unina.it (Italia) /pub/TeX
ftp.uni-stuttgart.de (Deutschland) /tex-archive (/pub/tex)
ftp.univie.ac.at (\"Osterreich) /packages/tex
ftp.ut.ee (Estonia) /tex-archive
ftpserver.nus.sg (Singapore) /pub/zi/TeX
src.doc.ic.ac.uk (England) /packages/tex/uk-tex
sunsite.auc.dk (Denmark) /pub/tex/ctan
sunsite.cnlab-switch.ch (Switzerland) /mirror/tex
sunsite.icm.edu.pl (Poland) /pub/CTAN
sunsite.unc.edu (North Carolina, USA) /pub/packages/TeX
wuarchive.wustl.edu (Missouri, USA) /packages/TeX
Known partial mirrors of the CTAN reside on (alphabetically):
ftp.adfa.oz.au (Australia) /pub/tex/ctan
ftp.fcu.edu.tw (Taiwan) /pub2/tex
ftp.germany.eu.net (Deutschland) /pub/packages/TeX
ftp.gust.org.pl (Poland) /pub/TeX
ftp.jaist.ac.jp (Japan) /pub/TeX/tex-archive
ftp.uu.net (Virginia, USA) /pub/text-processing/TeX
nic.switch.ch (Switzerland) /mirror/tex
sunsite.dsi.unimi.it (Italia) /pub/TeX
sunsite.snu.ac.kr (Korea) /shortcut/CTAN
Please send updates to this list to <
[email protected]>.
The participating hosts in the Comprehensive TeX Archive Network are:
ftp.dante.de (Deutschland)
-- anonymous ftp /tex-archive (/pub/tex /pub/archive)
-- gopher on node gopher.dante.de
-- e-mail via
[email protected]
-- World Wide Web access on www.dante.de
-- Administrator: <
[email protected]>
ftp.tex.ac.uk (England)
-- anonymous ftp /tex-archive (/pub/tex /pub/archive)
-- gopher on node gopher.tex.ac.uk
-- NFS mountable from nfs.tex.ac.uk:/public/ctan/tex-archive
-- World Wide Web access on www.tex.ac.uk
-- Administrator: <
[email protected]>
8. Appendice B: Installare la distribuzione generica CTAN di teTeX
La distribuzione teTeX generica non � pi� difficile da installare
degli altri pacchetti Linux. Vedi la sezione ``La distribuzione
generica CTAN''.
L'installazione della distribuzione teTeX generica CTAN dovrebbe
essere presa in seria considerazione se:
� Il tuo sistema non � basato su una delle distribuzioni standard di
Linux.
� Non hai privilegi da amministratore (root) del tuo sistema.
� Vuoi o hai bisogno della pi� recente versione di teTeX, o LaTeX.
� Non hai abbastanza spazio su disco per un'installazione completa.
� Vuoi installare teTeX da qualche altra parte che non sia il file
system /usr.
� Vorresti condividere la tua installazione di teTeX su una rete su
cui si trovano sistemi che montano una diversa variante di UNIX. In
questo caso, dovresti seriamente considerare la possibilit� di
installare il codice sorgente. Vedi la sezione ``Installazione
della distribuzione sorgente CTAN''.
� Vuoi avere l'ultima versione dei font di pubblico dominio Type 1 di
teTeX, che sono migliori dei font inclusi con le versioni pi�
vecchie.
Un'installazione completa della distribuzione binaria richiede 40-50
Mb di spazio su disco, e compilare la distribuzione a partire dal
codice sorgente richiede circa 75 Mb, quindi assicurati di avere
questo spazio su disco prima di cominciare. Non c'� bisogno del
compilatore gcc o del sistema X Windows (comunque X � certamente di
aiuto perch� rende facile avere un'anteprima dei documenti sullo
schermo). Tutto ci� di cui hai bisogno � un editor in grado di
produrre testo in formato ASCII standard (vedi la sezione 2). Cosa c'�
di pi� semplice?
Puoi procurarti i file da uno dei siti CTAN elencati nella sezione
``Appendice A''. Negli esempi che seguono, i file sono stati presi dal
sito CTAN ftp.tex.ac.uk.
8.1. Installazione della distribuzione binaria.
8.1.1. Installazione minima.
Per prima cosa, collegati al sito FTP ftp.tex.ac.uk, e vai (cd) nella
directory
ctan/tex-archive/systems/unix/teTeX/distrib/
Scarica i file
INSTALL.bin
install.sh
e mettili nella directory di livello pi� alto nella quale vuoi instal�
lare teTeX (quella che conterr� tutti i componenti necessari al fun�
zionamento di teTeX: file e directory): per esempio /var/teTeX se vuoi
installare teTeX nel file system /var
Stampa il file INSTALL.bin. Tienilo a portata di mano, poich� spiega
come effettuare un'installazione minima di teTeX. L'installazione
minima richiede solo 10-15 Mb di spazio su disco, ma la cosa migliore
� sicuramente installare tutto il pacchetto teTeX se possibile. Per
l'installazione minima avrai bisogno dei file:
ctan/tex-archive/systems/unix/teTeX/distrib/base/latex-base.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/base/tetex-base.tar.gz
Avrai bisogno anche di uno dei due file compressi che contengono i
programmi teTeX in forma eseguibile. Scarica il file:
ctan/tex-archive/systems/unix/teTeX/distrib/binaries/i386-linux.tar.gz
se il tuo sistema usa le librerie condivise ELF di Linux, ld.so ver�
sione 1.73 o superiore, e clibs versione 5.09 o superiore. Altrimenti
prendi il file
ctan/tex-archive/systems/unix/teTeX/distrib/binaries/i386-linuxaout.tar.gz
che � compilato per sistemi che usano le vecchie librerie statiche per
il formato a.out.
Poi, seguendo le istruzioni nel file INSTALL.bin, esegui il comando
sh ./install.sh
dalla directory di livello pi� alto di teTeX (assicurati che anche i
file compressi di teTeX si trovino l�). Dopo un po' il programma di
installazione ti avvertir� della mancanza di alcuni dei pacchetti di
teTeX. Comunque, se quello che vuoi � un'installazione minima di
teTeX, puoi ignorare l'avvertimento e continuare. Per la configu�
razione di base del sistema teTeX, vedi la sezione ``Configurazione di
base del sistema''.
Per installare gli altri pacchetti consulta la sezione seguente.
8.1.2. Installazione completa.
Per eseguire un'installazione completa di teTeX scarica, oltre ai file
elencati nella sezione precedente, i seguenti:
ctan/tex-archive/systems/unix/teTeX/distrib/doc/ams-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/doc/bibtex-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/doc/eplain-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/doc/fonts-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/doc/general-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/doc/generic-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/doc/latex-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/doc/makeindex-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/doc/metapost-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/doc/programs-doc.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/fonts/ams-fonts.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/fonts/dc-fonts.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/fonts/ec-fonts.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/fonts/misc-fonts.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/fonts/postscript-fonts.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/fonts/sauter-fonts.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/goodies/amstex.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/goodies/bibtex.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/goodies/eplain.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/goodies/latex-extra.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/goodies/metapost.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/goodies/pictex.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/goodies/pstricks.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/goodies/texdraw.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/goodies/xypic.tar.gz
Tutti questi dovrebbero essere messi nella directory di livello pi�
alto di teTeX. Come per l'installazione minima, esegui il comando
sh ./install.sh
8.2. Configurazione di base del sistema.
Lo script install.sh dopo aver determinato quali file di teTeX sono
presenti, ti presenter� un menu con una serie di opzioni. L'unica
scelta che devi fare a questo punto riguarda la directory di livello
pi� alto in cui vuoi che teTeX sia installato (opzione ``D''). Devi,
naturalmente, scegliere una directory sulla cui directory padre hai
privilegi di scrittura. Per esempio, se volessi installare teTeX sulla
tua directory home, dovresti specificare la directory su cui
installare teTeX nel modo seguente:
/home/john.q.public/teTeX
e, ritornato al menu principale, scegliere ``I'' per continuare con
l'installazione. Non � necessario che la directory esista gi�: lo
script install.sh � in grado di crearla.
Un opzione che vale la pena usare � quella che consente di scegliere
una directory alternativa per i font generati. Anche se pensi di dover
usare solo font PostScript Type 1, potresti dover elaborare un file
che richiede i font Computer Modern. Questa opzione richiede
l'inserimento della directory da usare. Devi avere privilegi di
scrittura sul padre di questa directory. Seguendo l'esempio
precedente, potresti specificare:
/home/john.q.public/texfonts
o, se vuoi che i font generati siano accessibili da tutti gli utenti
del sistema, specifica una directory come
/var/texfonts
La mia raccomandazione � quella di non usare la directory proposta per
questa opzione, /var/tmp/texfonts, perch� i font generati potrebbero
essere cancellati al successivo riavvio e dovrebbero essere generati
ancora qualora fossero di nuovo necessari.
Dopo che hai scelto l'opzione ``I'' e install.sh ha installato i file,
impostato i permessi e generato link e file di formato, il programma
terminer� con un messaggio che dice di aggiungere alla variabile di
ambiente $PATH la directory in cui sono installati i programmi di
teTeX, e quelle in cui si trovano le pagine di manuale ed i file di
informazioni alle variabili $MANPATH e $INFOPATH. Per esempio,
aggiungi le seguenti linee:
export PATH=$PATH:"/home/john.q.public/teTeX/bin"
export MANPATH=$MANPATH":/home/john.q.public/teTeX/man"
export INFOPATH$=INFOPATH":/home/john.q.public/teTeX/info"
al tuo ~/.bash_profile se bash � la tua shell, o al tuo ~/.profile se
usi un'altra shell.
Scollegati (log out) e ricollegati (log in), in modo che le variabili
di ambiente siano registrate. Poi esegui il comando
texconfig confall
per assicurarti che l'installazione sia corretta.
Puoi poi configurare specificamente teTeX per il tuo hardware. Vedi la
sezione ``Dettagli sulla configurazione dopo l'installazione''.
8.2.1. Installazione della distribuzione sorgente CTAN.
Per installare il codice sorgente di teTeX V. 0.4, collegati via FTP
ad un sito CTAN come
ftp://ftp.tex.ac.uk e scarica i seguenti file:
ctan/tex-archive/systems/unix/teTeX/distrib/INSTALL.src
ctan/tex-archive/systems/unix/teTeX/distrib/sources/README.texmf-src
ctan/tex-archive/systems/unix/teTeX/distrib/sources/teTeX-lib-0.4pl8.tar.gz
ctan/tex-archive/systems/unix/teTeX/distrib/sources/teTeX-src-0.4pl7.tar.gz
Leggi le istruzioni in INSTALL.src, poi collegati come root e
decomprimi i file in una directory sulla quale hai privilegi di
lettura, scrittura ed esecuzione.
Ricorda di usare tar con l'argomento p, e l'opzione noclobber di bash.
Puoi fare questo usando il comando non intuitivo
set +o noclobber
L'argomento +o di set serve a non impostare una variabile, esattamente
il contrario di quello che ci si potrebbe aspettare (``set'' significa
``impostare'').
Il file teTeX-lib-0.4pl8.tar.gz creer� la directory ./teTeX. Il file
teTeX-src-0.4pl7.tar.gz creer� la directory teTeX-src-0.4. Stampa il
file INSTALL.src e tienilo a portata di mano per i passi seguenti.
Passa alla directory ./teTeX-src-0.4 e, seguendo le istruzioni nel
file INSTALL.src, modifica il ./Makefile. Devi assegnare alla
variabile TETEXDIR il percorso assoluto della sottodirectory teTeX
della directory in cui hai decompresso il codice sorgente e le
librerie. Per esempio, se hai decompresso i file nella tua directory
home, assegna a TETEXDIR
/home/john.q.public/teTeX
Le rimanenti opzioni del Makefile sono piuttosto generiche. Con la
versione 2.7.2 e successive di GCC non ci dovrebbe essere bisogno di
altre modifiche, a meno che tu non abbia un compilatore e delle
librerie non standard, o che tu voglia ulteriori ottimizzazioni, o per
qualche altro motivo. Assicurati che le variabili USE_DIALOG,
USE_NCURSES, e HAVE_NCURSES siano impostate correttamente per il tuo
sistema, perch� il programma dialog ha bisogno delle librerie ncurses.
Una libreria ncurses � inclusa nella distribuzione sorgente, per cui i
valori gi� presenti nel Makefile dovrebbero andar bene. Se non riesci
a compilare o linkare ncurses, texconfig pu� essere eseguito anche
dalla linea di comando.
Se hai fatto tutto correttamente fino a questo punto, dopo essere
andato sulla directory di livello pi� alto in cui hai installato i
sorgenti, dovresti poter digitare make world e rilassarti finch� gli
eseguibili di teTeX non sono stati compilati. Ci possono volere anche
alcune ore.
Una volta che la compilazione � terminata, aggiungi le directory di
teTeX alle variabili di ambiente $PATH, $MANPATH, e $INFOPATH.
Continuando con l'esempio precedente, le linee che dovrebbero essere
aggiunte al file ~/.bash_profile, sono:
export PATH=$PATH":/home/john.q.public/teTeX/bin/i386-linux"
export MANPATH=$MANPATH":/home/john.q.public/teTeX/man"
export INFOPATH=$INFOPATH":/home/john.q.public/teTeX/info"
La variabile $PATH � diversa nella distribuzione sorgente e nella dis�
tribuzione binaria. Nota che ora la directory in cui si trovano gli
eseguibili � teTeX/bin/i386-linux invece di teTeX/bin come nella dis�
tribuzione binaria.
A questo punto puoi eseguire texconfig confall per assicurarti che i
percorsi sono stati correttamente impostati, e poi precedere a
configurare teTeX come nella distribuzione binaria. Vedi la sezione
``Dettagli sulla configurazione dopo l'installazione''.
9. Dettagli sulla configurazione dopo l'installazione.
La prima cosa da fare � leggere il file README scritto dallo stesso
Thomas Esser. Descrive molti trucchi sulla configurazione di teTeX per
i tuoi dispositivi di uscita (per esempio la stampante). Il file
README si trova nella directory
/usr/lib/teTeX/texmf/doc/tetex
Leggi il file con il comando (i percorsi usati negli esempi seguenti
si riferiscono alla distribuzione Slackware):
less /usr/lib/teTeX/texmf/doc/tetex/README
oppure stampalo con il comando
cat /usr/lib/teTeX/texmf/doc/tetex/README >/dev/lp0
se la tua stampante � collegata a /dev/lp0; altrimenti sostituisci il
file di dispositivo relativo alla porta a cui la tua stampante � col�
legata.
Ancora meglio, stampalo usando il comando lpr:
lpr /usr/lib/teTeX/texmf/doc/tetex/README
Dovresti avere gi� installato il demone di stampa incluso nella tua
distribuzione di Linux. Altrimenti installalo adesso seguendo le
istruzioni comprese nel pacchetto.
Stampa il teTeX-FAQ, e tienilo a portata di mano perch� contiene utili
consigli su come configurare i driver per la tua stampante. Ci
arriveremo tra poco. Nelle versioni pi� recenti di teTeX, il teTeX-FAQ
� accessibile anche attraverso texconfig.
Adesso � bene definire una directory in cui conservare i tuoi file di
formato TeX. teTeX cerca questi file nelle directory elencate dalla
variabile d'ambiente $TEXINPUTS:
export TEXINPUTS=".:~/texinputs:"
al file /etc/profile, che � valido per tutti gli utenti. Ciascun
utente pu� poi definire le proprie directory aggiungendole al file
~/.profile o ~/.bash_profile se bash � la shell che usano. La vari�
abile d'ambiente $TEXINPUTS dice a teTeX di cercare i file di stile di
TeX nella directory ~/texinputs contenuta nella directory di ciascun
utente. � fondamentale che un ``:'' appaia prima e dopo questa direc�
tory. teTeX aggiunger� le sue directory di ricerca alla tua. Poich� �
probabile che tu voglia che vengano usati i file di formato da te
definiti, teTeX usa le versioni dei file di formato che si trovano
nella directory in cui ti trovi quando viene eseguito.
Aggiungi la directory /usr/lib/teTeX/bin ai percorsi di sistema se
stai installando teTeX come amministratore. Se ne stai installando una
copia personale aggiungi la directory che contiene i file binari di
teTeX all'inizio della tua variabile d'ambiente $PATH aggiungendo la
linea seguente al tuo ~/.profile o ~/.bash_profile:
export PATH="~/tetex/bin:"$PATH
Adesso, collegati come root ed esegui texconfig seguendo le istruzioni
sul teTeX-FAQ e scegli la stampante collegata al tuo sistema. Assicu�
rati di configurare in teTeX sia la stampante che la risoluzione di
stampa corrette.
Infine, esegui il programma texhash. Questo assicura che il database
interno di teTeX sia aggiornato. Il database � in effetti un file ls-
lR. � necessario eseguire texhash ogni volta che si cambia la
configurazione di sistema, altrimenti teTeX non � in grado di
determinare i cambiamenti.
10. Appendice C: Distribution and Copyright (in lingua originale).
10.1. Distribution.
teTeX is free software; this means everyone is free to use the
software and free to redistribute it on certain conditions. The
package is not in the public domain. It is copyrighted and there are
restrictions on its distribution, but these restrictions are designed
to permit everything that a good cooperating citizen would want to do.
What is not allowed is to try to prevent others from further sharing
any version of free software that they might get from you. The
precise conditions are found in the GNU General Public License that
comes with many of the software packages and also appears following
this section.
One way to get a copy of the package is from someone else who has it.
You need not ask for our permission to do so, or tell any one else;
just copy it. If you have access to the Internet, you can get the
latest distribution versions by anonymous FTP. See the chapter
``Sources'' for more information.
You may also receive the software when you buy a computer. Computer
manufacturers are free to distribute copies on the same terms that
apply to everyone else. These terms require them to give you the full
sources, including whatever changes they may have made, and to permit
you to redistribute these packages received from them under the usual
terms of the General Public License. In other words, the program must
be free for you when you get it, not just free for the manufacturer.
You can also order copies of GNU software from the Free Software
Foundation on CD-ROM. This is a convenient and reliable way to get a
copy; it is also a good way to help fund our work. (The Foundation
has always received most of its funds in this way.) An order form is
included many distribution, and on our web site in
http://www.gnu.ai.mit.edu/order/order.html. For further information,
write to
Free Software Foundation
59 Temple Place, Suite 330
Boston, MA 02111-1307 USA
USA
The income from distribution fees goes to support the foundation's
purpose: the development of new free software, and improvements to our
existing programs.
If you use GNU software at your workplace, please suggest that the
company make a donation. If company policy is unsympathetic to the
idea of donating to charity, you might instead suggest ordering a CD-
ROM from the Foundation occasionally, or subscribing to periodic
updates.
Insomma: teTeX � free: pu� essere ridistribuito liberamente. I termini
precisi sono quelli descritti nella General Public License. I
fabbricanti di computer possono distribuirlo con i computer da loro
venduti purch� includano anche il codice sorgente e tutte le eventuali
modifiche da loro effettuate a quest'ultimo. Copie del software GNU
pu� essere ordinato all'indirizzo della Free Software Foundation
indicato sopra. Questo � anche un modo per supportare la Free Software
Foundation.
10.2. GNU GENERAL PUBLIC LICENSE
Nota: una versione in italiano NON UFFICIALE della General Public
License si trova a
http://animal.unipv.it/GNU/gpl.txt
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple
Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.
Preamble.
The licenses for most software are designed to take away your freedom
to share and change it. By contrast, the GNU General Public License
is intended to guarantee your freedom to share and change free
software---to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if
you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on,
we want its recipients to know that what they have is not the
original, so that any problems introduced by others will not reflect
on the original authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at
all.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
� This License applies to any program or other work which contains a
notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The ``Program''
below, refers to any such program or work, and a ``work based on
the Program'' means either the Program or any derivative work under
copyright law: that is to say, a work containing the Program or a
portion of it, either verbatim or with modifications and/or
translated into another language. (Hereinafter, translation is
included without limitation in the term,``modification.'') Each
licensee is addressed as ``you.''
Activities other than copying, distribution and modification are
not covered by this License; they are outside its scope. The act
of running the Program is not restricted, and the output from the
Program is covered only if its contents constitute a work based on
the Program (independent of having been made by running the
Program). Whether that is true depends on what the Program does.
� You may copy and distribute verbatim copies of the Program's source
code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any
warranty; and give any other recipients of the Program a copy of
this License along with the Program.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange
for a fee.
� You may modify your copy or copies of the Program or any portion of
it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
1. You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
2. You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
3. If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a notice
that there is no warranty (or else, saying that you provide a
warranty) and that users may redistribute the program under these
conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but does
not normally print such an announcement, your work based on the
Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the
Program, and can be reasonably considered independent and separate
works in themselves, then this License, and its terms, do not apply
to those sections when you distribute them as separate works. But
when you distribute the same sections as part of a whole which is a
work based on the Program, the distribution of the whole must be on
the terms of this License, whose permissions for other licensees
extend to the entire whole, and thus to each and every part
regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or
contest your rights to work written entirely by you; rather, the
intent is to exercise the right to control the distribution of
derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the
Program with the Program (or with a work based on the Program) on a
volume of a storage or distribution medium does not bring the other
work under the scope of this License.
� You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms
of Sections 1 and 2 above provided that you also do one of the
following:
1. Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software
interchange; or,
2. Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your cost
of physically performing source distribution, a complete machine-
readable copy of the corresponding source code, to be distributed
under the terms of Sections 1 and 2 above on a medium customarily
used for software interchange; or,
3. Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such an
offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete
source code means all the source code for all modules it contains,
plus any associated interface definition files, plus the scripts
used to control compilation and installation of the executable.
However, as a special exception, the source code distributed need
not include anything that is normally distributed (in either source
or binary form) with the major components (compiler, kernel, and so
on) of the operating system on which the executable runs, unless
that component itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
� You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this
License. However, parties who have received copies, or rights,
from you under this License will not have their licenses terminated
so long as such parties remain in full compliance.
� You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify
or distribute the Program or its derivative works. These actions
are prohibited by law if you do not accept this License.
Therefore, by modifying or distributing the Program (or any work
based on the Program), you indicate your acceptance of this License
to do so, and all its terms and conditions for copying,
distributing or modifying the Program or works based on it.
� Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject
to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted
herein. You are not responsible for enforcing compliance by third
parties to this License.
� If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent
issues), conditions are imposed on you (whether by court order,
agreement or otherwise) that contradict the conditions of this
License, they do not excuse you from the conditions of this
License. If you cannot distribute so as to satisfy simultaneously
your obligations under this License and any other pertinent
obligations, then as a consequence you may not distribute the
Program at all. For example, if a patent license would not permit
royalty-free redistribution of the Program by all those who receive
copies directly or indirectly through you, then the only way you
could satisfy both it and this License would be to refrain entirely
from distribution of the Program.
If any portion of this section is held invalid or unenforceable
under any particular circumstance, the balance of the section is
intended to apply and the section as a whole is intended to apply
in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of
any such claims; this section has the sole purpose of protecting
the integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is
willing to distribute software through any other system and a
licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed
to be a consequence of the rest of this License.
� If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces,
the original copyright holder who places the Program under this
License may add an explicit geographical distribution limitation
excluding those countries, so that distribution is permitted only
in or among countries not thus excluded. In such case, this
License incorporates the limitation as if written in the body of
this License.
� The Free Software Foundation may publish revised and/or new
versions of the General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies a version number of this License which applies to
it and ``any later version,'' you have the option of following the
terms and conditions either of that version or of any later version
published by the Free Software Foundation. If the Program does not
specify a version number of this License, you may choose any
version ever published by the Free Software Foundation.
� If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the
author to ask for permission. For software which is copyrighted by
the Free Software Foundation, write to the Free Software
Foundation; we sometimes make exceptions for this. Our decision
will be guided by the two goals of preserving the free status of
all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
� BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE
LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS
AND/OR OTHER PARTIES PROVIDE THE PROGRAM ``AS IS'' WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND
PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE
DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR
OR CORRECTION.
� IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY
MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE
LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU
OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY
OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
10.3. How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these
terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the ``copyright'' line and a pointer to where the full notice is
found.
[one line to give the program's name and an idea of what it does.
Copyright (C) 19[yy] [name of author]
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
Also add information on how to contact you by electronic and paper
mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19[yy] [name of author]
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands ``show w'' and ``show c'' should show the
appropriate parts of the General Public License. Of course, the
commands you use may be called something other than ``show w'' and
``show c''; they could even be mouse-clicks or menu items---whatever
suits your program.
You should also get your employer (if you work as a programmer) or
your school, if any, to sign a ``copyright disclaimer'' for the
program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
[signature of Ty Coon] 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library,
you may consider it more useful to permit linking proprietary
applications with the library. If this is what you want to do, use
the GNU Library General Public License instead of this License.