From 6144e158828b4bf657bf525ddbb73c73725af6d5 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 29 Mar 2013 21:29:15 +0000 Subject: toptesi (28mar13) git-svn-id: svn://tug.org/texlive/trunk@29550 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/toptesi/README | 4 +- Master/texmf-dist/doc/latex/toptesi/manifest.txt | 4 +- .../doc/latex/toptesi/toptesi-doc-xetex-a.pdf | Bin 1953258 -> 2598657 bytes .../doc/latex/toptesi/toptesi-doc-xetex.pdf | Bin 363051 -> 364725 bytes .../doc/latex/toptesi/toptesi-doc-xetex.tex | 158 ++++++++------- .../doc/latex/toptesi/toptesi-example.pdf | Bin 357967 -> 435070 bytes .../doc/latex/toptesi/toptesi-example.tex | 19 +- Master/texmf-dist/source/latex/toptesi/toptesi.dtx | 216 ++++++++++++--------- Master/texmf-dist/tex/latex/toptesi/topcoman.sty | 2 +- Master/texmf-dist/tex/latex/toptesi/topfront.sty | 8 +- Master/texmf-dist/tex/latex/toptesi/toptesi.cls | 6 +- Master/texmf-dist/tex/latex/toptesi/toptesi.sty | 32 +-- Master/tlpkg/libexec/ctan2tds | 114 ++++++++--- 13 files changed, 329 insertions(+), 234 deletions(-) diff --git a/Master/texmf-dist/doc/latex/toptesi/README b/Master/texmf-dist/doc/latex/toptesi/README index 84934690b8a..eaa348f6940 100644 --- a/Master/texmf-dist/doc/latex/toptesi/README +++ b/Master/texmf-dist/doc/latex/toptesi/README @@ -1,5 +1,5 @@ -TOPtesi bundle version 5.7 of 2013/03/08 -Copyright 2012 Claudio Beccari +TOPtesi bundle version 5.71 of 2013/03/28 +Copyright 2013 Claudio Beccari LaTeX Project Public Licence LPPL v.1.3 (or later) The TOPtesi bundle contains everything is needed for typesetting a diff --git a/Master/texmf-dist/doc/latex/toptesi/manifest.txt b/Master/texmf-dist/doc/latex/toptesi/manifest.txt index e9f4ae93792..61082ca99f8 100644 --- a/Master/texmf-dist/doc/latex/toptesi/manifest.txt +++ b/Master/texmf-dist/doc/latex/toptesi/manifest.txt @@ -1,5 +1,5 @@ -manifest.txt (version 5.70) -Copyright 2008-2012 Claudio Beccari +manifest.txt (version 5.71) +Copyright 2008-2013 Claudio Beccari This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 of this license or diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex-a.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex-a.pdf index c6069fc584c..21513c4b756 100644 Binary files a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex-a.pdf and b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex-a.pdf differ diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.pdf index a6f2e3897d0..006ac852b88 100755 Binary files a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.pdf and b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.pdf differ diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.tex b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.tex index 620e732fac1..017c080ec1a 100644 --- a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.tex +++ b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.tex @@ -131,7 +131,7 @@ progettato e implementato da un matematico per comporre i suoi stessi libri di informatica; (b) egli l'ha messo a disposizione di chiunque, sin dal primo momento, come software libero. -Oggi il software libero è piuttosto diffuso, ma nel 1978 parlare +Oggi il software libero è piuttosto diffuso, ma nel 1978 parlare di software libero era quasi una bestemmia. D'altra parte Donald E.\ Knuth non era soddisfatto della bassa @@ -179,7 +179,7 @@ una reliquia preziosa. Ovviamente \LaTeX\ serve per scrivere qualunque cosa; o meglio; serve per comporre tipograficamente qualunque testo. \LaTeX\ non è -un programma di impaginazione, è un programma di composizione +un programma di impaginazione, è un programma di composizione tipografica. Non aspettatevi quindi di poter fare qualunque acrobazia con le righe di testo, come per esempio piegare le righe, deformando i caratteri che vi sono appoggiati sopra, @@ -201,7 +201,7 @@ macroistruzioni chiamato \textsf{TOPtesi} dovrete astenervi dall'introdurre errori compositivi così da vanificare quanto di bello riesce a produrre \LaTeX. -Inizialmente vi troverete un po' a disagio perché vi siete +Inizialmente vi troverete un po' a disagio perché vi siete abituati anche voi ai programmi commerciali che consentono la ``composizione sincrona''; vi consentono di vedere subito sullo schermo il frutto del vostro lavoro. Per ottenere questo risultato @@ -221,9 +221,9 @@ spesso quando si usa un word processor comune. Attenzione: questa guida presuppone che voi abbiate già uno conoscenza di base del linguaggio di \emph{mark-up} di \LaTeX. Se non l'avete ancora, installate pure il programma, ma non usate questa guida per imparare a comporre testi con \LaTeX. Esistono diversi testi gratuiti in rete, da \emph{\LaTeX\ per l'impaziente} a \emph{L'arte di scrivere con \LaTeX} a \emph{Introduzione all'arte della composizione tipografica con \LaTeX}; vi basta cercare questi titoli con un qualunque motore di ricerca e troverete da dove scaricarli. -Ricordatevi però che il vostro primo problema sarà quello di superare lo scoglio psicologico di non vedere subito il frutto delle vostre fatiche; abituati come siete ai word processor che seguono il paradigma \emph{What you see is what you get}, che più realisticamente andrebbe scritto \emph{What you see is all you can get} (Quello che vedi e tutto quel che puoi ottenere), dovete passare al paradigma: \emph{What you see is what you mean}, dove l'aspetto grafico di quel che si vede sullo schermo del PC in fase di composizione non è importante, ma è importante quello che avete scritto; il suo aspetto grafico gli verrà dato da \LaTeX\ in un secondo tempo e in una maniera estremamente professionale. Non pretendo di dire che non si possano scrivere tesi ancora più professionali di come si ottengono con \textsf{TOPtesi}, ma certo il risultato è molto migliore di quello che si può ottenere con qualsiasi word processor. +Ricordatevi però che il vostro primo problema sarà quello di superare lo scoglio psicologico di non vedere subito il frutto delle vostre fatiche; abituati come siete ai word processor che seguono il paradigma \emph{What you see is what you get} (Quello che vedi è quello che ottieni), che più realisticamente andrebbe scritto \emph{What you see is all you can get} (Quello che vedi è tutto quel che puoi ottenere), dovete passare al paradigma: \emph{What you see is what you mean}, dove l'aspetto grafico di quel che si vede sullo schermo del PC in fase di composizione non è importante, ma è importante quello che avete scritto; il suo aspetto grafico gli verrà dato da \LaTeX\ in un secondo tempo e in una maniera estremamente professionale. Non pretendo di dire che non si possano scrivere tesi ancora più professionali di come si ottengono con \textsf{TOPtesi}, ma certo il risultato è molto migliore di quello che si può ottenere con qualsiasi word processor. -Vi sconsiglio fortemente di lasciarvi ``attrarre'' dall'usare programmi come LyX o TeXmacs' vi danno l'illusione di comporre come fareste con un comune word processor, anzi TeXmacs usa gli stessi font che userebbe \LaTeX; è tutta una illusione; la comodità del comporre in modo da vedere sullo schermo qualcosa che vorrebbe essere molto simile a quanto \LaTeX\ produrrà, vi distrae dal vostro compito di fare attenzione al significato di quello che scrivete, e vi mettete a ``giocare'' con la sua forma. Non solo, ma quando vorrete estendere le capacità di presentare il testo alla \LaTeX\ di quello che volete scrivere, scoprirete ben presto che con LyX e difficile e con TeXmacs è impossibile. +Vi sconsiglio fortemente di lasciarvi ``attrarre'' dall'usare programmi come LyX o TeXmacs' vi danno l'illusione di comporre come fareste con un comune word processor, anzi TeXmacs usa gli stessi font che userebbe \LaTeX; è tutta una illusione; la comodità del comporre in modo da vedere sullo schermo qualcosa che vorrebbe essere molto simile a quanto \LaTeX\ produrrà, vi distrae dal vostro compito di fare attenzione al significato di quello che scrivete, e vi mettete a ``giocare'' con la sua forma. Non solo, ma quando vorrete estendere le capacità di presentare il testo che volete scrivere alla ``\LaTeX'', scoprirete ben presto che con LyX è difficile e con TeXmacs è impossibile. Procuratevi invece un ottimo \emph{shell editor} predisposto per lavorare con \LaTeX\ e, possibilmente, anche con \XeLaTeX; supererete ben presto l'imbarazzo di non poter vedere subito il risultato del vostro scrivere, ma sarete abbondantemente ricompensati dalle infinite possibilità compositive dei programmi del sistema \TeX. Più avanti ne parlerò diffusamente, ma qui ho voluto avvisarvi subito di non farvi incantare dal canto delle sirene come LyX e TeXmacs. @@ -237,16 +237,16 @@ Ci sono sostanzialmente tre situazioni: \begin{enumerate} \item se siete degli utenti delle piattaforme Windows allora collegatevi in rete al sito \texttt{www.miktex.org} e scaricatevi ed installatevi la distribuzione di \LaTeX, o meglio, del sistema \TeX\ chiamato MiK\TeX. Scaricatevi l'installazione completa, anche se potreste installarvi la versione di base \texttt{small-miktex} che, seguendo le istruzioni di installazione, potreste configurare in modo da consentirgli di scaricare dalla rete ogni possibile pacchetto di estensione che possa via via esservi necessario. -Ovviamente questo scaricamento implica una connessione di rete sufficientemente veloce; personalmente ero solito scaricare la versione completa. Poi ho cambiato piattaforma (sono passato ad una marca che sembra di origine scozzese) e non uso più MiKTeX (che però ho usato con la massima soddisfazione fin dai suoi primi passi). +Ovviamente questo scaricamento implica una connessione di rete sufficientemente veloce; personalmente ero solito scaricare la versione completa. Poi ho cambiato piattaforma (sono passato ad una marca che sembra di origine scozzese) e non uso più MiKTeX (che però ho usato con la massima soddisfazione fin dai suoi primi passi). -Oggi su una macchina Windows preferirei installare la versione TeX Live che viene gestita nello stesso modo sia sulle piattaforme Windows, Linux e Mac. Il pregio è che la versione TeX Live viene aggiornata quasi quotidianamente sui server e comunque è la versione dalla quale Christian Schenk (il curatore di MiKTeX) attinge per creare gli aggiornamenti di MiKTeX; necessariamente, quindi, prima che Christian sia riuscito a portare MiK\TeX\ allo stesso livello di TeX Live, passano di solito alcune settimane, a volte anche di più; non voglio togliere niente alla bravura di Christian, ma il progetto MiK\TeX\ è il lavoro di un solo uomo, mentre TeX Live è il frutto del lavoro di una squadra completa e attivissima. -Disponendo di TeX Live sulle tre piattaforme che sono solito usare, Windows XP, Ubuntu Linux e Mac, saltuariamente aggiorno ciascuna installazione, mediante un comodo TeX Live Manager con interfaccia grafica, diciamo ogni due o tre settimane, per cui il mio software è sempre aggiornatissimo; lo consiglio anche a voi. +Oggi su una macchina Windows preferirei installare la distribuione TeX Live che viene gestita nello stesso modo sia sulle piattaforme Windows, Linux e Mac. Il pregio è che la versione TeX Live viene aggiornata quasi quotidianamente sui server e comunque è la versione dalla quale Christian Schenk (il curatore di MiKTeX) attinge per creare gli aggiornamenti di MiKTeX; necessariamente, quindi, prima che Christian sia riuscito a portare MiK\TeX\ allo stesso livello di TeX Live, passano di solito alcune settimane, a volte anche di più; non voglio togliere niente alla bravura di Christian, ma il progetto MiK\TeX\ è il lavoro di un solo uomo, mentre TeX Live è il frutto del lavoro di una squadra completa e attivissima. +Disponendo di TeX Live sulle tre piattaforme che sono solito usare, Windows XP, Ubuntu Linux e Mac, saltuariamente aggiorno ciascuna installazione, mediante un comodo TeX Live Manager con interfaccia grafica, diciamo ogni due o tre settimane, per cui il mio software è sempre aggiornatissimo; lo consiglio anche a voi. -\item Siete degli utenti di Linux; in questo caso siete particolarmente fortunati perché il sistema \TeX\ fa parte integrante di qualunque distribuzione, anche se non viene installato di default; vi basta inserire il disco di installazione o vi basta connettervi in rete e invocare uno dei vari programmi come \prog{apt-get}, \prog{rpm} o \prog{yast} per scaricare tutto quanto vi serve e per configurare l'installazione. Ricordatevi che Linux è un po' più ``ruspante'' di Windows, e quindi la configurazione richiede un po' più di attenzione e di smanettamento con la riga di comando; ma a questo, in qualità di ``pinguini doc'', ci siete abituati; in compenso avete il beneficio di avere tutto quanto il software già predisposto fin dalla nascita per macchine UNIX e Linux e quindi evitate tutti i (pochi) piccoli bug che si incontrano quando le cose sono tradotte per altri sistemi. +\item Siete degli utenti di Linux; in questo caso siete particolarmente fortunati perché il sistema \TeX\ fa parte integrante di qualunque distribuzione, anche se non viene installato di default; vi basta inserire il disco di installazione o vi basta connettervi in rete e invocare uno dei vari programmi come \prog{apt-get}, \prog{rpm}, \prog{yast} o\dots\ per scaricare tutto quanto vi serve e per configurare l'installazione. Ricordatevi che Linux è un po' più ``ruspante'' di Windows, e quindi la configurazione richiede un po' più di attenzione e di smanettamento con la riga di comando; ma a questo, in qualità di ``pinguini doc'', ci siete abituati; in compenso avete il beneficio di avere tutto quanto il software già predisposto fin dalla nascita per macchine UNIX e Linux e quindi evitate tutti i (pochi) piccoli bug che si incontrano quando le cose sono tradotte per altri sistemi. Fate solo attenzione alle distribuzioni Debian; sono eccellenti e ne è garantita la compatibilità con lo specifico sistema operativo, ma solitamente sono in ritardo di un paio di anni rispetto alle versioni aggiornate pubblicate dal \TeX\ Users Group! Se appena potete installate la distribuzione TeX Live completa scaricata dal sito \texttt{ctan} ufficiale. Esiste in rete un testo intitolato \emph{texlive-ubuntu.pdf}\footnote{Questo testo è stato scritto nel 2010 per installare TeX Live su Ubuntu, che è di tipo Debian, ma ci sono anche le istruzioni per Fedora e OpenSuse; con piccole varianti sono istruzioni che vanno bene per qualunque macchina Linux.}, che trovate con qualunque motore di ricerca; vi istruisce su come installare TeX Live fresco di giornata (e aggiornabile sistematicamente come detto sopra per le macchine Windows) a fianco della distribuzione Debian di TeX Live; quest'ultima serve per soddisfare le dipendenze di altri programmi Debian; la prima, invece, vi serve per lavorare davvero. -\item Siete degli utenti delle piattaforme Macintosh e siete i possessori di un portatile o di un desktop che funziona con il sistema operativo Mac~OS~X. Anche voi avete a disposizione una distribuzione che si chiama \prog{Mac\TeX}, che viene installata e configurata con un particolare software adatto alla specificità del sistema che state usando. Cercate il nome MacTeX con un qualunque motore di ricerca e sarete portati ad un sito dal quale potrete scaricare il pacchetto di installazione (piuttosto grosso); alla fine del download vi viene chiesto se continuare con l'installazione; rispondendo affermativamente, il software vi viene scaricato sul disco che avrete indicato, ma quel che è più comodo, esso è già completo, come ogni distribuzione e installazione TeX Live. Il sistema \prog{Mac\TeX} produce il suo output solo in formato PDF; se ne tenga conto leggendo attentamente la documentazione. Il pacchetto è già dotato dello shell editor \TeX{}shop che fa ricorso ad un suo previewer interno per il formato PDF; potrebbe essere una buona idea scaricare dalla rete anche l'applicativo freeware Adobe Reader che dalla versione 9 in poi è anche in grado di riconoscere se un file è conforme al formato PDF/A, anche se non è in grado di validarlo come tale; Adobe Reader X, quando apre un file che potrebbe essere conforme allo standard PDF/A, apre in testa alla schermata una riga di informazione nella quale dice che il file è conforme a questo standard; non è il caso di prendere per verità assoluta quella affermazione, perché i file che vengono classificati conformi allo standard PDF/A da Adobe Reader X, talvolta non passano il test di Preflight di Adobe Acrobat. Tuttavia consente di estrarre delle informazioni che sono difficili da estrarre con altri visualizzatori dei file in formato PDF e consente di aggiungere annotazioni. Naturalmente esistono altri visualizzatori dei file in formato PDF; il visualizzatore di sistema consente di aprire e di editare parzialmente anche altri formati grafici e consente di eseguire molte operazioni, in particolare sui file PDF, che in generale richiedono sofisticati programmi di editing grafico. +\item Siete degli utenti delle piattaforme Macintosh e siete i possessori di un portatile o di un desktop che funziona con il sistema operativo Mac~OS~X. Anche voi avete a disposizione una distribuzione che si chiama \prog{Mac\TeX}, che viene installata e configurata con un particolare software adatto alla specificità del sistema che state usando. Cercate il nome MacTeX con un qualunque motore di ricerca e sarete portati ad un sito dal quale potrete scaricare il pacchetto di installazione (piuttosto grosso); alla fine del download vi viene chiesto se continuare con l'installazione; rispondendo affermativamente, il software vi viene scaricato sul disco che avrete indicato, ma quel che è più comodo, esso è già completo, come ogni distribuzione e installazione TeX Live. Il sistema \prog{Mac\TeX} produce il suo output essenzialmente in formato PDF; se ne tenga conto leggendo attentamente la documentazione. Il pacchetto è già dotato dello shell editor \TeX{}shop che fa ricorso ad un suo previewer interno per il formato PDF; potrebbe essere una buona idea scaricare dalla rete anche l'applicativo freeware Adobe Reader che dalla versione 9 in poi è anche in grado di riconoscere se un file è conforme al formato PDF/A, anche se non è in grado di validarlo come tale; Adobe Reader X, quando apre un file che potrebbe essere conforme allo standard PDF/A, apre in testa alla schermata una riga di informazione nella quale dice che il file è conforme a questo standard; non è il caso di prendere per verità assoluta quella affermazione, perché i file che vengono classificati conformi allo standard PDF/A da Adobe Reader X, talvolta non passano il test di Preflight di Adobe Acrobat. Tuttavia consente di estrarre delle informazioni che sono difficili da estrarre con altri visualizzatori dei file in formato PDF e consente di aggiungere annotazioni. Naturalmente esistono altri visualizzatori dei file in formato PDF; il visualizzatore di sistema consente di aprire e di editare parzialmente anche altri formati grafici e consente di eseguire molte operazioni, in particolare sui file PDF, che in generale richiedono sofisticati programmi di editing grafico. Attenzione, però: il previewer interno di \TeX{}shop e \TeX{works} consentono di eseguire l'\textit{inverse search} e, ovviamente, anche di fare la \textit{forward search}. Questo è molto comodo durante la fase di editing del vostro documento. Gli altri visualizzatori hanno difficoltà se non proprio l'impossibilità di ``accordarsi'' con la parte di editing testuale per consentire la ricerca diretta e inversa. Oggi (2012) Texmaker e TeXstudio, entrambi multipiattaforma, sono dotati di visualizzatori interni che consentono la ricerca diretta e inversa; TeXstudio dalla versione 2.5 è anche in grado di interpretare le righe di autoconfigurazione scritte con le sintassi di \TeX{}shop e \TeX{}works. @@ -259,7 +259,7 @@ installati sia i visualizzatori dei file in formato \texttt{.dvi}, \texttt{.ps} Oggi, invece, è molto importante disporre di visualizzatori PDF integrati con l'editor, in modo che siano predisposti per lavorare in tandem sia per mostrare costantemente a fianco della finestra di editing la finestra del file composto in formato PDF, sia per fare la ricerca diretta e inversa; oltre ai già citati \TeX{}shop (solo Mac) e \TeX{}works (multipattaforma) posso citare gli editor TeXsudio e Texmaker (multipiattaforma e molto simili fra loro); altri \emph{shell editor} non dispongono di un visualizzatore integrato, ma possono venire ``sincronizzati'' con visualizzatori esterni; per esempio su piattaforme Windows il visualizzatore sincronizzabile è SumatraPDF; su Linux è Okular; su Mac ne posso citare altri due: TeXnicle (gratuito) e Texpad (commerciale, ma con un costo accessibilissimo) che non solo hanno il visualizzatore integrato, ma le loro ``finestre'' sono in realtà due parti di una stessa finestra; ingrandendola a pieno schermo si ottiene una comodità di composizione difficilmente ottenibile con altri sistemi. -Anche Emacs (multipiattaforma), arricchito del plug-in Auctex, che lo rende particolarmente adatta per gestire i file del sistema \TeX, è sincronizzabile con vari visualizzatori PDF; avendo la pazienza di imparare ad usarlo in modo non superficiale, Emacs assieme ad Auctex rendono il lavoro con il sistema \TeX\ particolarmente comodo. Sarà anche vero che è +Anche Emacs (multipiattaforma), arricchito del plug-in Auctex, che lo rende particolarmente adatto per gestire i file del sistema \TeX, è sincronizzabile con vari visualizzatori PDF; avendo la pazienza di imparare ad usarlo in modo non superficiale, Emacs assieme ad Auctex rendono il lavoro con il sistema \TeX\ particolarmente comodo. Sarà anche vero che è quasi onnipotente, ma per me è difficile da usare; diciamo che ha una curva di apprendimento piuttosto ripida e per la mia età le salite ripide non sono indicate. @@ -269,17 +269,17 @@ Per le piattaforme Linux esiste un bello \emph{shell editor} che si chiama apposta per lavorare con \LaTeX. Esso è montabile anche sulle piattaforme Windows pur di disporre dell'ambiente \prog{Cygwin} (un simulatore di UNIX compatibile con la maggior parte dei -sistemi Operativi per Windows) dentro il quale si sia già +sistemi operativi per Windows) dentro il quale si sia già installato tanto KDE (K Desktop Environment) quanto le sue librerie di sviluppo. -Per le piattaforme Windows Il programma di installazione di MiK\TeX\ offre la possibilità di installare \prog{TeXnicCenter}, ma lo sconsiglio vivamente, perché non è all'altezza delle distribuzioni moderne di TeX Live. C'è anche lo \emph{shell editor} WinEdt (shareware), ottimo e dalla versione 8 in poi sembra che sia dotato di un visualizzatore integrato PDF (comunque è sincronizzabile con SumatraPDF). +Per le piattaforme Windows il programma di installazione di MiK\TeX\ offre la possibilità di installare \prog{TeXnicCenter}, ma lo sconsiglio vivamente, perché non è all'altezza delle distribuzioni moderne di MiK\TeX\ e di TeX Live. C'è anche lo \emph{shell editor} WinEdt (shareware), ottimo e dalla versione 8 in poi sembra che sia dotato di un visualizzatore integrato PDF (comunque è sincronizzabile con SumatraPDF). Per le piattaforme Mac esistono diversi programmi; a me sembra che il migliore di tutti sia \TeX{}shop, automaticamente installato quando si usa la -distribuzione \prog{Mac\TeX}. ``Migliore'' significa qui il giusto compromesso fra la semplicità e l'efficienza e la validissima integrazione con un suo visualizzatore interno che consente di eseguire con un semplice click di mouse il passaggio da un punto della finestra di composizione del file sorgente al punto corrispondente nella finestra del documento composto in formato PDF, e viceversa. Suo ``filgio'' \TeX{}works (multipiattaforma) sembra avere qualche funzionalità in meno (non è così vero), ma ha una interfaccia comodissima per scoprire al codifica di un file \file{.tex} e per convertire il file in un'altra codifica; \TeX{}shop e \TeX{}works sono autoconfigurabili per ciascun file \file{.tex} grazie ad alcune righe di commenti speciali da scrivere in testa la file, cosa che rende il loro uso incredibilmente comodo. TeXstudio dalla versione 2.4 in poi è in grado di interpretare le stesse ricche speciali di \TeX{}shop e di autoconfigurarsi di conseguenza (settembre 2012). Emacs con Auctex sono in grado di usare righe di autoconfigurazione che però hanno una sintassi divera da quelle di \TeX{}shop. +distribuzione \prog{Mac\TeX}. ``Migliore'' significa qui il giusto compromesso fra la semplicità e l'efficienza e la validissima integrazione con un suo visualizzatore interno che consente di eseguire con un semplice click di mouse il passaggio da un punto della finestra di composizione del file sorgente al punto corrispondente nella finestra del documento composto in formato PDF, e viceversa. Suo ``figlio'' \TeX{}works (multipiattaforma) sembra avere qualche funzionalità in meno (non è così vero), ma ha una interfaccia comodissima per scoprire la codifica di un file \file{.tex} e per convertire il file in un'altra codifica; \TeX{}shop e \TeX{}works sono autoconfigurabili per ciascun file \file{.tex} grazie ad alcune righe di commenti speciali da scrivere in testa la file, cosa che rende il loro uso incredibilmente comodo. TeXstudio dalla versione 2.4 in poi è in grado di interpretare le stesse righe speciali di \TeX{}shop e di autoconfigurarsi di conseguenza (settembre 2012). Emacs con Auctex è in grado di usare righe di autoconfigurazione che però hanno una sintassi diversa da quelle di \TeX{}shop. Questa affermazione vale anche per Aquamacs, che è una applicazione per Mac che integra direttamente emacs e Auctex. -Per tutte e tre le piattaforme principali \prog{TeXStudio} offre notevoli vantaggi, compresa la visualizzazione di parti del testo da comporre che richiedano più interazione fra il compositore il il software. Permette anche di disporre di una finestra laterale che contiene tutta la struttura ad albero del documento da comporre; cliccando su ogni ramo o rametto di questo albero, il programma sposta la finestra sul punto del file sorgente dove quella sezione comincia. Anche \prog{Kile} ha questa funzionalità; risulta molto comoda. Quasi tutti gli editor citati \emph{non} consentono di fare la ricerca inversa con il formato di uscita PDF, ma solo con il formato DVI. \prog{TeXShop} per Mac, e \prog{TeXworks} e le due versioni \prog{TeXmaker} e \prog{TeXStudio} per tutte le piattaforme permettono di eseguire la ricerca inversa anche con il formato PDF, e questa particolarità è estremamente comoda. Per le piattaforme Windows esiste il visualizzatore PDF \prog{SumatraPDF} che può essere configurato per interagire con molti editor per poter essere usati assieme sia con la ricerca diretta sia con quella inversa. Va da sé, che se non ci sono esigenze diverse, il formato di uscita PDF è sicuramente quello da preferire. +Per tutte e tre le piattaforme principali \prog{TeXStudio} offre notevoli vantaggi, compresa la visualizzazione di parti del testo da comporre che richiedano più interazione fra il compositore il il software. Permette anche di disporre di una finestra laterale che contiene tutta la struttura ad albero del documento da comporre; cliccando su ogni ramo o rametto di questo albero, il programma sposta la finestra sul punto del file sorgente dove quella sezione comincia. Anche \prog{Kile} ha questa funzionalità; risulta molto comoda. Quasi tutti gli editor citati \emph{non} consentono di fare la ricerca inversa con il formato di uscita PDF, ma solo con il formato DVI. \prog{TeXShop} per Mac, e \prog{TeXworks} e le due versioni \prog{TeXmaker} e \prog{TeXStudio} per tutte le piattaforme permettono di eseguire nativamente la ricerca inversa anche con il formato PDF, e questa particolarità è estremamente comoda. Per le piattaforme Windows esiste il visualizzatore PDF \prog{SumatraPDF} che può essere configurato per interagire con molti editor per poter essere usati assieme sia con la ricerca diretta sia con quella inversa. Va da sé, che se non ci sono esigenze diverse, il formato di uscita PDF è sicuramente quello da preferire. \section{Ora siete pronti} Ora che avete scaricato tutto il software gratuito o commerciale di cui @@ -297,20 +297,13 @@ Per poter operare in modo ``sincrono'' così da avere immediatamente sullo scher Io ho cominciato a lavorare con \LaTeX\ a metà degli anni '80 e non ho mai usato editor sincroni. Una ventina di anni fa ho esaminato Textures per aiutare un collega statunitense che stava scrivendo un libro con quel software, ma non sapeva come fare per disporre di macro adatte per la composizione della matematica di cui aveva bisogno; ma dopo poco ho lasciato perdere perché dovevo lavorare su una piattaforma Mac altrui e non potevo seccarlo in continuazione per chiedergli come si fa questo, come si fa quello; allora il sistema operativo era molto diverso dall'attuale Mac~OS~X e solo gli addetti ai lavori sapevano come usarlo al meglio. Però non ne ero rimasto particolarmente impressionato, anche perché allora i font vettoriali venivano gestiti in modo molto più complesso di oggi. - -Disponendo di una piattaforma Linux ho anche verificato il funzionamento -sia di LyX sia di TeXmacs, ma alla fine sono tornato a usare i -miei semplici editor ASCII con i quali non ho assolutamente nessuna limitazione per quel che riguarda la composizione dei miei -testi. Bisogna dire che io faccio un grande uso di macroistruzioni -adatte al mio modo di comporre; in generale le macroistruzioni non -sono interpretabili da quei sistemi che sono un po' chiusi in se -stessi, proprio per poter massimizzare la velocità di rendering. +Disponendo di una piattaforma Linux ho anche verificato il funzionamento sia di LyX sia di TeXmacs, ma alla fine sono tornato a usare i miei semplici editor ASCII con i quali non ho assolutamente nessuna limitazione per quel che riguarda la composizione dei miei testi. Bisogna dire che io faccio un grande uso di macroistruzioni adatte al mio modo di comporre; in generale le macroistruzioni non sono interpretabili da quei sistemi che sono un po' chiusi in se stessi, proprio per poter massimizzare la velocità di rendering. \textcolor{red}{Nel seguito partirò dal presupposto che abbiate già una certa conoscenza di \LaTeX\ e che conosciate la differenza fra \LaTeX, pdf\LaTeX\ e \XeLaTeX.} -Nello stesso modo dubito che qualcuno abbia conoscenze a proposito del programma e mark-up \XeLaTeX; è un tipo di mark-up molto simile a quello di \LaTeX\ e di pdf\LaTeX, ma ha una gestione dei font diversa e può usare anche i font del sistema operativo della vostra macchina, senza dover fare nessuna acrobazia. Esso ha delle limitazioni per quel che riguarda la creazione dei file in formato PDF archiviabile, benché l'uscita finale sia in formato PDF; gli si possono dare in pasto le figure nei formati accettati sia dal programma \prog{latex} (formato EPS), sia dal programma \prog{pdflatex} (formati PDF, PNG, JPG). Per la gestione delle lingue dispone di un suo pacchetto \pack{polyglossia} che è specifico per questo programma di composizione. L'uso di \XeLaTeX\ non è ancora molto sviluppato, ma sta guadagnando terreno specialmente fra i linguisti; certamente è il motore di composizione più adatto alle tesi di carattere letterario, specialmente se contengono estesi brani composti con ``lettere'' non appartenenti all'alfabeto latino. +Ma dubito che qualcuno abbia conoscenze sufficientemente approfondite a proposito del programma e mark-up \XeLaTeX; è un tipo di mark-up molto simile a quello di \LaTeX\ e di pdf\LaTeX, ma ha una gestione dei font diversa e può usare anche i font del sistema operativo della vostra macchina, senza dover fare nessuna acrobazia. Esso ha delle limitazioni per quel che riguarda la creazione dei file in formato PDF archiviabile, benché l'uscita finale sia in formato PDF; gli si possono dare in pasto le figure nei formati accettati sia dal programma \prog{latex} (formato EPS), sia dal programma \prog{pdflatex} (formati PDF, PNG, JPG). Per la gestione delle lingue dispone di un suo pacchetto \pack{polyglossia} che è specifico per questo programma di composizione. L'uso di \XeLaTeX\ non è ancora molto sviluppato, ma sta guadagnando terreno specialmente fra i linguisti; certamente è il motore di composizione più adatto alle tesi di carattere letterario, specialmente se contengono estesi brani composti con ``lettere'' non appartenenti all'alfabeto latino. Merita qui segnalare con una tabellina le principali differenze fra pdf\/\LaTeX\ e \XeLaTeX, tabella~\ref{tab:pdflatex-vs-xelatex}. @@ -367,7 +360,7 @@ scrivere tesi in filologia classica greca e in filologia copta; \textsf{TOPtesi} non è limitato solo a scritti delle discipline cosiddette esatte, quelle che fanno un grande uso del linguaggio matematico, ma è altrettanto utile per scrivere testi in -discipline umanistiche, perché \LaTeX\ e pdf\LaTeX\ sono +discipline umanistiche, perché pdf\LaTeX\ e \XeLaTeX\ sono altrettanto precisi nel comporre la matematica di quanto lo siano nel comporre una poesia o un romanzo o un'edizione critica. @@ -375,7 +368,7 @@ nel comporre una poesia o un romanzo o un'edizione critica. \section{Dove sono i file di \textsf{TOPtesi}?} La distribuzione di \textsf{TOPtesi} contiene molti file; ma ogni distribuzione moderna del sistema \TeX\ li carica tutti senza che dobbiate intervenire a mano. Tuttavia è importante che voi sappiate dove trovare questi file. -L'installazione del sistema \TeX\ prevede che i suoi numerosissimi file siano installati in un certo numero di strutture di cartelle, chiamate ``alberi''; ogni albero ha una radice; normalmente la radice della distribuzione si chiama \texttt{texmf-dist}, ma sulla vostra macchina e con il vostro sistema operativo potrebbe avere un altro nome. Esiste anche un albero radicato nella vostra ``home''; nei sistemi di stampo UNIX essa si indica simbolicamente con la tilde e la radice del vostro albero personale potrebbe chiamarsi \texttt{\~{}/texmf}; sulle macchine Windows invece dovete cercare in \texttt{C:\char92Documents and settings} seguito dal vostro user name, oppure da \texttt{All users}, oppure da \texttt{Users} seguito dal vostro nome; magari ci sono ancora altri rami di albero da percorrere, ma poi si trova \texttt{texmf} o \texttt{localtexmf}. Nei sistemi Mac la radice del vostro albero personale è sotto la vostra \texttt{\textasciitilde/Library}. L'albero personale non è mai inizialmente predisposto con l'installazione del sistema \TeX; ve lo dovete creare voi. In esso creerete una struttura di rami identica a quella degli alberi di sistema, magari sarà un albero più semplice e non così ramificato come gli alberi di sistema, ma i gruppi di cartelle presenti dovranno essere innestati nello stesso modo. Qui metterete i vostri file di classe, di stile, di definizioni, eccetera, personali. quando aggiornate la vostra distribuzione del sistema \TeX\ le cartelle degli alberi di sistema potranno essere completamente riscritte, mentre il vostro albero personale non verrà assolutamente modificato. +L'installazione del sistema \TeX\ prevede che i suoi numerosissimi file siano installati in un certo numero di strutture di cartelle, chiamate ``alberi''; ogni albero ha una radice; normalmente la radice della distribuzione si chiama \texttt{texmf-dist}, ma sulla vostra macchina e con il vostro sistema operativo potrebbe avere un altro nome. Esiste anche un albero radicato nella vostra ``home''; nei sistemi di stampo UNIX essa si indica simbolicamente con la tilde e la radice del vostro albero personale potrebbe chiamarsi \texttt{\~{}/texmf}; sulle macchine Windows invece dovete cercare in \texttt{C:\char92Documents and settings} seguito dal vostro \emph{user name}, oppure da \texttt{All users}, oppure da \texttt{Users} seguito dal vostro nome; magari ci sono ancora altri rami di albero da percorrere, ma poi si trova \texttt{texmf} o \texttt{localtexmf}. Nei sistemi Mac la radice del vostro albero personale è sotto la vostra \texttt{\textasciitilde/Library}. L'albero personale non è mai inizialmente predisposto con l'installazione del sistema \TeX; ve lo dovete creare voi. In esso creerete una struttura di rami identica a quella degli alberi di sistema, magari sarà un albero più semplice e non così ramificato come gli alberi di sistema, ma i gruppi di cartelle presenti dovranno essere innestati nello stesso modo. Qui metterete i vostri file di classe, di stile, di definizioni, eccetera, personali. Quando aggiornate la vostra distribuzione del sistema \TeX\ le cartelle degli alberi di sistema potranno essere completamente riscritte, mentre il vostro albero personale non verrà assolutamente modificato. Tutti i file del pacchetto \textsf{TOPtesi} vengono caricati nell'albero della distribuzione; i file della documentazione lungo il ramo \texttt{doc}; i file sorgente, lungo il ramo \texttt{source}; i file ``eseguibili'' in una cartella lungo il ramo \texttt{tex}; fra questi file ``eseguibili''\footnote{Chiamare ``eseguibili'' i file che vengono usati da \LaTeX\ è molto improprio: si tratta di file necessari durante l'esecuzione del programma, ma non sono quei file ad essere eseguibili nel senso informatico del termine.} c'è anche il file \texttt{toptesi.cfg}. Copiate questo file nella vostra cartella di lavoro come spiegato qui di seguito, cambiategli il nome ma non l'estensione, e modificatelo secondo le vostre necessità. @@ -383,12 +376,12 @@ Tutti i file del pacchetto \textsf{TOPtesi} vengono caricati nell'albero della d \section{Il file di configurazione} -È comodo, ma non è obbligatorio, disporre di un file di configurazione. Il pacchetto \textsf{TOPtesi} contiene già un file con una configurazione di default da usare come modello; chiunque se lo può copiare in un altro file con l'estensione \texttt{.cfg} e con il nome identico a quello del file principale della tesi. Questo file, se esiste, verrà letto durante l'esecuzione del programma e verranno eseguiti tutti i comandi che esso contiene; se quindi l'utente ne fa uso, deve servirsi del modello per cambiarne i dati e metterci le informazioni che l'utente ritiene utili per la sua tesi. Se non viole servirsi del file di configurazione deve solo inserire nel suo file principale tutte le informazioni necessarie al frontespizio (e al retrofrontespizio, se lo vuole usare) prima di specificare il comando \cs{frontespizio}. +È comodo, ma non è obbligatorio, disporre di un file di configurazione. Il pacchetto \textsf{TOPtesi} contiene già un file con una configurazione di default da usare come modello; chiunque se lo può copiare in un altro file mantenendo l'estensione \texttt{.cfg} e con il nome identico a quello del file principale della tesi. Questo file, se esiste, verrà letto durante l'esecuzione del programma e verranno eseguiti tutti i comandi che esso contiene; se quindi l'utente ne fa uso, deve servirsi del modello per cambiarne i dati e metterci le informazioni che l'utente ritiene utili per la sua tesi. Se non viole servirsi del file di configurazione deve solo inserire nel suo file principale tutte le informazioni necessarie al frontespizio (e al retrofrontespizio, se lo vuole usare) prima di specificare il comando \cs{frontespizio}. -Potete perciò usare un diverso file di configurazione, sempre chiamato \meta{mainfile}\texttt{.cfg}, collocato nella stessa cartella dove risiede il materiale da comporre. Per esempio, potreste comporre la monografia di laurea creando da qualche parte la cartella \texttt{/monografia} e in questa cartella vi create \meta{mainfile}\texttt{.cfg} nel quale scriverete quello che vi è necessario; in questa cartella sistemerete anche i file per comporre la monografia. Quando due anni dopo componete la vostra tesi di laurea magistrale, create da qualche parte la cartella \texttt{/tesi} e mettetevi dentro un'altro file \meta{mainfile}\texttt{.cfg} con la vostra configurazione adattata alla tesi magistrale; in questa stessa cartella metterete i file relativi alla vostra tesi magistrale. Se dopo tre anni prenderete il dottorato e vi scriverete la vostra dissertazione dottorale, createvi da qualche parte la cartella \texttt{/dissertazione} e mettetevi dentro un'altro file \meta{mainfile}\texttt{.cfg} che configurerete per la vostra dissertazione; sempre in questa stessa cartella metterete i file necessari per comporre la vostra dissertazione. Ovviamante nei tre casi \meta{mainfile} conterrà il nome del vostro file principale che, altrettanto ovviamente, avrà un nome diverso per ciascuna delle tre tesi. +Potete perciò usare un diverso file di configurazione, sempre chiamato \meta{mainfile}\texttt{.cfg}, collocato nella stessa cartella dove risiede il materiale da comporre. Per esempio, potreste comporre la monografia di laurea creando da qualche parte la cartella \texttt{/monografia} e in questa cartella vi create \meta{mainfile}\texttt{.cfg} nel quale scriverete quello che vi è necessario; in questa cartella sistemerete anche i file per comporre la monografia. Quando due anni dopo componete la vostra tesi di laurea magistrale, create da qualche parte la cartella \texttt{/tesi} e mettetevi dentro un'altro file \meta{mainfile}\texttt{.cfg} con la vostra configurazione adattata alla tesi magistrale; in questa stessa cartella metterete i file relativi alla vostra tesi magistrale. Se dopo tre anni prenderete il dottorato e vi scriverete la vostra dissertazione dottorale, createvi da qualche parte la cartella \texttt{/dissertazione} e mettetevi dentro un'altro file \meta{mainfile}\texttt{.cfg} che configurerete per la vostra dissertazione; sempre in questa stessa cartella metterete i file necessari per comporre la vostra dissertazione. Ovviamente nei tre casi \meta{mainfile} conterrà il nome del vostro file principale che, altrettanto ovviamente, avrà un nome diverso per ciascuna delle tre tesi. \section{Il formato PDF/A} -Le istruzioni che seguono per la produzione di un file conforme alla normativa PDF/A sono applicabili se si compone la tesi sia con il programma \prog{pdflatex} sia con \prog{xelatex}. In particolare, se si usa \prog{xelatex} e se si vogliono realizzare gli hyperlink interni si deve chiamare esplicitamente il pacchetto \pack{hyperref} configurandolo come meglio si crede, ma usando solo il comando \verb|\hypersetup| per impostare le opzioni e le personalizzazioni; per sfruttare al meglio le possibilità offerte da \prog{xelatex} è necessario caricare il pacchetto \pack{fontspec} che, senza ulteriori opzioni o specificazioni, usa di default i font Latin Modern nella versione OpenType; volendo si possono usare i comandi specifici disponibili con quel pacchetto per caricare font diversi. Notate che se avete predisposto il preambolo del vostro file sorgente per la tesi in modo da poterlo compilare con \prog{pdflatex} e avete anche specificato l'opzione \texttt{pdfa}, come indicato qui di seguito, potrete ugualmente compilare il vostro documento anche con \prog{xelatex}, perché TOPtesi è perfettamente conscio del motore di composizione che state usando e sa che il vostro file sorgente parte dal presupposto che volevate creare gli hyperlink, sfruttando il fatto di aver specificato quell'opzione. In altre parole, non avete bisogno di modificare il file sorgente per passare da \prog{pdflatex} a \prog{xelatex}. Però il file prodotto con \prog{xelatex}, per soddisfare le specifiche richieste dalla norma ISO relativa al formato archiviabile, necessita di ulteriore elaborazione. +Le istruzioni che seguono per la produzione di un file conforme alla normativa PDF/A sono applicabili se si compone la tesi sia con il programma \prog{pdflatex} sia con \prog{xelatex}. In particolare, se si usa \prog{xelatex} e se si vogliono realizzare gli hyperlink interni non si deve chiamare esplicitamente il pacchetto \pack{hyperref}, ma lo si può configurare come meglio si crede usando solo il comando \verb|\hypersetup| per impostare le opzioni e le personalizzazioni; per sfruttare al meglio le possibilità offerte da \prog{xelatex} è necessario caricare il pacchetto \pack{fontspec} che, senza ulteriori opzioni o specificazioni, usa di default i font Latin Modern nella versione OpenType; volendo si possono usare i comandi specifici disponibili con quel pacchetto per caricare font diversi. Notate che se avete predisposto il preambolo del vostro file sorgente per la tesi in modo da poterlo compilare con \prog{pdflatex} e avete anche specificato l'opzione \texttt{pdfa}, come indicato qui di seguito, potrete ugualmente compilare il vostro documento anche con \prog{xelatex}, perché TOPtesi è perfettamente conscio del motore di composizione che state usando e sa che il vostro file sorgente parte dal presupposto che volevate creare gli hyperlink, sfruttando il fatto di aver specificato quell'opzione. In altre parole, non avete bisogno di modificare il file sorgente per passare da \prog{pdflatex} a \prog{xelatex}. Però il file prodotto con \prog{xelatex}, per soddisfare le specifiche richieste dalla norma ISO relativa al formato archiviabile, necessita di ulteriore elaborazione. Il Politecnico di Torino, come anche molte università italiane e straniere, intende ``smaterializzare'' le copie di archivio delle tesi di laurea. Questo intendimento è cominciato nel 2008 ma non sono al corrente dell'esito di questo studio a cui ho collaborato all'inizio prima di andare in pensione. @@ -402,7 +395,7 @@ Usando \prog{pdflatex} è necessario usare il pacchetto specifico \pack{pdfx} ri \begin{verbatim} \usepackage[a-1b]{pdfx} \end{verbatim} -Per facilitare la composizione della tesi questa richiesta è già contenuta nella classe \pack{TOPtesi}, quindi lo studente non deve preoccuparsi di niente, fuorché installare il pacchetto \pack{pdfx} nel proprio albero locale\footnote{Basta copiarlo dall'albero di sistema, ma bisogna apportare qualche piccola modifica, cosa che non è lecito fare nell'albero di sistema.}. +Per facilitare la composizione della tesi questa istruzione è già contenuta nella classe \pack{TOPtesi}, quindi lo studente non deve preoccuparsi di niente, fuorché installare il pacchetto \pack{pdfx} nel proprio albero locale\footnote{Basta copiarlo dall'albero di sistema, ma bisogna apportare qualche piccola modifica, cosa che non è lecito fare nell'albero di sistema.}. Se questo pacchetto non fosse già caricato con l'installazione del sistema \TeX\ in un albero di sistema, bisogna provvedere scaricando il pacchetto dagli archivi \textsc{ctan} e installandolo nel proprio albero personale. Siccome bisogna provvedere ad una certa personalizzazione, è consigliabile eseguire questa installazione nell'albero personale, perché quando si aggiorna il sistema \TeX, vengono riscritti tutti i file degli alberi di sistema, ma non quelli dell'albero personale. @@ -444,9 +437,9 @@ Se esistono validi motivi per non usare \prog{pdflatex}\footnote{Ma è meglio ch Ricordate solo che produrre un file PDF/A non è semplice, ma se usate \prog{pdflatex} con i font di default, se incorporate solo figure PNG e JPEG con profilo di colore RGB (red, green, blue), se controllate che ogni file PDF da incorporare contenga al suo interno anche i font che eventualmente sono necessari per comporre il testo che contengono, non dovreste incontrare problemi di certificazione della natura PDF/A del file della vostra tesi. \subsection{\texorpdfstring{\prog}{}{xelatex} e il formato PDF/A}\label{sec:XePDFA} -Se invece usate il programma \prog{xelatex} per comporre la tesi e volete avere un file finale conforme alle specifiche PDF/A, allora dovete procedere in modo diverso\footnote{Questa procedura serve anche quando usate \prog{latex} e usate pacchetti com \pack{PSTricks} che richiedono di inserire del codice PostScript nel file di uscita.}; Precisamente usate le stesse cautele raccomandate per quando usate il programma \prog{pdflatex}, cioè specificate l'opzione \texttt{pdfa} nella dichiarazione di classe che chiama \texttt{toptesi}, usate \verb|\hypersetup| all'inizio del preambolo per personalizzare il pacchetto \pack{hyperref} già invocato da \texttt{toptesi}; incorporate figure che abbiano solo il profilo di colore RGB e che contengano al loro interno i font vettoriali di cui si servono, ma usato solo font UNICODE; \prog{xelatex} è fatto per questo. Per la matematica usate una delle tre collezioni di font UNICODE oggi (2012) disponibili: XITS Math, Asana Math, Latin Modern Math. Fate attenzione a che qualunque file incluso \emph{non} contenga i font Computer Modern con codifica OT1 (la vecchia codifica senza lettere accentate); apparentemente la funzione di \emph{overlay} che questi font usano per sovrapporre gli accenti sulle lettere da accentare non è più compatibile con la certificazione eseguibile da Preflight di Adobe Acrobat. Tuttavia la distribuzione del sistema TeX contiene una collezione abbastanza ampia di font UNICODE, compresi i CM in formato UNICODE, che non ci sono in realtà veri problemi con il testo che componente voi; potrebbero essercene se incorporate pagine o figure PDF tratte da altri documenti composti in passato che contengono i font CM di tipo Type~1, la cui funzione di \emph{overlay} evidentemente non è conforme. +Se invece usate il programma \prog{xelatex} per comporre la tesi e volete avere un file finale conforme alle specifiche PDF/A, allora dovete procedere in modo diverso\footnote{Questa procedura serve anche quando usate \prog{latex} e usate pacchetti com \pack{PSTricks} che richiedono di inserire del codice PostScript nel file di uscita.}; Precisamente usate le stesse cautele raccomandate per quando usate il programma \prog{pdflatex}, cioè specificate l'opzione \texttt{pdfa} nella dichiarazione di classe che chiama \texttt{toptesi}, usate \verb|\hypersetup| all'inizio del preambolo per personalizzare il pacchetto \pack{hyperref} già invocato da \texttt{toptesi}; incorporate figure che abbiano solo il profilo di colore RGB e che contengano al loro interno i font vettoriali di cui si servono, ma usato solo font UNICODE; \prog{xelatex} è fatto per questo. Per la matematica usate una delle quattro collezioni di font UNICODE oggi (2012) disponibili: XITS Math, Asana Math, Latin Modern Math, TeX\ Gyre Pagella Math. Fate attenzione a che qualunque file incluso \emph{non} contenga i font Computer Modern con codifica OT1 (la vecchia codifica senza lettere accentate); apparentemente la funzione di \emph{overlay} che questi font usano per sovrapporre gli accenti sulle lettere da accentare non è più compatibile con la certificazione eseguibile da Preflight di Adobe Acrobat. Tuttavia la distribuzione del sistema TeX contiene una collezione abbastanza ampia di font UNICODE, compresi i CM in formato UNICODE, che non ci sono in realtà veri problemi con il testo che componente voi; potrebbero essercene se incorporate pagine o figure PDF tratte da altri documenti composti in passato che contengono i font CM di tipo Type~1, la cui funzione di \emph{overlay} evidentemente non è conforme. -Dopo aver eseguito \prog{xelatex} sui file sorgente della vostra tesi vi ritrovate con un file PDF che non è ancora conforme allo standard PDF/A, ma basta usare \prog{ghostscript} per trasformarlo in un file conforme. Bisogna predisporre nella stessa cartella dove si trova il main file del documento un file che contenga i \emph{metadata}; per questo documento, composto con \prog{xelatex}, il file adatto a \prog{ghostscript} è il seguente: +Dopo aver eseguito \prog{xelatex} sui file sorgente della vostra tesi vi ritrovate con un file PDF che non è ancora conforme allo standard PDF/A, ma basta usare \prog{ghostscript} per trasformarlo in un file conforme. Bisogna predisporre nella stessa cartella dove si trova il main file del documento un file che contenga i \emph{metadata}; per questo documento, composto con \prog{xelatex}, il file adatto a \prog{ghostscript} è il seguente: \begin{verbatim} %! % $Id: PDFA_def.ps 8284 2007-10-10 17:40:38Z giles $ @@ -512,7 +505,7 @@ Ora basta dare il comando nella finestra comandi: \begin{flushleft} \texttt{pdf2pdfa} \meta{Nome del main file senza estensione} \end{flushleft} -e \prog{ghostscript} si mette a lavorare finché produce in uscita un file PDF con il nome del file originario allungato con \texttt{-a}. A questo punto si può procedere con il software di verifica della natura PDF/A del file ottenuto; a me, seguendo le istruzioni che ho indicato, la verifica su questo file à avuto esisto positivo al primo colpo. +e \prog{ghostscript} si mette a lavorare finché produce in uscita un file PDF con il nome del file originario allungato con \texttt{-a}. A questo punto si può procedere con il software di verifica della natura PDF/A del file ottenuto; a me, seguendo le istruzioni che ho indicato, la verifica su questo file ha avuto sempre esito positivo al primo colpo. Le variazioni per Windows consistono nel fatto che l'eseguibile di \prog{ghostscript} si chiama \texttt{gswin32c} invece che \texttt{gs} e che i parametri di una macro si indicano con \verb|%1|, \verb|%2|, eccetera, mentre quelli per UNIX si indicano con \verb|$1|, \verb|$2|, eccetera; in bash i commenti iniziano con il segno \texttt{\#} mentre in bat essi cominciano con \texttt{REM}. @@ -570,6 +563,7 @@ piacere, per esempio, con grande fantasia, \texttt{myfile.tex}: \frontespizio \end{document} \end{verbatim} +Attenzione: la riga \verb|\documentclass| deve essere identica alla corrispondente riga del vostro main file; siccome \pack{TOPtesi} può usare diversi formati di carta, è necessario che il frontespizio sia composto su carta dello stesso formato. Non è invece necessario usare come font normale un font dello stesso corpo della tesi; con carte particolarmente piccole potrebbe essere più opportuno usare il corpo di 10\,pt invece che quello di 12\,pt. Se volete usare \prog{pdflatex} aggiungete la chiamata ai pacchetti \pack{inputenc} e \pack{fontenc} con le opzioni di codifica che preferite; caricate, se lo volete, un pacchetto per scegliere un font per il frontespizio; per esempio: \begin{verbatim} @@ -582,7 +576,7 @@ Se volete usare \prog{pdflatex} aggiungete la chiamata ai pacchetti \pack{inpute Passando uno di questi piccoli file a \prog{xelatex} o a \prog{pdflatex}, si ottiene un documento di una o due pagine, il frontespizio e facoltativamente il retrofrontespizio, che si possono stampare in varie copie per gli scopi detti sopra. Anche se componete il frontespizio in inglese, non potete fare a meno di chiamare \texttt{babel} o \texttt{polyglossia} perché \texttt{topfront} usa alcuni comandi di quel pacchetto. Naturalmente al posto di \texttt{italian} potete specificare un'altra lingua. -Il retrofrontespizio non è necessario assolutamente quando volete produrre il frontespizio isolato. Non è nemmeno necessario quando volete comporre la tesi. Tuttavia il comando è disponibile e permette di aggiungere la dichiarazione legale in merito alla licenza; il retrofrontespizio di questa documentazione è stato composto con i comandi seguenti: +Il retrofrontespizio non è necessario in senso assoluto quando volete produrre il frontespizio isolato. Non è nemmeno necessario quando volete comporre la tesi. Tuttavia il comando è disponibile e permette di aggiungere la dichiarazione legale in merito alla licenza; il retrofrontespizio di questa documentazione è stato composto con i comandi seguenti\footnote{Siccome questo codice contiene dei comandi \texttt{\string\ref}, può essere usato solo nella composizione del corpo della tesi dove le etichette invocate sono definite; se si vuole usare questo codice per comporre il retrofrontespizio assieme al frontespizio, ma isolatamente dalla tesi (lo sconsiglio), bisogna sostituire quei comandi e i loro argomenti con i valori reali.}: \begin{verbatim} \retrofrontespizio{Questo testo è libero secondo le condizioni stabilite dalla \LaTeX\ Project Public Licence (LPPL) riportata @@ -619,16 +613,16 @@ e lo si passa a \prog{pdflatex} per ottenere poi una stampa ben composta da conservare per documentazione; per evitare che le righe sbordino fuori della larghezza normale del testo, o, peggio ancora, fuori dalla carta, sarebbe opportuno che le righe del -programma non fossero più lunghe di una ottantina di caratteri. +programma non fossero più lunghe di una ottantina di caratteri per la carta A4, proporzionalmente di meno per formati di carta più piccoli. \section{Il logo dell'ateneo} Non è generalmente necessario inserire nel frontespizio il logo dell'ateneo; controllate presso la vostra la vostra segreteria competente le regole fissate per la composizione del frontespizio. Se il logo è richiesto, allora la segreteria vi dice anche quale logo usare e da dove scaricarne il file che ne contiene la descrizione grafica. Controllate se è un file vettoriale (estensione \file{.pdf} oppure \file{.eps}) oppure bitmapped (estensione \file{.jpg}, \file{.png}, \file{.bmp}, \file{.wmf}, \file{.tiff},\dots). Ricordate che \prog{pdflatex} e \prog{xelatex} possono incorporare solo i formati \file{.pdf}, \file{eps}\footnote{Dall'edizione di TeX Live 2011 anche \prog{pdflatex} è in grado di incorporare file in formato \file{.eps}, mentre prima era necessario convertirli preventivamente in formato \file{.pdf}.}, \file{.jpg} o \file{.png}). Se il file viene fornito in un formato diverso da questi quattro, è necessario convertirlo in uno di questi formati. -Vale la pena di ricordare che il formato \file{.jpg} va bene per immagini a colori sfumati come le fotografie, mentre il formato \file{.png} è più adatto per disegni al tratto con righe fortemente contrastate rispetto allo sfondo. In generale, quindi, sarebbe meglio convertire nel formato \file{.png} un logo fornito in un formato incompatibile. +Vale la pena di ricordare che il formato \file{.jpg} va bene per immagini a colori sfumati come le fotografie, mentre il formato \file{.png} è più adatto per disegni al tratto con righe fortemente contrastate rispetto allo sfondo. In generale, quindi, sarebbe meglio convertire nel formato \file{.png} un logo fornito in un formato diverso da quelli elencati sopra. -Ricordate anche che il logo dell'ateneo è di proprietà dell'ateneo stesso e va usato secondo regole precise; è per questo che il pacchetto \pack{TOPtesi} non viene distribuito più con i loghi di diversi atenei, come veniva fatto nelle prime edizioni. +Ricordate anche che il logo dell'ateneo è di proprietà dell'ateneo stesso e va usato secondo regole precise; è per questo che il pacchetto \pack{TOPtesi} non viene distribuito più con i loghi di diversi atenei, come veniva fatto nelle prime edizioni. Merita segnalare che le tesi svolte nell'ambito di collaborazioni fra atenei possono richiedere i loghi dei diversi atenei partecipanti all'accordo; segnalo la Scuola interpolitecnica di dottorato condotto nell'ambito di un accordo fra i politecnici di Bari, Milano e Torino. Ricordo i programmi di doppia laurea condotti nell'ambito di accordi fra l'ateneo di appartenenza e un altro ateneo, generalmente europeo. Ricordo il programma europeo Erasmus Mundus dove il titolo di studio viene condotto da consorzi di almeno quattro atenei di nazioni diverse. In queste circostanze è spesso necessario inserire nel frontespizio i loghi di tutti gli atenei partecipanti alla convenzione. @@ -636,7 +630,7 @@ Il pacchetto \pack{TOPtesi} contiene un comando molto potente, \cs{logosede}, ch \begin{flushleft} \cs{logosede}\oarg{altezza}\marg{file del logo} \end{flushleft} -dove il valore prefissato per l'\meta{altezza} del logo è 3\,cm; con l'argomento facoltativo si più specificare un'altezza leggermente maggiore o minore del valore predefinito. Il \meta{file del logo} è costituito da un solo nome di file o da una lista di nomi di file separati da virgole corrispondenti ciascuno al logo di un diverso ateneo. Questi file devono avere i formati corrispondenti a una delle quattro estensioni consentite, ma non è necessario specificare il nome del file completo di estensione; questa specificazione potrebbe essere necessaria solo nel caso in cui si disponga del logo di una dato ateneo in diversi formati. +dove il valore prefissato per l'\meta{altezza} del logo è 3\,cm per la carta A4, e scalato proporzionalmente per carte di formato diverso; con l'argomento facoltativo si può specificare un'altezza leggermente maggiore o minore del valore predefinito. Il \meta{file del logo} è costituito da un solo nome di file o da una lista di nomi di file separati da virgole corrispondenti ciascuno al logo di un diverso ateneo. Questi file devono avere i formati corrispondenti a una delle quattro estensioni consentite, ma non è necessario specificare il nome del file completo di estensione; questa specificazione potrebbe essere necessaria solo nel caso in cui si disponga del logo di una dato ateneo in diversi formati. Il programma codificato nel pacchetto \pack{TOPtesi} provvede a scalare tutti i loghi all'\meta{altezza specificata} e li compone affiancati su una sola riga distanziati mediante uno spazio predefinito di 3\,em, ma impostabile ad un valore leggermente maggiore o minore tramite il comando \cs{setlogodistance}, per esempio: \begin{verbatim} @@ -651,7 +645,7 @@ Se la riga di loghi, eventualmente scalati in altezza e distanziati dello spazio \smallskip \endgroup -Tre loghi appaiono cos: +Tre loghi appaiono così: \begingroup\par\centering \logosede{logopoliba,logopolimi,logopolito} \printloghi @@ -659,7 +653,7 @@ Tre loghi appaiono cos: \smallskip \endgroup -Quattro loghi di altezza predefinita producono una riga di loghi di altezza ridotta per consentire che appaiono tutti e quattro nella stessa riga: +Quattro loghi di altezza predefinita producono una riga di loghi di altezza ridotta per consentire che appaiano tutti e quattro nella stessa riga: \begingroup\par\centering \logosede{logopolimi,logopolito,logoINPG,logoepfl} \printloghi @@ -680,10 +674,10 @@ dove c'è scritto più o meno tutto quel che bisogna sapere per impostare e scrivere un rapporto tecnico-scientifico qual è la tesi, la monografia o la dissertazione. -Qui dirò solo come si comincia a scrivere il file sorgente della -tesi. Ci sono essenzialmente due vie, ognuna delle quali offre vantaggi e svantaggi, quindi non si può dire a priori quale via sia la più indicata: +Qui dirò solo come si comincia a scrivere il file sorgente della tesi. Ci sono essenzialmente due vie, ognuna delle quali offre vantaggi e svantaggi, quindi non si può dire a priori quale via sia la più indicata: \begin{enumerate} -\item si compone un unico file come esemplificato con il file \texttt{toptesi-example.tex} allegato alla documentazione di \textsf{TOPtesi}. Questo file permette di sperimentare diverse cose semplicemente mettendo o togliendo dei segni di commento all'inizio delle righe del preambolo che contengono alcuni comandi particolari. Esso è completo di bibliografia e quell'unico file permette di comporre una tesi completa; ovviamente può essere usato come modello per la vostra tesi; basta cambiare il contenuto dei comandi che contengono i nomi dei candidati, dei relatori, del titolo, dell'ateneo, della eventuale facoltà, eccetera. Ovviamente bisogna cambiare anche il contenuto dei capitoli e della bibliografia. +\item si compone un unico file come esemplificato con il file \texttt{toptesi-example.tex} +il il file \texttt{toptesi-example-xetex.tex} allegati alla documentazione di \textsf{TOPtesi}. Questi file permettono di sperimentare diverse cose semplicemente mettendo o togliendo dei segni di commento all'inizio delle righe del preambolo che contengono alcuni comandi particolari. Esso è completo di bibliografia e quell'unico file permette di comporre una tesi completa; ovviamente può essere usato come modello per la vostra tesi; basta cambiare il contenuto dei comandi che contengono i nomi dei candidati, dei relatori, del titolo, dell'ateneo, della eventuale facoltà, eccetera. Ovviamente bisogna cambiare anche il contenuto dei capitoli e della bibliografia. \item Si spezza il file sorgente in un numero adeguato di file parziali da gestire come specificato qui di seguito; ogni file parziale conterrà solo una parte della tesi, per esempio un solo capitolo; siccome il tutto è gestito dal master file, ciascun file parziale non dovrà più contenere la dichiarazione della classe né il preambolo né le righe \verb|\begin{document}| e \verb|\end{document}|, ma solo il materiale relativo ad uno specifico capitolo cominciando appunto con la riga che ne specifica il titolo: \verb|\chapter{Il titolo di questo capitolo}|. @@ -692,30 +686,30 @@ Il file che contiene il capitolo può venire chiuso con il comando \verb|\endinp Avendo già predisposto una scaletta da seguire per comporre la tesi e avendo dato un nome a ciascun capitolo (nome un po' più -furbo di quelli che scriverò io qui a titolo di esempio), +espressivo di quelli che scriverò io qui a titolo di esempio), predisponete un master file con un nome ``diverso'' da \texttt{tesi.tex}; sbizzarrite la fantasia, ma che il nome sia mnemonico e vi ricordi subito a che cosa vi riferite. Questo -master file sarà dunque composto così: +master file sarà dunque composto, per esempio, così: \begin{verbatim} - \documentclass[11pt]{toptesi} +\documentclass[b5paper,11pt]{toptesi} \includeonly{% - preliminari,% - capitolo1,% - capitolo2,% - capitolo3,% - appendici,% - bibliografia% + preliminari,% + capitolo1,% + capitolo2,% + capitolo3,% + appendici,% + bibliografia% } - \begin{document} +\begin{document} \ateneo{Università di Bengodi} \nomeateneo{La Saggezza} \titolo{Studi di tricotetratomia applicata} \sottotitolo{Cosa succede quando si spacca un capello in quattro} \candidata{Maria Chiomafolta} \relatore{prof.\ Piero Scapigliati} - \sedutadilaurea{Maggio 2013} - % + \sedutadilaurea{Maggio 2015} +% \include{preliminari} \include{capitolo1} \include{capitolo2} @@ -723,7 +717,7 @@ master file sarà dunque composto così: \appendix \include{appendici} \include{bibliografia} - \end{document} +\end{document} \end{verbatim} È da osservare in particolare che l'aver scritto l'argomento di @@ -742,13 +736,13 @@ correzioni. Il file \texttt{preliminari.tex} conterrà presumibilmente il comando per comporre il frontespizio, il sommario, molto facoltativamente i ringraziamenti\footnote{I ringraziamenti in una -tesi sono necessari molto raramente, cioè quando bisogna +tesi non sono quasi mai necessari; lo sono quando bisogna ringraziare una istituzione o una o più persone \emph{esterne} alla propria università che hanno messo a disposizione le loro strutture o le loro competenze per lo svolgimento della tesi. Non si ringraziano genitori, fidanzati/e, amici, e tutti i parenti di ogni grado, il quali saranno più che contenti di sapervi laureati, -piuttosto che non vedere il proprio nome scritto sulla tesi\dots. +piuttosto che vedere il proprio nome scritto sulla tesi\dots. Inoltre rappresenta un atto di piaggeria ringraziare il o i propri relatori; essi hanno svolto un loro compito istituzionale, non vi hanno fatto un piacere. Naturalmente questo non vieta che @@ -771,7 +765,7 @@ lunghe citazioni e tutte le altre cose che rovinerebbero la fluidità del testo, se fossero inserite direttamente nel corpo della tesi. -La bibliografia conclude la tesi. A seconda del campo disciplinare in cui si svolge la tesi può essere importante scegliere un metodo di citazione piuttosto di un altro; la collezione di pacchetti del sistema \TeX\ vi consente un'ampia scelta di personalizzazioni per gli stili di composizione e di citazione. Oggi (2012), poi, si sta diffondendo l'uso del pacchetto di estensione \pack{biblatex} che consente una gestione diretta della bibliografia mediante comandi \LaTeX; in ogni caso per queste personalizzazioni è necessario creare un database bibliografico (con estensione \texttt{.bib}) in un formato particolare, e poi è necessario elaborare questo database mediante il programma \prog{bibtex} o \prog{biber} (predefinito con \pack{biblatex} dal 2012), sempre facente parte della distribuzione del sistema \TeX. I risultati che si possono ottenere sono estremamente professionali. +La bibliografia conclude la tesi. A seconda del campo disciplinare in cui si svolge la tesi può essere importante scegliere un metodo di citazione piuttosto di un altro; la collezione di pacchetti del sistema \TeX\ vi consente un'ampia scelta di personalizzazioni per gli stili di composizione e di citazione. Oggi (2013), poi, si sta diffondendo l'uso del pacchetto di estensione \pack{biblatex} che consente una gestione diretta della bibliografia mediante comandi \LaTeX; in ogni caso per queste personalizzazioni è necessario creare un database bibliografico (con estensione \texttt{.bib}) in un formato particolare, e poi è necessario elaborare questo database mediante il programma \prog{bibtex} o il programma \prog{biber} (predefinito con \pack{biblatex} dal 2012), sempre facente parte della distribuzione del sistema \TeX. I risultati che si possono ottenere sono estremamente professionali. \subsection{La scelta della codifica per il file sorgente} @@ -780,7 +774,7 @@ Si noti che per comporre i file del corpo della tesi si possono usare direttamente le lettere accentate della tastiera italiana o quelle che si possono ottenere con combinazioni di tasti sia sotto Windows sia sotto Linux o Mac~OS~X; per default \textsf{TOPtesi} -non specifica nessuna particolare codifica dell'input; ma perché +non specifica nessuna particolare codifica per l'input; ma perché il programma di tipocomposizione elabori correttamente i file sorgente o si usa \prog{xelatex} ricordando di salvare i file con la codifica UNICODE o UTF-8, oppure non si specifica nessuna particolare codifica ma si usano solo i caratteri ASCII a 7~bit; oppure ancora si usano i caratteri nazionali direttamente da tastiera ma si specifica la codifica che l'editor usato ha @@ -791,7 +785,7 @@ per esempio le lettere accentate; a meno che non usiate \prog{xelatex} vi sugger \end{verbatim} che va bene sia per le macchine Windows, sia per quelle basate su UNIX. -Gli editor \TeX{}Shop, \TeX{}works, TeXmaker, TeXStudio, e qualcun altro, consentono di usare la codifica \texttt{utf8} che permette di inserire qualunque segno fra le decine di migliaia che la codifica UNICODE consente -- se usate \prog{xelatex} questa codifica è necessaria ma non bisogna esplicitarla nel file sorgente. Il problema, in effetti, non è la codifica, ma è la tastiera. Con sistemi operativi diversi si sono sviluppati programmi di vario genere per scrivere in alfabeti diversi da quello latino esteso, qual è quello invocato, per esempio, con l'opzione \texttt{latin1}. Ma se dovete scrivere la vostra tesi con brani in greco o in russo o in arabo o in lingue con segni sillabici o ideogrammi, questo problema si presenterebbe qualunque sia l'editor e il programma di composizione che usate, ed è un problema che dovete risolvere da soli. +Gli editor \TeX{}Shop, \TeX{}works, TeXmaker, TeXStudio, e qualcun altro, consentono di usare la codifica \texttt{utf8} che permette di inserire qualunque segno fra le decine di migliaia che la codifica UNICODE consente -- se usate \prog{xelatex} questa codifica è necessaria ma non bisogna esplicitarla nel file sorgente. Il problema, in effetti, non è la codifica, ma è la tastiera. Con sistemi operativi diversi si sono sviluppati programmi di vario genere per scrivere in alfabeti diversi da quello latino esteso, qual è quello invocato, per esempio, con l'opzione \texttt{latin1} oppure anche \texttt{utf8}. Ma se dovete scrivere la vostra tesi con brani in greco o in russo o in arabo o in lingue con segni sillabici o ideogrammi, questo problema si presenterebbe qualunque sia l'editor e il programma di composizione che usate, ed è un problema che dovete risolvere da soli. Bisogna notare che vanno accentate anche le lettere maiuscole; siccome la tastiera italiana non le prevede, consiglio di inserire nel preambolo la definizione del comando \verb|\E| per scrivere È. Credo che questa sia la maiuscola accentata più frequente in italiano e le altre non capitano mai all'inizio di un periodo. Il comando: \begin{verbatim} @@ -806,11 +800,11 @@ per ottenere: \begin{quote} È conveniente rilevare che\dots \end{quote} -L'uso del pacchetto \pack{space} fa sì che esso, tramite il comando \verb|\xspace| inseriva uno spazio, a meno che il comando \verb|\E| non sia seguito da qualunque cosa non sia uno spazio, per esempio un segno di interpunzione, o una tilde di legatura; anche il comando esplicito di spazio \verb*|\ | impedisce l'inserimento di un ulteriore spazio da parte di \verb|\xspace|. +L'uso del pacchetto \pack{xspace} fa sì che esso, tramite il comando \verb|\xspace| inserisca uno spazio, a meno che il comando \verb|\E| non sia seguito da qualunque cosa non sia uno spazio, per esempio un segno di interpunzione, o una tilde di legatura; anche il comando esplicito di spazio \verb*|\ | impedisce l'inserimento di un ulteriore spazio da parte di \verb|\xspace|. Se il vostro editor vi consente di selezionare le maiuscole accentate da una tabella oppure vi consente di usare combinazioni di tasti per inserire direttamente le maiuscole accentate nel file sorgente, fatene uso, perché la lettura del file sorgente ne guadagna moltissimo. -Se volete o dovete usare \prog{pdflatex} dovete caricare nel vostro preambolo tutto quello che è necessario per gestire quelle lingue, ma non chiedetemi come si fa, perché so dirvelo solo per il greco. Per questa lingua, se usate l'ortografica monotonica, basta inserire l'opzione della lingua \texttt{greek} fra le opzioni \emph{della classe}; se usate l'ortografia politonica, allora dovete richiedere per \texttt{babel} lo specifico attributo seguendo questo procedimento (per \pack{polyglossia} si veda più avanti): +Se volete o dovete usare \prog{pdflatex} dovete caricare nel vostro preambolo tutto quello che è necessario per gestire quelle lingue scritte con alfabeti diversi, ma non chiedetemi come si fa, perché so dirvelo solo per il greco. Per questa lingua, se usate l'ortografia monotonica, basta inserire l'opzione della lingua \texttt{greek} fra le opzioni \emph{della classe}; se usate l'ortografia politonica, allora dovete richiedere per \texttt{babel} lo specifico attributo seguendo questo procedimento (per \pack{polyglossia} si veda più avanti): \begin{verbatim} \documentclass[...,greek,...]{toptesi} ... @@ -826,19 +820,21 @@ Per una tesi che tratti il greco antico in forma filologica, consiglio l'uso del Probabilmente per usare le lingue che si scrivono in cirillico, basta specificare l'opzione della lingua, come si fa per il greco. Per alcune altre lingue bisogna invece caricare l'apposito pacchetto, il quale provvede a tutte le impostazioni necessarie; in questi casi bisogna leggere con attenzione la documentazione di quei pacchetti. -Ma, tornando alla codifica UTF8, il problema non è tanto l'editor che consenta o non consenta di usare quella codifica; quasi tutti i sistemi operativi consentono di installare diversi driver per la tastiera del PC, cosicché con un semplice click del mouse si può passare da un alfabeto all'altro; il problema sono i tasti della tastiera che hanno serigrafato sulla loro faccia il segno che si ottiene premendo quel tasto. Non è ovviamente possibile cambiare il disegno che appare sui tasti, semplicemente cliccando per cambiare driver; forse lo si può fare con le tastiere virtuali dei PC \emph{touch screen}, ma con i PC normali questo non è possibile. Ecco quindi che la difficoltà di scrivere con un alfabeto diverso richiede una memoria ferrea per ricordare a quale segno dell'altro alfabeto corrisponda il tasto della nostra tastiera. Per il greco moderno e classico, se si usano i font di default con la codifica LGR (Local GReek), che vengono installati praticamente con ogni installazione del sistema \TeX\ che non sia proprio una distribuzione essenziale, le corrispondenze con la tastiera latina sono studiate in modo da semplificare molto questo processo di ``memorizzazione''. Tuttavia ad una persona abituata a leggere il greco scritto (giustamente) in greco, vederlo scritto con caratteri latini fa un certo effetto; la documentazione di \textsf{babel} e quella di \textsf{teubner} ricordano questa corrispondenza fra i tasti latini e i segni greci (lettere, accenti, spiriti, segni speciali, ecc.). La corrispondenza fra greco e latino è abbastanza semplice perché il greco ha 24 maiuscole e 25 minuscole, mentre il latino ne ha 26 di ciascun tipo. Non so che cosa succeda con il cirillico che ha un alfabeto composto di più di 30 segni, per cui la corrispondenza con l'alfabeto latino è impossibile. +Ma, tornando alla codifica UTF-8, il problema non è tanto l'editor che consenta o non consenta di usare quella codifica; quasi tutti i sistemi operativi consentono di installare diversi driver per la tastiera del PC, cosicché con un semplice click del mouse si può passare da un alfabeto all'altro; il problema sono i tasti della tastiera sulla cui faccia hanno serigrafato il segno che si ottiene premendo quel tasto quando è attivo il driver corrispondente a quella specifica tastiera. Non è ovviamente possibile cambiare il disegno che appare sui tasti, semplicemente cliccando per cambiare driver; forse lo si può fare con le tastiere virtuali dei PC \emph{touch screen}, ma con i PC normali questo non è possibile. Ecco quindi che la difficoltà di scrivere con un alfabeto diverso richiede una memoria ferrea per ricordare a quale segno dell'altro alfabeto corrisponda il tasto della nostra tastiera. Per il greco moderno e classico, se si usano i font di default con la codifica LGR (Local GReek), che vengono installati praticamente con ogni installazione non minimale del sistema \TeX, le corrispondenze con la tastiera latina sono studiate in modo da semplificare molto questo processo di ``memorizzazione''. Tuttavia ad una persona abituata a leggere il greco scritto (giustamente) in greco, vederlo scritto con caratteri latini fa un certo effetto; la documentazione di \textsf{babel} e quella di \textsf{teubner} ricordano questa corrispondenza fra i tasti latini e i segni greci (lettere, accenti, spiriti, segni speciali, ecc.). La corrispondenza fra greco e latino è abbastanza semplice perché il greco ha 24 maiuscole e 25 minuscole, mentre il latino ne ha 26 di ciascun tipo. Non so che cosa succeda con il cirillico che ha un alfabeto composto di più di 30 segni, per cui la corrispondenza con l'alfabeto latino è impossibile. Con le macchine Macintosh il sistema operativo Mac OS X mette a disposizione una specie di tastiera virtuale sui tasti della quale si può cliccare con il mouse; si possono installare diverse tastiere che possono venire intercambiate con un semplice click sulla bandierina disegnata nella barra superiore; per cui scrivere in greco politonico o un russo o in ebraico, o in\dots, non è un problema. Temo che lo sia con altre macchine e altri sistemi operativi. +Mi dicono che sulle macchine Linux l'editor \prog{Vim} e, su tutte le macchine, l'editor \prog{emacs} prevedano delle combinazioni di tasti che consentono di scrivere sullo schermo, nella finestra del file \texttt{.tex}, direttamente in greco. Confermo di avere letto qualcosa in merito, ma non sono in grado di confermare per esperienza diretta. + \subsection{La scelta della codifica per il file di uscita} Solo per scrivere in inglese non è necessario specificare nessuna codifica per i font da usare per comporre la tesi; questo è vero in quanto l'inglese, fra le lingue più comuni nel mondo occidentale, è l'unica che non fa uso di accenti o altri segni diacritici. Perciò la codifica di default \texttt{OT1} per i font di uscita adatti a scrivere in inglese va benissimo e non è necessario specificare nulla. Ma attenzione: come ho già detto se si deve inserire anche una sola parola diversa dall'inglese e che contenga un accento, o se si deve scrivere in ``middle English'', che aveva gli accenti, questa vecchia codifica non va assolutamente bene per produrre file PDF/A compatibili. Quindi anche per l'inglese sarebbe opportuno usare una codifica più avanzata. Inoltre con questa codifica la presenza di accenti impedisce la divisione in sillabe o ne riduce molto l'efficacia; per l'italiano il problema è relativamente modesto perché normalmente gli accenti compaiono solo sull'ultima vocale delle parole \emph{tronche}. Quindi con questa codifica la parola ``qualità'' viene divisa in ``qua-lità'' invece che in ``qua-li-tà''. Invece in francese una parola come ``électricité'' non viene divisa per niente a causa dell'accento sulla prima vocale. -Allora per tutte le lingue diverse dall'inglese, ma anche per l'inglese, è quanto mai opportuno specificare per i font di uscita la codifica \texttt{T1}. C'è però un problemino, facilmente risolubile, ma bisogna pensarci: fino ad oggi (2012) i font di default usati da \LaTeX\ e pdf\LaTeX\ sono i font della collezione Computer Modern con codifica \texttt{OT1}; e ogni installazione del sistema \TeX\ li può usare sia nella versione ``bitmapped'' sia in quella PostScript Type~1. Quest'ultima dovrebbe essere quella da usare sempre con il formato PDF del file di uscita, perché questo formato è portabile da una macchina ad un'altra, indipendentemente dal sistema operativo usato. Se poi il file deve essere archiviato esso deve essere in formato PDF, quindi, di fatto non ci sono scelte. +Allora per tutte le lingue diverse dall'inglese, ma anche per l'inglese, è quanto mai opportuno specificare per i font di uscita la codifica \texttt{T1}. C'è però un problemino, facilmente risolubile, ma bisogna pensarci: fino ad oggi (2013) i font di default usati da pdf\LaTeX\ sono i font della collezione Computer Modern con codifica \texttt{OT1}; e ogni installazione del sistema \TeX\ li può usare sia nella versione ``bitmapped'' sia in quella PostScript Type~1. Quest'ultima dovrebbe essere quella da usare sempre con il formato PDF del file di uscita, perché questo formato è portabile da una macchina ad un'altra, indipendentemente dal sistema operativo usato. Se poi il file deve essere archiviato esso deve essere in formato PDF, quindi, di fatto non ci sono scelte. -I file della collezione Computer Modern con codifica \texttt{T1}, conosciuti anche come font EC, sono invece distribuiti solo nella forma bitmapped, la quale, oltre ad essere vietata nei file PDF archiviabili, si legge molto male sullo schermo, se il programma di visualizzazione non è molto ben adattato ai font bitmapped. Esiste il pacchetto \textsf{cm-super} per ovviare a questo inconveniente, ma scaricare dalla rete questo pacchetto enorme richiede molto tempo e poi occupa molto spazio sul disco del vostro~PC (però questa collezione è installata di default in ogni installazione completa del sistema \TeX). Per aggirare questi inconvenienti bisogna usare i font della collezione Latin Modern, normalmente preinstallati, per cui nel preambolo del file da gestire con \prog{pdflatex} si specificherà: +I file della collezione Computer Modern con codifica \texttt{T1}, conosciuti anche come font EC, sono invece distribuiti solo nella forma bitmapped, la quale, oltre ad essere vietata nei file PDF archiviabili, si legge molto male sullo schermo, se il programma di visualizzazione non è molto ben adattato ai font bitmapped. Esiste la collezione di font \textsf{cm-super} per ovviare a questo inconveniente, ma scaricare dalla rete questo pacchetto enorme richiede molto tempo e poi occupa molto spazio sul disco del vostro~PC (però questa collezione è installata di default in ogni installazione completa del sistema \TeX). Per aggirare questi inconvenienti bisogna usare i font della collezione Latin Modern, normalmente preinstallati, per cui nel preambolo del file da gestire con \prog{pdflatex} si specificherà: \begin{verbatim} \documentclass[...]{toptesi} ... @@ -849,13 +845,13 @@ I file della collezione Computer Modern con codifica \texttt{T1}, conosciuti anc ... \end{verbatim} -Se il file viene gestito con \prog{xelatex}, oltre alla codifica \texttt{utf-8} di default \emph{che non va esplicitata}, basta richiedere l'uso del pacchetto \pack{fontspec} senza ulteriori opzioni e viene automaticamente caricata ed usata la collezione dei font Latin Modern nella loro versione OpenType; a questo provvede direttamente la classe \pack{TOPtesi}. Usando \prog{xelatex}, gli appositi comandi per la selezione dei font sia testuali sia per la matematica può essere eseguita nel preambolo senza bisogno di ricaricare il pacchetto \pack{fontenc}. Volendo, invece di usare i font Latin Modern, si possono impostare facilmente altre famiglie di font con comodi comandi che fanno riferimento ai font OpenType installati sulla propria macchina. +Se il file viene gestito con \prog{xelatex}, oltre alla codifica \texttt{utf8} di default \emph{che non va esplicitata}, basta richiedere l'uso del pacchetto \pack{fontspec} senza ulteriori opzioni e viene automaticamente caricata ed usata la collezione dei font Latin Modern nella loro versione OpenType; a questo provvede direttamente la classe \pack{TOPtesi}. Usando \prog{xelatex}, gli appositi comandi per la selezione dei font sia testuali sia per la matematica può essere eseguita nel preambolo senza bisogno di ricaricare il pacchetto \pack{fontenc}. Volendo, invece di usare i font Latin Modern, si possono impostare facilmente altre famiglie di font con comodi comandi che fanno riferimento ai font OpenType installati sulla propria macchina. Naturalmente per gli utenti esperti di \LaTeX\ ci sono anche altri pacchetti usabili per impiegare altri font diversi da quelli della collezione Latin Modern, che comunque, secondo me, sono i migliori per la loro completezza; grazie al diverso disegno dei corpi minori la lettura dei pedici e degli apici ne risulta agevolata. -Qui, per la composizione della tesi con \prog{pdflatex} segnalo solo la collezione dei font Times eXtended, richiamabili con il pacchetto \textsf{txfonts}, e la collezione dei font Palatino eXtended, richiamabili con il pacchetto \textsf{pxfonts}. I Times sono font più stretti di quelli della collezione Latin Modern e sono forse indicati per rendere più compatta una tesi un po' voluminosa. I Palatino sono un po' più larghi dei font della collezione Latin Modern e allungano la tesi di qualche pagina. +Qui, per la composizione della tesi con \prog{pdflatex} segnalo solo la collezione dei font Times eXtended, richiamabili con il pacchetto \textsf{txfonts}, e la collezione dei font Palatino eXtended, richiamabili con il pacchetto \textsf{pxfonts}. I Times sono font più stretti di quelli della collezione Latin Modern e sono forse indicati per rendere più compatta una tesi un po' voluminosa. I Palatino sono un po' più larghi dei font della collezione Latin Modern e allungano la tesi di qualche pagina. Recentemente il nuovo pacchetto \pack{newtx} mette a disposizione per i Times due file \texttt{.sty}, uno per i font testuali e ono per i font matematici; sono configurabili con diverse opzioni e consentono prestazioni migliori dei font usabili con il pacchetto \pack{pxfonts}; li consiglio a coloro che vogliono usare i font Times, ma se devo dare un consiglio assoluto, direi che sia sempre preferibile usare i font Latin Modern dalle prestazioni molto migliori grazie ai corpi ottici; volendo si può usare il pacchetto \pack{cfr-lm} che consente di personalizzare fortemente qi font da usare, per esempio permettendo l'uso delle cifre minuscole {\addfontfeature{Numbers=OldStyle}{1234567890}} nel testo, e le cifre maiuscole 1234567890 nella composizione della matematica. -Tanto per confronto, questo testo di documentazione su \textsf{TOPtesi} è composto con il motore di composizione \prog{xelatex} usando i font OpenType TeX Gyre Termes con codifica UNICODE presenti nella distribuzione del sistema \TeX; come si vede la divisione delle parole in fin di riga non presenta inconvenienti particolari; forse con un testo di altro genere, con composizione in colonne strette o all'interno di tabelle, si potrebbe verificare la presenza di righe molto lasche, dove è stato allargato troppo lo spazio interparola. Per questo si consiglia sempre di usare la codifica \texttt{T1} anche per l'italiano se si usa il motore di composizione \prog{pdflatex}; non si sa mai, ma certamente con questa codifica si hanno meno inconvenienti e le lettere accentate sono disegnate meglio. Se si usa come motore \prog{pdflatex}, è conveniente usare il pacchetto di estensione \pack{microtype} che consente di rendere ancora migliori le righe del testo composto; purtroppo le funzionalità di questo pacchetto sono solo parzialmente usabili con \prog{xelatex}, almeno fino a quando questo programma produrrà il suo file PDF di uscita convertendo un formato intermedio in formato XDV (DVI esteso); comunque si può usare \pack{microtype} anche compilando con \prog{xelatex} anche se i miglioramenti sono meno ``vistosi''. +Tanto per confronto, questo testo di documentazione su \textsf{TOPtesi} è composto con il motore di composizione \prog{xelatex} usando i font OpenType TeX Gyre Termes con codifica UNICODE presenti nella distribuzione del sistema \TeX; come si vede la divisione delle parole in fin di riga non presenta inconvenienti particolari; forse con un testo di altro genere, con composizione in colonne strette o all'interno di tabelle, si potrebbe verificare la presenza di righe molto lasche, dove è stato allargato troppo lo spazio interparola. Per questo, quando si usa il motore di composizione \prog{pdflatex}, si consiglia sempre di usare la codifica \texttt{T1} anche per l'italiano; non si sa mai, ma certamente con questa codifica si hanno meno inconvenienti e le lettere accentate sono disegnate meglio. Se si usa come motore \prog{pdflatex}, è conveniente usare anche il pacchetto di estensione \pack{microtype} che consente di rendere ancora migliori le righe del testo composto; con \prog{xelatex}, invece, le funzionalità di questo pacchetto sono solo parzialmente usabili; comunque si può usare \pack{microtype} anche compilando con \prog{xelatex} anche se i miglioramenti sono meno ``vistosi'' che con \prog{pdflatex}. \section{Come stampare la tesi} @@ -884,7 +880,7 @@ assumere un aspetto più professionale, sia perché, ecologicamente parlando, si consuma meno carta. Per questo ho cambiato le impostazioni di default della classe -\texttt{report}, sulla quale è basata la classe \texttt{toptesi}, +\texttt{report}, sulla quale è basata la classe \texttt{TOPtesi}, per far sì che comunque la stampa della pagina, sia essa solo in bianca o in bianca e volta, appaia sempre con i margini laterali uguali. @@ -897,12 +893,12 @@ margini esterni. Se si stampa solo in bianca invece sarebbe il caso di aumentare il margine sinistro; tuttavia non ho realizzato questo spostamento non solo perché il margine destro resta di una certa ampiezza e può accogliere le note -marginali\marginpar{\small\sffamily\raggedright Questa è una nota +marginali\marginpar{\footnotesize\sffamily\raggedright Questa è una nota marginale}, se si decide di farne uso, ma anche perché, almeno al Politecnico di Torino, la copia da depositare nella segreteria didattica non deve essere realizzata su carta, ma deve essere -registrata su un dischetto o su un CD-ROM in formato \texttt{.pdf} -(o in formato \texttt{.doc} se non si usa \LaTeX) e chi legge la +registrata su un CD-ROM in formato \texttt{.pdf} (o in formato +\texttt{.doc} se non si usa \LaTeX) e chi legge la tesi sullo schermo preferisce senz'altro avere il testo centrato piuttosto che spostato alternativamente da un lato o dall'altro dello schermo. @@ -912,11 +908,11 @@ specialmente se compongono tesi piuttosto voluminose e/o se le rilegano con una costola piuttosto rigida. In questo caso la classe \texttt{toptesi} accetta l'opzione \texttt{cucitura} mediante la quale le facciate di sinistra e di destra vengono -spostate all'esterno di quasi un centimetro, precisamente di +spostate all'esterno di 7\,mm, per compensare la rigidezza della cucitura e la forte curvatura delle pagine causate dallo spessore e/o dal tipo di -rilegatura. Questo implica che la copia da memorizzare sul CD-ROM -o sul dischetto dovrà essere compilata senza specificare questa +rilegatura. Questo implica che la copia da memorizzare sul CD-ROM +dovrà essere compilata senza specificare questa opzione, che invece sarà specificata per ricomporre il file prima della stampa su carta. @@ -1036,7 +1032,7 @@ disse: ``\foreignlanguage{english}{Mr Livingstone, I suppose\dots}'' e si strinsero la mano. \end{verbatim} -Con il programma \prog{xelatex} le lingue ausiliarie, oltre l'italiano e l'inglese già preinstallate in \pack{TOPtesi}, basta specificare, per esempio: +Con il programma \prog{xelatex} le lingue ausiliarie, oltre l'italiano e l'inglese già preinstallate in \pack{TOPtesi}, basta specificare nel preambolo, per esempio: \begin{verbatim} \setotherlanguages{french,spanish} \end{verbatim} @@ -1046,7 +1042,7 @@ Oppure, se la lingua richiede un alfabeto speciale, se ne può specificare il fo ... \setotherlanguage[variant=ancient]{greek} \end{verbatim} -Ciò fatto si dispone per ogni lingua, tranne quella principale, di un ambiente dal nome uguale alla lingua, che all'occorrenza seleziona anche il font specifico, la cui famiglia abbia un nome che comincia con il nome della lingua. Per esempio: +Ciò fatto si dispone per ogni lingua, tranne quella principale, di un ambiente dal nome uguale alla lingua, che all'occorrenza seleziona anche il font specifico, la cui famiglia abbia un nome che comincia con lo stesso nome della lingua. Per esempio: \begin{verbatim} \begin{greek} Οἰόνται τινές, βασιλεῦ Γέλων, τοῦ ψάμμον τὸν ἀριθμὸν ἄπειρον εἶμεν @@ -1083,9 +1079,9 @@ e per le lingue che richiedono un trattamento particolare si usa un comando simi \setotherlanguage[variant=ancient]{greek} \end{verbatim} -Per scrivere in lingue che implicano alfabeti diversi da quello latino, ovviamente, bisogna aver curato di disporre di una configurazione del sistema \TeX\ completa anche dei font che servono. Non dovrebbero esserci problemi con il cirillico e con il greco; per altri alfabeti e per le lingue che si scrivono da destra a sinistra bisogna ovviamente disporre dei pacchetti necessari. Si tenga presente che le versioni moderne del sistema \TeX\ \emph{non} usano come interprete il programma originario di Knuth, ma una la sua estensione che in origine si chiamava $\epsilon$\TeX; la variante che produce il file del documento composto in formato \texttt{.pdf} si chiama \prog{pdftex}, ma questa versione comprende tutte le estensioni di $\epsilon$\TeX. Bene, queste estensioni servono anche per gestire le lingue con scrittura retrograda pur di disporre dei pacchetti relativi a queste lingue. +Per scrivere in lingue che implicano alfabeti diversi da quello latino, ovviamente, bisogna aver curato di disporre di una configurazione del sistema \TeX\ completa anche dei font che servono. Non dovrebbero esserci problemi con il cirillico e con il greco; per altri alfabeti e per le lingue che si scrivono da destra a sinistra bisogna ovviamente disporre dei pacchetti necessari. Si tenga presente che le versioni moderne del sistema \TeX\ \emph{non} usano come interprete il programma originario di Knuth, ma la sua estensione che in origine si chiamava $\epsilon$\TeX; la variante che produce il file del documento composto in formato \texttt{.pdf} si chiama \prog{pdftex}, ma questa versione comprende tutte le estensioni di $\epsilon$\TeX. Bene, queste estensioni servono anche per gestire le lingue con scrittura retrograda pur di disporre dei pacchetti relativi a queste lingue. -Anche \prog{xelatex} è in grado di gestire le lingue retrograde ed è capace con modesti adattamenti per comporre in verticale (cinese, giapponese,\dots). +Anche \prog{xelatex} è in grado di gestire le lingue retrograde ed è capace con modesti adattamenti di comporre in verticale (cinese, giapponese,\dots). \chapter{I comandi specifici introdotti da \textsf{TOPtesi}} @@ -1095,7 +1091,7 @@ I comandi specifici introdotti da \textsf{TOPtesi} si aggiungono a tutti quelli definiti da \LaTeX\ e dalla sua classe standard \texttt{report}; mentre questi sono tutti in inglese o sono abbreviazioni inglesi, i comandi introdotti da \textsf{TOPtesi} sono -quasi tutti in italiano o sono abbreviazioni italiane. +prevalentemente in italiano o sono abbreviazioni italiane. Questi comandi sono di diverse categorie; alcuni si possono usare solo in modo matematico altri solo in modo testo; alcuni solo nel preambolo, diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-example.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi-example.pdf index 359775790a9..3df58f959e2 100644 Binary files a/Master/texmf-dist/doc/latex/toptesi/toptesi-example.pdf and b/Master/texmf-dist/doc/latex/toptesi/toptesi-example.pdf differ diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-example.tex b/Master/texmf-dist/doc/latex/toptesi/toptesi-example.tex index e2860c6adbb..abbbbc1ad53 100644 --- a/Master/texmf-dist/doc/latex/toptesi/toptesi-example.tex +++ b/Master/texmf-dist/doc/latex/toptesi/toptesi-example.tex @@ -3,7 +3,8 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1.o Esempio con la classe toptesi -\documentclass[12pt,twoside,cucitura]{toptesi} +\documentclass[a5paper,10pt,twoside,cucitura]{toptesi} +\usepackage{lipsum} %\documentclass[twoside,cucitura,pdfa]{toptesi} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2.o Esempio con la classe toptesi % \documentclass[11pt,twoside,oldstyle,autoretitolo,classica,greek]{toptesi} @@ -43,10 +44,11 @@ % \ateneo{Universit{\`a} degli Studi di Trieste} \nomeateneo{Castello di Miramare} +\FacoltaDi{} \facolta[III]{Matematica, Fisica\\e Scienze Naturali} %\Materia{Remote sensing} %\monografia{La pressione barometrica di Giove}% per la laurea triennale -\titolo{La pressione barometrica di Giove}% per la laurea quinquennale e il dottorato +\titolo{La pressione barometrica di~Giove}% per la laurea quinquennale e il dottorato \sottotitolo{Metodo dei satelliti medicei}% per la laurea quinquennale e il dottorato \corsodilaurea{Astronomia Applicata}% per la laurea %\corsodidottorato{Meccanica}% per il dottorato @@ -84,7 +86,8 @@ %\annoaccademico{1615-1616}% solo con l'opzione classica %\annoaccademico{2006-2007}% idem \ciclodidottorato{XV}% per il dottorato -\logosede{logopolito}% questo e' ovviamente facoltativo, ma e' richiesto per il dottorato al PoliTO +\logosede{logopolito}% questo e' ovviamente facoltativo, ma e' richiesto per +% il dottorato al PoliTO % %\chapterbib %solo per vedere che cosa succede; e' preferibile comporre una sola bibliografia %\AdvisorName{Supervisors} @@ -203,6 +206,13 @@ Essi furono per la prima volta osservati da uno dei candidati mentre sperimentava l'efficacia del tubo occhiale che aveva appena inventato rielaborando una idea sentita di seconda mano da un viaggiatore appena arrivato dai Paesi Bassi. + +%\blankpagestyle{headings} + +%\lipsum[1-2] + + + \chapter{Il barometro} \section{Generalit{\`a}} \begin{interlinea}{0.87} Il barometro, come dice il nome, serve per @@ -305,7 +315,8 @@ possa essere ruinato dal grande gelo e non indichi la pressione giusta, come invece deve sempre fare uno strumento di misura, quale {\`e} quello che {\`e} descritto cost{\`\i}. - +\chapter{Il listato del pacchetto \texttt{topcoman.sty}} +\listing{topcoman.sty} \begin{thebibliography}{9} diff --git a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx index 8bf510aed60..3d93b393bea 100644 --- a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx +++ b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx @@ -87,7 +87,7 @@ its source file is another example of how to use toptesi. % \iffalse %<*driver> \documentclass{ltxdoc} -\ProvidesFile{toptesi.dtx}[2013/03/08 v.5.70 Documented TeX file for +\ProvidesFile{toptesi.dtx}[2013/03/27 v.5.71 Documented TeX file for the TOPtesi bundle] \GetFileInfo{toptesi.dtx} \title{The TOPtesi bundle} @@ -96,6 +96,7 @@ the TOPtesi bundle] \usepackage{metalogo} \def\prog#1{\textsf{#1}} +\def\pack#1{\textsf{\slshape#1}} \begin{document}\errorcontextlines=9 \maketitle \setlength\hfuzz{20pt} @@ -104,7 +105,7 @@ the TOPtesi bundle] % % \fi % -% \CheckSum{2654} +% \CheckSum{2694} % %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -139,10 +140,10 @@ the TOPtesi bundle] % XeLaTeX is that the option pdfa cannot be used any more, because it resorts to a % compilation with pdf\LaTeX; the typesetting engine \XeTeX\ does not produce directly % any PDF output but a modified, extended DVI output, even if this format is immediately -% transformed into a PDF file through a special version, xdvipdfmx, of the conversion program. Another -% minor XeLaTeX feature is that it cannot fully exploit the typesetting facilities of -% the micro type package, but the wide choice of OpenType fonts replaces almost completely -% such missing feature. +% transformed into a PDF file through a special version, xdvipdfmx, of the conversion +% program. Another minor XeLaTeX feature is that it cannot fully exploit the +% typesetting facilities of the micro type package, but the wide choice of +% OpenType fonts replaces almost completely such missing feature. % \end{abstract} % % \section{Introduction} @@ -155,8 +156,8 @@ the TOPtesi bundle] % magistrale'', ``tesi di dottorato'', ``dissertazione di dottorato'', and so on. % All these documents have in common the fact that they all conclude a period of university % education. Moreover since they may conclude a double degree university program, they may -% receive foreign names such as, for example, ``Projet de fin d'\'etudes'', ``Master thesis'', -% and the like. +% receive foreign names such as, for example, ``Projet de fin d'\'etudes'', +% ``Master thesis'', and the like. % \item An extension package \texttt{toptesi.sty} that contains most of the code % for the real typesetting; it might be used as an extension to the report class file, % although this use is discouraged. @@ -168,36 +169,37 @@ the TOPtesi bundle] % \item A third extension package \texttt{topcoman.sty} that defines a certain number % of user commands suitable for typesetting technical matters. % \item Previous version of this bundle contained also the logos of a certain number of -% universities; These logos are not distributed anymore because of legal constraints. Every -% one who is working on his/her degree course final report must retrieve the logo of his/her -% university, but s/he should pay attention to use it according to the rules and limitations -% of the university. +% universities; these logos are not distributed anymore because of legal constraints. Every +% one who is working on his/her degree course final report must retrieve the +% logo of his/her university, but s/he should pay attention to use it according +% to the rules and limitations of the university. % \item A documentation file \texttt{toptesi-doc-xetex.pdf} written in Italian where every -% feature is explained in detail; essential information is given in this English documentation. -% The source file of the documentation \texttt{toptesi-doc-xetex.tex} may be used as a sample -% for typesetting one's thesis with XeLaTeX. +% feature is explained in detail; essential information is given in this English +% documentation. The source file of the documentation \texttt{toptesi-doc-xetex.tex} +% may be used as a sample or template for typesetting one's thesis with XeLaTeX. % \end{itemize} % % The above files are complemented with a configuration file that any user may -% personalize at will; these personalizations make it easy to configure the -% bundle so as to make it suitable for another language; in facts the \textsf{babel} -% package contains localizations for many languages, but such localisations deal -% with the standard infix \LaTeX\ names and phrases and do not cope with the thesis -% title page requirements. +% customize at will; these customizations make it easy to configure the +% bundle so as to make it suitable for another language; in facts the +% \textsf{babel} and \textsf{polyglossia} packages contain localizations +% for many languages, but such localizations deal with the standard infix +% \LaTeX\ names and phrases and do not cope with the thesis title page requirements. % % TOPtesi was specifically conceived for typesetting theses with the \LaTeX\ mark-up, and % initially was using the \textsf{tex} typesetting engine; later on this engine was % substantially substituted by the \textsf{pdftex} engine, which was capable of direct % output of PDF files. Since about 2006 the typesetting engine \XeTeX\ is available; the -% most important feature of this engine is its capability of using OpentType fonts, among -% which those that are resident in the specific platform where the document is being -% typeset. For what concerns theses this might be of essential importance when the thesis -% refers to specific languages that use different scripts (Greek, Russian, Bulgarian, -% Chinese, Japanese, Korean, Arabic, Farsi, Thai, and so on). -% -% This version of TOPtesi has been tested with \XeLaTeX. Some conflicts have been spotted -% and solved; may be there are still hidden ones, so at this version number this bundle -% should be considered as a ``beta'' one. The only main drawback still present when running +% most important feature of this engine is its capability of using OpentType fonts, +% among which those that are available to the operating system of the specific +% platform where the document is being typeset. For what concerns theses this +% might be of essential importance when the thesis deals with specific languages +% that use different scripts (Greek, Russian, Bulgarian, Chinese, Japanese, +% Korean, Arabic, Farsi, Thai, and so on). +% +% This version of TOPtesi has been tested with \XeLaTeX. Some conflicts have +% been spotted and solved; may be there are still hidden ones, so that feedback +% from users is particularly welcome. The only main drawback still present when running % \XeLaTeX\ is the fact that this program cannot still \emph{directly} produce the output % file in PDF format, although it automatically transforms its specific output file into % PDF format. This implies that the specific \textsf{pdftex} features required to produce @@ -207,11 +209,11 @@ the TOPtesi bundle] % % \section{User commands} % The \texttt{toptesi.cls} is basically an extension of the standard class -% \texttt{report.cls}; it redefines the page typesetting grid, the headers and the footers, -% and the title page layout and commands. -% \texttt{toptesi.cls} does not set such crazy settings as ``double spaced'' text; it is -% intended to typeset the thesis with the quality of a \LaTeX\ well typeset document, not -% as a typewriter written one. +% \texttt{report.cls}; it redefines the page typesetting grid, the headers +% and the footers, and the title page layout and commands. \texttt{toptesi.cls} +% does not set such crazy settings as ``double spaced'' text; it is intended +% to typeset the thesis with the quality of a \LaTeX\ well typeset document, +% not as a typewriter written one. % % Theses very often are full of specialized material: formulas, diagrams and pictures, % texts written in non latin alphabets, special symbols for philological mark-up, and @@ -220,6 +222,13 @@ the TOPtesi bundle] % on typesetting styles that refer to the ``gone by times'' of mechanical typewriters % should be banned. % +% At the same time the class allows to typeset theses on any paper format; +% nowadays, in facts, Universities are requesting theses in smaller formats +% than A4 or letter paper. With smaller paper sizes the layout changes +% automatically, but the title page might require some more attention. The +% default paper size is A4, but the user can seta any paper size among those +% accepted by the |report| standard class. +% % Most new commands refer themselves to the information that should be typeset in the % title page; some class options specify special stylistic page details; the rest is simple % and traditional \LaTeX\ mark-up as it is implemented in the \LaTeX\ kernel and in the @@ -227,13 +236,17 @@ the TOPtesi bundle] % commands are to be used, but essentially the body of the thesis has the same mark-up. % % \subsection{Class options} -% The class accepts all the options accepted by the report document class plus the ones -% defined here: +% The class accepts all the options accepted by the |report| document class +% plus the ones defined here: % \begin{description}\def\Item[#1]{\item[\texttt{#1}]} % % \Item[chapterbib] Allows to typeset a list of references at the end % of each chapter and the bibliography items are numbered with a \emph{chapter.item} -% indication. +% indication. This implies a manual build up of each end-of-chapter bibliography +% by means off a specific |thebibliography| environment. This works may be +% avoided if the user relies on the various packages already available in any +% complete \TeX\ system distribution and the facilities offered by packages +% such as \pack{biblatex} and sorting end formatting engines such as \prog{biber}. % % \Item[classica] Specifies a general modification of certain details that are % supposed to be more adequate in the humanities fields; specifically this option @@ -695,27 +708,29 @@ the TOPtesi bundle] % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{toptesi}% -[2013/03/08 v.5.70 Class for typesetting university theses] +[2013/03/27 v.5.71 Class for typesetting university theses] % \end{macrocode} % % The class itself is very simple since it requires just the \texttt{report} document % class and some packages with some default options. All options specified for the -% \texttt{toptesi} class are passed on to the \texttt{report} class; the latter, on turn, -% is called with the \texttt{a4paper} option. According to the \LaTeX\ machinery of option -% passing, the options passed on to the loaded class should be appended to the existing -% options, so that if \texttt{letterpaper} was specified in the calling statement of -% \texttt{toptesi}, this last option would override the default \texttt{a4paper} option. -% The same holds true for the other package options except for the encoding name used -% as an option for the \texttt{inputenc} package; this simply does not work and the -% package is not loaded any more as it was in the previous versions\footnote{Thanks to -% Enrico Gregorio who pointed out this feature.}. -% Similarly if another language was specified in the list of \texttt{toptesi} -% options, this language would be appended yo the \texttt{babel} package default options -% and would become the default language. -% \begin{macrocode} +% \texttt{toptesi} class are passed on to the \texttt{report} class; the |a4paper| +% option is made the default, but the user can call the class with any valid +% \LaTeX\ paper size. According to the \LaTeX\ machinery of option passing, +% the |\ExecuteOption| command assures that |a4paper| is the default size, +% but it is not being used if another paper size code is specified to the class. +% The same holds true for the other class options, except for the encoding code +% string because they passing machinery does not hold true for the \pack{inputenc} +% package; therefore this package is not loaded any more as it was in previous +% versions\footnote{Thanks to Enrico Gregorio who pointed out this feature.} +% of the class. On the opposite if another language iss specified in the list of +% \pack{toptesi} class options, this language would be appended to the \pack{babel} +% package default options and, beware!, it would become the default language. +% \begin{macrocode} +\DeclareOption{a4paper}{\PassOptionsToClass{\CurrentOption}{report}} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}} +\ExecuteOptions{a4paper} \ProcessOptions\relax -\LoadClass[a4paper]{report} +\LoadClass{report} \RequirePackage{ifxetex} \ifxetex \RequirePackage{fontspec} @@ -749,7 +764,7 @@ the TOPtesi bundle] % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{toptesi}% -[2013/03/08 v.5.70 Extension for toptesi.cls]% +[2013/03/27 v.5.71 Extension for toptesi.cls]% % \end{macrocode} % % We start with defining the debugging macros; these trace commands and macros @@ -763,11 +778,11 @@ the TOPtesi bundle] % Now we define the specific package macros: \texttt{classica} and \texttt{trieste} % are identical; \texttt{trieste} is maintained for backward compatibility. % The option \texttt{14pt} is for choosing a normal size of 14pt; the class option -% file \texttt{size14.clo} is distributed with the \texttt{extsizes} pacckage and is already -% included in any complete distribution of the major \TeX\ system ones; in previous versions -% of this bundle there was a specific option class file for this large size, but with the -% latest complete distributions available, there is no chance that the existing option file -% is missing. +% file \texttt{size14.clo} is distributed with the \pack{extsizes} package and +% is already included in any complete distribution of the major \TeX\ system ones; +% in previous versions of this bundle there was a specific option class file for +% this large size, but with the latest complete distributions available, there +% is no chance that the existing option file is missing. % % \texttt{chapterbib} allows to set a list of references at the end of each chapter. % @@ -779,6 +794,13 @@ the TOPtesi bundle] \newif\if@xivpt \@xivptfalse % \end{macrocode} % +% A binding correction is established; its default value is parametrized to +% the paper dimensions, even if this correction should actually not depend +% on the aper size; the paper flexibility at the spine margin should be +% independent from its width; nevertheless large sizes allow for larger +% default corrections. In any case the user can override this setting by +% using the specific command |\setbindingcorrection|. The recommendation +% to the user is to not exaggerate with this correction. % \begin{macrocode} \newlength\T@Pbinding\setlength\T@Pbinding{7mm} \def\setbindingcorrection#1{\T@Pbinding=#1} @@ -807,51 +829,51 @@ the TOPtesi bundle] \if@xivpt\input{size14.clo}\fi % \end{macrocode} % -% The text height gets set so as to cope with the standard UNI A4 size; in -% any case the typesetting grid is set to an height of 585pt and is then -% rounded to an integer number of lines depending on the size option -% that has been chosen. The |\topmargin|, |\headheight| and |\headsep| -% parameters have already been set in the size class option file, so that here -% just a small adjustment is made. +% The |\texheight| is parametrized to the paper height and adjusted so as to contain an integer number of normal text lines. A new dimension is defined to hold the actual value of the inner/spine margin. % % \begin{macrocode} -\textheight 585pt +\newlength\interno +\textheight 0.7\paperheight \divide\textheight by \baselineskip \multiply\textheight by \baselineskip \advance\textheight by \topskip % \end{macrocode} -% For the text grid width a certain reduction is made if the extra size of 14pt is chosen. +% The inner margin is parametrized to the paper width, but a small correction +% is made if the extra size of 14pt is chosen.Also the footskip is parametrized +% to the paper height in a slightly different way when the large |14pt| size is chosen. % \begin{macrocode} \ifx\f@size\@xivpt - \textwidth=138mm + \setlength\interno{\dimexpr\paperwidth/6} + \footskip=1,5\basleineskip \else - \textwidth=150mm + \setlength\interno{\dimexpr\paperwidth/7} + \footskip=2\baselineskip \fi % \end{macrocode} -% Because of the above adjustment the right and left margins must be recomputed; -% in any case they must be recomputed because the default positioning of the -% text grid is centered; only if the class option \texttt{cucitura} is specified -% (|\if@binding| in this case is true) the text grids are moved to the outside -% in order to leave a wider inner margin. At the same time if the text grid is moved to -% the outside, the marginal note width must be reduced accordingly. These changes are -% executed at the |\begin{document}| stage. -% \begin{macrocode} -\oddsidemargin=\paperwidth -\advance\oddsidemargin -\textwidth -\divide\oddsidemargin \tw@ -\advance\oddsidemargin -1in +% The convenience pod holding the spine margin didth in a dimensional register +% becomes really useful now in order to define the other text body grid dimensions. +% Without binding correction the inner and outer margin are chosen equal, but +% the grid is moved outwards if the binding correction option is specified. +% \begin{macrocode} +\oddsidemargin=\dimexpr\interno-1in\relax \evensidemargin=\oddsidemargin -\marginparwidth\oddsidemargin -\advance\marginparwidth 1in +\marginparwidth\interno \advance\marginparwidth-2.5\marginparsep -% \AtBeginDocument{% \if@binding - \typeout{Messaggio Toptesi: Ricalcolo i margini} + \PackageInfo{TOPtesi}{Margin width recalculation} + \PackageInfo{TOPtesi}{Before:\MessageBreak + oddsidemargin\space\space \the\oddsidemargin\MessageBreak + evensidemargin\space \the\evensidemargin} \advance\oddsidemargin \T@Pbinding \advance\evensidemargin -\T@Pbinding \advance\marginparwidth -\T@Pbinding + \PackageInfo{TOPtesi}{After:\MessageBreak + oddsidemargin\space\space \the\oddsidemargin\MessageBreak + evensidemargin\space \the\evensidemargin} \fi} +\textwidth=\dimexpr\paperwidth-2\interno\relax + % \end{macrocode} % % We now establish the page style. We start by setting to ``empy'' the tokens that @@ -979,7 +1001,8 @@ the TOPtesi bundle] % \begin{macrocode} \newcommand\blankpagestyle[1]{\def\blank@ps{#1}} \def\blank@ps{plain} -\renewcommand\cleardoublepage{\clearpage\ifodd\value{page}\else\if@twoside\if@openright +\renewcommand\cleardoublepage{\clearpage\ifodd\value{page}\else + \if@twoside\if@openright \clearpage\null\thispagestyle{\blank@ps}\clearpage\fi\fi\fi} % \end{macrocode} % @@ -1772,7 +1795,7 @@ Skipping any redefinition\MessageBreak}% % \fi % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{topfront}[2013/03/08 v.5.70 Title page for TOPtesi] +\ProvidesPackage{topfront}[2013/03/27 v.5.71 Title page for TOPtesi] % \end{macrocode} % % The title page information depends on the type of ``thesis' that is being typeset. @@ -1983,12 +2006,17 @@ Skipping any redefinition\MessageBreak}% % Finally |\logosede| gets the name of the graphic file that contains the information % relative to the university logo; it may receive also a list of logo file names, as it % might be necessary when a thesis is developed in a multiple university environment. If -% such logo file is not available, the user does not specify -% this command; if the user uses this command to insert one or more university logo files +% such logo file is not available, the user does not specify this command; if the +% thesis is typeset on smaller paper size than A4 or letter, it would be much +% better to avoid inserting one or more logos in the title page; this is +% particularly necessary when using A5 paper size. Nevertheless this decision is +% left to the user and this package neither controls this fact nor outputs any warning. +% If the user uses this command to insert one or more university logo files % but some file is not available, the usual \texttt{graphicx} package warning is issued % but compilation goes on without the missing logo. -% The treatment of one or more logo files, it is necessary to have available some extra -% commands and control sequences citable to store temporary data or to specify style +% +% The treatment of one or more logo files requires some extra +% commands and control sequences suitable to store temporary data or to specify style % parameters: one is the name of a save box; another is the default spacing between the % logos in the typeset page; the third is the height of the logos. The default spacing % may be set with the help of the macro |\setlogodistance| -- notice that the default @@ -2037,7 +2065,7 @@ Skipping any redefinition\MessageBreak}% \newcommand*\setlogodistance[1]{\TPT@logospace=#1} \providecommand*{\@logosede}{} -\newcommand\logosede[2][3cm]{\def\@logosede{#2}\TPT@logoheight=#1} +\newcommand\logosede[2][\interno]{\def\@logosede{#2}\TPT@logoheight=#1} \newcommand\printloghi{\ifdefvoid{\@logosede}{}{% \begin{lrbox}{\TPT@logobox}\hskip\TPT@logospace @@ -2212,10 +2240,10 @@ Skipping any redefinition\MessageBreak}% \@height2ex\vrule\@height1.4\p@\@depth-\p@\@width50mm\hfil}% \fi }}% - \def\@oddfoot{\vbox to 15mm{\vss + \def\@oddfoot{\vbox to \dimexpr\paperheight/20\relax{\vss \ifclassica \hbox to \hsize{\hfil\raisebox{-.3ex}[\z@][\z@]{% - \vrule\@height-2.6\p@\@depth3\p@\@width50mm}\hfil}% + \vrule\@height-2.6\p@\@depth3\p@\@width\dimexpr\textwidth/3}\hfil}% \fi \hbox to\hsize{\hfill{\Large{\@submitdate}}\hfill}}% }% @@ -2588,7 +2616,7 @@ Skipping any redefinition\MessageBreak}% % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} % lavora solo con LaTeX 2e \ProvidesPackage{topcoman}% - [2013/03/08 v.5.70 Additional commands for the TOPtesi bundle] + [2013/03/27 v.5.71 Additional commands for the TOPtesi bundle] % \end{macrocode} % The new command |\DeclareSlantedCapitalGreekLetters| optionally sets the capital % Greek letters in math mode with the glyphs taken from the math italic fonts, not from diff --git a/Master/texmf-dist/tex/latex/toptesi/topcoman.sty b/Master/texmf-dist/tex/latex/toptesi/topcoman.sty index b46e51b3c16..145ed2667b0 100644 --- a/Master/texmf-dist/tex/latex/toptesi/topcoman.sty +++ b/Master/texmf-dist/tex/latex/toptesi/topcoman.sty @@ -29,7 +29,7 @@ %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} % lavora solo con LaTeX 2e \ProvidesPackage{topcoman}% - [2013/03/08 v.5.70 Additional commands for the TOPtesi bundle] + [2013/03/27 v.5.71 Additional commands for the TOPtesi bundle] \RequirePackage{ifxetex} \ifxetex\else \newcommand*\DeclareSlantedCapitalGreekLetters{% diff --git a/Master/texmf-dist/tex/latex/toptesi/topfront.sty b/Master/texmf-dist/tex/latex/toptesi/topfront.sty index 6ff037ba9ec..117e3ece0d1 100644 --- a/Master/texmf-dist/tex/latex/toptesi/topfront.sty +++ b/Master/texmf-dist/tex/latex/toptesi/topfront.sty @@ -28,7 +28,7 @@ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{topfront}[2013/03/08 v.5.70 Title page for TOPtesi] +\ProvidesPackage{topfront}[2013/03/27 v.5.71 Title page for TOPtesi] \newif\iffemminile \newif\ifdottorato \dottoratofalse \newif\iflaureatriennale \laureatriennalefalse @@ -107,7 +107,7 @@ \newcommand*\setlogodistance[1]{\TPT@logospace=#1} \providecommand*{\@logosede}{} -\newcommand\logosede[2][3cm]{\def\@logosede{#2}\TPT@logoheight=#1} +\newcommand\logosede[2][\interno]{\def\@logosede{#2}\TPT@logoheight=#1} \newcommand\printloghi{\ifdefvoid{\@logosede}{}{% \begin{lrbox}{\TPT@logobox}\hskip\TPT@logospace @@ -205,10 +205,10 @@ \@height2ex\vrule\@height1.4\p@\@depth-\p@\@width50mm\hfil}% \fi }}% - \def\@oddfoot{\vbox to 15mm{\vss + \def\@oddfoot{\vbox to \dimexpr\paperheight/20\relax{\vss \ifclassica \hbox to \hsize{\hfil\raisebox{-.3ex}[\z@][\z@]{% - \vrule\@height-2.6\p@\@depth3\p@\@width50mm}\hfil}% + \vrule\@height-2.6\p@\@depth3\p@\@width\dimexpr\textwidth/3}\hfil}% \fi \hbox to\hsize{\hfill{\Large{\@submitdate}}\hfill}}% }% diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi.cls b/Master/texmf-dist/tex/latex/toptesi/toptesi.cls index 3c701f18b12..4a81b58dbc5 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi.cls +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi.cls @@ -29,10 +29,12 @@ %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{toptesi}% -[2013/03/08 v.5.70 Class for typesetting university theses] +[2013/03/27 v.5.71 Class for typesetting university theses] +\DeclareOption{a4paper}{\PassOptionsToClass{\CurrentOption}{report}} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}} +\ExecuteOptions{a4paper} \ProcessOptions\relax -\LoadClass[a4paper]{report} +\LoadClass{report} \RequirePackage{ifxetex} \ifxetex \RequirePackage{fontspec} diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi.sty b/Master/texmf-dist/tex/latex/toptesi/toptesi.sty index e82ff466279..a0bc052ea61 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi.sty +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi.sty @@ -29,7 +29,7 @@ %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{toptesi}% -[2013/03/08 v.5.70 Extension for toptesi.cls]% +[2013/03/27 v.5.71 Extension for toptesi.cls]% \def\TRON{\tracingcommands \tw@ \tracingmacros \tw@} \def\TROFF{\tracingcommands\z@ \tracingmacros \z@} \let\TROF\TROFF @@ -53,30 +53,37 @@ \ProcessOptions\relax \RequirePackage{graphicx} \if@xivpt\input{size14.clo}\fi -\textheight 585pt +\newlength\interno +\textheight 0.7\paperheight \divide\textheight by \baselineskip \multiply\textheight by \baselineskip \advance\textheight by \topskip \ifx\f@size\@xivpt - \textwidth=138mm + \setlength\interno{\dimexpr\paperwidth/6} + \footskip=1,5\basleineskip \else - \textwidth=150mm + \setlength\interno{\dimexpr\paperwidth/7} + \footskip=2\baselineskip \fi -\oddsidemargin=\paperwidth -\advance\oddsidemargin -\textwidth -\divide\oddsidemargin \tw@ -\advance\oddsidemargin -1in +\oddsidemargin=\dimexpr\interno-1in\relax \evensidemargin=\oddsidemargin -\marginparwidth\oddsidemargin -\advance\marginparwidth 1in +\marginparwidth\interno \advance\marginparwidth-2.5\marginparsep \AtBeginDocument{% \if@binding - \typeout{Messaggio Toptesi: Ricalcolo i margini} + \PackageInfo{TOPtesi}{Margin width recalculation} + \PackageInfo{TOPtesi}{Before:\MessageBreak + oddsidemargin\space\space \the\oddsidemargin\MessageBreak + evensidemargin\space \the\evensidemargin} \advance\oddsidemargin \T@Pbinding \advance\evensidemargin -\T@Pbinding \advance\marginparwidth -\T@Pbinding + \PackageInfo{TOPtesi}{After:\MessageBreak + oddsidemargin\space\space \the\oddsidemargin\MessageBreak + evensidemargin\space \the\evensidemargin} \fi} +\textwidth=\dimexpr\paperwidth-2\interno\relax + \def\lapagina{\thepage} \mark{{}{}} \newbox\@intesta @@ -147,7 +154,8 @@ \tablespagefalse \newcommand\blankpagestyle[1]{\def\blank@ps{#1}} \def\blank@ps{plain} -\renewcommand\cleardoublepage{\clearpage\ifodd\value{page}\else\if@twoside\if@openright +\renewcommand\cleardoublepage{\clearpage\ifodd\value{page}\else + \if@twoside\if@openright \clearpage\null\thispagestyle{\blank@ps}\clearpage\fi\fi\fi} \def\sommario{% \iffrontmatter\else\frontmattertrue\fi diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index b04c32ec0c3..306a7e0ceed 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -2995,40 +2995,35 @@ sub dotype1{ # sub doscripts { my $pwd = getcwd(); - - my $build_tldir = "texk/texlive"; - my $build_scriptsdir = "$build_tldir/linked_scripts"; - my $builddir = "$BUILDDEST/$build_scriptsdir/$package"; - # my $scriptsdir = "$DEST/scripts/$package"; - # - my @scripts = (); + # in the .tds.zip case, we will already be in the scripts dir + # and they will already be installed, ipso facto. + my $tds_zip = $pwd eq $scriptsdir; + + my @scripts = (); # first do the user-visible bindir entries. $scriptpatt = $specialscripts_bin{$package}; if ($scriptpatt) { - if ($pwd ne $scriptsdir) { - # in the .tds.zip case, we will already be in the scripts dir. + if (! $tds_zip) { &install ($scriptsdir, $scriptpatt); &SYSTEM ("chmod a+x $scriptsdir/*"); } - # # determine list of scripts from scriptpatt, since a .tds.zip (e.g., # adhocfilelist) might have unpacked others into the scripts/ dir. chomp (@scripts = grep (/$scriptpatt/, `ls $scriptsdir`)); # # update the copy in Build (the reason we do the bindir ones first). - &xmkdir ($builddir); for my $s (@scripts) { - &SYSTEM ("$CP $scriptsdir/$s $builddir/"); + &build_scripts_copy ("$scriptsdir/$s"); } } # then do the ones that go only under scripts/ and not in the bindirs. + # (and hence also not in Build.) my $nobin_scriptpatt = $specialscripts_nobin{$package}; if ($nobin_scriptpatt) { - if ($pwd ne $scriptsdir) { - # in the .tds.zip case, we will already be in the scripts dir. + if (! $tds_zip) { &install ($scriptsdir, $nobin_scriptpatt); &SYSTEM ("chmod a+x $scriptsdir/*"); } @@ -3037,18 +3032,12 @@ sub doscripts { # List of scripts we just copied in for installing in the bindirs. return unless @scripts; - # For each, give a warning if missing from the Makefile.am in the sources. - # Also, if not already present, create the platform-specific bindir entries. + # If not already present, create the platform-specific bindir entries. # - my $scripts_Makefile = "$Build/$build_scriptsdir/Makefile.in"; + my $build_tldir = "texk/texlive"; chomp (my @platforms = `cd $Master/bin && ls`); # for my $s (@scripts) { - system ("grep $package/$s $scripts_Makefile >&/dev/null"); - if ($? != 0) { - print "*** $package/$s not in $scripts_Makefile\n"; - } - (my $linkname = $s) =~ s/\..*$//; for my $p (@platforms) { my $platdir = "$TOPDEST/bin/$p"; @@ -3076,7 +3065,7 @@ sub doscripts { my $w32_wrapper = "$Build/$build_tldir/w32_wrapper/runscript.exe"; &SYSTEM ("$CP $w32_wrapper $platdir/$linkname.exe"); &SYSTEM ("$CP $w32_wrapper $platdir/r$linkname.exe") - if $linkname =~ /pdfcrop|epstopdf/; # rpdfcrop.exe, repstopdf.exe + if $linkname =~ /pdfcrop|epstopdf/; # r{pdfcrop,epstopdf}.exe } } } @@ -4908,23 +4897,23 @@ sub POSTcontext { print "still POST$package - user-level executables\n"; # similar to biber, executables go in both the Master bin dir and the # Build linked_scripts dir. The executables are cherry-picked from - # two different directories. + # ConTeXt's stubs directory. my $w32_bindir = "$TOPDEST/bin/win32"; &xmkdir ($w32_bindir); # - &xchdir ("$DEST/scripts/$package/stubs/unix"); + my $pkg_subdir = "stubs/unix"; # where hans keeps them + &xchdir ("$DEST/scripts/$package/$pkg_subdir"); my @exec = (); - for my $exec (qw(context luatools texexec texmfstart)) { + for my $exec (qw(context ctxtools luatools + mtxrun pstopdf texexec texmfstart)) { + &bindirs_symlink ($exec); + &build_scripts_copy ($exec, $pkg_subdir); &SYSTEM ("$CP ../mswin/$exec.exe $w32_bindir/"); push (@exec, $exec); } - #for my $exec (qw(ctxtools pstopdf)) { - # - #} - # # mtxrun on Windows needs more than just the .exe. &xchdir ("../mswin"); - &SYSTEM ("$CP mtxrun.exe mtxrun.dll mtxrun.lua $w32_bindir/"); + &SYSTEM ("$CP mtxrun.dll mtxrun.lua $w32_bindir/"); print "still POST$package - man pages\n"; &xchdir ("$DEST/doc/$package/scripts"); @@ -4935,10 +4924,71 @@ sub POSTcontext { my $mansrc = (-r "mkii/$exec.man" ? "mkii/$exec.man" : "mkiv/$exec.man"); &SYSTEM ("$CP $mansrc $mandest/$exec.1"); } + # In addition, there is mtx-*.man for subcommands in mkiv. + &xchdir ("mkiv"); + for my $mtxman () { + (my $mtxmanbase = $mtxman) =~ s/\.man$//; + &SYSTEM ("$CP $mtxman $mandest/$mtxmanbase.1"); + } &tl_man_to_pdf (); } - +# Called for the ConTeXt scripts, though conceivably could be used for +# other things. Make a symlink in each Unix bindir (Windows is not +# handled here) to EXEC, assuming its location is relative to pwd. +# +sub bindirs_symlink { + my ($exec) = @_; + + chomp (my $pwd = `pwd`); + (my $intermediate_dirs = $pwd) =~ s,^.*/$DEST_TREE/,,; + # + my $linktarget = "../../$DEST_TREE"; + $linktarget .= "/$intermediate_dirs"; + $linktarget .= "/$exec"; + # + (my $linkname = $exec) =~ s,.*/,,; # just the basename + + chomp (my @platforms = `cd $Master/bin && ls`); + for my $p (@platforms) { + next if $p eq "win32"; # windows handled separately + my $platdir = "$TOPDEST/bin/$p"; + &xmkdir ($platdir); + &SYSTEM ("ln -s $linktarget $platdir/$linkname"); + } +} + +# Called both for ConTeXt and from doscripts: Update copy of EXEC under +# Build/.../linked_scripts. If second arg INTERMEDIATE_DIRS is given +# (done by ConTeXt), that path is appended under linked_scripts/. In +# any case, just the basename of EXEC is used in the destination, and +# the full EXEC, whatever it is, is used for the source of the copy. +# +sub build_scripts_copy { + my ($exec,$intermediate_dirs) = @_; + + # prepend / to INTERMEDIATE_DIRS if fiven. + $intermediate_dirs = ($intermediate_dirs ? "/$intermediate_dirs" : ""); + + my $build_tldir = "texk/texlive"; + my $build_scriptsdir = "$build_tldir/linked_scripts"; + my $build_subdir = "$package$intermediate_dirs"; + my $builddir = "$BUILDDEST/$build_scriptsdir/$build_subdir"; + &xmkdir ($builddir); + # + &SYSTEM ("$CP $exec $builddir/"); + + # Warn if missing from the Makefile.am in the sources. + (my $exec_basename = $exec) =~ s,^.*/,,; + my $scripts_Makefile = "$Build/$build_scriptsdir/Makefile.in"; + my $pattern = "\\b$build_subdir/$exec_basename\\b"; + system ("grep '$pattern' $scripts_Makefile >/dev/null"); + if ($? != 0) { + print "*** $build_subdir/$exec_basename not in $scripts_Makefile\n"; + } +} + + sub POSTcontext_games { print "POST$package - remove duplicated fonts\n"; &SYSTEM ("$RM -rf fonts"); -- cgit v1.2.3