From 8a79b2a0b87e6b3ffa8d01fac1730ed74c3cd75b Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 12 Aug 2011 23:05:40 +0000 Subject: toptesi (12aug11) git-svn-id: svn://tug.org/texlive/trunk@23518 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/latex/toptesi/FrontespiziAssemblati.pdf | Bin 0 -> 35369 bytes Master/texmf-dist/doc/latex/toptesi/LPPL.tex | 409 +++++ Master/texmf-dist/doc/latex/toptesi/README | 33 +- Master/texmf-dist/doc/latex/toptesi/manifest.txt | 41 +- .../doc/latex/toptesi/toptesi-doc-xetex-a.pdf | Bin 0 -> 334116 bytes .../doc/latex/toptesi/toptesi-doc-xetex-def.ps | 44 + .../doc/latex/toptesi/toptesi-doc-xetex.pdf | Bin 0 -> 288741 bytes .../texmf-dist/doc/latex/toptesi/toptesi-doc.pdf | Bin 590042 -> 0 bytes .../texmf-dist/doc/latex/toptesi/toptesi-doc.tex | 1646 -------------------- .../doc/latex/toptesi/toptesi-doc.xmpdata | 3 - .../doc/latex/toptesi/toptesi-example-xetex.pdf | Bin 0 -> 69090 bytes .../doc/latex/toptesi/toptesi-example-xetex.tex | 310 ++++ .../doc/latex/toptesi/toptesi-example.pdf | Bin 267617 -> 269948 bytes .../doc/latex/toptesi/toptesi-example.tex | 55 +- Master/texmf-dist/doc/latex/toptesi/toptesi.pdf | Bin 370804 -> 386564 bytes Master/texmf-dist/source/latex/toptesi/toptesi.dtx | 1136 ++++++++------ Master/texmf-dist/tex/latex/toptesi/topcoman.sty | 46 +- Master/texmf-dist/tex/latex/toptesi/topfront.sty | 62 +- Master/texmf-dist/tex/latex/toptesi/toptesi.cfg | 15 +- Master/texmf-dist/tex/latex/toptesi/toptesi.cls | 27 +- Master/texmf-dist/tex/latex/toptesi/toptesi.sty | 108 +- 21 files changed, 1615 insertions(+), 2320 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/toptesi/FrontespiziAssemblati.pdf create mode 100755 Master/texmf-dist/doc/latex/toptesi/LPPL.tex create mode 100644 Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex-a.pdf create mode 100644 Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex-def.ps create mode 100755 Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.pdf delete mode 100644 Master/texmf-dist/doc/latex/toptesi/toptesi-doc.pdf delete mode 100644 Master/texmf-dist/doc/latex/toptesi/toptesi-doc.tex delete mode 100755 Master/texmf-dist/doc/latex/toptesi/toptesi-doc.xmpdata create mode 100755 Master/texmf-dist/doc/latex/toptesi/toptesi-example-xetex.pdf create mode 100755 Master/texmf-dist/doc/latex/toptesi/toptesi-example-xetex.tex (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/toptesi/FrontespiziAssemblati.pdf b/Master/texmf-dist/doc/latex/toptesi/FrontespiziAssemblati.pdf new file mode 100644 index 00000000000..ae56c83e879 Binary files /dev/null and b/Master/texmf-dist/doc/latex/toptesi/FrontespiziAssemblati.pdf differ diff --git a/Master/texmf-dist/doc/latex/toptesi/LPPL.tex b/Master/texmf-dist/doc/latex/toptesi/LPPL.tex new file mode 100755 index 00000000000..05799acec13 --- /dev/null +++ b/Master/texmf-dist/doc/latex/toptesi/LPPL.tex @@ -0,0 +1,409 @@ +\chapter{The \LaTeX\ Project Public License} +\begin{otherlanguage}{english} +%=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- +\begin{quote} +LPPL Version 1.3, 2003-12-01 + +Copyright 1999 2002-03 \LaTeX3 Project + + Everyone is allowed to distribute verbatim copies of this + license document, but modification of it is not allowed. +\end{quote} + +\section{Preamble} +%======== + +The \LaTeX\ Project Public License (LPPL) is the primary license under +which the the \LaTeX\ kernel and the base \LaTeX\ packages are +distributed. + +You may use this license for any work of which you hold the copyright +and which you wish to distribute. This license may be particularly +suitable if your work is \TeX-related (such as a \LaTeX\ package), but +you may use it with small modifications even if your work is unrelated +to \TeX. + +The section `Whether and How to Distribute Works under This License', +below, gives instructions, examples, and recommendations for authors +who are considering distributing their works under this license. + +This license gives conditions under which a work may be distributed +and modified, as well as conditions under which modified versions of +that work may be distributed. + +We, the \LaTeX3 Project, believe that the conditions below give you the +freedom to make and distribute modified versions of your work that +conform with whatever technical specifications you wish while +maintaining the availability, integrity, and reliability of that work. +If you do not see how to achieve your goal while meeting these +conditions, then read the document `cfgguide.tex' and `modguide.tex' in +the base \LaTeX\ distribution for suggestions. + + +\section{Definitions} +%=========== + +In this license document the following terms are used: +\begin {description}\def\Item[#1]{\item[\textit{#1}]} +\Item[Work] + Any work being distributed under this License. + +\Item[Derived Work] + Any work that under any applicable law is derived from the Work. + +\Item[Modification] + Any procedure that produces a Derived Work under any applicable + law -- for example, the production of a file containing an + original file associated with the Work or a significant portion of + such a file, either verbatim or with modifications and/or + translated into another language. + +\Item[Modify] + To apply any procedure that produces a Derived Work under any + applicable law. + +\Item[Distribution] + Making copies of the Work available from one person to another, in + whole or in part. Distribution includes (but is not limited to) + making any electronic components of the Work accessible by + file transfer protocols such as FTP or HTTP or by shared file + systems such as Sun's Network File System (NFS). + +\Item[Compiled Work] + A version of the Work that has been processed into a form where it + is directly usable on a computer system. This processing may + include using installation facilities provided by the Work, + transformations of the Work, copying of components of the Work, or + other activities. Note that modification of any installation + facilities provided by the Work constitutes modification of the Work. + +\Item[Current Maintainer] + A person or persons nominated as such within the Work. If there is + no such explicit nomination then it is the `Copyright Holder' under + any applicable law. + +\Item[Base Interpreter] + A program or process that is normally needed for running or + interpreting a part or the whole of the Work. + A Base Interpreter may depend on external components but these + are not considered part of the Base Interpreter provided that each + external component clearly identifies itself whenever it is used + interactively. Unless explicitly specified when applying the + license to the Work, the only applicable Base Interpreter is a + ``\LaTeX-Format''. +\end{description} + + +\section{Conditions on Distribution and Modification} +%=========================================== +\begin {enumerate} +\item Activities other than distribution and/or modification of the +Work are not covered by this license; they are outside its scope. In +particular, the act of running the Work is not restricted and no +requirements are made concerning any offers of support for the Work. + +\item You may distribute a complete, unmodified copy of the Work as you +received it. Distribution of only part of the Work is considered +modification of the Work, and no right to distribute such a Derived +Work may be assumed under the terms of this clause. + +\item You may distribute a Compiled Work that has been generated from a +complete, unmodified copy of the Work as distributed under Clause 2 +above, as long as that Compiled Work is distributed in such a way that +the recipients may install the Compiled Work on their system exactly as +it would have been installed if they generated a Compiled Work directly +from the Work. + +\item If you are the Current Maintainer of the Work, you may, without +restriction, modify the Work, thus creating a Derived Work. You may +also distribute the Derived Work without restriction, including +Compiled Works generated from the Derived Work. Derived Works +distributed in this manner by the Current Maintainer are considered to +be updated versions of the Work. + +\item If you are not the Current Maintainer of the Work, you may modify +your copy of the Work, thus creating a Derived Work based on the Work, +and compile this Derived Work, thus creating a Compiled Work based on +the Derived Work. + +\item If you are not the Current Maintainer of the Work, you may +distribute a Derived Work provided the following conditions are met for +every component of the Work unless that component clearly states in the +copyright notice that it is exempt from that condition. Only the +Current Maintainer is allowed to add such statements of exemption to a +component of the Work. +\begin {enumerate} + \item If a component of this Derived Work can be a direct replacement + for a component of the Work when that component is used with the + Base Interpreter, then, wherever this component of the Work + identifies itself to the user when used interactively with that + Base Interpreter, the replacement component of this Derived Work + clearly and unambiguously identifies itself as a modified version + of this component to the user when used interactively with that + Base Interpreter. + + \item Every component of the Derived Work contains prominent notices + detailing the nature of the changes to that component, or a + prominent reference to another file that is distributed as part + of the Derived Work and that contains a complete and accurate log + of the changes. + + \item No information in the Derived Work implies that any persons, + including (but not limited to) the authors of the original version + of the Work, provide any support, including (but not limited to) + the reporting and handling of errors, to recipients of the + Derived Work unless those persons have stated explicitly that + they do provide such support for the Derived Work. + + \item You distribute at least one of the following with the Derived Work: + \begin {enumerate} + \item A complete, unmodified copy of the Work; + if your distribution of a modified component is made by + offering access to copy the modified component from a + designated place, then offering equivalent access to copy + the Work from the same or some similar place meets this + condition, even though third parties are not compelled to + copy the Work along with the modified component; + + \item Information that is sufficient to obtain a complete, unmodified + copy of the Work. + \end{enumerate} +\end{enumerate} +\item If you are not the Current Maintainer of the Work, you may +distribute a Compiled Work generated from a Derived Work, as long as +the Derived Work is distributed to all recipients of the Compiled Work, +and as long as the conditions of Clause 6, above, are met with regard +to the Derived Work. + +\item The conditions above are not intended to prohibit, and hence do +not apply to, the modification, by any method, of any component so that +it becomes identical to an updated version of that component of the +Work as it is distributed by the Current Maintainer under Clause 4, +above. + +\item Distribution of the Work or any Derived Work in an alternative +format, where the Work or that Derived Work (in whole or in part) is +then produced by applying some process to that format, does not relax +or nullify any sections of this license as they pertain to the results +of applying that process. + +\item \begin {enumerate}\item A Derived Work may be distributed under a different license + provided that license itself honors the conditions listed in + Clause 6 above, in regard to the Work, though it does not have + to honor the rest of the conditions in this license. + + \item If a Derived Work is distributed under this license, that + Derived Work must provide sufficient documentation as part of + itself to allow each recipient of that Derived Work to honor the + restrictions in Clause 6 above, concerning changes from the Work. +\end{enumerate} +\item This license places no restrictions on works that are unrelated to +the Work, nor does this license place any restrictions on aggregating +such works with the Work by any means. + +\item Nothing in this license is intended to, or may be used to, prevent +complete compliance by all parties with all applicable laws. +\end{enumerate} + +\section{No Warranty} +%=========== + +There is no warranty for the Work. Except when otherwise stated in +writing, the Copyright Holder provides the Work `as is', without +warranty of any kind, either expressed or implied, including, but not +limited to, the implied warranties of merchantability and fitness for +a particular purpose. The entire risk as to the quality and performance +of the Work is with you. Should the Work prove defective, you +assume the cost of all necessary servicing, repair, or correction. + +In no event unless agreed to in writing will the Copyright Holder, or +any author named in the components of the Work, or any other party who +may distribute and/or modify the Work as permitted above, be liable to +you for damages, including any general, special, incidental or +consequential damages arising out of any use of the Work or out of +inability to use the Work (including, but not limited to, loss of +data, data being rendered inaccurate, or losses sustained by anyone as +a result of any failure of the Work to operate with any other +programs), even if the Copyright Holder or said author or said other +party has been advised of the possibility of such damages. + + +\section{Maintenance Of the Work} +%======================= + +The Work has the status `author-maintained' if the Copyright Holder +explicitly and prominently states near the primary copyright notice in +the Work that the Work can only be maintained by the Copyright Holder +or simply that is `author-maintained'. + +The Work has the status `maintained' if there is a Current Maintainer +who has indicated in the Work that they are willing to receive error +reports for the Work (for example, by supplying a valid e-mail +address). It is not required for the Current Maintainer to acknowledge +or act upon these error reports. + +The Work changes from status `maintained' to `unmaintained' if there +is no Current Maintainer, or the person stated to be Current +Maintainer of the work cannot be reached through the indicated means +of communication for a period of six months, and there are no other +significant signs of active maintenance. + +You can become the Current Maintainer of the Work by agreement with +any existing Current Maintainer to take over this role. + +If the Work is unmaintained, you can become the Current Maintainer of +the Work through the following steps: +\begin{enumerate} + \item Make a reasonable attempt to trace the Current Maintainer (and + the Copyright Holder, if the two differ) through the means of + an Internet or similar search. + + \item If this search is successful, then enquire whether the Work + is still maintained. + \begin {enumerate} + \item If it is being maintained, then ask the Current Maintainer + to update their communication data within one month. + + \item If the search is unsuccessful or no action to resume active + maintenance is taken by the Current Maintainer, then announce + within the pertinent community your intention to take over + maintenance. (If the Work is a \LaTeX\ work, this could be + done, for example, by posting to comp.text.tex.) + \end{enumerate} +\item \begin{enumerate}\item If the Current Maintainer is reachable and agrees to pass + maintenance of the Work to you, then this takes effect + immediately upon announcement. + + \item If the Current Maintainer is not reachable and the Copyright + Holder agrees that maintenance of the Work be passed to you, + then this takes effect immediately upon announcement. + \end{enumerate} + \item If you make an `intention announcement' as described in 2b. above + and after three months your intention is challenged neither by + the Current Maintainer nor by the Copyright Holder nor by other + people, then you may arrange for the Work to be changed so as + to name you as the (new) Current Maintainer. + + \item If the previously unreachable Current Maintainer becomes + reachable once more within three months of a change completed + under the terms of 3b) or 4), then that Current Maintainer must + become or remain the Current Maintainer upon request provided + they then update their communication data within one month. +\end{enumerate} +A change in the Current Maintainer does not, of itself, alter the fact +that the Work is distributed under the LPPL license. + +If you become the Current Maintainer of the Work, you should +immediately provide, within the Work, a prominent and unambiguous +statement of your status as Current Maintainer. You should also +announce your new status to the same pertinent community as +in 2b) above. + + +\section{Whether and How to Distribute Works under This License} +%====================================================== + +This section contains important instructions, examples, and +recommendations for authors who are considering distributing their +works under this license. These authors are addressed as \emph{you} in +this section. + +\subsection{Choosing This License or Another License} +%---------------------------------------- + +If for any part of your work you want or need to use *distribution* +conditions that differ significantly from those in this license, then +do not refer to this license anywhere in your work but, instead, +distribute your work under a different license. You may use the text +of this license as a model for your own license, but your license +should not refer to the LPPL or otherwise give the impression that +your work is distributed under the LPPL. + +The document `modguide.tex' in the base \LaTeX\ distribution explains +the motivation behind the conditions of this license. It explains, for +example, why distributing \LaTeX\ under the GNU General Public License +(GPL) was considered inappropriate. Even if your work is unrelated to +\LaTeX, the discussion in `modguide.tex' may still be relevant, and +authors intending to distribute their works under any license are +encouraged to read it. + +\subsection{A Recommendation on Modification Without Distribution} +%----------------------------------------------------- + +It is wise never to modify a component of the Work, even for your own +personal use, without also meeting the above conditions for +distributing the modified component. While you might intend that such +modifications will never be distributed, often this will happen by +accident -- you may forget that you have modified that component; or +it may not occur to you when allowing others to access the modified +version that you are thus distributing it and violating the conditions +of this license in ways that could have legal implications and, worse, +cause problems for the community. It is therefore usually in your +best interest to keep your copy of the Work identical with the public +one. Many works provide ways to control the behavior of that work +without altering any of its licensed components. + +\subsection{How to Use This License} +%----------------------- + +To use this license, place in each of the components of your work both +an explicit copyright notice including your name and the year the work +was authored and/or last substantially modified. Include also a +statement that the distribution and/or modification of that +component is constrained by the conditions in this license. + +Here is an example of such a notice and statement: +\begin{verbatim} + %% pig.dtx + %% Copyright 2003 M. Y. Name + % + % 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 (at your option) any later + % version. The latest version of this license is in + % http://www.latex-project.org/lppl.txt + % and version 1.3 or later is part of all distributions + % of LaTeX version 2003/12/01 or later. + % + % This work has the LPPL maintenance status "maintained". + % + % This Current Maintainer of this work is M. Y. Name. + % + % This work consists of the files pig.dtx and pig.ins + % and the derived file pig.sty. +\end{verbatim} + +Given such a notice and statement in a file, the conditions given in +this license document would apply, with the `Work' referring to the +three files `pig.dtx', `pig.ins', and `pig.sty' (the last being +generated from `pig.dtx' using `pig.ins'), the `Base Interpreter' +referring to any ``\LaTeX-Format'', and both `Copyright Holder' and +`Current Maintainer' referring to the person `M. Y. Name'. + +To prevent the Maintenance section of LPPL from allowing someone else +to become the Current Maintainer without your agreement, you could +change ``maintained'' above into "author-maintained". + + +\subsection{Important Recommendations} +%------------------------- + + Defining What Constitutes the Work + + The LPPL requires that distributions of the Work contain all the + files of the Work. It is therefore important that you provide a + way for the licensee to determine which files constitute the Work. + This could, for example, be achieved by explicitly listing all the + files of the Work near the copyright notice of each file or by + using a line such as: +\begin{verbatim} + % This work consists of all files listed in manifest.txt. +\end{verbatim} +% + in that place. In the absence of an unequivocal list it might be + impossible for the licensee to determine what is considered by you + to comprise the Work and, in such a case, the licensee would be + entitled to make reasonable conjectures as to which files comprise + the Work. + +\end{otherlanguage} diff --git a/Master/texmf-dist/doc/latex/toptesi/README b/Master/texmf-dist/doc/latex/toptesi/README index faecd4fdeb7..8e7adbd302d 100644 --- a/Master/texmf-dist/doc/latex/toptesi/README +++ b/Master/texmf-dist/doc/latex/toptesi/README @@ -1,40 +1,45 @@ +TOPtesi bundle version 5.59 of 2011/08/10 +Copyright 2011 Claudio Beccari +LaTeX Project Public Licence LPPL v.1.3 (or later) + The TOPtesi bundle contains everything is needed for typesetting a bachelor, master or PhD thesis in Italian (or in any other language supported by LaTeX: the bundle is constructed to support multilanguage -use). -The infix strings may be selected and specified at will by means +use). The infix strings may be selected and specified at will by means of a configuration file, so as to customize the layout of the front page to the requirements of a specific university and a specific language. Thanks to its language management, the bundle is suited for -multilanguage theses that are becoming more and more frequent thanks +multilanguage theses that are more and more frequent thanks to the double degree programs of the European Union Erasmus programs. +This important upgrade is intended to be compliant with XeLaTeX and the documentation explains how to obtain PDF/A-1b archivable files from both pdfLaTeX and XeLaTeX. The version number 5.59 is to be considered as a stable beta version, in the sense that it should be equivalento to version 5.50 when used with pdfLaTeX, and an experimental version when used with XeLaTeX. + For installation, if the package is not already installed in your TeX system distribution, either read the Italian documentation in toptesi-doc.pdf or quickly decompress the toptesi.zip file and move +all the pdf files to -toptesi-doc.pdf -toptesi/pdf - -to /texmf/doc/latex/toptesi. +to /texmf/doc/latex/toptesi/. -Move: +Move to source files: toptesi.dtx -toptesi-doc.tex - -to /texmf/source/latex/toptesi. +toptesi-doc-xetex.tex + +to /texmf/source/latex/toptesi/. +Move all other files to /texmf/tex/latex/toptesi/ + Run pdflatex on toptesi.dtx in order to get the class, style and configuration files (and the pdf documentation in English) and move -the .cls, .sty, .xmpdata, and .cfg files to /texmf/tex/latex/toptesi +the .cls, .sty, .xmpdata, .ps and .cfg files to /texmf/tex/latex/toptesi/. -If the cited folders do not exist, create them. +If the mentioned folders do not exist, create them. -The texmf folder is your personal texmf folder. If the package is already installed the texmf folder should be the /texmf-ditr system one. +The "texmf" folder is your personal texmf folder. If the package is already installed the "texmf" folder should be the /texmf-dist system one. If you are running a Windows platform change the slashes into backslashes and prefix all paths with the drive letter and any other specific prefix diff --git a/Master/texmf-dist/doc/latex/toptesi/manifest.txt b/Master/texmf-dist/doc/latex/toptesi/manifest.txt index cee037841e0..d344c4ef268 100644 --- a/Master/texmf-dist/doc/latex/toptesi/manifest.txt +++ b/Master/texmf-dist/doc/latex/toptesi/manifest.txt @@ -1,4 +1,4 @@ -manifest.txt (version 5.50) +manifest.txt (version 5.59) Copyright 2008-2011 Claudio Beccari This work may be distributed and/or modified under the conditions of @@ -18,11 +18,13 @@ This work consists of the files listed in manifest.txt This work consists of the following files manifest.txt toptesi.dtx - toptesi-doc.tex - toptesi-example + toptesi-doc-xetex.tex + toptesi-example.tex + toptesi-example-xetex README toptesi-exmple.xmpdata - toptesi-doc.xmpdata + toptesi-doc-xetex-def.ps + FrontespiziAssemblati.pdf The files derived from the work are the following: @@ -32,26 +34,31 @@ The files derived from the work are the following: topfront.sty toptesi.cfg toptesi.pdf - toptesi-doc.pdf + toptesi-doc-xetex.pdf + toptesi-doc-xetex-a.pdf toptesi-example.pdf + toptesi-example-xetex.pdf The toptesi.dtx file is self extracting and self documenting; if you run pdflatex on it you get at the same time the class, the style and the configuration files, together with the English documented file. -The Italian documentation is obtained by running pdflatex on -toptesi-doc.tex +The Italian documentation is obtained by running xelatex on +toptesi-doc-xetex.tex -The two documentations pdf files are complementary to one another. +The two documentations pdf files, toptesi.pdf and toptesi-doc-xetex.pdf, +are complementary to one another. The third documentation file +toptesi-doc-xetex-a.pdf is just the PDF/A-b version of +toptesi-doc-xetex.pdf. -The file +The files - toptesi-example.tex + toptesi-example.tex and toptesi-example-xetex.tex -is an example of the usage of this work; it may be used as a template, -but in itself, although part of this Work, may be used but the end user the way s/he likes best, in order to use it as a template, but the file should not be modified unless its name is changed. +are examples of the usage of this work, the former to be run with pdfLaTeX, +the latter with XeLaTeX; they may be used as templates, but in themselves, although part of this Work, they may by be used the end user the way s/he likes best, in order to use them as templates, but the files should not be modified unless their names are changed. The corresponding .pdf files are what one can get out of them. -The files toptesi-example.xmpdata and toptesi-doc.xmldata -are examples of the contents and format of the metadata that must be -included into the same directatory as the thesis main file in order to be -able to use pdflatex for typesetting a file that hopefully is PDF/A-1b -compliant (PDF/A-1b is the "weak" archivable PDF format). +The files toptesi-example.xmpdata and toptesi-doc-xetex-def.ps +are examples of the contents and format of the metadata files that must be +included into the same directatory as the thesis main file, in order to be +able to use pdflatex or ghostscript for producing a file that hopefully is +PDF/A-1b compliant (PDF/A-1b is the "weak" archivable PDF format). 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 new file mode 100644 index 00000000000..b40c288e3f2 Binary files /dev/null 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-def.ps b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex-def.ps new file mode 100644 index 00000000000..6953a37073d --- /dev/null +++ b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex-def.ps @@ -0,0 +1,44 @@ +%! +% $Id: PDFA_def.ps 8284 2007-10-10 17:40:38Z giles $ +% This is a sample prefix file for creating a PDF/A document. +% Feel free to modify entries marked with "Customize". + +% This assumes an ICC profile to reside in the file (ISO Coated sb.icc), +% unless the user modifies the corresponding line below. + + +systemdict /ProcessColorModel known { + systemdict /ProcessColorModel get dup /DeviceGray ne exch /DeviceCMYK ne and +} { + true +} ifelse +{ (ERROR: ProcessColorModel must be /DeviceGray or DeviceCMYK.)= + /ProcessColorModel cvx /rangecheck signalerror +} if + + +% Define entries to the document Info dictionary : + +/ICCProfile (/Users/claudio/icc/ECI-RGB.V1.0.icc) def + +[ /Title (La classe TOPtesi) % Customize. +/Author (Claudio Beccari) % Customize. +/Subject (File PDF ottenuto con XeLaTeX) % Customize. + /DOCINFO pdfmark + +% Define an ICC profile : + +[/_objdef {icc_PDFA} /type /stream /OBJ pdfmark +[{icc_PDFA} <> /PUT pdfmark +[{icc_PDFA} ICCProfile (r) file /PUT pdfmark + +% Define the output intent dictionary : + +[/_objdef {OutputIntent_PDFA} /type /dict /OBJ pdfmark +[{OutputIntent_PDFA} << + /Type /OutputIntent % Must be so (the standard requires). + /S /GTS_PDFA1 % Must be so (the standard requires). + /DestOutputProfile {icc_PDFA} % Must be so (see above). + /OutputConditionIdentifier (CGATS TR001) % Customize +>> /PUT pdfmark +[{Catalog} <> /PUT pdfmark diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.pdf new file mode 100755 index 00000000000..52bdf2cd6df Binary files /dev/null and b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc-xetex.pdf differ diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc.pdf deleted file mode 100644 index 7897bf21297..00000000000 Binary files a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc.pdf and /dev/null differ diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc.tex b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc.tex deleted file mode 100644 index ab841117a5b..00000000000 --- a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc.tex +++ /dev/null @@ -1,1646 +0,0 @@ -% -% toptesi-doc.tex -%% Copyright 2005-2011 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 (at your option) any later version. -% The latest version of this license is in -% http://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of LaTeX -% version 2003/12/01 or later. -% -% This work has the LPPL maintenance status "author-maintained". -% -% -% This work consists of the files listed in manifest.txt -% -% Version 1.3 of the LaTeX Project Public License is included in the -% appendix of this documentation, but the primary source remains in -% http://www.latex-project.org/ -% -% 2008/03/01 corretto l'esempio della sola stampa del frontespizio, -% perche' risultava errata omettendo di chiamare babel -\documentclass[12pt,twoside,pdfa]{toptesi}\errorcontextlines=9 -\hypersetup{% - pdfpagemode={UseOutlines}, - bookmarksopen, - pdfstartview={FitH}, - colorlinks, - linkcolor={blue}, - citecolor={blue}, - urlcolor={blue} - } -\usepackage[latin1]{inputenc} -\usepackage{color} -\usepackage{microtype}% -%%%% inserire il valore corretto della versione di toptesi -\def\fileversion{5.50} - \NomeMonografia{Manuale d'uso} - \monografia{La classe \textsf{TOPtesi}} - \sottotitolo{Per comporre le tesi al Poli \\e in molte altre università} - \candidato{Claudio Beccari} - \sedutadilaurea{Versione \fileversion} - \logosede{logopolito} - - - -\begin{document} - -\thispagestyle{empty} -\vspace*{.2\textheight} -\hrule -\bigskip -\centerline{\fontfamily{sf}\fontsize{25}{25}\selectfont La classe TOPtesi} -\bigskip -\hrule - -\newpage - - - - - \frontespizio -\sommario -Questo testo serve per descrivere come comporre tipograficamente la -tesi di laurea o la monografia o la dissertazione di dottorato -mediante il noto programma di composizione \LaTeX, o meglio, mediante la sua variante -pdf\/\LaTeX; sono previste di default le necessarie azioni per produrre il file finale in formato PDF archiviabile secondo la norma ISO 19005-1. - - L'appendice~A contiene il testo della \LaTeX\ Project Public Licence, - versione 1.3, alla quale questo lavoro è soggetto. - - - -\ringraziamenti - -Ringrazio gli studenti del Politecnico di Torino che mi hanno -sollecitato a mettere la mia esperienza a loro disposizione per -predisporre e rendere disponibile il software necessario per -preparare le loro tesi, monografie o dissertazioni con la qualità -che solo \LaTeX\ e pdf\LaTeX\ riescono a produrre. - -\indici - -\chapter{Introduzione} - -Si legge ancora nelle istruzioni per scrivere le tesi di molte -università italiane come di moltissime università straniere: -\begin{quote}\ttfamily -Comporre la tesi con interlinea 2 e con righe di 60 battute; -\dots -\end{quote} - -Quelle università non si sono ancora accorte che le macchine da -scrivere meccaniche o elettromeccaniche sono rimasti oggetti di -sola curiosità, ammesso che ce ne sia ancora qualcuna disponibile -e le poche superstiti non siano tutte nei musei. - -Oggi si scrive con uno dei tanti sistemi di elaborazione testi, -detti anche ``word processors'', che fanno parte più o meno di -default di ogni dotazione iniziale di qualsiasi PC di qualunque -marca e con qualunque sistema operativo. - -Fra i vari programmi di elaborazione testi, uno in particolare -spicca per la sua particolarità: \LaTeX. Esso è nato come -sovrastruttura di un altro programma, \TeX, che continua ad -esserne il motore. La prima versione di \TeX\ è stata creata nel -1978, ma è ancora usata oggi, naturalmente molto aggiornata, e -questo fatto è una cosa insolita nel panorama turbolento di novità -dell'informatica. Oggi,poi, anche \TeX\ è caduto in disuso perché soppiantato dal suo ``figlio'' \textsf{pdftex} che fa le stesse cose, ma la cui funzionalità è enormemente ampliata; tra l'altro, importantissimo, questo programma è capace di produrre il documento finale in formato PDF: Portable Document Format. \TeX\ era e rimane la pietra di paragone per confrontare le funzionalità dei suoi ``figli''; i suoi ``figli'' possono continuare a chiamarsi \TeX\ se riescono anche a fare le stesse cose che faceva il loro genitore. - -Secondo me, il suo successo è dovuto a due fatti: (a) esso è stato -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 -di software libero era quasi una bestemmia. - -D'altra parte Donald E.\ Knuth non era soddisfatto della bassa -professionalità che anno dopo anno manifestavano i compositori -delle case editrici, i quali anno dopo anno si abituavano a quanto -i programmi di elaborazione mettevano loro a disposizione, ma -contemporaneamente perdevano le loro conoscenze professionali via -via che si adattavano a quanto quei programmi consentivano loro di -fare. - -La cosa era o stava diventando insostenibile durante i vari anni -in cui uscivano i successivi volumi dell'opera di Knuth ``The Art -of Computer Programming'', e così Knuth si dedicò alla creazione -della tipografia elettronica realizzando il programma \TeX\ che, -ripeto, è ancora in ottima salute dopo quasi trent'anni di -onorato servizio. - -L'uso di \TeX\ per eseguire direttamente la composizione era piuttosto -difficile, e ogni utente doveva prima o poi imparare a scriversi delle -macroistruzioni che gli consentissero di agevolare il suo lavoro. - -Nel 1984 \TeX\ era già così diffuso in tutto il mondo, -specialmente in ambito accademico, che Leslie Lamport decise di -produrre un sistema quasi completo di macro che consentiva agli -utenti di usare \TeX\ lasciandolo dietro alle quinte, in modo da -potersi concentrare sul contenuto dei loro scritti e non sulla -forma da dare a questo o a quel dettaglio. - -Nel 1990 Knuth realizzò la versione di \TeX\ che consentiva di -comporre in diverse lingue simultaneamente; nel 1994 molti utenti -di \LaTeX\ costituirono il \LaTeX3 Team al fine di rendere -gestibile la mole enorme delle estensioni di \LaTeX\ che in -10~anni utenti entusiasti avevano messo a disposizione della -comunità degli altri utenti. Insomma è successo con \TeX\ e -\LaTeX\ quello che succede normalmente con il software libero. - -Attenzione: Knuth paga di tasca sua un dollaro a chiunque trovi un -errore nel suo software; a tutt'oggi non è andato in bancarotta, -sia perché gli errori sono rarissimi, sia perché quelle poche -persone che hanno segnalato errori veri e hanno ricevuto l'assegno -di Knuth, non l'hanno incassato ma l'hanno incorniciato come fosse -una reliquia preziosa. - -\section{\LaTeX\ e le tesi di laurea} - -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 -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, -mettendovi attorno aloni di luce cangiante, sfumature, -ombreggiature, evidenziandone i contorni, eccetera. Queste cose -sono riservate ai creativi che si occupano di pubblicità e usano programmi apposta per realizzare le loro idee innovative nel campo della pubblicità. - -Aspettatevi invece di comporre testi in cui ogni capoverso è -ottimizzato per avere il minor numero di parole divise in sillabe -in fin di riga, e di avere il minor numero possibile di -``ruscelli'' fra le parole grazie alla uniformità dello spazio -interparola; aspettatevi di comporre formule complicatissime con -il minimo di sforzo da parte vostra ma con la certezza che esse -saranno composte come nessun altro programma riesce a fare. -Aspettatevi uno stampato estremamente professionale. Sembrerebbe che la Microsoft sia riuscita ad ottenere da Knuth la necessaria consulenza per arricchire il noto programma Word (dall'edizione del 2007, credo) di un \emph{equation editor} che sia all'altezza di \TeX. Sembra che la Microsoft abbia sviluppato apposta un font OpenType, il Cambria, che riuscisse a funzionare sia con il nuovo \emph{equation editor} e la miriade di segni matematico che erano disponibili con \TeX, ma non ancora con i precedenti \emph{equation editor} che affiancavano Word nelle edizioni precedenti. Questo la dice lunga sulla influenza che \TeX\ ha avuto e sta ancora avendo sul mondo dell'elaborazione dei testi e nella tipocomposizione. - -Per questo motivo voi studenti che userete questo pacchetto di -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 -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 -questi programmi hanno necessariamente rinunciato a diverse -funzioni, massimizzando invece la velocità di presentazione del -risultato. - -\LaTeX\ richiede che voi scriviate un testo non formattato in puri -caratteri ASCII, ma marcato con un particolare sistema di -\emph{mark-up} che consente di sapere che cosa sia ogni parte del -vostro scritto. Ci pensa poi \LaTeX\ in un secondo tempo a dare forma -al vostro testo e, in particolare, a dare la stessa forma a ogni -elemento del vostro scritto a seconda di come lo abbiate ``marcato''; -elementi marcati nello stesso modo vengono composti nello stesso modo. -Così si evitano quelle disuniformità compositive che si notano assai -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. - -Volete avere una migliore approssimazione sulla finestra di composizione, in modo da restare su una via di mezzo fra le due posizioni di composizione? Usate LyX, oppure usate la componente \texttt{Writer} di OpenOffice; questa componente può essere arricchita con una estensione, scaricabile dal sito di OpenOffice, che si chiama \texttt{Writer2LaTeX}. Mentre sto scrivendo questi appunti la versione stabile non consente di usare \texttt{Writer} come se fosse un editor per \LaTeX; ma è già disponibile una versione sperimentale (che diventerà la versione ufficiale~1.2 di questa estensione) che permette di usare con certe limitazioni il programma \texttt{Writer} come un editor per \LaTeX, per poi disporre di un comodo bottone da cliccare per ottenere la composizione del testo sorgente, ed un altro comodo bottone per la visualizzazione dell'uscita in formato PDF. Gli utenti esperti possono superare le limitazioni inserendo nel testo sorgente adeguate istruzioni in linguaggio \LaTeX, cosicché quello che non può fare \texttt{Writer} come word processor, lo fa poi \LaTeX\ nella sua qualità di text processor. - -Personalmente non consiglierei queste vie di mezzo; tuttavia vale la pena sapere che esistono e che possono essere usate, sia pure con qualche limitazione. - -\section{Installare \LaTeX} -Quindi per cominciare a lavorare con \LaTeX\ per prima cosa dovete -installarvi il software; ovviamente se vi siete già installati -l'intero sistema \TeX\ ed è già calibrato per comporre -correttamente, potete saltare questo paragrafo. - -Ci sono sostanzialmente tre situazioni: -\begin{enumerate} -\item se siete degli utenti delle piattaforme Windows allora poteste -collegarvi in rete al sito \texttt{www.miktex.org} e poteste scaricarvi -ed installarvi la distribuzione di \LaTeX, o meglio, del sistema -\TeX\ chiamato MiK\TeX. Scaricatevi l'installazione completa, \emph{non} l'installazione minima o ``basic''. Ovviamente questo scaricamento implica una -connessione di rete sufficientemente veloce. Però leggete attentamente il prossimo capoverso. - -{\tolerance=9999 -Personalmente, anche sulla mia macchina virtuale Windows, io preferisco usare la distribuzione multipiattaforma \TeX~Live; basta scaricare da \texttt{http:/"/www.ctan.org"/tex-archive"/systems"/texlive"/tlnet} il pacchetto \texttt{install-tl.zip}, decomprimere il pacchetto, leggere le istruzioni, e lanciare l'installatore specificando anche il sito da cui eseguire lo scaricamento dei file sia per la prima installazione sia per i successivi aggiornamenti. Il sito più conveniente per gli utenti italiani non è il \emph{mirror} ufficiale di Roma2, quello di default, (che è funzionante, ma può risultare lentissimo), ma è il sito \texttt{http:/"/bo.mirror.garr.it"/mirrors"/CTAN"/systems"/texlive"/tlnet}. Tenuto conto che bisogna installare circa 2\,GiB di file, ci vuole una buona mezzz'oretta per installare il tutto con un collegamento ADSL sufficientemente veloce, ma poi il sistema è pronto per funzionare senza ulteriori configurazioni. Il bello di questa distribuzione è che i suoi moltissimi pacchetti vengono aggiornati piuttosto spesso e io personalmente uso il \TeX\ Live Manager almeno una volta alla settimana per essere sempre aggiornato alle ultime versioni di qualunque pacchetto; uso la stessa distribuzione e lo stesso manager anche su una mia macchina Macintosh e su un'altra macchina Linux.\par} - -\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 \texttt{apt-get}, -\texttt{rpm} o \texttt{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. - -Piuttosto se siete utenti di un Debian/Linux, vi conviene installare in parallelo alla distribuzione TeX Live/Debian o alla vecchia distribuzione teTeX, anche la distribuzione \TeX\ Live indicata sopra, perché questa è sempre aggiornata o comunque è aggiornabile in tempo reale, mentre le distribuzioni Debian hanno sempre almeno due anni di età; siccome questo è un periodo di rapida evoluzione, due anni sono troppi, e quindi è decisamente preferibile disporre della distribuzione \TeX\ Live ufficiale prodotta dall'apposito Working Group di TUG (l'associazione internazionale degli utenti di \TeX, oltre che l'ente ufficiale che produce e distribuisce il sistema \TeX). - -\item Siete degli utenti delle piattaforme Macintosh e siete i -fortunati 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 \texttt{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à pronto per funzionare senza bisogno di ulteriori configurazioni. Il sistema \texttt{Mac\TeX} produce il suo output solo -in formato PDF; se ne tenga conto leggendo attentamente la -documentazione, perché la cosa può essere critica con -l'inserimento delle immagini. Il pacchetto è già dotato dello -shell editor \TeX{}Shop e fa ricorso ad un suo previewer interno per -il formato PDF. - -Attenzione: questo previewer interno consente di eseguire -l'\textit{inverse search} mentre l'editor \TeX{}Shop consente di -fare la \textit{forward search}. Questo è molto comodo durante la -fase di editing del vostro documento. -\end{enumerate} - -Poi avete bisogno di programmi accessori per visualizzare sullo -schermo e/o stampare su carta i prodotti delle vostre -composizioni. Ognuna delle tre piattaforme tipo può avere già -installati sia i visualizzatori dei file in formato \texttt{.dvi}, -\texttt{.ps} o \texttt{.pdf}. Il formato \texttt{.dvi} è il -formato nativo del sistema \TeX\ quindi il software per -visualizzare e stampare arriva insieme alla distribuzione che -avete già installato. Per il formato \texttt{.ps} bisogna disporre -di qualcosa come \texttt{ghostscript} e/o \texttt{GSView} o altri -simili software che con Linux sono solitamente già disponibili -insieme al sistema. In ogni caso non è difficile trovare in rete -i luoghi da dove scaricarli. Per il formato \texttt{.pdf} Linux, -come al solito è già attrezzato. - -Infine è necessario disporre di un programma di composizione di -testi ASCII che sia anche un po' d'aiuto per comporre con \LaTeX. -Il programma gratuito che, a detta degli appassionati, serve per -fare tutto sarebbe \texttt{emacs}, disponibile per tutte e tre le -piattaforme anche se è nativo di UNIX. 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. - -Per tutte e tre le piattaforme è disponibile l'editor gratuito TeXmakerX, scaricabile dalla rete; esso è multipiattaforma ed è capace di lavorare anche con l'encoding UNICODE e di riconoscere se un file sorgente è codificato UNICODE oppure nella codifica di default del particolare sistema operativo della macchina. Anche TeXmakerX è dotato di un visualizzatore PDF interno che gli consente di tenere sincronizzate le finestre di editing e di composizione, cosicché come si muove il cursore in una finestra, simultaneamente si muove anche l'altra finestra alla posizione corrispondente. Estremamente utile, comodo e facile da usare. - -Per le piattaforme Mac esistono diversi programmi e vi si può installare anche TeXmakerX; a me, però, sembra che il migliore di tutti sia TeXShop, automaticamente installato quando si usa il pacchetto \texttt{Mac\TeX}. - - -\section{Ora siete pronti} -Ora che avete scaricato tutto il software gratuito o commerciale di cui -avete bisogno siete pronti per cominciare. - -{\color{red}Dopo avere letto un po' di documentazione e aver giocato un poco -con i programmi già predisposti sia dalla distribuzione del -sistema \TeX\ sia dai vari editor ASCII, siete in grado di capire -come funziona il tutto. - -Attenzione: non si minimizzi la frase precedente: la documentazione va letta sempre e capita fino in fondo; se c'è qualcosa che non capite, provate ad esercitarvi con qualche piccolo esercizio, visto che la pratica permette di capire la teoria (e viceversa), ma non andate a cercare in rete aiuto nei vari forum dedicati a \LaTeX\ per farvi dire: ``guarda nella pagina tal-dei-tali della documentazione''; per voi sarebbe una vera umiliazione\dots} - -A qualcuno può venire in mente: ``Ma non sarà mica che ci siano in giro dei programmi che permettono di fare tutto questo in modo WYSIWYG?'' Come noto, WYSIWYG è l'acronimo che si forma con le iniziali di ``what you see is what you get''. \LaTeX\ dovrebbe essere classificato con l'acronimo WYSIWYM che sta per ``what you see is what you mean''. Certo per ottenere esattamente quello che si voleva bisogna lavorare (apparentemente) di più; in realtà bisogna usare di più la testa e di meno il mouse. - -Tuttavia là fuori nei negozi ci sono diversi prodotti che consentono di usare \LaTeX\ praticamente in modo WYSIWYG; da Scientific Word a LyX a TeXmacs a Textures ce ne è per ogni piattaforma; LyX e TeXmacs sono freeware mentre gli altri costano attorno ai 500\$. Poi c'è la soluzione gratuita di OpenOffice con l'estensione~1.2 di \texttt{Writer2LaTeX}. - -Sia però chiaro; per poter operare in modo ``sincrono'' così da -avere immediatamente sullo schermo una cosa molto simile a quello -che si otterrà sulla carta, il programma deve essere velocissimo -ad eseguire il rendering grafico di quanto viene via via composto; -per questo motivo deve rinunciare a non poche funzionalità del -sistema \TeX. Però tutti questi software hanno la possibilità di -salvare i file in formato \texttt{.tex}, cioè nel formato -sorgente del sistema \TeX, per cui una volta finito l'editing si -può eseguire la composizione finale con il programma vero, e non -tramite le facilities del programma di editing. - -Io ho cominciato a lavorare con \LaTeX\ a metà degli anni '80 e non ho mai usato editor sincroni. Una decina di anni fa mi sono interessato per vedere i vantaggi di Textures, 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. - - -Disponendo di una piattaforma Linux ho 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 limitazioni -di nessun genere 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\ e -pdf\LaTeX.} - -\chapter{L'uso di \textsf{TOPtesi}} - -L'insieme di macro contenute in \textsf{TOPtesi} realizza esattamente -le specifiche di composizione per le monografie, tesi di laurea e -dissertazioni di dottorato da comporre presso il Politecnico di Torino; -l'acronimo TOP sta per TOrino Politecnico e naturalmente gioca un po' -anche sull'altro significato della parola inglese ``top''. - -Tuttavia il pacchetto non è stato creato solo per il Politecnico -di Torino; le informazioni relative a questo ateneo sono di -default, così come la facoltà di ingegneria è la facoltà di -default. Ma i comandi predisposti consentono di personalizzare il -pacchetto per ogni ateneo e ogni facoltà e, oserei dire, in ogni -lingua. - -Tenete conto che \textsf{TOPtesi} è già stato usato anche per -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 -altrettanto precisi nel comporre la matematica di quanto lo siano -nel comporre una poesia o un romanzo. - - -\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-distr}, 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 tipo UNIX essa si indica simbolicamente con la tilde e la radice del vostro albero personale potrebbe chiamarsi \texttt{\textasciitilde/texmf}; sulle macchine Windows invece dovete cercare in \texttt{C:\char92Documents and settings} seguito dal vostro user nome oppure da \texttt{All users}; 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 è radicata nella vostra cartella \texttt{\textasciitilde/Library}. - -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 e modificatelo secondo le vostre necessità. - - -\section{Il file di configurazione} - - -È comodo disporre di un file di configurazione -\texttt{toptesi.cfg}; il pacchetto \textsf{TOPtesi} contiene già -un file con la configurazione di default; chiunque se lo può -modificare come meglio crede; infatti che senso avrebbe una -configurazione di default se non la si potesse configurare? - -Tuttavia non è necessario servirsi del file \texttt{toptesi.cfg} -né di modificare il file con la configurazione di default, -perché ogni comando che contenga esplicitamente materiale per il -frontespizio ridefinisce quanto è definito di default e quindi -nulla è cristallizzato, fisso e immutabile. Tuttavia il file -di configurazione semplifica molto la vita e ne consiglio -l'uso. - -Potete perciò usare un diverso file di configurazione, sempre -chiamato però \texttt{toptesi.cfg}, collocato nella stessa -cartella dove risiede il materiale da comporre. Per esempio, -poteste comporre la monografia di laurea creando da qualche parte -la cartella \texttt{/monografia} e in questa cartella vi copiate -\texttt{toptesi.cfg} che poi modificherete a vostro piacimento; 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 copia del file -\texttt{toptesi.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'altra copia di \texttt{toptesi.cfg} che -configurerete per la vostra dissertazione; sempre in questa stessa -cartella metterete i file necessari per comporre la vostra -dissertazione. - -\section{Il formato PDF/A} -Il Politecnico di Torino, come anche molte università italiane e straniere, sta cercando di ``smaterializzare'' le copie di archivio delle tesi di laurea. Sono al corrente che dal 2008 è allo studio un processo per consegnare la copia di archivio della tesi tramite il Portale della Didattica, in modo da eliminare le copie cartacee. - -Il problema dell'archiviazione elettronica è che il materiale archiviato deve essere reperibile, leggibile e stampabile anche di qui a, diciamo, cinquanta anni. Per questo è necessario che esso sia archiviato in un formato standard e che nel futuro continuino ad esistere i programmi per la visualizzazione e la stampa di questo formato. - -L'Interntional Standards Organization ha pubblicato nel 2005 uno standard per l'archiviazione dei file con la norma ISO 19005-1:2005. Secondo questa norma i file archiviabili devono avere il formato PDF della versione 1.4 e devono soddisfare ad altri requisiti, oltre a contenere un certo numero di \emph{metadata} specificati dalla norma. Esistono due sotto"formati: il PDF/A-1a e il PDF/A-1b. Il formato PDF/A-1a deve rispondere ai requisiti del formato PDF/A-1b oltre ad altri requisiti specifici, in particolare che i font siano tutti inclusi nel file ed abbiano codifica UNICODE e che il file deve mantenere una struttura logica che possa essere esaminata con i motori di ricerca. Viceversa il formato PDF/A-1b, con meno pretese, richiede che i font siano tutti inclusi nel file, anche se non rispettano la codifica UNICODE, e che il file sia riproducibile a schermo e sia stampabile esattamente nello stesso modo di quando il file è stato archiviato. Il Politecnico richiederà il sotto"formato PDF/A-1b. - -Per questo scopo è necessario usare il programma di composizione \texttt{pdflatex} e il pacchetto specifico \textsf{pdfx} richiedendo nel preambolo del file principale della tesi che sia richiamato il file \texttt{pdfx.sty} con l'opzione giusta, precisamente il preambolo, subito prima di \verb|\begin{document}|, deve contenere la richiesta: -\begin{verbatim} -\usepackage[a-1b]{pdfx} -\end{verbatim} -Per facilitare la composizione della tesi, questa richiesta è già contenuta nella classe \texttt{TOPtesi} sotto forma di opzione per la classe \texttt{toptesi}, quindi lo studente non deve preoccuparsi di niente, fuorché installare il pacchetto \textsf{pdfx} nel proprio albero locale e preparare un file di \emph{metadata} come verrà spiegato più avanti. - -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 locale. Siccome bisogna provvedere ad una certa personalizzazione, è consigliabile eseguire questa installazione nell'albero locale, perché quando si aggiorna il sistema \TeX, vengono riscritti tutti i file degli alberi di sistema, ma non quelli dell'albero locale. - -Non solo, ma il formato PDF/A richiede che sia specificato un profilo di colore; se il sistema non contenesse già il file indicato nella documentazione del pacchetto \textsf{pdfx}, si consiglia di scaricare dalla pagina di download del sito \texttt{www.eci.org} il file \texttt{ECI-RGB.V1.0.icc} e di modificare con questo nome le varie righe del file \texttt{pdfx.sty} che contengono il riferimento ad un file \texttt{icc} o \texttt{.icm} diverso. - -Il file \texttt{pdfx.sty} carica anche il file \texttt{hyperref.sty} che permette di eseguire i link interni ed esterni del file PDF. Non è quindi possibile fare a meno di questo file; tuttavia, subito all'inizio del preambolo è possibile personalizzare le informazioni da inserire nel file PDF mediante i parametri dell'argomento del comando \verb|\hypersetup|; a titolo di esempio questo documento informativo è stato composto con questa personalizzazione: -\begin{verbatim} -\documentclass[12pt,twoside]{toptesi} -\hypersetup{% - pdfpagemode={UseOutlines}, - bookmarksopen, - pdfstartview={FitH}, - colorlinks, - linkcolor={blue}, - citecolor={blue}, - urlcolor={blue} - } -\usepackage[latin1]{inputenc} -... -\end{verbatim} -e, come si vede, la personalizzazione è stata eseguita subito dopo la dichiarazione di classe e prima di invocare altri pacchetti. Naturalmente la personalizzazione indicata è solo indicativa e riportata a titolo di esempio. - -I \emph{metadata} di carattere generale sono inseriti nel file di uscita dall'azione diretta del file \texttt{pdfx.sty}; ma questo non può contenere i \emph{metadata} specifici del documento che voi vi state componendo; è necessario allora predisporre nella cartella dove risiede il file principale della tesi (quello sul quale opera l'eseguibile \texttt{pdflatex}) un file contenente i \emph{metadata} specifici, e che abbia estensione \texttt{xmpdata}. Per esempio, il file principale di questo documento si chiama \texttt{toptesi-doc.tex}: nella cartella dove risiede è stato creato il file \texttt{toptesi-doc.xmpdata} con il seguente contenuto: -\begin{verbatim} -\Author{Claudio Beccari} -\Title{La classe ToPtesi} -\Keywords{LaTeXTesiPDF/A% -DissertazioneMonografia} -\end{verbatim} -Questa operazione, evidentemente va ripetuta per ogni documento da produrre in formato PDF/A, e quindi bisogna predisporre un diverso file \texttt{.xmpdata} contenente le informazioni specifiche relative allo specifico documento. - -Ricordate solo che il pacchetto \textsf{TOPtesi} non contiene nessuna verifica se state componendo con \texttt{pdflatex} oppure con il semplice \texttt{latex} o con qualche altro applicativo del sistema \TeX. Il concetto è che \emph{dovete} usare \texttt{pdflatex} anche se non volete produrre un documento archiviabile; gli altri motori di composizione per il mark-up di Plain \TeX o di \LaTeX\ sono da considerarsi obsoleti, specialmente per quel che riguarda l'inserimento di figure. - -Se esistono validi motivi per non usare \texttt{pdflatex} (ma è meglio che vi mettiate nelle condizioni di \emph{non usare} quei pacchetti che richiedano l'uso di comandi PostScript, come per esempio \textsf{PSTriks} o \textsf{XYpic}, ma di usare i pacchetti di grafica come \textsf{pgf} e il suo ambiente \texttt{tikz} che consento di fare quasi tutto quello che si può fare con gli altri pacchetti che richiedono il linguaggio PostScript), allora dovete usare il semplice \LaTeX, e poi convertire il file DVI ottenuto in un file PS; per la conversione in file PDF/A dovete poi usare \texttt{ghostscript}; per come fare dovete consultare il libretto \textit{Saper Comunicare -- Cenni di scrittura tecnico scientifica}\footnote{Saper comunicare è scaricabile dal sito del Politecnico di Torino anche da parte di chi non è studente di quell'ateneo.} e/o la documentazione di \texttt{ghostscript} (versione 8.61 o successiva) in particolare il file \texttt{ps2pdf.html}. - -Ricordate solo che produrre un file PDF/A non è semplice, ma se usate \texttt{pdflatex} con i font di default, se incorporate solo figure PNG e JPEG e PDF 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. - -\section{Pronti? Via!} - -Ora siete pronti per comporre la vostra tesi o monografia o -dissertazione. Ricordate solo di non giocare con quei pochi -comandi di \LaTeX\ che permettono di fare pasticcetti alla -WYSIWYG; \LaTeX\ compone da solo benissimo; al massimo, alla fine, -quando tutto sarà finito e non sarà più necessario apportare -correzioni, potrete anche inserire qualche spazio fine positivo o -negativo per fare degli aggiustamenti di seconda o terza -approssimazione. Ricordatevi però che, anche se non c'è limite -al meglio (ma nemmeno al peggio!), \LaTeX\ lavora benissimo da -solo purché non lo si disturbi con interventi non professionali. - -\section{I file accessori} - -Il pacchetto \textsf{TOPtesi} contiene fra le sue parti il file -\texttt{topfront.sty} che può essere usato per comporre il solo -frontespizio. Esso in effetti, oltre a leggere il file di -configurazione contiene solo i comandi per definire gli elementi -del frontespizio e per comporlo. La cosa può tornare utile in -diverse circostanze, per esempio quando dovete ancora modificare -la tesi quasi ultimata, ma dovete cercare il o i relatori per far -loro firmare alcune copie del frontespizio. - -Basta predisporre un piccolo file come questo, salvandolo con un nome a -piacere, per esempio, con grande fantasia, \texttt{myfile.tex}: -\begin{verbatim} -\documentclass{report}%%%% <--- Nota bene: la classe è report! -\usepackage[latin1]{inputenc} -\usepackage[italian]{babel}%%% ci vuole perché topfront ne fa uso -\usepackage{topfront} -\candidato{Mario Rossi} -\titolo{La mia tesi di laurea} -\relatore{Giovanni Bianchi} -\sedutadilaurea{Dicembre 2005} -\begin{document} -\frontespizio -\end{document} -\end{verbatim} - -Passando questo piccolo file a \LaTeX\ o a pdf\/\LaTeX, si ottiene -un documento di una sola pagina, il frontespizio, che si può -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} perché \texttt{topfront} usa alcuni comandi di quel pacchetto. Naturalmente al posto di \texttt{italian} potete specificare un'altra lingua. - -L'altro file accessorio \texttt{topcoman.sty} contiene diversi -utili comandi, alcuni già incorporati nella definizione della -lingua italiana così come la gestisce \texttt{babel}. Tuttavia se dovete scrivere in -una lingua diversa dall'italiano quei comandi non sono -disponibili. Il file contiene anche un comando per la stampa in -pulito di un programma; ci sono altri pacchetti \LaTeX\ che -consentono di stampare il listato di un programma, ma visto che vi -può servire per la tesi e visto che una volta che lo conoscete vi -potrebbe piacere e poi vorreste continuare ad usarlo, è meglio -disporne come pacchetto separato. Non sarebbe difficile per -esempio stamparsi in pulito il listato del proprio programma -\texttt{myprogram.c}: si scrive semplicemente un file del tipo -\begin{verbatim} -\documentclass{report}%%%% <--- Nota bene: la classe è report! -\usepackage{topcoman} -\begin{document} -\chapter{Il programma myprogram.c} -\listing{myprogram.c} -\end{document} -\end{verbatim} -e lo si passa a \LaTeX\ o a pdf\LaTeX\ 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. - - -\section{Come si comincia} -Non vi sto a dire niente di come si scriva una tesi; so per -esperienza che all'inizio ci si sente sperduti davanti allo -schermo vuoto. Ma voi studenti del Politecnico, e non solo del -Politecnico, potete scaricare dal portale della didattica del sito -del Politecnico \texttt{http://didattica.polito.it} l'opuscoletto -\emph{Saper Comunicare --- Cenni di scrittura tecnico scientifica} -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: -\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 facoltà, eccetera. Ovviamente bisogna cambiare anche il contenuto dei capitoli. - -\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}|. -\end{enumerate} - -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), -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ì: -\begin{verbatim} - \documentclass[11pt]{toptesi}%% <--- Nota Bene: la classe è toptesi! - \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 2006} - \includeonly{% - preliminari,% - capitolo1,% - capitolo2,% - capitolo3,% - appendici,% - bibliografia% - } - \begin{document} - \include{preliminari} - \include{capitolo1} - \include{capitolo2} - \include{capitolo3} - \appendix - \include{appendici} - \include{bibliografia} - \end{document} -\end{verbatim} - -È da osservare in particolare che l'aver scritto l'argomento di -\verb+\includeonly+ nel modo esemplificato sopra, permette di -inserire dei segni di commento all'inizio di alcune delle righe in -modo da eseguire, per esempio, la compilazione selettiva di un -solo capitolo conservando tutte le informazioni incrociate -relative agli altri capitoli già compilati. Con i PC di oggi la -compilazione è rapidissima, quindi non vi invito a seguire questa -procedura per risparmiare tempo di compilazione; faccio solo -notare che il fatto di tenere separate le varie parti della tesi -permette di lavorare con più ordine e di risparmiare non poco -tempo nella gestione dei vari file sorgente e nelle loro -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 -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 loro nome scritto sulla tesi\dots. -Inoltre rappresenta un atto di piaggieria ringraziare il o i -propri relatori; essi hanno svolto un loro compito istituzionale, -non vi hanno fatto un piacere. Naturalmente questo non vieta che -la consuetudine del lavoro assieme non abbia dato origine a -sentimenti di reciproca stima e anche di amicizia, ma questa è -un'altra faccenda.} e gli indici. - -Il file \texttt{capitolo1.tex} conterrà l'introduzione e in -pratica esporrà lo stato dell'arte oltre allo scopo del lavoro e -ai risultati che si vorrebbero ottenere. - -I file \texttt{capitolo2.tex}, \texttt{capitolo3.tex}, eccetera, -conterranno la descrizione del lavoro svolto e l'analisi critica -dei risultati via via ottenuti; l'ultimo file prima delle -appendici conterrà le conclusioni. - -Nelle varie appendici verranno raccolte le misure eseguite, gli -sviluppi matematici, i listati dei programmi, le note critiche, le -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. - -Alcuni laureandi desiderano mettere una dedica o delle citazioni nelle loro tesi; nelle versioni precedenti di questo pacchetto era necessario ricorrere all'opzione \texttt{classica}, ma ora questi ambienti, molto semplici, direi quasi rudimentali, sono accessibili a tutti i laureandi senza bisogno di specificare l'opzione \texttt{classica}. - -Perché questi due piccoli ambienti sono rudimentali? Per consentire a ciascuno di scegliere i font che preferisce, la forma, la serie e il corpo; nell'ambiente \texttt{dedica} di default il corpo corrisponde alla dichiarazione \verb|\LARGE| e la forma alla dichiarazione \verb|\itshape|, ma nessuno vieta di iniziare la dedica specificando, per esempio: -\begin{verbatim} -\begin{dedica} -\normalfont \large\scshape -... -\end{dedica} -\end{verbatim} -Per l'ambiente \texttt{citazioni} non è stata preimpostata nessuna dichiarazione per i font, quindi l'utente è completamente responsabile della scelta dei font. -Entrambi gli ambienti sono realizzati con una composizione in bandiera, perché la giustezza è ridotta a metà di quella del testo, ma il testo della dedica o delle citazioni è composto dentro una ``paginetta'' (\texttt{minipage}) collocata a due terzi dalla base della griglia di stampa a filo del margine esterno. - - -\subsection{La scelta della codifica per il file sorgente} - -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é -\LaTeX\ elabori correttamente i file sorgente o non si specifica -nessuna particolare codifica ma si usano solo i caratteri ASCII a -7~bit, oppure si usano i caratteri nazionali direttamente da -tastiera ma si specifica la codifica che l'editor usato ha -impiegato per salvare nei file i codici dei caratteri non ASCII, -per esempio le lettere accentate; si suggerisce di specificare -esplicitamente la codifica mediante il comando -\begin{verbatim} -\usepackage[ansinew]{inputenc} -\end{verbatim} -per le macchine Windows; invece per le macchine Linux, UNIX e Mac~OS~X -suggerisco di specificare la codifica con -\begin{verbatim} -\usepackage[latin1]{inputenc} -\end{verbatim} -Per tutti i sistemi sarebbe forse più utile usare anche nei file sorgente la codifica UNICODE, e specificare nel preambolo: -\begin{verbatim} -\usepackage[utf8]{inputenc} -\end{verbatim} -solo che non tutti i \emph{text editor} gestiscono questa codifica; sicuramente la gestiscono \TeX{Shop}, \TeX{works}, TeXmakerX, Texmaker, emacs, Aquamacs; certamente anche altri, ma io conosco solo questi; sono tutti multipiattaforma, tranne \TeX{Shop} che vale solo per la distribuzione Mac\TeX\ sulle macchine Mac. - - -In particolare vanno accentate anche le lettere maiuscole; siccome la tastiera italiana non le prevede, se il sisteam operativo non prevede adeguate scorciatoie, 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} -\newcommand*\E{\`E\space} -\end{verbatim} -inserisce direttamente una È all'inizio di un periodo e inserisce direttamente lo spazio successivo, per cui, senza inserire esplicitamente nessun comando di spaziatura dopo il comando \verb|\E|, si può scrivere semplicemente: -\begin{verbatim} -\E conveniente rilevare che... -\end{verbatim} -per ottenere: -\begin{quote} -È conveniente rilevare che\dots -\end{quote} -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. - -Per scrivere con in lingue dell'Europa orientale e, mi si dice, anche -in francese, sono migliori altre opzioni di codifica, ma per questo si -rinvia alla documentazione di \LaTeX. Con la codifica UNICODE non si hanno problemi in nessuna lingua dell'Europa Orientale o Occidentale; anzi è possibile scrivere direttamente in greco e un diverse varietà di cirillico; volendo esistono i pacchetti di estensione necessari anche per scrivere in lingue retrograde come l'ebraico e l'arabo; conoscendo la lingua si possono scrivere anche le lingue a ideogrammi dell'Asia Orientale, e anche con alfabeti particolari come il vietnamita, il tailandese, il sanscrito, eccetera. - -Infatti, se il vostro editor lo prevede, e gli editor moderni lo prevedono, potete anche scegliere di codificare i vostri file \texttt{.tex} con la codifica UTF-8; questo, sempre se il vostro editor lo consente, vi permette di scrivere direttamente la vostra tesi inserendo anche delle parti con alfabeti diversi, tutti quelli che i vostri font di uscita vi consentono, dal greco al cirillico, per citare i più vicini a noi, fino al cinese o al giapponese. Ovviamente 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 monotonika, basta inserire l'opzione della lingua \texttt{greek} fra le opzioni della classe; se usate l'ortografia polytonika, allora dovete richiedere lo specifico attributo seguendo questo procedimento: -\begin{verbatim} -\documentclass[...,greek,...]{toptesi} -... -\languageattribute{greek}{polutoniko} -\begin{document} -... -\end{document} -\end{verbatim} -Per una tesi che tratti il greco antico in forma filologica, consiglio l'uso del pacchetto \textsf{teubner}; visto che l'ho scritto io, un po' di réclame non guasta~\dots\ Bisogna però leggerne la documentazione con attenzione. In particolare conviene ricordare che \textsf{teubner} non viene installato se non è stato precedentemente specificata la lingua greca fra le opzioni, ma poi provvede da solo ad impostare l'attributo \texttt{polutoniko} e tutte le altre caratteristiche necessarie per comporre in greco con il \emph{mark-up} filologico. - -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 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 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. - -\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'unico che non fa uso di accenti o altri segni diacritici. Perciò la codifica di default \texttt{OT1} per l'inglese va benissimo e non è necessario specificare nulla. - -Invece 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 è quanto mai opportuno specificare per i font di uscita la codifica \texttt{T1}. C'è però un problemino, facilmente risolubile, ma bisogna pensarci: 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. - -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 leggono 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 aggirare questi inconvenienti bisogna usare i font della collezione Latin Modern, normalmente preinstallati, per cui nel preambolo si specificherà: -\begin{verbatim} -\documentclass[...]{toptesi} -... -\usepackage[T1]{fontenc} -\usepackage{lmodern} -... -\begin{document} -... -\end{verbatim} - -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 sono i migliori per la loro completezza; infatti, grazie al diverso disegno dei corpi minori, la lettura dei pedici e degli apici ne risulta agevolata. - -Qui segnalo solo la collezione dei font Times eXtendex, 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. - -Tanto per confronto, questo testo di documentazione su \textsf{TOPtesi} è composto con i font di default Computer Modern con codifica \texttt{OT1}; come si vede la divisione delle parole tronche in fin di riga è piuttosto rara e non si presentano 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; non si sa mai, ma certamente con questa codifica si hanno meno inconvenienti e le lettere accentate sono disegnate meglio\footnote{Questo testo è stato composto facendo uso anche del pacchetto \textsf{microtype}; con questo pacchetto si ottimizza la composizione delle righe di ogni capoverso allo scopo di ridurre al massimo le cesure in fin di riga (in questo testo di una sessantina di pagine, ci sono solo una decina di righe, escluse le tabelle, con la cesura in fin di riga) e di rendere il più omogenei possibile gli spazi interparola; se ne coniglia l'uso, ma certo si tratta di una \emph{raffinatezza}, non di una cosa necessaria. \textsf{microtype} produce gli effetti migliori quando si usano i font PostScript e il motore di composizione pdf\/\LaTeX.}. - - -\section{Come stampare la tesi} - -Il pacchetto \textsf{TOPtesi} contiene anche l'opzione di composizione -\emph{in bianca e volta}, ma di default compone su una facciata sola -della pagina. - -Qual è la differenza? È quella che si osserva nei libri composti -meglio, cioè nei libri con i fogli stampati davanti e di dietro: -quando il libro è aperto la striscia bianca formata dai due -margini interni delle pagine affacciate è circa uguale a ciascuno -dei margini esterni. Invece quando si stampa su una facciata sola -il corpo del testo è centrato e i margini laterali sono -uguali. Inoltre nelle testatine delle pagine stampate solo in -bianca compare sempre e solo il titolo del capitolo corrente, -mentre nelle testatine delle pagine \emph{pari} stampate in bianca -e volta compare il titolo del capitolo, mentre nelle pagine -\emph{dispari} compare il titolo del paragrafo con cui comincia la -pagina. - -Molti laureandi ritengono di fare una cosa utile stampando fronte -e retro, o, come dicono i tipografi, in bianca e volta. Certamente -è una buona idea, sia perché il fascicolo della tesi viene ad -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}, -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. - -Ho deciso per questa soluzione perché quando si rilega la tesi, -necessariamente dal lato della cucitura o dell'incollatura le -pagine sono piegate e l'insieme dei due margini interni delle -pagine affacciate appare visivamente più piccolo di ciascuno dei -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{\footnotesize\sffamily Questa è una nota a -margine}, se si decide di farne uso, ma anche perché, almeno al -Politecnico di Torino, la copia da depositare nella segreteria di -facoltà 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 -tesi sullo schermo preferisce senz'altro avere il testo centrato -piuttosto che spostato alternativamente da un lato o dall'altro -dello schermo. - -Però questa soluzione potrebbe non piacere ad alcuni laureandi, -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 -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 -opzione, che invece sarà specificata per ricomporre il file prima -della stampa su carta. - -Se 7\,mm non sembrano adeguati, si può variare il valore di default usando il comando -\texttt{\char92setbindingcorrection}, scrivendo nel preambolo, per esempio: -\begin{verbatim} -\setbindingcorrection{6mm} -\end{verbatim} - - -\section{Comporre la tesi in diverse lingue} -Il pacchetto \textsf{TOPtesi} usa di default il pacchetto -\texttt{babel} per gestire la composizione in diverse lingue. -Tuttavia la composizione in lingue diverse dall'inglese (che è la -lingua di default per una installazione ``vergine'' del sistema -\TeX) richiede che il sistema sia configurato per gestire diverse -lingue; perciò le operazioni da fare sono essenzialmente due: -\begin{enumerate} -\item configurare il sistema \TeX\ per gestire diverse lingue; -\item specificare nel comando di apertura del master file di quali altre -lingue ci si vuole servire \textcolor{red}{oltre all'italiano e all'inglese che sono già automaticamente invocati da \textsf{TOPtesi}}. Si ricorda che non si può più invocare nel preambolo il pacchetto \textsf{babel} per la gestione delle lingue una seconda volta, quando esso è già stato invocato una prima volta nel corpo della classe. Si veda nel seguito come bisogna specificare le ulteriori lingue oltre all'italiano e all'inglese. - -\end{enumerate} - - -\subsection{Configurazione iniziale} - -Per la prima parte, cioè per configurare il sistema \TeX\ per -gestire diverse lingue, subito dopo l'installazione lanciate -\LaTeX\ su un file di prova qualunque, per esempio -\texttt{sample.tex}, poi apritene il file \texttt{.log}, -nell'esempio \texttt{sample.log}; nelle prime righe di questo file -troverete le lingue per le quali il vostro sistema è già -configurato. - -Per esempio scrivendo questo file di documentazione il file -\texttt{toptesi-doc.log} contiene nelle prime righe quanto segue: -\begin{verbatim} -This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009) -(format=pdflatex 2009.11.13) 10 MAY 2010 10:37 -entering extended mode - \write18 enabled. - %&-line parsing enabled. -**toptesi-doc.tex -(./toptesi-doc.tex -LaTeX2e <2009/09/24> -Babel and hyphenation patterns for english, usenglishmax, -dumylang, nohyphenation, german-x-2009-06-19, ngerman-x-2009-06-19, -ancientgreek, ibycus, arabic, basque, bohairic, bulgarian, catalan, -pinyin, coptic, croatian, czech, danish, dutch, esperanto, estonian, -farsi, finnish, french, galician, german, ngerman, monogreek, greek, -hungarian, icelandic, indonesian, interlingua, irish, italian, -kurmanji, latin, latvian, lithuanian, mongolian, mongolian2a, bokmal, -nynorsk, polish, portuguese, romanian, russian, sanskrit, serbian, -slovak, slovenian, spanish, swedish, turkish, ukenglish, ukrainian, -uppersorbian, welsh, loaded. -\end{verbatim} - -Chiaramente la mia non è una configurazione di default, ma serve -per dare una idea di quello che contengono le prime righe del file -in questione. Se, come è possibile, dopo la prima installazione -il vostro primo file \texttt{.log} non contiene fra le lingue -elencate anche l'italiano, allora questa è la cosa più urgente da -fare; non vorrete mica che la vostra tesi, scritta in italiano, -abbia le parole divise in sillabe in fin di riga con le regole -angloamericane? Se poi siete su un programma di doppia laurea e -dovete scrivere parte della tesi nella lingua dell'università -straniera di cui prendete l'altro titolo, allora è necessario -avere disponibile almeno anche quella lingua. - -Le regole per inizializzare le lingue gestibili differiscono da -distribuzione a distribuzione del sistema \TeX. Leggete quindi la -documentazione che accompagna la vostra distribuzione; qui darò -alcuni cenni relativi alle distribuzioni che io conosco. - -\subsubsection{MiK\TeX} -Questa distribuzione nella sua versione completa è in grado di gestire tutte le lingue che il sistema \TeX\ conosce, quindi non c'è bisogno di nessuna configurazione ulteriore. Se invece vi siete installata la versione ``basic'' non avete altro da dirvi che: ``chi è causa del suo mal, pianga se stesso''! Soluzione: disintallatela e re"installate al suo posto la versione completa. - -\subsubsection{teTeX, Debian teTeX e Debian \TeX-live } -La distribuzione \texttt{teTeX} non viene più aggiornata da quando esiste \TeX\-live; mi risulta che venga ancora distribuita da alcuni sistemi Linux basati su Debian; per esempio Slackware. Mi permetterei di consigliare di non usare \texttt{teTeX} nemmeno nella versione Debian, ma non vorrei passare per un iconoclasta di quella gloriosa distribuzione. - - -Spesso le versioni di Linux che sono conformi alle specifiche Debian installano una versione certificata Debian di \TeX-live ridotta e preconfigurata solo per l'inglese, (oltre che vecchia di almeno due anni) che serve per soddisfare le dipendenze per altri programmi. Quindi non si può eliminare questa distribuzione di \TeX-live, ma se ne può installare un'altra attuale e aggiornata con particolari cautele, in modo da usare quest'ultima per \LaTeX\ e soci, e usare l'altra per il corretto funzionamento degli altri programmi Debian. Per sapere come fare è conveniente scaricare il file: \texttt{http:/"/profs.sci.univr.it"/~gregorio"/texlive-ubuntu.pdf} dove la distribuzione Ubuntu è presa come modello, ma sono indicate anche le piccole modifiche per fare le operazioni equivalenti anche su Fedora e SUSE Linux. - -Seguendo quelle indicazioni ho installato \TeX\-live completa sulla mia versione Debian di Ubuntu e non ho avuto nessunissimo problema; la distribuzione \TeX\-live è sempre veramente aggiornata in tempo praticamente reale e il suo ``package manager'' consente l'aggiornamento continuo, indipendentemente dalle ``uscite'' annuali di \TeX\-live. - -\subsubsection{\TeX-live} -La distribuzione \TeX-live nasce già configurata per tutte le lingue che \LaTeX\ è capace di gestire, quindi anche l'italiano; bisogna ricorrere ai suoi comandi di configurazione solo se si vuole aggiungere una lingua la cui sillabazione non sia distribuita insieme a \TeX\-live. Questo evento è talmente raro che non vale la pena di insistervi sopra. Tuttavia un laureando che svolga la sua tesi sull'ostrogoto altomedievale e disponesse solo della sillabazione per l'ostrogoto classico e per l'ostrogoto contemporaneo, si troverebbe in difficoltà; infatti, prima ancora di inserire le regole per l'ostrogoto altomedievale, dovrebbe scriversi le regole di sillabazione e codificarle nel linguaggio specifico richiesto dal sistema \TeX; questo è tutt'altro che facile ed è riservato a specialisti molto avanzati. - - -\subsubsection{Mac\TeX} -Dal 2007 la distribuzione di \texttt{Mac\TeX} sostanzialmente coincide con\TeX-live, salvo che contiene anche programmi accessori specifici per le macchine Macintosh; è preconfigurato per gestire tutte le lingue di cui il sistema è capace, compreso l'italiano. - - - - -\subsubsection{Distribuzioni commerciali} -Le distribuzioni commerciali differiscono da quelle gratuite -essenzialmente per i programmi accessori che accompagnano la -distribuzione del sistema \TeX\ che, di sua natura, è gratuita; -il costo delle distribuzioni commerciali corrisponde al valore -delle parti accessorie, all'assistenza per i clienti, eccetera. - -Fra le parti accessorie in generale ci sono anche i programmi -realizzati attraverso comode interfacce grafiche per la -inizializzazione e l'aggiornamento del software. - -Perciò con queste distribuzioni bisogna leggere il manuale di -istruzioni e provvedere corrispondentemente. - -\subsection{Le lingue della tesi} - -Di default \textsf{TOPtesi} compone la tesi in italiano e per scrivere -la tesi in italiano non occorre altro. - -Se si devono inserire nella tesi brani di testo in lingua -straniera, ma lasciando la struttura della tesi in italiano, basta -elencare i nomi (inglesi) delle lingue da usare nel comando di -apertura del master file fra le altre opzioni; per esempio, per -inserire brani in francese si scriverà: -\begin{verbatim} -\documentclass[12pt,twoside,french]{toptesi} -\end{verbatim} - -Se invece si vuole scrivere la tesi in inglese, lingua già -inserita di default in \textsf{TOPtesi}, ma non attivata di default, bisogna -dare l'indicazione esplicita dopo l'inizio del documento così: -\begin{verbatim} -\documentclass[11pt,cucitura]{toptesi} -... -\begin{document} -\english -... -\end{verbatim} - - -Per commutare dall'italiano all'inglese e viceversa basta -alternare le dichiarazioni \verb|\italiano| e \verb|\english|. -Attenzione: queste dichiarazioni alterano anche le parole come -Chapter o Capitolo, Table o Tabella, quindi per inserire brani -nell'altra lingua è opportuno servirsi dei comandi di -\texttt{babel}, in particolare dell'ambiente \texttt{otherlanguage}, -per esempio: -\begin{verbatim} -... disse: -``\begin{otherlanguage}{english} - Mr Livingstone, I suppose\dots -\end{otherlanguage}'' -e si strinsero la mano. -\end{verbatim} - -L'ambiente \texttt{otherlanguage} è adatto per citazioni -relativamente lunghe; per citazioni brevi, come quella dell'esempio, -sarebbe meglio usare così il comando \verb|\foreignlanguage|: -\begin{verbatim} -disse: ``\foreignlanguage{english}{Mr Livingstone, I suppose\dots}'' -e si strinsero la mano. -\end{verbatim} - -Invece per comporre la tesi in una lingua diversa dall'italiano e -dall'inglese bisogna lavorare un pochino di più perché bisogna -ridefinire alcune cose; per esempio per scrivere la tesi in -spagnolo bisogna agire così: -\begin{verbatim} -\documentclass[12pt,spanish]{toptesi}% <--- la lingua come opzione - % della classe! -\ExtendCaptions{spanish}{Resumen}{Agradecimientos} -\newcommand*{\spagnolo}{\selectlanguage{spanish}}% -... -\begin{document} -\spagnolo -... -\end{document} -\end{verbatim} - -Ovviamente le parole ``Resumen'' (Sommario) e ``Agradecimientos'' (Ringraziamenti) andranno scelte accuratamente; io ho indicato solo ciò che ho trovato sul vocabolario. - -È anche possibile servirsi del file di configurazione; per esempio le -definizioni dei comandi suddetti possono venire scritte nel file di -configurazione e alternando i comandi \verb|\italiano|, \verb|\english| -e \verb|\spagnolo| si possono alternare le regole di sillabazione oltre a cambiare le parole \emph{infix}, come Chapter, Capitolo, Capítulo, eccetera. - -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 $\varepsilon$\TeX; la variante -che produce il file del documento composto in formato -\texttt{.pdf} si chiama \texttt{pdftex}, come appare evidente -dalle prime righe del file \texttt{.log} di questo documento, ma questa versione comprende tutte le estensioni di $\varepsilon$\TeX. -Bene, queste estensioni servono anche per gestire le lingue -con scrittura retrograda pur di disporre dei pacchetti relativi a queste lingue. - -\chapter{I comandi specifici introdotti da \textsf{TOPtesi}} - -\section{Introduzione} - -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. - -Questi comandi sono di diverse categorie; alcuni si possono usare solo -in modo matematico altri solo in modo testo; alcuni solo nel preambolo, -alcuni hanno senso solo durante la composizione del testo; alcuni -servono solo per il frontespizio. Essi saranno descritti nei paragrafi -seguenti. - -\section{Le opzioni} -La classe \texttt{toptesi} accetta diverse opzioni nel -comando di dichiarazione della classe; negli esempi esposti ne sono -state usate diverse, ma qui forse vale la pena di elencarle tutte -in ordine, senza ripetere le opzioni già presenti di default per -la classe \texttt{report}. - - -\begin{description}\def\Item[#1]{\item[\normalfont\texttt{#1}]} -\Item[chapterbib] serve per specificare che si desidera la composizione della bibliografia alla fine di ogni capitolo; la bibliografia va composta a mano; se si desidera comporla con \textsc{Bib\TeX} si invochi invece il pacchetto \texttt{chapterbib.sty} con il solito comando \verb|\usepackage|. Si abbia cura di leggere attentamente la documentazione di quel pacchetto. -% -\Item[classica] Serve per usare delle denominazioni un po' diverse -dei comandi e per dare una forma diversa al loro contenuto; il -frontespizio ne viene un poco modificato con un look più adatto -alle tesi in discipline classiche. Si veda la -tabella~\ref{tab:front5} per i nuovi comandi disponibili. -% -\Item[cucitura] Serve per spostare il testo scritto verso l'esterno -quando si teme che la piegatura delle pagine verso il centro del -fascicolo rilegato possa impedire la lettura agevole delle parole -vicino al margine interno. -% -\Item[14pt] Aumenta la possibilità di scelta del corpo normale per -la composizione della tesi; può contribuire a migliorare la -lettura quando il testo è fitto di notazioni molto articolate, ma in -generale il corpo così grande è un trucco per rimpolpare una -tesi di modeste dimensioni; ne sconsiglio l'uso per questo secondo -scopo. Avverto che con un corpo così grande è facile che certe -righe risultino troppo lunghe e vadano a capo in punti non -adeguati e producano delle righe non giustificate con i messaggi -d'errore ``Overfull hbox''; questo è un altro motivo per il quale -sconsiglio di usare questa opzione, se non quando è strettamente -necessario. Se la si usa, si verifichi che il titolo, i titoli dei -capitoli, quelli dei paragrafi, eccetera siano composti -correttamente. In particolare si ricordi che il titolo della tesi e i titoli dei -capitoli possono andare a capo solo prima di articoli, -preposizioni semplici o articolate, congiunzioni e brevi avverbi -come ``non''; per evitare di andare a capo dopo queste parti del -titolo si abbia l'accortezza di inserire il segno di legame -\verb|~| fra queste brevi parole e le parole seguenti; per -esempio, il titolo della tesi fornita come modello va scritto -nella forma \verb|La~pressione barometrica di~Giove|. -% -\Item[autoretitolo] Questa opzione funziona solo se viene -specificata anche l'opzione \texttt{classica}; se la si inserisce -senza specificare \texttt{classica}, non succede nulla di male, -semplicemente la classe informa di aver trovato delle opzioni che -né lei né altri pacchetti hanno usato. Serve per comporre la -testatina di sinistra sulle pagine pari con l'indicazione del -candidato e del titolo della tesi. È ovvio che il titolo della -tesi con questa opzione deve essere molto breve, ed è per questo -che è stato messo a disposizione dello studente l'argomento -facoltativo del comando \verb|\titolo| che consente di specificare -un titolo di tre o quattro parole (brevi) ma di senso compiuto, -che possa sostituire il titolo normale, specialmente se questo è -un po' lungo. -% -\Item[oldstyle] Anche questa opzione funziona solamente insieme -all'opzione \texttt{classica}; serve per scrivere i numeri delle -pagine con i numeri all'antica, cioè con segni di altezze e -profondità diverse; si confronti \oldstylenums{1234567890} con -1234567890. -% -\Item[pdfa] Serve per attivare la composizione di un file PDF che possa passare la verifica per la certificazione del formato PDF/A. Attenzione: si ricorda che questa operazione viene eseguita tramite l'uso del file \texttt{pdfx.sty} che a sua volta richiama il file \texttt{hyperref.sty} con la giusta opzione per il formato PDF/A. Eventuali personalizzazioni per configurare gli stili di composizione dei link generati da \texttt{hyperref.sty} devono essere dichiarate subito dopo la dichiarazione della classe. Se si specificano queste personalizzazioni, ma non è stata data l'opzione \texttt{pdfa}, viene prodotto un errore terminale. Inoltre bisogna ricordarsi di predisporre il file \texttt{.xmpdata} contenente i \emph{metadata} relativi al documento specifico come si è già spiegato in precedenza. -\end{description} - - -\section{Comandi di tipo generale} -I comandi di tipo generale si possono usare in ogni contesto, in -particolare alcuni sono fatti per essere usati sia in modo testo sia in -modo matematico. Essi sono raccolti nella tabella~\ref{tab:generale}. - -\begin{table}\def\V{\rule{0pt}{2.5ex}} -\def\cs#1{\texttt{\string#1}} -\centering \footnotesize -\begin{tabular}{llp{.3\textwidth}p{.3\textwidth}} - \hline - Comando\V & Default & Scopo & Esempio d'uso \\[.5ex] - \hline - \cs{\interlinea\string{\dots\string}} & - 1.0 & Modifica l'argomento di - \cs{\linespread}\newline \textcolor{red}{NON usare se non costretti con la forza!}\newline Modo testo & - \cs{\interlinea\string{1.05\string}} \newline - oppure \newline - \cs{\begin\string{interlinea\string}\string{1.05\string}} \newline - \dots\newline - \cs{\end\string{interlinea\string}}\newline - Vedi annotazioni sull'interlinea nel testo\\ -\cs{\ohm} & & Omega ``diritto''\newline - Modi testo e matematico & \texttt{45\string\ohm}\\ -\cs{\ped\string{...\string}}& - nessuno & Pedice in tondo\newline - Modi testo e matematico & \texttt{\string$V\string\ped\string{eff\string}\string$} \\ -\cs{\unit\string{...\string}}& - nessuno & Unità di misura in - tondo unite al numero\newline - Modi testo e matematico & - \texttt{15\string\unit\string{k\string\ohm\string}} \\ -\cs{\gei} & & Unità immaginaria in - tondo \newline - Solo modo matematico & - \texttt{\string$\string\eu\string^\string{\string\gei\string\omega\ t\string}\string$} \\ -\cs{\eu} & & Numero ``e'' in tondo\newline Solo modo matematico & - \texttt{\string$\string\eu\string^\string{\string\gei\string\omega\ t\string}\string$} \\ -\cs{\gradi} & & circoletto alzato\newline Modo testo e %!TEX encoding = - matematico & - \texttt{27\string\unit\string{\string\gradi\ C\string}} \\ -\cs{\listing\string{...\string}}& - nessuno & Listato di un programma in caratteri typewriter & - \texttt{\string\listing\string{toptesi.tex\string}}\\[.5ex] -\hline -\end{tabular} -\caption{Comandi di tipo generale}\label{tab:generale} -\end{table} - -Vale la pena di commentare sull'uso dell'ambiente \texttt{interlinea} e/o del comando \texttt{\string\interlinea}. - -Il primo confina il suo effetto all'interno dell'ambiente da lui -stesso formato; il secondo agisce come una dichiarazione che resta -in vigore finché una dichiarazione contraria non ne modifica il -valore. - -\textcolor{red}{Tuttavia sia l'ambiente sia il comando non dovrebbero essere mai usati!} -La composizione tipografica non ha nulla a che vedere con la -composizione dattilografica (\emph{absit iniuria verbis}!). -Quest'ultima si faceva con mezzi avanzati per l'epoca, ma oggi quei -mezzi sono del tutto obsoleti; le poche macchine da scrivere -meccaniche o elettromeccaniche che esistono ancora fuori da qualche -museo, vengono usate per riempire formulari o compilare le informazioni -sui documenti cartacei che sopravvivono alla invasione delle carte -plastificate; forse qualche ufficio di notaio fa ancora uso di quelle -macchine; ma tolti gli usi burocratici non mi viene in mente nessun -altro uso degno di essere citato. - -La composizione tipografica esige un perfetto equilibrio fra il -corpo del font usato e la distanza fra due righe successive, -distanza che prende il nome tecnico di \emph{avanzamento di riga}; -questo avanzamento a seconda del font in uso può essere dal 10\% -al 20\% maggiore del corpo del font usato. - -Questa documentazione è scritta in corpo 12\,pt e l'avanzamento -di riga è di 14,5\,pt; si dice che questo testo è composto in -corpo 12/14,5. - -\begin{interlinea}{1.05} -L'interlinea era originariamente lo spazio aggiuntivo da inserire -fra una linea e l'altra; quando la composizione tipografica era -eseguita con font ricavati da punzoni metallici, l'interlinea era -la striscia di metallo che veniva interposta fra una riga di -caratteri metallici e la successiva. Il comando -\texttt{\string\interlinea} e l'ambiente corrispondente hanno -pertanto dei nomi che si rifanno alla tipografia tradizionale, ma -vengono usati come in dattilografia. In effetti l'argomento del -comando e dell'ambiente serve solo come fattore moltiplicativo -dell'avanzamento di riga; porre questo fattore al valore -\texttt{1.05} vuol dire moltiplicare l'avanzamento di riga per -1,05 portandolo quindi al valore di 15,5225\,pt. Questo capoverso -è composto con questo fattore impostato con l'ambiente -\texttt{interlinea} e, nonostante si tratti solo di un aumento del -5\% dell'avanzamento di riga, l'occhio lo percepisce in modo più -grande di quanto non faccia pensare il suo piccolo valore. -\end{interlinea} - -L'avanzamento di default scelto per i caratteri in uso è -l'avanzamento otticamente ottimale; se desideraste usare un font -diverso da quello di default, potreste, per esempio, invocare il -pacchetto \texttt{pxfonts} per usare il Palatino esteso come font -di testo. Siccome questo font a pari corpo ha le minuscole -decisamente più grandi di quelle dei font di default, potrebbe -essere una idea sensata quello di sperimentare con diversi valori -del fattore di \texttt{interlinea}, ma poi si scoprirebbe che -questo fattore differirebbe di pochi centesimi dall'unità e quindi -ci sarebbe da domandarsi se ne valga la pena. - -Se proprio volete stampare delle bozze su carta scritte abbastanza -larghe per potervi inserire le correzioni e le annotazioni a mano, -allora impostate il fattore di \texttt{interlinea} al massimo a -\texttt{1.5}, ma quando stampate la bella copia, la versione finale, -ricordatevi di re-impostare per \texttt{interlinea} il valore unitario -di default. - -Tra l'altro non vorreste mica usare l'espediente di un grande fattore -di interlinea solo per rimpolpare una tesi dal volume modesto? Esso -sarebbe un espediente talmente puerile che sarebbe scoperto al primo -sguardo. Ricordate che ci sono state in passato tesi che non superavano -le 30~pagine dattiloscritte o scritte a mano (!) e sulle quali si sta -studiando ancora oggi dopo più di 50~anni! - - -\section{Comandi per il frontespizio} - -I comandi per la composizione del frontespizio debbono essere -tutti inseriti nel preambolo, cioè prima di -\verb|\begin{document}|. -\begin {table}[p] -\def\V{\rule{0pt}{2.5ex}} -\def\cs#1{\texttt{\string#1}}\let\s\string -\def\d{\discretionary{\%}{}{}} -\makebox[\textwidth]{% -\begin {tabular}{p{.3\textwidth}p{.2\textwidth}p{.2\textwidth}p{.25\textwidth}} -\hline -Comando\V & Default & Scopo & Esempio d'uso \\[.5ex] -\hline -\cs{\ateneo\s{...\s}}\V&POLITECNICO DI TORINO& Definisce il nome generico dell'Ateneo & - \cs{\ateneo\{II Università di Roma\}} \\ -\cs{\nomeateneo\s{...\s}}& nessuno& Definisce il nome proprio dell'Ateneo & - \cs{\nomeateneo\{Tor Vergata\}} \\ -\cs{\facolta[...]\s{...\s}}& Ingegneria& Definisce il nome della -Facoltà opzionalmente con l'indicazione dell'ordinale& - \cs{\facolta[III]\d\{Scienze\}} \\ -\cs{\corsodilaurea\s{...\s}}& nessuno& Definire il nome del corso di laurea & - \cs{\corsodilaurea\d\{Fisica\}} \\ -\cs{\corsodidottorato\{...\}}& nessuno&Definisce il nome del corso di dottorato& - \cs{\corsodidottorato\d\{Fisica\}} \\ -\cs{\monografia\{...\}}&nessuno&Definisce il titolo della monografia e imposta lo stile del frontespizio& - \cs{\monografia\d\{Il~teorema di Eulero\}}\\ -\cs{\titolo[...]\{...\}}&nessuno&Definisce il titolo della tesi o della dissertazione& - \cs{\titolo\d[La~pressione]\d\{La~pressione di Giove\}}\\ -\cs{\sottotitolo\{...\}}&nessuno&Definisce il sottotitolo della tesi o della dissertazione& - \cs{\sottotitolo\{Metodo Barometrico\}} \\ -\cs{\Materia\{...\}}&nessuno&Definisce la materia su cui verte la tesi & - \cs{\Materia\{Remote Sensing\}} \\ -\cs{\materia\{...\}}&nessuno&sinonimo di \cs{\Materia} & - \cs{\materia\d\{Letteratura ostrogota\}} \\[.5ex] -\hline -\end{tabular}} -\caption{Comandi per il frontespizio della monografia di laurea, della -tesi di laurea e della dissertazione di dottorato -(\emph{continua})}\label{tab:front1} -\end{table} - -\addtocounter{table}{-1} -\begin{table}[p] -\def\V{\rule{0pt}{2.5ex}} -\def\cs#1{\texttt{\string#1}}\let\s\string -\def\d{\discretionary{\%}{}{}} -\makebox[\textwidth]{% -\begin {tabular}{p{.3\textwidth}p{.2\textwidth}p{.2\textwidth}p{.25\textwidth}} -\hline -Comando\V & Default & Scopo & Esempio d'uso \\[.5ex] -\hline -\cs{\relatore\{...\}}\V&nessuno& Definisce il nome del relatore& - \cs{\relatore\d\{prof.\s~Albert Einstein\}} \\ -\cs{\secondorelatore\{...\}}&nessuno&Se c'è, definisce il nome del secondo relatore& - \cs{\secondorelatore\d\{dott.\s~Grazia Deledda\}}\\ -\cs{\terzorelatore\{...\}}&nessuno&Se c' è, definisce il nome del -terzo relatore& - \cs{\terzorelatore\d\{ing.\s~Thomas A.\s~Edison\}}\\ -\cs{\direttore\{...\}}&nessuno&Definisce il nome del direttore del ciclo di dottorato& - \cs{\direttore\d\{prof.\s~Albert Enstein\}}\\ -\cs{\coordinatore\{...\}}&nessuno&Definisce il nome del coordinatore del ciclo di dottorato& - \cs{\coordinatore\d\{prof.\s~Albert Einstein\}}\\ -\cs{\tutore\{...\}}&nessuno&Definisce il nome del tutore& - \cs{\tutore\d\{prof.\s~Karl Von Braun\}} \\ -\cs{\candidato\{...\}}&nessuno&Definisce il nome del candidato& - \cs{\candidato\{Galileo Galilei\}} \\ -\cs{\candidata\{...\}}&nessuno&Definisce il nome della candidata& - \cs{\candidata\{Maria Curie\}} \\ -\cs{\secondocandidato\{...\}}&nessuno&Se c'è , definisce il nome -del secondo candidato& - \cs{\secondocandidato\d\{Evangelista Torricelli\}}\\ -\cs{\secondacandidata\{...\}}&nessuno&Se c'è , definisce il nome -della seconda candidata& - \cs{\secondacandidata\d\{Rita Levi Montalcini\}}\\ -\cs{\terzocandidato\{...\}}&nessuno& Se c'è, definisce il nome del -terzo candidato& - \cs{\terzocandidato\d\{Alessandro Volta\}} \\ -\cs{\terzacandidata\{...\}}&nessuno&Se c'è, definisce il nome della terza candidata& - \cs{\terzacandidata\d\{Eleonora Duse\}}\\[.5ex] -\hline -\end{tabular}} -\caption{Comandi per il frontespizio della monografia di laurea, della -tesi di laurea e della dissertazione di dottorato (\emph{continua})}\label{tab:front2} -\end{table} - -\addtocounter{table}{-1} -\begin{table} -\def\V{\rule{0pt}{2.5ex}} -\def\cs#1{\texttt{\string#1}}\let\s\string -\def\d{\discretionary{\%}{}{}} -\makebox[\textwidth]{% -\begin {tabular}{p{.3\textwidth}p{.2\textwidth}p{.2\textwidth}p{.25\textwidth}} -\hline -Comando\V & Default & Scopo & Esempio d'uso \\[.5ex] -\hline -\cs{\sedutadilaurea\{...\}}\V&data corrente &Definisce il mese e l'anno (volendo il giorno) della seduta di laurea& - \cs{\sedutadilaurea\d{Dicembre~2005}}\\ -\cs{\esamedidottorato\{...\}}&data corrente&Definisce il mese e l'anno (volendo il giorno) della seduta di discussione& - \cs{\esamedidottorato\d\{Febbraio~2003\}}\\ -\cs{\ciclodidottorato\{...\}}&nessuno&Definisce il numero ordinale del ciclo di dottorato& - \cs{\ciclodidottorato\d\{XV~ciclo\}} \\ -\cs{\logosede\{...\}}&nessuno&Inserisce nel frontespizio il logo dell'ateneo& - \cs{\logosede\d\{logopolito\}}\\[.5ex] -\hline -\end{tabular}} -\caption{Comandi per il frontespizio della monografia di laurea, della -tesi di laurea e della dissertazione di dottorato}\label{tab:front3} -\end{table} - - -\begin{table}[p] -\def\V{\rule{0pt}{2.5ex}} -\def\cs#1{\texttt{\string#1}}\let\s\string -\def\d{\discretionary{\%}{}{}} -\def\serve{definisce una stringa equivalente a } -\makebox[\textwidth]{\small% -\begin{tabular}{@{}p{.35\textwidth}p{.65\textwidth}@{}} -\hline -\cs{\FacoltaDi\{...\}}\V & \serve ``Facoltà di'' prima del nome della facoltà \\ -\cs{\DottoratoIn\{...\}} & \serve ``Dottorato in'' prima del nome del dottorato\\ -\cs{\CorsoDiLaureaIn\{...\}} & \serve ``Corso di Laurea in'' prima del nome del corso di laurea\\ -\cs{\TesiDiLaurea\{...\}} & \serve ``Tesi di Laurea''\\ -\cs{\NomeMonografia\{...\}} & \serve ``Monografia di Laurea''\\ -\cs{\NomeDissertazione\{...\}} & \serve ``Dissertazione di Dottorato''\\ -\cs{\InName\{...\}} & \serve ``in''; in tedesco potrebbe essere ``auf'', in francese ``en'', ecc.\\ -\cs{\CandidateName\{...\}} & \serve ``Candidato''; per questo e i due comandi successivi il programma riesce - a scegliere la stringa giusta adattata in numero e genere; nel cambiare queste stringhe - il compositore ha una sola possibilità e deve scegliere direttamente il genere e il numero.\\ -\cs{\AdvisorName\{...\}} & \serve ``Relatore''\\ -\cs{\CoAdvisorName\{...\}} & \serve ``Correlatore''; questo comando si può usare sempre, ma il suo contenuto viene effettivamente usato solo se si specifica l'opzione \texttt{classica}; se in italiano non piace ``Correlatore'' ma si preferisce ``Corelatore'' o ``Co-relatore'', sempre con l'opzione \texttt{classica}, si può correggere la versione di default.\\ -\cs{\TutorName\{...\}} & \serve ``Tutore''\\ -\cs{\NomeTutoreAziendale\{...\}}& \serve ``Supervisore aziendale''; usando un argomento che contenga anche - indicazioni di ``a capo'', nella seconda riga si può scrivere il nome dell'azienda.\\ -\cs{\CycleName\{...\}} & \serve ``ciclo''; serve essenzialmente per indicare il ciclo di dottorato\\ -\cs{\NomePrimoTomo\{...\}} & \serve ``Tomo primo''\\ -\cs{\NomeSecondoTomo\{...\}} & \serve ``Tomo secondo''\\ -\cs{\NomeTerzoTomo\{...\}} & \serve ``Tomo terzo''\\ -\cs{\NomeQuartoTomo\{...\}} & \serve ``Tomo quarto''; tutte e quattro queste stringhe dipendono dalla lingua - usata e dall'ordine che si vuole o si deve dare alle due parole.\\[.5ex] -\hline -\end{tabular}} - \caption{Comandi per modificare le parole e/o le brevi frasi scritte -nel frontespizio o per cambiare le parole italiane di default in altre -parole diverse, o per esprimere gli stessi concetti in un'altra -lingua}\label{tab:front4} -\end{table} - -I comandi di questa sezione possono essere introdotti in un -ordine qualunque, ma è più chiaro se sono introdotti nell'ordine -in cui sono elencati. - -Essi possono anche essere scritti nel file di configurazione -\texttt{toptesi.cfg}, anzi, direi che è meglio che siano inseriti -in quel file, lasciando nel preambolo solo quelli che cambiano i -valori di default o che inseriscono informazioni non presenti di -default. - -Alcuni comandi sono generali; altri si riferiscono specificatamente -alla monografia di laurea, alla tesi laurea, o alla dissertazione di -dottorato. - -La differenza è che generalmente la monografia di laurea non ha -un relatore; se nella vostra facoltà anche la monografia di laurea -ha un relatore comportatevi come per la tesi di laurea. Se nel -vostro ateneo o nella vostra facoltà succede così, allora inserite -nel file di configurazione il seguente comando -\begin{verbatim} -\TesidiLaurea{Tesi di Laurea Specialistica} -\end{verbatim} -oppure cambiate ``Specialistica'' in `Magistrale'' se così è l'uso -della vostra facoltà o del vostro ateneo. Similmente cambiate le -stringhe inserite dai vari comandi facendo ampio uso dei comandi -esposti nelle tabelle~\ref{tab:front1}--\ref{tab:front4}, in -particolare inserendoli nel file di configurazione, specialmente -se devono rappresentare delle modifiche ``permanenti''; usateli -anche per predisporre quelle stringhe in una lingua diversa -dall'italiano. - -Per comporre questo manuale si è usata la classe \texttt{toptesi}, -e si è supposto di scrivere una monografia; tuttavia alcune -delle stringhe di default non sono adeguate all'uso, quindi il -preambolo di questo documento contiene le seguenti specificazioni -che illustrano l'impiego di diversi fra i comandi descritti nelle -tabelle citate: -\begin{verbatim} - \NomeMonografia{Manuale d'uso} - \monografia{La classe \textsf{TOPtesi}} - \sottotitolo{Per comporre le tesi al Poli\\ - e in molte altre università} - \candidato{Claudio Beccari} - \sedutadilaurea{Versione \fileversion} - \logosede{logopolito} -\end{verbatim} - -Vale la pena di fare le seguenti osservazioni: -\begin {itemize} -\item \texttt{\string\titolo} non deve -essere usato per la monografia (ma \texttt{\string\sottotitolo} si -può usare, come si è fatto per il frontespizio di questo -manuale); per la monografia il comando \texttt{\string\monografia} -imposta sia il titolo sia le altre informazioni che distinguono la -monografia da una tesi di laurea (magistrale). -% -\item Il comando \texttt{\string\titolo} accetta un argomento facoltativo, la versione breve -del titolo del frontespizio; serve con l'opzione \texttt{classica} e l'opzione -\texttt{autoretitolo}, dove il titolo breve va nella testatina delle pagine; -se il titolo del frontespizio fosse troppo lungo la testatina verrebbe -molto male! -% -\item Non dare i comandi \texttt{\string\relatore}, \texttt{\string\secondorelatore} -e \texttt{\string\terzorelatore} né per la dissertazione di -dottorato né per la monografia. -% -\item L'indicazione della materia su cui si svolge la tesi di laurea -o di dottorato non viene normalmente indicata se non, talvolta, -nelle facoltà umanistiche. -% -\item I secondi e terzi candidati non hanno senso né per -le tesi di dottorato né per le monografie. -% -\item Per la monografia l'informazione della data può essere omessa -se non c'è una data per la presentazione. -% -\item Il pacchetto \textsf{TOPtesi} nelle distribuzioni precedenti a questa conteneva un buon numero di loghi di università italiane e straniere; mi è stato fatto notare che questi loghi sono di proprietà esclusive delle università e che esse potrebbero reclamare e sollevare questioni giuridiche quando i loro loghi venissero distribuiti senza il loro consenso esplicito. Perciò con questa versione cesso la distribuzione dei loghi (con un certo rincrescimento, lo devo ammettere) per evitare conflitti, in particolare per evitare che l'archivio \textsc{ctan} possa in qualche modo essere trascinato in una controversia legale. - -Gli utenti di questo pacchetto, quindi dovranno ottenere il logo direttamente dalla loro università e, ovviamente, prima di usare un logo, del quale ogni università è piuttosto gelosa, bisogna che siano sicuri di non commettere un illecito. Prima di usare qualsiasi logo informatevi dall'istituzione rappresentata da quel simbolo sul suo uso corretto e legale. - -Se otterrete il logo dalla vostra università controllate che la sua impostazione si riferisca ad un disegno piuttosto dettagliato, con una densità di pixel non inferiore a 300 dpi, per la resa migliore, o al peggio non sia inferiore a 150 dpi. Trasformate, se non lo fosse già il formato del file nel formato PNG (Portable Network Graphics), estensione \texttt{.png}, o JPEG (Joint Photographic Expert Group), estensione \texttt{.jpg}, o anche PDF; ricorrete al formato EPS se e solo se siete costretti ad usare \LaTeX, e non a pdf\/\LaTeX, per la composizione della tesi. -\end{itemize} - -Per quanto riguarda i loghi, la loro inserzione implica l'uso del -pacchetto \texttt{graphicx}, che \textsf{TOPtesi} carica di -default; specificare nuovamente quel pacchetto non produce nessun -danno, perché \LaTeX\ controlla da solo se lo deve caricare o non -lo deve ricaricare. - -Tuttavia va segnalato un punto che dovrebbe essere evidente - -Da quanto esposto sopra: i programmi \LaTeX\ e pdf\/\LaTeX\ non possono assorbire qualunque formato per le immagini; \LaTeX\ può includere solo figure in formato EPS, mentre pdf\/\LaTeX\ può includere i formati PNG, JPEG, PDF; dal 2010 anche pdf\/\LaTeX\ riesce ad incorporare i file in formato EPS ma, senza trucchi di vario genere, non può ancora contenere il codice PostScript, e quindi non può usare direttamente i pacchetti della collezione PSTricks. Tuttavia la collezione dei file di estensione del sistema \TeX\ contine diversi file di estensione per aggirare questa situazione. - -Come già detto, dal 2010 il programma {pdf\/\LaTeX} è capace di gestire da solo anche le figure in formato \texttt{.eps}, nel senso cha da solo se le converte nel formato \texttt{.pdf} senza bisogno di chiederglielo esplicitamente; una volta prodotta la figura convertita, {pdf\/\LaTeX} la riconosce e non esegue più di nuovo la conversione. - -\section{Altri comandi} -Il pacchetto \textsf{TOPtesi} richiede l'uso di altri comandi il -più notevole dei quali è senza dubbio \verb|\frontespizio|. È un comando che -non vuole argomenti e che va dato all'inizio, subito dopo -l'apertura del documento o all'inizio del primo file incluso dal -master file. Si veda comunque la tabella~\ref{tab:comandi}. - -\begin{table}[p] -\def\V{\rule{0pt}{2.5ex}} -\def\cs#1{\texttt{\string#1}}\let\s\string -\def\d{\discretionary{\%}{}{}} -\makebox[\textwidth]{% -\begin {tabular}{p{.25\textwidth}p{.25\textwidth}p{.4\textwidth}} -\hline -Comando\V & Default & Scopo \\[.5ex] -\hline -\cs{\figurespagetrue}&\cs{\figurespagefalse}& Fa o non fa stampare l'indice delle figure\\ -\cs{\tablespagetrue}&\cs{\tablespagefalse}&Fa o non fa stampare l'indice delle tabelle\\ -\cs{\frontespizio} & nessuno & Fa stampare il frontespizio \\ -\cs{\sommario} &nessuno & Inizia un capitolo non numerato che ha per - intestazione la parola SOMMARIO (anche in lingua)\\ -\cs{\ringraziamenti}&nessuno & Inizia un capitolo non numerato - che ha per intestazione la parola - RINGRAZIAMENTI (anche in lingua)\\ -\cs{\indici} &nessuno & Fa stampare l'indice generale, e, - se sono stati dati i comandi - \texttt{\char92figures"page"true} e - \texttt{\char92tables"page"true}, - anche gli indici delle figure e delle - tabelle.\\[.5ex] -\texttt{dedica} && È un ambiente con cui si può stampare una - pagina di dedica; generalmente questa pagina viene prima del - frontespizio.\\ -\texttt{citazioni} && È un ambiente che consente di scrivere una pagina con frasi argute. - L'arguzia dipende dall'autore; spesso nei libri, raramente nelle tesi, - l'autore cita frasi celebri o che in qualche modo hanno a che fare con - il contenuto del testo.\\ -\cs{\paginavuota} &nessuno & Emette nel file di uscita una pagina totalmente bianca, - senza nemmeno il numero della pagina. Non so a che cosa - possa servire, ma non costa niente mettere a disposizione - anche questo comando che mi è stato richiesto a gran - voce.\\ -\hline -\end{tabular}} -\caption{Comandi ulteriori di \textsf{TOPtesi}}\label{tab:comandi} -\end{table} - - -Ovviamente perché il comando esegua il suo compito, tutte le -informazioni rilevanti devono già essere state scritte nel file di -configurazione o i comandi specifici con i loro argomenti devono -essere già stati posti nel preambolo. - -Nella figura~\ref{fig:frontespizi} sono riportati quattro esempi di frontespizi relativi ai tipi di tesi seguenti: -\begin{itemize} -\item tesi di laurea del Vecchio Ordinamento, -\item monografia di laurea, -\item tesi di laurea specialistica o magistrale, -\item dissertazione di dottorato -\end{itemize} -Con questi modelli lo studente che compila la sua tesi usando -\textsf{TOPtesi} può scegliere la versione che fa al caso suo e sa -anche che cosa deve configurare per eseguire alcuni cambiamenti. -%\enlargethispage*{3\baselineskip} - -\begin{figure}[!htp]\centering -\begin{minipage}{.45\textwidth}\centering -\frame{\includegraphics[width=\linewidth]{tesilaurea}} -\end{minipage}\hfil -\begin{minipage}{.45\textwidth}\centering -\frame{\includegraphics[width=\linewidth]{monografia}} -\end{minipage}\\[\bigskipamount] -\begin{minipage}{.45\textwidth}\centering -\frame{\includegraphics[width=\linewidth]{laureaspecialistica}} -\end{minipage}\hfil -\begin{minipage}{.45\textwidth}\centering -\frame{\includegraphics[width=\linewidth]{tesidottorato}} -\end{minipage} -\caption{I quattro frontespizi fondamentali}\label{fig:frontespizi} -\end{figure} - - - - -\begin{table}[p] -\def\V{\rule{0pt}{2.5ex}} -\def\cs#1{\texttt{\string#1}}\let\s\string -\def\d{\discretionary{\%}{}{}} -\makebox[\textwidth]{% -\begin {tabular}{p{.2\textwidth}p{.7\textwidth}} -\hline -Comando\V & Scopo \\[.5ex] -\hline -\cs{\candidato}\V &Si usa come di solito ma con l'opzione \texttt{classica} - produce la scrittura ``Laureando'' invece che ``Candidato''.\\ -\cs{\candidata} & Come sopra al femminile.\\ -\cs{\tomo} & Esegue i frontespizi successivi di una tesi divisa in tomi - scrivendovi Tomo primo, Tomo secondo, eccetera, - a seconda del numero progressivo dei volumi in cui è suddivisa la tesi - (massimo quattro).\\ -\cs{\annoaccademico} & Il suo argomento può essere un anno solare o - due anni separati da una lineetta. - Viene scritto nel frontespizio della tesi o del singolo tomo - con la specificazione che si tratta dell'anno accademico e non della - data della presentazione della tesi.\\ -\cs{\EnDash} & Produce una lineetta lunga come ---, ma ribassata in modo che stia - bene fra numeri scritti con le cifre minuscole.\\ -\cs{\nota[...]} & Serve per comporre una nota senza ricorrere al contatore numerico di - default. - Il simbolo con cui viene richiamata di default è l'asterisco, ma si può - mettere qualunque segno matematico senza esplicitare i segni di dollaro, - per esempio si può scrivere \cs{\nota[\s\dagger]\{Questa nota \dots\}}\\ -\cs{\NoteWhiteLine} & Anche questo comando mi è stato richiesto a - gran voce e serve per mettere in nota una riga completamente bianca. - \\[.5ex] -\hline -\end{tabular}} -\caption{Comandi ulteriori per il frontespizio e per il corpo -della tesi definiti con l'opzione \texttt{classica}}\label{tab:front5} -\end{table} - - -\chapter*{Conclusioni} -\addcontentsline{toc}{chapter}{Conclusioni} - -Il pacchetto \textsf{TOPtesi} fa quasi tutto quello che è -necessario per comporre uno qualunque di quegli scritti che -vengono chiamati \emph{monografia di laurea}, oppure \emph{tesi di -laurea}, oppure \emph{tesi di laurea specialistica}, oppure -\emph{tesi di laurea magistrale}, oppure \emph{dissertazione di -dottorato}. - -Non fa tutto, ci mancherebbe altro, visto che nessuna persona è in -grado di prevedere tutte le necessità delle altre persone. - -Da un lato alcuni devono adattarsi a quello che è disponibile, -magari dandosi da fare per creare qualche cosa di nuovo per se -stessi e forse anche per gli altri. Qualcun altro deve sapersi -immedesimare nelle necessità altrui e magari deve darsi da fare -per creare qualcosa di nuovo che possa essere utile agli altri e -forse anche a se stesso. - -Una cosa certamente che rimane da fare è un procedimento più -semplice per la composizione del frontespizio in una lingua -diversa dall'italiano. Attualmente il procedimento si rifà all'uso -delle macro che servono per definire le stringhe in lingua; il -sistema dovrebbe essere completo ma richiede un po' di attenzione -da parte dell'utente. - -\begin {sloppypar} -Un'altra possibilità sarebbe quella di predisporre altri file con -i nomi, per esempio, \texttt{topfrnten.sty}, -\texttt{topfrntfr.sty}, \texttt{topfrntsp.sty}, eccetera, che -siano cloni del file \texttt{topfront.sty} e che si possono -richiamare come pacchetti aggiuntivi. Ognuno definisce il comando -\texttt{\string\frontespizioinglese}, -\texttt{\string\frontespiziofrancese}, -\texttt{\string\frontespiziospagnolo}, eccetera, e questo comando -può quindi essere usato in sostituzione del comando per il -frontespizio italiano. Questi file differirebbero da quello per il -frontespizio in italiano perché vi sarebbero ridefinite tutte le -definizioni di default delle stringhe in lingua. Ovviamente -bisogna che chi clona e modifica il file \texttt{topfront.sty} e -lo modifica per adattarlo ad una determinata lingua, debba -conoscere quella lingua da maestro. Suggerirei però di non -modificare le strutture con cui è composto il frontespizio del -nostro Politecnico, perché effettivamente contiene tutti gli -elementi richiesti ``per legge'' ed è tipograficamente abbastanza -equilibrato; la sfalsatura del blocco dei relatori e di quello dei -candidati lascia abbastanza spazio per le firme di legge, anche se -introduce un elemento di asimmetria; tuttavia~\dots -\end{sloppypar} - -Il pacchetto \textsf{TOPtesi} carica di default sia \texttt{babel} sia -\texttt{graphicx}; certo potrebbe caricare di default anche -\texttt{amsmath} e i suoi compagni, ma non tutti hanno bisogno di -scrivere e comporre matematica avanzata e se non vengono usati essi -comportano uno spreco di memoria e un sia pur piccolo rallentamento -nell'esecuzione. Ritengo quindi che sia meglio che ognuno si carichi i -pacchetti che intende davvero usare. - -Si ricordi che specificando l'opzione \texttt{pdfa}, bisogna usare esclusivamente \texttt{pdflatex} (con il parametro \verb|\pdfoutput| caricato con un numero positivo, generalmente~1); viene caricato un file di estensione specifico che a sua volta attiva la possibilità di disporre dei link interni ed esterni, che sono così comodi per ``navigare'' dentro al documento. Eventuali personalizzazioni devono perciò venire eseguite immediatamente dopo la dichiarazione della classe, altrimenti non vengono recepite correttamente. Bisogna altresì ricordarsi di predisporre il file con i \emph{metadata} richiesti dal formato PDF/A. - -È possibile usare il semplice \texttt{latex} (o anche \texttt{pdflatex}, con il valore di \verb|\pdfoutput| caricato con il valore~0); ma questo serve solo per produrre un file in formato DVI, che può servire solo per una stampa della tesi su carta; può venire trasformato nel formato PS tramite l'applicativo \texttt{dvips}, ma questo formato non stamperebbe meglio di quel che si potrebbe ottenere dai ``previewer'' recenti per il formato DVI che siano anche in grado di inviare il file DVI in stampa. Viceversa è più interessante disporre della versione finale in formato PDF, cosa che si può ottenere mediante il programma \texttt{ps2pdf} il quale, con opportuni artifici, permette anche di produrre un file in formato PDF/A. Ma allora perché non ottenere questo risultato in un passaggio solo? Certo, potrebbe esserci l'esigenza di usare estensioni che fanno uso del linguaggio PostScript, ma, solitamente, agendo direttamente con \texttt{pdflatex} si possono usare altri pacchetti di estensione che consentono di evitare del tutto il linguaggio PostScript. - -So per certo che le tesi di filologia classica possono essere -composte molto bene con \LaTeX\ e \textsf{TOPtesi}; se bisogna -usare una buona dose di lingua greca classica è conveniente -caricare il pacchetto \texttt{teubner}; gli intenditori sanno -perfettamente che i font della casa editrice Teubner di Lipsia -sono fra i più gradevoli che esistano; il pacchetto -\texttt{teubner} fa uso di un'ottima imitazione di quei font e -mette a disposizione una miriade di comandi per comporre quei -segni ``strani'' che i filologi usano per scrivere le loro opere. - -Per le edizioni critiche esiste il pacchetto \texttt{ledmac}; io non -l'ho mai usato, ma sembra che sia di grande aiuto per i letterati. - -Per gli scienziati e i tecnologi esistono troppi pacchetti -specializzati e sarebbe impossibile, e forse inutile, elencarli -tutti, o anche elencare solo i più importanti. - -Non resta che augurare: -\begin {center}\Large\bfseries -Buona composizione con pdf\/\LaTeX! -\end{center} -\appendix -\input{LPPL} - - - \end{document} - diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc.xmpdata b/Master/texmf-dist/doc/latex/toptesi/toptesi-doc.xmpdata deleted file mode 100755 index 7836041c918..00000000000 --- a/Master/texmf-dist/doc/latex/toptesi/toptesi-doc.xmpdata +++ /dev/null @@ -1,3 +0,0 @@ -\Author{Claudio Beccari} -\Title{La classe ToPtesi} -\Keywords{LaTeXTesiPDF/ADissertazioneMonografia} \ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-example-xetex.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi-example-xetex.pdf new file mode 100755 index 00000000000..860f523e431 Binary files /dev/null and b/Master/texmf-dist/doc/latex/toptesi/toptesi-example-xetex.pdf differ diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-example-xetex.tex b/Master/texmf-dist/doc/latex/toptesi/toptesi-example-xetex.tex new file mode 100755 index 00000000000..aef1a9d880d --- /dev/null +++ b/Master/texmf-dist/doc/latex/toptesi/toptesi-example-xetex.tex @@ -0,0 +1,310 @@ +%!TEX encoding = UTF-8 Unicode +%!TEX TS-program = xelatex + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1.o Esempio con la classe toptesi +%\documentclass[12pt,twoside,cucitura]{toptesi} +%\documentclass[twoside,cucitura]{toptesi} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2.o Esempio con la classe toptesi +\documentclass[11pt,twoside,oldstyle,autoretitolo,classica,pdfa]{toptesi} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% Esempio di composizione di tesi di laurea. +% +% Questo esempio e' stato preparato inizialmente 13-marzo-1989 +% e poi e' stato modificato via via che TOPtesi andava +% arricchendosi di altre possibilita'. +% +% Questa è la versione compilabile con XeLaTeX +% +% Nel seguito laurea "quinquennale" sta anche per "specialistica" o "magistrale" +% +% +% +\usepackage{fontspec} +\setmainfont[Ligatures=TeX]{TeX Gyre Termes}% font Times +\setsansfont[Ligatures=TeX, Scale=MatchLowercase]{TeX Gyre Heros}% font Helvetica +\setmonofont{UM Typewriter}% font typewriter un po' più scuri del font Courier +\usepackage{amsmath} % per la matematica estesa +\usepackage[math-style=TeX]{unicode-math}% per la matematica UNICODE +\setmathfont{XITS Math}% font matematici UNICODE che van bene con i Times +\setotherlanguage[variant=ancient]{greek} +\newfontfamily{\greekfont}{GFS Didot} + +% Commentare le righe seguenti se NON si non si vogliono i link ipertestuali +\usepackage{hyperref} +\hypersetup{% + pdfpagemode={UseOutlines}, + bookmarksopen, + pdfstartview={FitH}, + colorlinks, + linkcolor={blue}, + citecolor={red}, + urlcolor={blue} + } +\begin{document}\errorcontextlines=9 + % ATTENZIONE: con XeLaTeX le informazioni per i frontespizio vanno inserite dopo +% \begin{document} +%\ateneo{Università degli Studi di Roma} +%\nomeateneo{Tor Vergata} +\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 +\sottotitolo{Metodo dei satelliti medicei}% per la laurea quinquennale e il dottorato +\corsodilaurea{Astronomia Applicata}% per la laurea +%\corsodidottorato{Meccanica}% per il dottorato +\candidato{Galileo \textsc{Galilei}}% per tutti i percorsi +\secondocandidato{Evangelista \textsc{Torricelli}}% per la laurea magistrale solamente +%\direttore{prof. Albert Einstein}% per il dottorato +%\coordinatore{prof. Albert Einstein}% per il dottorato +\relatore{prof.\ Albert Einstein}% per la laurea e/o il dottorato +\secondorelatore{dipl.~ing.~Werner von Braun}% per la laurea magistrale +%\terzorelatore{{\tabular{@{}l}dott.\ Neil Armstrong\\prof. Maria Rossi\endtabular}}% per la laurea magistrale +%\tutore{ing.~Karl Von Braun}% per il dottorato +\tutoreaziendale{dott.\ ing.\ Giovanni Giacosa} +\NomeTutoreAziendale{Supervisore aziendale\\Centro Ricerche FIAT} +%\sedutadilaurea{Agosto 1615}% per la laurea quinquennale +%\esamedidottorato{Novembre 1610}% per il dottorato +\sedutadilaurea{\textsc{Anno~accademico} 1615-1616}% per la laurea magistrale +%\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 +% +%\chapterbib %solo per vedere che cosa succede; e' preferibile comporre una sola bibliografia +%\AdvisorName{Supervisors} +\newtheorem{osservazione}{Osservazione}% Standard LaTeX + + +%\setbindingcorrection{3mm} + +\ifclassica + \paginavuota + \begin{dedica} + A mio padre + + \textdagger\ A mio nonno Pino + \end{dedica} + \tomo +\else + \frontespizio +\fi + + +\sommario + +La pressione barometrica di Giove viene misurata +mediante un metodo originale messo a punto dai candidati, che si basa +sul rilevamento telescopico della pressione. + +\ringraziamenti + +I candidati ringraziano vivamente il Granduca di Toscana per i mezzi +messi loro a disposizione, ed il signor Von Braun, assistente del +prof.~Albert Einstein, per le informazioni riservate che egli ha +gentilmente fornito loro, e per le utili discussioni che hanno permesso +ai candidati di evitare di riscoprire l'acqua calda. + +\tablespagetrue\figurespagetrue % normalmente questa riga non serve ed e' commentata +\indici + +\ifclassica + \begin{citazioni} + \textit{testo testo testo\\testo testo testo} + + [\textsc{G.\ Leopardi}, Operette Morali] + + \begin{greek} + ἀλλὰ πάντα ὠκέÏαυνος δ' ὀιακίζει + \end{greek} + + [Eraclito, fr.\ D-K 134] + \end{citazioni} + +\fi + +\mainmatter + +\part{Prima Parte} +\chapter{Introduzione generale} + +\section{Principi generali} +Il problema della determinazione della pressione barometrica dell'atmosfera di +Giove non ha ricevuto finora una soluzione soddisfacente, per l'elementare +motivo che il pianeta suddetto si trova ad una distanza tale che i mezzi attuali +non consentono di eseguire una misura \emph{in loco}. + +Conoscendo però con grande precisione le orbite dei satelliti principali di +Giove, e segnatamente le orbite dei satelliti medicei, è possibile eseguire +delle misure indirette, che fanno ricorso alla nota formula \cite{gal}: +\[ +\Phi = K\frac{\Xi^2 +\Psi\ped{max}}{1+\gei\Omega} +\] +dove le varie grandezze hanno i seguenti significati: +\begin{enumerate} +\item +$\Phi$ angolo di rivoluzione del satellite in radianti se $K=1$, in gradi se +$K=180/\pi$; +\item +$\Xi$ eccentricità dell'orbita del satellite; questa è una grandezza priva +di dimensioni; +\item +$\Psi\ped{max}$ rapporto fra il semiasse maggiore ed il semiasse minore +dell'orbita del satellite, nelle condizioni di massima eccentricità; +poiché le dimensioni di ciascun semiasse sono $[l]=\unit{km}$, la grandezza +$\Psi\ped{max}$ è adimensionata; +\item +$\Omega$ velocità istantanea di rotazione; si ricorda che è $[\Omega]=% +\unit{rad}\unit{s}^{-1}$; +\item bisogna ancora ricordarsi che $10^{-6}\unit{m}$ equivalgono a +1\unit{\micro m}. +\end{enumerate} +% + +Le grandezze in gioco sono evidenziate nella figura \ref{fig1}. +\begin{figure}[ht]\centering +\setlength{\unitlength}{0.01\textwidth} +\begin{picture}(40,30)(30,0) +\put(50,15){\circle{20}} +\put(47,15){\circle*{1}} +\put(30,0){\line(0,1){30}} +\put(30,30){\line(1,0){40}} +\put(70,30){\line(0,-1){30}} +\put(70,0){\line(-1,0){40}} +\end{picture} +\caption{Orbita del generico satellite; si noti l'eccentricità dell'orbita rispetto al pianeta.\label{fig1}} +\end{figure} + +Per misurare le grandezze che compaiono in questa formula è necessario +ricorrere ad un pirometro con una resistenza di 120\unit{M\ohm}, altrimenti gli +errori di misura sono troppo grandi, ed i risultati completamente falsati. + +\section{I satelliti medicei} +I satelliti medicei, come noto, sono quattro ed hanno dei periodi di rivoluzione +attorno al pianeta Giove che vanno dai sette giorni alle tre settimane. + +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. +\chapter{Il barometro} +\section{Generalità} +\begin{interlinea}{0.87} Il barometro, come dice il nome, serve per +misurare la pesantezza; più precisamente la pesantezza dell'aria +riferita all'unità di superficie. Questo capoverso è composto con un fattore di interlinea pari a 0,87 e come si vede le righe sono troppo dense e si leggono male. Oltretutto la distanza effettiva delle successive linee di base di righe adiacenti non è costante e dipende dalla presenza di lettere con ascendenti e discendenti. +\end{interlinea} + +\begin{interlinea}{2} Studiando il fenomeno fisico si può concludere +che in un dato punto grava il peso della colonna d'aria che lo +sovrasta, e che tale colonna è tanto più grave quanto maggiore +è la superficie della sua base; il rapporto fra il peso e la base +della colonna si chiama pressione e si misura in once toscane al cubito +quadrato, \cite{tor1}; nel Ducato di Savoia la misura in once al piede +quadrato è quasi uguale, perché colà usano un piede molto +grande, che è simile al nostro cubito. Questo capoverso è composto a spaziatura doppia (fattore di interlinea pari a 2) ed è semplicemente penoso. +\end{interlinea} + +\subsection{Forma del barometro} + +\begin{interlinea}{1.5} +Il barometro consta di un tubo di vetro chiuso ad una estremità e +ripieno di mercurio, capovolto su di un vaso anch'esso ripieno di +mercurio; mediante un'asta graduata si può misurare la distanza fra +il menisco del mercurio dentro il tubo e la superficie del mercurio +dentro il vaso; tale distanza è normalmente di 10 pollici toscani, +\cite{tor1,tor2}, ma la misura può variare se si usano dei pollici +diversi; è noto infatti che gl'huomini sogliono avere mani di +diverse grandezze, talché anche li pollici non sono egualmente +lunghi. Questo capoverso è composto con un fattore di interlinea pari a 1,5; l'effetto è brutto, ma per delle bozze da stampare su carta e da correggere a mano può bastare. +\end{interlinea} +\section{Del mercurio} +Il mercurio è un a sostanza che si presenta come un liquido, ma ha il colore +del metallo. Esso è pesantissimo, tanto che un bicchiere, che se fosse pieno +d'acqua, sarebbe assai leggero, quando invece fosse ripieno di mercurio, +sarebbe tanto pesante che con entrambe le mani esso necessiterebbe di essere +levato in suso. + +Esso mercurio non trovasi in natura nello stato nel quale è d'uopo che sia +per la costruzione dei barometri, almeno non trovasi così abbondante come +sarebbe necessario. + +\setcounter{footnote}{25} + +Il Monte Amiata, che è locato nel territorio del Ducato% +\footnote{Naturalmente stiamo parlando del Granducato di Toscana.% +\expandafter\ifx\csname StileTrieste\endcsname\NoteWhiteLine\fi +} +del nostro Eccellentissimo et Illustrissimo Signore Granduca di Toscana\footnote{Cosimo IV de' Medici.}, è uno dei +luoghi della terra dove può rinvenirsi in gran copia un sale rosso, che +nomasi \emph{cinabro}, dal quale con artifizi alchemici, si estrae il mercurio +nella forma e nella consistenza che occorre per la costruzione del barometro +terrestre% +\expandafter\ifx\csname StileTrieste\endcsname +\nota{Nota senza numero. + +\dots e che va a capo. +}\fi. + +%\selectlanguage{english} +%\EnableFigTabNames + +La densità del mercurio è molto alta e varia con la temperatura come +può desumersi dalla tabella \ref{t:1}. + + +Il mercurio gode di una sorprendente qualità e proprietà, cioè che esso +diventa tanto solido da potersene fare una testa di martello et infiggere +chiodi aguzzi nel legname. +\begin{table}[htp] % crea un floating body col nome Tabella nella + % didascalia +\centering % comando necessario per centrare la tabella +\begin{tabular}% % inizio vero e proprio della tabella +{*6r} % parametri di incolonnamento: 6 colonne centrate +\hline % linea orizzontale sopra la tabella + % intestazione della tabella +\multicolumn{3}{c}{\rule{0pt}{2.5ex}Temperatura} % \rule serve per lasciare +& \multicolumn{3}{c}{Densità} \\ % un po' di spazio sopra le parole +\multicolumn{3}{c}{\unit{\gradi C}} +& \multicolumn{3}{c}{$\unit{t/m^3}$} \\ +\hline% % una riga orizzontale per separare l'intestazione +\mbox{\ \ \ }&0 & & & 13,8 & \\ % I numeri sono incolonnati + &10 & & & 13,6 & \\ % a destra; le colonne vuote + &50 & & & 13,5 & \\ % servono per centrare le colonne + &100 & & & 13,3 & \\ % numeriche sotto le intestazioni + % +\hline % Riga di fine tabella +\end{tabular} +\caption{Densità del mercurio \label{t:1}} % didascalia con label +\end{table} + +%\selectlanguage{italian} + +\begin{osservazione}\normalfont +Questa proprietà si manifesta quando esso è estremamente freddo, come +quando lo si immerge nella salamoia di sale e ghiaccio che usano li maestri +siciliani per confetionare i sorbetti, dei quali sono insuperabili artisti. +\end{osservazione} + +Per nostra fortuna, questo grande freddo, che necessita per la confetione de +li sorbetti, molto raramente, se non mai, viene a formarsi nelle terre del +Granduca Eccellentissimo, sicché non vi ha tema che il barometro di mercurio +possa essere ruinato dal grande gelo e non indichi la pressione giusta, come +invece deve sempre fare uno strumento di misura, quale è quello che è +descritto costì. + + + + +\begin{thebibliography}{9} +\bibitem{gal} G.~Galilei, {\em Nuovi studii sugli astri medicei}, Manunzio, + Venetia, 1612. +\bibitem{tor1} E.~Torricelli, in ``La pressione barometrica'', {\em Strumenti + Moderni}, Il Porcellino, Firenze, 1606. +\bibitem{tor2} E.~Torricelli e A.~Vasari, in ``Delle misure'', {\em Atti Nuovo + Cimento}, vol.~III, n.~2 (feb. 1607), p.~27--31. +\end{thebibliography} + + + + +\end{document} diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-example.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi-example.pdf index 81434eaf384..9db1c4bdc82 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 ac9febf40cc..e153d8ca1be 100644 --- a/Master/texmf-dist/doc/latex/toptesi/toptesi-example.tex +++ b/Master/texmf-dist/doc/latex/toptesi/toptesi-example.tex @@ -1,47 +1,45 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1.o Esempio con la classe toptesi \documentclass[12pt,twoside,cucitura]{toptesi} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2.o Esempio con la classe toptesi %\documentclass[twoside,cucitura,pdfa]{toptesi} -% Commentare le righe seguenti se NON si è specificata l'opzione "pdfa" -%\hypersetup{% -% pdfpagemode={UseOutlines}, -% bookmarksopen, -% pdfstartview={FitH}, -% colorlinks, -% linkcolor={blue}, -% citecolor={red}, -% urlcolor={blue} -% } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3.o Esempio con la classe toptesi +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2.o Esempio con la classe toptesi % \documentclass[11pt,twoside,oldstyle,autoretitolo,classica,greek]{toptesi} % \usepackage[or]{teubner} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4.o esempio con classe toptesi -%\documentclass[14pt,twoside,cucitura]{toptesi} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Commentare la riga seguente se si è specificata l'opzione "pdfa" +\usepackage{hyperref} +\hypersetup{% + pdfpagemode={UseOutlines}, + bookmarksopen, + pdfstartview={FitH}, + colorlinks, + linkcolor={blue}, + citecolor={red}, + urlcolor={blue} + } % -% Esempio di composizione di tesi di laurea. +% Esempio di composizione di tesi di laurea con PDFLATEX <---------------- ! % % Questo esempio e' stato preparato inizialmente 13-marzo-1989 % e poi e' stato modificato via via che TOPtesi andava % arricchendosi di altre possibilita'. % -% Nel seguito laurea "quinquennale" sta anche per "specialistica" o "magistrale" +% Per comporre con XeLaTeX, invece che con pdfLaTeX, vedere il file toptesi-example-xetex.tex +% A parte i font, bisogna specificare alcune cose dopo la fine del preambolo. +% +% Nel seguito laurea "quinquennale" sta anche per "specialistica" o "magistrale". % % Cambiare encoding a piacere; oppure non caricare nessun encoding se si usano % solo caratteri a 7 bit (ASCII) nei file d'entrata. % %\usepackage[ansinew]{inputenc}% per macchine Windows \usepackage[latin1]{inputenc}% per macchine Linux/Mac/UNIX -\usepackage[T1]{fontenc} -\usepackage{lmodern} +\usepackage[T1]{fontenc}\usepackage{lmodern} % %\ateneo{Universit{\`a} degli Studi di Trieste} -\ateneo{Universit\`a degli studi di Roma} -\nomeateneo{Tor Vergata} \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 +%\monografia{La pressione barometrica di Giove}% per la laurea triennale +\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 @@ -49,7 +47,7 @@ \secondocandidato{Evangelista \textsc{Torricelli}}% per la laurea magistrale solamente %\direttore{prof. Albert Einstein}% per il dottorato %\coordinatore{prof. Albert Einstein}% per il dottorato -\relatore{prof.\ Albert Einstein}% per la laurea eo il dottorato +\relatore{prof.\ Albert Einstein}% per la laurea e/o il dottorato \secondorelatore{dipl.~ing.~Werner von Braun}% per la laurea magistrale %\terzorelatore{{\tabular{@{}l}dott.\ Neil Armstrong\\prof. Maria Rossi\endtabular}}% per la laurea magistrale %\tutore{ing.~Karl Von Braun}% per il dottorato @@ -81,21 +79,22 @@ %\setbindingcorrection{3mm} \begin{document}\errorcontextlines=9 -\ifclassica - \tomo +\expandafter\ifx\csname StileTrieste\endcsname\relax + \frontespizio +\else + \paginavuota \begin{dedica} A mio padre \textdagger\ A mio nonno Pino \end{dedica} -\else - \frontespizio + \tomo \fi \sommario -La pressione barometrica di Giove viene misurata + La pressione barometrica di Giove viene misurata mediante un metodo originale messo a punto dai candidati, che si basa sul rilevamento telescopico della pressione. diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi.pdf index 6cec96c9b41..9206c687252 100644 Binary files a/Master/texmf-dist/doc/latex/toptesi/toptesi.pdf and b/Master/texmf-dist/doc/latex/toptesi/toptesi.pdf differ diff --git a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx index 2bf9d7ef74f..fe9d19684e2 100644 --- a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx +++ b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx @@ -6,7 +6,7 @@ \preamble ______________________________________________________ The TOPtesi package - Copyright (C) 2010 Claudio Beccari + Copyright (C) 2011 Claudio Beccari All rights reserved License information appended @@ -25,11 +25,11 @@ This work is "author-maintained" This work consists of this file toptesi.dtx, a README file and the derived files: -toptesi.cls, toptesi.sty, topfront.sty, topcommand.sty, -toptesi.cfg, and the English documentation toptesi.pdf; +toptesi.cls, toptesi.sty, topfront.sty, topcommand.sty, +toptesi.cfg, and the English documentation toptesi.pdf. -Furthermore the bundle contains the documentation source file toptesi-doc.tex -and the derived file toptesi-doc.pdf. +Furthermore the bundle contains the documentation source file toptesi-doc-xetex.tex +and the derived file toptesi-doc-xetex.pdf. The toptesi-example.tex source file is just an example that shows how to use the various commands; by commenting or uncommenting certain @@ -39,10 +39,10 @@ frontpages. The toptesi.cfg file is a sample of a local configuration file that can be freely edited and modified. -By running pdflatex on toptesi.dtx the user gets the cls, sty and cfg files +By running pdflatex on toptesi.dtx the user gets the class, sty and cfg files and the English documentation file in pdf format. -The documentation file toptesi-doc.pdf is in Italian; its source file is +The documentation file toptesi-doc-xetex.pdf is in Italian; its source file is another example of how to use toptesi. \endpostamble \askforoverwritefalse @@ -58,7 +58,7 @@ another example of how to use toptesi. \endgroup % % -% Copyright 2005--2011 Claudio Beccari +% Copyright 1989--2006 Claudio Beccari % % This file is part of the TOPtesi bundle % ------------------------------------------- @@ -77,21 +77,23 @@ another example of how to use toptesi. % given in the file `manifest.txt'. % % The list of derived (unpacked) files belonging to the distribution -% and covered by LPPL is defined by the unpacking scripts (with -% extension .ins) which are part of the distribution. +% and covered by LPPL is defined by the self unpacking file toptesi.dtx +% which is part of the distribution. % % \fi % % \iffalse %<*driver> \documentclass{ltxdoc} -\ProvidesFile{toptesi.dtx}[2011/05/25 v.5.50 Documented TeX file for +\ProvidesFile{toptesi.dtx}[2011/08/09 v.5.59 Documented TeX file for the TOPtesi bundle] \GetFileInfo{toptesi.dtx} \title{The TOPtesi bundle} \date{\fileversion\space\filedate} \author{Claudio Beccari} - + +\usepackage{metalogo} +\def\prog#1{\textsf{#1}} \begin{document}\errorcontextlines=9 \maketitle \setlength\hfuzz{20pt} @@ -100,7 +102,7 @@ the TOPtesi bundle] % % \fi % -% \CheckSum{2441} +% \CheckSum{2551} % %% \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 @@ -129,11 +131,20 @@ the TOPtesi bundle] % may be typeset so as to comply also with the host university rules; therefore this % set of files has the ambition to be suited for typesetting theses in any university in the % world\dots\ This ambition can't be fulfilled, though, because of the complexity of the -% title page (and possibly of the legal page) requirements. +% title page (and possibly of the legal page) requirements. This version is experimentally +% compliant with the \XeLaTeX\ program. Up to now the few conflicts that have been spotted +% have been solved with suitable corrections or additions. The most important feature with +% 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. % \end{abstract} % % \section{Introduction} -% The TOPtesi bundle collects a certain number of files, specifically: +% The TOPtesi bundle collects a certain number of files, specifically % \begin{itemize} % \item a class file \texttt{toptesi.cls} to be used as the main document class; the main % document may be any of a certain number of reports that in Italy @@ -142,8 +153,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. @@ -154,51 +165,70 @@ the TOPtesi bundle] % title page fixed information in languages different from Italian. % \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 contianed also the logos of a certain number of +% \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. -% \item A documentation file \texttt{toptesi-doc.pdf} written in Italian where every feature -% is explained in detail; this English documentation gives a summary of the necessary -% information and contains the code description. +% \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. % \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 localizations deal +% 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. % +% 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 +% \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 +% a PDF/A compliant output PDF file suitable for long term archiving cannot be used. But +% with some attention the PDF file output by \XeLaTeX\ may be converted to PDF/A by using +% the program \prog{ghostscript}. +% % \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. I suppose that typewriter documents have completely vanished -% except perhaps in the legal professions, especially in Italy where legal documents have to -% be written on special paper produced by the State Polygraphic Institute and carry a -% watermark and the Republic's Seal; without a special printer it would be very difficult to -% typeset from a computer on such a custom paper. +% 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 % the like; a common typewriter would not be suitable and the quality of the contents % requires professional typesetting; this is why I strongly believe that instructions -% on typesetting styles that refer to the ``good old times'' of mechanical typewriters +% on typesetting styles that refer to the ``gone by times'' of mechanical typewriters % should be banned. % % 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 -% report document class. +% report document class. If \XeLaTeX\ has to be used, some essential preamble specific +% 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: % \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. @@ -222,9 +252,9 @@ the TOPtesi bundle] % \Item[autoretitolo] This option modifies the left hand (even numbered) pages % in two side typesetting; normally the even numbered page headings contain % the chapter title, while the odd numbered ones contain the current section title. -% If the \texttt{classica} option has been specified, then with this option it is possible -% to have even numbered headings contain the author's name and the thesis title, while the -% odd numbered ones contain the chapter title. Since the thesis title might be too +% If the \texttt{classica} option has been specified, then with this option it is possible to +% have even numbered headings contain the author's name and the thesis title, while the odd +% numbered ones contain the chapter title. Since the thesis title might be too % long to fit in the header together with the author's name, the |\title| macro % as been modified so as to accept an optional short title, similarly to the % sectioning commands. @@ -261,8 +291,8 @@ the TOPtesi bundle] % \Item[frontespizio] is the actual command that typesets the title page and this command % uses all the information that is passed to it by means of the following % commands. -% \Item[monografia] sets the bachelor's report style and retrieves the report title -% \Item[titolo] gets the thesis title and an optional thesis short title +% \Item[monografia] sets the bachelor's report style and retrieves its title +% \Item[titolo] gets the master or PhD thesis title and an optional thesis short title % \Item[sottotitolo] gets the thesis subtitle if any % \Item[materia] gets the name of the subject the thesis deals with % \Item[Materia] alias for \cs{materia} @@ -283,8 +313,8 @@ the TOPtesi bundle] % \Item[tutore] gets the name of the doctorate tutor; there is no difference with regards % to the \cs{relatore}, but the default phrase ``Tutore'' is printed above % this person's name. -% \Item[TutorName] gets the phrase that describes the tutor position, possibly in a -% different language. +% \Item[TutorName] gets the phrase that describes the tutor position, possibly in a different +% language. % \Item[AdvisorName] gets the string that qualifies the supervisor(s); the default string % is ``Relatore:'' or ``Relatori:'' for the plural; in another language % this command is used to define the string, say, ``Supervisors:'' if the @@ -300,13 +330,13 @@ the TOPtesi bundle] % \Item[terzocandidato] gets the name of the third male author % \Item[terzacandidata] gets the name of the third female author; most often the thesis % author is just one person; but there are some institutions where group -% final works are accepted; it is assumed that the group does not contain -% more than three authors. The specification of the gender allows the -% software to determine the correct labeling phrase in the proper gender -% and proper number. +% final works are accepted; it is assumed that the group does not contain more +% than three authors. The specification of the gender allows the software +% to determine the correct labeling phrase in the proper gender and proper +% number. % For different languages there might be no difference in gender but % there is a difference in the plural ending. -% \Item[CandidateName] gets the string that describes the student status in a foreign +% \Item[CandidateName] gets the string that describes the student status in a foreign % language or even in Italian; the default string is ``Candidato:'' (with % colons) adjusted to masculine or feminine, singular or plural; with the % option \texttt{classica} the string becomes ``Laureando:''; in other @@ -342,73 +372,87 @@ the TOPtesi bundle] % after all the command |\annoaccademico| is defined only with that option. % \Item[logosede] specifies the name of the file that contains the university logo; % no default is defined; rather a warning message is issued if no name is -% given or the file is missing, but typesetting goes on without the -% inclusion of any logo. +% given or the file is missing, but typesetting goes on without the inclusion +% of any logo. % \Item[setbindingcorrection] sets up the length to displace the text block to the external -% margin so as to have a wider internal margin to accommodate for the -% binding correction. Its argument is not optional and is used to modify -% the default correction of 7\,mm. +% margin so as to have a wider internal margin to accommodate for the binding +% correction. Its argument is not optional and is used to modify the default +% correction of 7\,mm. % \end{description} % % Since the infix strings are all memorized into control sequences and for each of them it % is possible to use a defining command, all strings can be modified at will, so that there -% is no difficulty to localize the package in another language; this comes particularly -% handy for the Erasmus students on double degree programs. +% is no difficulty to localize the package in another language; this comes particularly handy +% for the Erasmus students on double degree programs. % % As a final remark notice that the commands for typesetting the title page are contained % in the package \texttt{topfront.sty}, which can be used as an autonomous extension to the -% \texttt{report} document class. One could easily typeset just the title page with a -% separate \TeX\ source file so as to test the completeness of the commands and coherence -% of the configuration file or for just printing the isolated title page. +% \texttt{report} document class. One could easily typeset just the title page with a separate +% \TeX\ source file so as to test the completeness of the commands and coherence of the +% configuration file or for just printing the isolated title page. % % \subsection{Typesetting commands} % The bundle and the TOPtesi document class accept all \LaTeX\ commands provided by % the \LaTeX\ \texttt{kernel}, the \texttt{report} document class, and the \texttt{graphicx} % extension package, besides those provided by the \texttt{babel} package. -% -% With this respect it must be underlined that the Italian and English languages are -% specified by default, the Italian one being the default language. An initial specification -% of |\selectlanguage{english}| sets the English language as default. Should a student -% typeset the thesis in French, it would be necessary to specify the option \texttt{french} -% among the \emph{class} options, and so start the document by specifying -% |\selectlanguage{french}|. +% If the source thesis file is being typeset by means of \XeLaTeX\ the \texttt{babel} +% package is not loaded; in its place the \texttt{polyglossia} package is loaded that +% should implement in \XeLaTeX\ most of the functionality provided by \texttt{babel} to +% \LaTeX. ``Most'' means that not all the functionality is available, therefore it's better +% to consult the documentation of \texttt{polyglossia} before using its built in commands. +% +% With this respect it must be underlined that the Italian and English languages are specified +% by default, the Italian one being the default language. An initial specification of +% |\selectlanguage{english}| sets the English language as default. Should a student typeset +% the thesis in French by means of \textsf{pdflatex}, it would be necessary to specify the +% option \texttt{french} among the +% \emph{class} options, and so start the document by specifying |\selectlanguage{french}|. % But the user should pay attention to use \texttt{babel} in the proper way: % \begin{itemize} % \item Due to the way \LaTeX\ classes load the requested files, and to the fact that the % \texttt{babel} package has already been loaded by the \texttt{toptesi} class, the user % cannot reload it with a different list of language options; therefore the latter language -% options \emph{must be specified} as global class options; if the thesis has -% to be typeset, fore example, in French, is is necessary to do the following: +% options \emph{must be specified} as global class options; therefore, if the thesis has +% to be typeset, for example, in French, is is necessary to do the following: %\begin{verbatim} %\documentclass[...,french,...]{toptesi} %... %\begin{document} %\selectlanguage{french} %\end{verbatim} -% \item With the 2010 \TeX\ complete system distributions, both \TeX Live and MiKTeX, all -% known (to \LaTeX) language hyphenation rules are preloaded; with other less up to date -% \TeX\ system distributions this might not be true; this might not be true also with some -% Debian distributions of the \TeX\ system. -% Remember that \texttt{babel} macros select the language typesetting rules, but hyphenation -% is activated only if the program format file has been generated with the pertinent -% language hyphenation rules. You can check this detail by reading the first dozen lines -% of your thesis \texttt{.log} file; there is the list of all language hyphenation rules -% that are available in the format file. -% While (American) English is the default and almost any distribution of the \TeX\ system -% has many language defaults, it is more likely that French is preloaded while Italian is -% not. -% -% Should the required language(s) be missing, the user is forced to read his/her -% distribution instructions, so as to find out how to configure his/her system so as to -% consider the languages s/he wants to work with, and finally s/he must recreate the format -% files and put them in the proper places of the standard or the local folder tree. The user -% is invited to carefully investigate on these fine points and to configure the system -% properly; it would be very upsetting using fine software for producing a perfectly typeset -% thesis that, unfortunately, has wrong hyphenation points! Luckily enough, recent -% distributions of the \TeX\ system have all the known hyphenation rules preloaded; in any -% case even older distributions have available command line commands or graphical user -% interfaces that make it easy to perform the tasks of changing the list of preloaded -% hyphenation rules and rebuilding all the format files, moving them to the proper places. +% But if the thesis should be typeset in Frenche by means of \XeLaTeX, then it is perfectly +% legal to specify the auxiliary language in this way: +%\begin{verbatim} +%\documentclass[...]{toptesi} +%\setotherlanguage{french} +%... +%\begin{document} +%\selectlanguage{french} +%\end{verbatim} +% \item With the 2010 \TeX\ system distributions, both \TeX Live and MiKTeX, all known +% (to \LaTeX) language hyphenation rules are preloaded; with other less up to date +% \TeX\ system distributions this might not be true. With both distributions also the +% languages hyphenation rules known to \XeLaTeX\ are all preloaded. +% Remember that \texttt{babel} and \texttt{polyglossia} macros select the language +% typesetting rules, but hyphenation is activated only if the program format file has been +% generated with the pertinent language hyphenation rules. You can check this detail by +% reading the first dozen lines of your thesis \texttt{.log} file; there is the list of all +% language hyphenation rules that are available in the format file. +% While (American) English is the default and almost any \emph{basic} distribution of the \TeX\ +% system has many language defaults, it is more likely that French is preloaded while Italian is +% not. Complete distributions don't exhibit this flaw. +% +% Should the required language(s) be missing, the user is forced to read his/her distribution +% instructions, so as to find out how to configure his/her system so as to consider the +% languages s/he wants to work with, and finally s/he must recreate the format files and put +% them in the proper places of the standard or the local folder tree. The user is invited to +% carefully investigate on these fine points and to configure the system very properly; +% it would be very upsetting to use fine software for producing a perfectly typeset thesis +% that, unfortunately, has wrong hyphenation points! Luckily enough, recent distributions +% of the \TeX\ system have all the known hyphenation rules preloaded; in any case even older +% distributions have available command line commands or graphical user interfaces that make +% it easy to perform the tasks of changing the list of preloaded hyphenation rules and +% rebuilding all the format files, moving them to the proper places. % \end{itemize} % % The TOPtesi bundle adds very little to the user commands; nevertheless the package @@ -419,7 +463,9 @@ the TOPtesi bundle] % your thesis is written in different languages it may happen that such commands are not % available any more when you select another language; with the presence of the definitions % contained in \texttt{topcoman.sty} such useful commands remain available with every -% language. +% language. The \texttt{polyglossia} package does not produce any useful additional command +% for writing in a ISO compliant way, therefore the macros contained in the +% \texttt{topcoman.sty} package come very handy. % % The following description specifies these particular commands. % \begin{description} @@ -427,7 +473,9 @@ the TOPtesi bundle] % \Item[DeclareSlantedCapitalGreekLetters] does exactly what its name % means: it changes the definitions of the mathematical capital Greek % letters so that they are typeset in ``italics''; they are in effects taken from the math -% italic alphabet, instead of the default roman one. +% italic alphabet, instead of the default roman one. This option is useful with \LaTeX, +% while with \XeLaTeX\ it is unnecessary due to the larger set of math alphabets and math +% font commands that are available with proper UNICODE math fonts. % % % \Item[ensuremath] should be already defined in the \LaTeX\ kernel; % should one still be using an obsolete version, this command gets @@ -444,29 +492,29 @@ the TOPtesi bundle] % information on something that is not variable. This means that $V_i$ % requires an italic index to imply that the object $V$ is the $i$-th in % a set, while, say, $V_{\mathrm{max}}$ indicates the maximum value of the -% variable $V$. This command may be used in both math and text mode. +% variable $V$. This command may be used both in math and in text mode. % % -% \Item[ap] similarly |\ap| inserts an apex in upright type, in both math -% and text mode. +% \Item[ap] similarly |\ap| inserts an apex in upright type, both in math +% and in text mode. % % % \Item[unit] sets the unit of measure close to the numerical measure by -% insetting a non breakable thin space and by setting the units of -% measure in upright type; this works in both math and text mode. Of +% inserting a non breakable thin space and by setting the units of +% measure in upright type; this works both in math and text mode. Of % course it is necessary to input the |\unit| command without intervening % spaces in the source file; it's necessary to typeset, say, % |35\unit{km}| and to avoid to input \verb*+35 \unit{km}+. This command, % as it is defined, conflicts with the definition of the homonymous -% command |\unit| as defined by the \texttt{units} package, but since +% command |\unit| as defined by the \texttt{unitsx} package, but since % this latter package is necessarily input \emph{after} % \texttt{topcomand.sty} is read, the last definition is the one in -% force, therefore if one wishes to use the \texttt{units} package s/he +% force, therefore if one wishes to use the \texttt{unitsx} package s/he % should not encounter any inconsistencies. % % % \Item[micro] sets the decimal prefix $\mu$ in typesetting units of % measure. % % -% \Item[gradi] sets the small circle that defines the sexagesimal -% degrees; it may be used also for the celsius degrees by writing in the +% \Item[gradi] sets the small circle that defines the sexagesimal degrees, for +% example $35^\circ$; it may be used also for the celsius degrees by writing in the % source file, say, |35\unit{\gradi C}| in order to get % $35\,^\circ\mathrm{C}$. % % @@ -476,28 +524,37 @@ the TOPtesi bundle] % nowadays the letter ``j'' in Italian is called with the English name % (much shorter than the traditional Italian name ``i~lunga'') and the % indicated spelling ``gei'' is the phonetic Italian rendering of the -% English word. The imaginary unit is not a variable, it may be viewed as a vector operator, -% so that the ISO regulations require for this symbol an upright type. +% English word. The imaginary unit is not a variable, and the ISO regulations +% require it is typed with anxx upright serifed font, just as operators are. % % % \Item[eu] inserts the Euler number symbol ``e'' in upright type; since % this entity is not a variable, but it is a mathematical constant, the % ISO regulations require it to be written in upright type. The ISO regulations require % the upright type for ``e'' and any mathematical constant, but -% the electron charge $e$ is typeset in math italics because this is a physical -% ``constant'', not a mathematical one. +% the electron charge $e$ is typeset in math italics because this physical +% ``constant'', not a mathematical one. \XeTeX\ allows to typeset upright Greek letters, +% so there is the facility to typeset an upright ``pi'' (the number) to be distinguished +% from an inclined ''pi'' (the angle). % % % \Item[listing] requires for its argument the name of a file and typesets it in verbatim % mode; this command is very useful for typesetting the listings of the programs that were % written for the thesis; for best results it is recommended that the source program has % lines not longer than 80 characters. There exists an external package \texttt{listings}, % that the user might want to load, that does a similar work in a more professional and -% configurable way; this package simpler command might be preferable for its simplicity. +% configurable way; this package simpler command might be preferable for its simplicity, +% but of course it is not compulsory. % \end{description} % % All these commands are defined into the separate package \texttt{topcoman.sty} % that can be used as an independent extension package with (possibly) any document class. % -% \section{PDF format suitable for archiving} +% \section{Format PDF suitable for archiving} +% This section in general does not apply if the thesis is typeset by means of \XeLaTeX, +% because the typesetting engine in this case cannot directly produce a PDF formatted output +% file. For this reason the option \texttt{pdfa}, that shall be described shortly, should +% not specified to the class |toptesi|; at the same time if this option is specified, but +% the thesis is typeset by means of \XeLaTeX, the effects of this options are be disabled. +% % Politecnico di Torino as well as many other Italian and foreign universities are % moving towards archiving theses in electronic format, specifically in the PDF one. The % problem of course is: ``Will it be possible to read the archived documents, say, fifty @@ -506,7 +563,7 @@ the TOPtesi bundle] % This essential question has been answered by the International Standards Organization % (ISO) that in 2005 published the regulation ISO~19005-1. This regulation defines a % PDF variant suitable for archiving, named PDF/A, that has two sub-formats -% distinguished as PDF/A-1a, and PDF/a-1b. The `a' sub-format is more exacting, while +% distinguished as PDF/A-1a, and PDF/A-1b. The `a' sub-format is more exacting, while % the `b' one is less stringent. % % The requirements for the `a' sub-format imply not only those imposed on the `b' one, @@ -517,38 +574,38 @@ the TOPtesi bundle] % without decompressing the normally compressed PDF file, and that contain information % useful for archive maintenance; among these informations, of course, the PDF/A % category the document belongs to, the document title, the authors, and few other -% optional information, such as the keywords that ease up the library search. +% optional information, such as the keywords that ease up library searches. % -% Since version 1.40, the program \texttt{pdflatex}, possibly with the addition of -% some patches, is capable of producing PDF/A-1b conforming files, provided that some -% attention is put into the manipulation of the source file of the thesis. With the -% distribution of the 2008 version of the \TeX\ system, the executable \texttt{pdflatex} -% has version number 1.40.9 and should be capable of producing PDF/A-1b files without -% the need of any patch. +% Since version 1.40, the program \texttt{pdflatex} is capable of producing PDF/A-1b +% conforming files, provided that some attention is put into the manipulation of the source +% file of the thesis. With the distribution of the 2008 version of the \TeX\ system, the +% executable \texttt{pdflatex} has version number 1.40.9 and is capable of producing +% PDF/A-1b files. % % The particular attention needed to avoid problems with the PDF/A certification is % summarized as follows: % \begin{itemize} -% \item The preliminary essential requirement is that the \texttt{pdflatex} used to +% \item The preliminary essential requirement is that the \texttt{pdflatex} engine used to % typeset the thesis be sufficiently recent to support the PDF/A requirements. It's % better to have the most recent distribution of the \TeX\ system installed on your PC. -% Do not try to typeset the thesis -% with the `old' \LaTeX; you \emph{must} process the input thesis file(s) with -% \texttt{pdflatex}; in the following, no specific check will be made in order -% to verify if you are actually using \texttt{pdflatex}. -% If you really need to use the `old' \LaTeX, you get a DVI +% Do not try to typeset the thesis with the `old' \LaTeX; you \emph{must} process the input +% thesis file(s) with \texttt{pdflatex} or with \prog{xelatex}; in the following, no +% specific check will be made in order to verify if you are actually using +% \texttt{pdflatex}. If you really need to use the `old' \LaTeX, you get a DVI % file and you need to transform it with |dvips| into a PS file; at this point you % have lost the possibility of exploiting the internal commands of |pdflatex| version % 1.40.9 or later. You can still produce a PDF/A final document, but you have to -% transform it with |ghostscript|; read the |ghostscript| (version 8.61 or later) +% transform it by means of |ghostscript|; read the |ghostscript| (version 8.61 or later) % documentation file |ps2pdf.html| in order to find out how to produce the correct PS -% to PDF/A transformation. - +% to PDF/A transformation. A procedure similar to this one is available when the +% thesis is typeset by means of \XeLaTeX, and produces valid results provided some +% caution is exercised when using fonts. +% % \item Download from \textsc{ctan} and install the package \textsf{pdfx}, if it is -% not already part of your \TeX\ system installation. +% not already part of your \TeX\ system complete distribution. % \item Install in the main \texttt{pdfx} directory a good version of a color model -% profile file, such as, for example, \texttt{ECI-RGB-V1.0.icc} (see in the download -% page of the web site \texttt{www.eci.org}). +% profile file, such as, for example, \texttt{ECI-RGB-V1.0.icc} (see the download +% page of the site \texttt{www.eci.org}). % \item If your thesis main file, the one you run your \texttt{pdflatex} on, is named, % say, \texttt{JohnSmithMasterThesis.tex}, prepare in the same directory another file % named \texttt{JohnSmithMasterThesis.xmpdata} that contains the \emph{metadata} @@ -563,9 +620,11 @@ the TOPtesi bundle] % documentation. % \item Some mathematical symbol commands obtained from the standard \LaTeX\ set-up % and the standard mathematical fonts require some patching that is already included -% in this \texttt{ToPtesi} bundle; but it is not excluded that with other fonts similar -% patches might be requested. -% \item Use only PNG and JPEG or PDF images with RGB color profiles. +% in this \texttt{TOPtesi} bundle; but it is not excluded that with other fonts similar +% patches might be requested. The UNICODE math fonts used by \XeLaTeX\ do not require any +% patch, but unfortunately its PDF byproduct is not PDF/A compliant (it must be converted +% by means of \prog{ghostscript}). +% \item Use only PNG and JPEG images with RGB color profiles. % \item If you include PDF images that contain some text, be sure that the font for % this text is completely embedded in the included file. Should the PDF file come % from an external drawing program be sure to configure that program so that it embeds @@ -575,33 +634,50 @@ the TOPtesi bundle] % conformity. % \item Verify your final PDF file with a suitable program and do not give up doing the % necessary corrections or modifications while the verification program keeps saying -% that this or that is not conforming to the PDF/A specification. A suitable program +% the this or that is not conforming to the PDF/A specification. A suitable program % is the Preflight plug-in of Adobe Acrobat Professional version 8 or later, but this, % although the most authoritative, is a commercial program; probably your university % has special facilities for this task. +% \item If you use \prog{xelatex} for typesetting your thesis, you have to accompany your +% master file with another one that contains the metadata and othe necessary information. +% Be sure to call this auxiliary file as the masterfile name glued with |-def.ps|; so if +% your mastefile is named \texttt{JohnSmithMasterThesis.tex}, name this auxiliary file as +% \texttt{JohnSmithMasterThesis-def.ps} and fill in the necessary metadata and other +% thechnical information into this file in the line marked with |% Customize|. Then run +% the \prog{ghostscript} program with the proper name (different for Windows or UNIX-like +% platforms) with the proper input parameters and options. There are strong chances that +% if you follow the general recommendations shown here and in the document +% |toptesi-doc-xetex.pdf| file, the output file will be PDF/A compliant. %\end{itemize} % -% Up to day the realization of a PDF/A conforming file sets forth several problems +% Let's issue a warning: if you are using Adobe Reader X (or later), this program will open +% a PDF file beginning with an information header claiming that the file is PDF/A +% compliant; maybe it's true, but do not trust this information too much, at least don't +% believe that this information is a ``certification'' of the PDF/A compliance. I have seen +% files with this comforting information that did not pass the Preflight test! +% +% Up to today the realization of PDF/A conforming files sets forth several problems % that are of great concern for the large Institutions that have thousands of document -% a year to archive; it is not a question implied in the free nature of the -% \texttt{pdflatex} program, that, on the opposite, according to my experience has -% a very high rate of success in producing PDF/A conforming documents. If you stick to -% the default \TeX\ system fonts and use this patched version of \texttt{ToPtesi} you -% should be able to avoid most problems. +% a year to archive; it is not a question implied in the free nature of the \prog{pdflatex} +% and \prog{xelatex} programs, that, on the opposite, according to my experience have +% a very high rate of success in producing PDF/A compliant documents. If you stick to +% the default \TeX\ system Type~1 256-glyph, or to the UNICODE encoded otf or ttf fonts +% and use this patched version of \texttt{TOPtesi} you should be able to avoid most +% problems. % % \StopEventually{} ^^A qui si puo' mettere una bibliografia % % \section{Documented code} % \subsection{The class code} % -% Here begins the usual machinery for stating the required \TeX\ format and for sharing some -% code between the driver and the class part of the code, since they are +% Here begins the usual machinery for stating the required \TeX\ format +% and for sharing some code between the driver and the class part of the code, since they are % supposed to carry the same date and version number, besides the description string. % \begin{macrocode} %<*class> \NeedsTeXFormat{LaTeX2e} \ProvidesClass{toptesi}% -[2011/05/25 v.5.50 Class for typesetting university theses] +[2011/08/09 v.5.59 Class for typesetting university theses] % \end{macrocode} % % The class itself is very simple since it requires just the \texttt{report} @@ -609,21 +685,28 @@ the TOPtesi bundle] % 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} +% 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.}. +% 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 to the \texttt{babel} package default options +% options, this language would be appended yo the \texttt{babel} package default options % and would become the default language. % \begin{macrocode} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}} \ProcessOptions\relax -% \LoadClass[a4paper]{report} -\RequirePackage[english,italian]{babel} +\RequirePackage{ifxetex} +\ifxetex + \RequirePackage{fontspec} + \RequirePackage{polyglossia} + \setmainlanguage{italian} + \setotherlanguage{english} + \renewcommand*{\iflanguage}[1]{\ifnum\the\language=\csname l@#1\endcsname + \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi} +\else + \RequirePackage[english,italian]{babel} +\fi \RequirePackage{toptesi} % % @@ -632,28 +715,28 @@ the TOPtesi bundle] % The greatest part of the \texttt{toptesi} class code is saved into a separate file % partly for backward compatibility reasons (before version 3.x \texttt{toptesi} was just % an extension to the \texttt{report} class) and partly because it might be used as a -% standalone package, although, take notice, it might conflict with the \texttt{book} class +% stand aolone package, although, take notice, it might conflict with the \texttt{book} class % code and certainly it is incompatible with the \texttt{article} class. This package must % contain its own \TeX\ format declaration and might have different version and subversion -% numbers compared to the class file and the other invoked packages that are part of the -% same bundle. +% numbers compared to the class file and the other invoked packages that are part of the same +% bundle. % % \begin{macrocode} %<*topsty> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{toptesi}% -[2011/05/25 v.5.50 Extension for toptesi.cls]% +[2011/08/09 v.5.59 Extension for toptesi.cls]% % \end{macrocode} % -% We start by defining the debugging macros; these trace commands and macros -% and are the usual ones I use for debugging. I know the \texttt{trace} package is supposed +% We start with defining the debugging macros; these trace commands and macros +% are the usual ones I use for debugging. I know the \texttt{trace} package is supposed % to be much better, but I am used to these ones. % \begin{macrocode} \def\TRON{\tracingcommands \tw@ \tracingmacros \tw@} \def\TROFF{\tracingcommands\z@ \tracingmacros \z@} \let\TROF\TROFF % \end{macrocode} -% Now we define the specific package options: \texttt{classica} and \texttt{trieste} +% 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 @@ -663,6 +746,7 @@ the TOPtesi bundle] % is missing. % % \texttt{chapterbib} allows to set a list of references at the end of each chapter. +% % For the options specific to the \texttt{classica} style a couple of boolean variables are % defined and the option definitions set them to the value ``true''. % \begin{macrocode} @@ -672,7 +756,8 @@ the TOPtesi bundle] % \end{macrocode} % % \begin{macrocode} -\newlength\T@Pbinding\setlength\T@Pbinding{7mm}\def\setbindingcorrection#1{\T@Pbinding=#1} +\newlength\T@Pbinding\setlength\T@Pbinding{7mm} +\def\setbindingcorrection#1{\T@Pbinding=#1} \newif\if@binding \@bindingfalse \newif\ifT@Ppdfa \T@Ppdfafalse \newif\ifchapterbibliography \chapterbibliographyfalse @@ -745,7 +830,7 @@ the TOPtesi bundle] \fi} % \end{macrocode} % -% We now establish the page style. We start by setting to ``empty'' the tokens that +% We now establish the page style. We start by setting to ``empy'' the tokens that % keep the left and the right marks; we define a box so as to set the headers % inside this box; we redefine also the plain page styles; it is actually a leftover % from the previous versions when the page number was set at the foot in bold face, @@ -761,7 +846,7 @@ the TOPtesi bundle] \newbox\@intesta % \def\ps@plain{\let\@mkboth\@gobbletwo -\def\@oddfoot{\null\hfill \textsc{\lapagina}\hfill \null}\def\@oddhead{} +\def\@oddfoot{\null\hfill {\scshape\lapagina}\hfill \null}\def\@oddhead{} \def\@evenhead{}\let\@evenfoot\@oddfoot} % \end{macrocode} % Other page styles are defined in a different way according to the choice of @@ -772,7 +857,7 @@ the TOPtesi bundle] % \begin{macrocode} \if@twoside \def\ps@headings{\let\@mkboth\markboth% - \def\@oddfoot{\null\hfill \textsc{\lapagina} \hfill\null} + \def\@oddfoot{\null\hfill {\scshape\lapagina} \hfill\null} \let\@evenfoot\@oddfoot % \def\@evenhead{\setbox\@intesta\hbox{\footnotesize\slshape @@ -790,7 +875,7 @@ the TOPtesi bundle] \thesection\ -- \fi ##1}}} \else \def\ps@headings{\let\@mkboth\markboth - \def\@oddfoot{\null \hfill \textsc{\lapagina} \hfill \null} + \def\@oddfoot{\null\hfill {\scshape\lapagina} \hfill\null} \def\@evenfoot{} \def\@oddhead{\setbox\@intesta\hbox{\footnotesize\slshape \rightmark}% @@ -799,18 +884,38 @@ the TOPtesi bundle] \strut\rightmark}}}% \def\chaptermark##1{\markright{\thechapter\ -- ##1}}} \fi -% + \def\headWarn#1{\PackageWarning{toptesi}{% THE HEADING IS TOO LONG\MessageBreak Use the optional argument of command \string#1\MessageBreak See the LaTeX Handbook (1994) on section C.4.1\MessageBreak}} % \end{macrocode} -% The various tables of contents or figures or tables require some boolean variables to be -% defined; in facts, although the ISO regulations require that every technical report -% contains the list of figures and/or tables, in Italy theses rarely contain these lists; -% after all: is a thesis a technical report? We require also some other boolean variables to -% handle the difference between front matter and main matter; this differences are already -% defined in the \texttt{book} document class, but not in the \texttt{report} one. +% Bisogna ridefinre anche il modo di inserire nell'indice i capitoli non numerati con le pagine in +% numeri romani maiuscoletti +% \begin{macrocode} +\renewcommand*\l@chapter[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 1.0em \@plus\p@ + \setlength\@tempdima{1.5em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak + \hb@xt@\@pnumwidth{\hss\unless\ifxetex\normalfont\fi\scshape{#2}}\par + \penalty\@highpenalty + \endgroup + \fi} +% \end{macrocode} +% The various tables of contents or figures or tables require some boolean variables to +% be defined; in facts, although the ISO regulations require that every technical report contains +% the list of figures and/or tables, in Italy theses rarely contain these lists; after all: is +% a thesis a technical report? We require also some other boolean variables to handle +% the difference between front matter and main matter; this differences are already defined +% in the \texttt{book} document class, but not in the \texttt{report} one. % \begin{macrocode} \newif\iffigurespage \newif\iftablespage @@ -828,8 +933,8 @@ the TOPtesi bundle] \AtBeginDocument{\frontmatter} % \end{macrocode} % The main matter is automatically established with the first |\chapter| command issued by -% the user; this means that every command that starts a section at the ``chapter'' level -% within the front matter must be executed without an explicit call to |\chapter|. +% the user; this means that every command that starts a section at the ``chapter'' level within +% the front matter must be executed without an explicit call to |\chapter|. % % By default we set to false the boolean variables that control the typesetting of the % list of figures and the list of tables. @@ -967,15 +1072,15 @@ the TOPtesi bundle] \brokenpenalty=10000 % \end{macrocode} % -% Here comes a questionable command and/or environment; good typesetting requires the -% baseline skip to be proportioned to the font size, generally it is some 10--20\% larger -% than the font size. In some reasonable instances a wider or a narrower baseline skip +% Here comes a questionable command and/or environment; good typesetting +% requires the baseline skip to be proportioned to the font size, generally it is some 10--20\% +% larger than the font size. In some reasonable instances a largeer or a smaller baseline skip % might be required; the \LaTeX\ kernel allows to use the |\linespread| command; % in the previous versions of this bundle a command |\interlinea| and an environment -% \texttt{interlinea} were defined so as to allow to set the line spread factor. +% \texttt{interlinea} were defined so as to allow setting the line spread factor. % The experience has shown that students tend to use this command so as to typeset a poor -% and thin thesis on more pages. Well, every instrument can be judiciously or maliciously -% used; this is one of those double sided instruments. +% and thin thesis on more pages. Well, every instrument can be judiciously or maliciously used; +% this is one of those double sided instruments. % \begin{macrocode} \def\interlinea#1{\linespread{#1}\selectfont} \def\endinterlinea{\par} @@ -991,17 +1096,16 @@ the TOPtesi bundle] \@setminipage } % \end{macrocode} -% Since we are at it we define the floating bodies placing parameters; not only the values -% ``here'', ``top of the page'' and ``bottom of the page'', that we set as default ones -% leaving to the user to explicitly specify the ``page of floats'', but also the numerical -% and geometrical parameters that control the float placements. -% These geometrical parameters are critical and everybody has his/her own ideas of what are -% the best values for them. According to my experience these parameters work quite well +% Since we are at it we define the floating bodies placing parameters; not only the +% values ``here'', ``top of the page'' and ``bottom of the page'', that we set as default ones +% leaving to the user to explicitly specify the ``page of floats'', but also the numerical and +% geometrical parameters that control the float placements. +% These geometrical parameters are critical and everybody has his/her own ideas of +% what are the best values for them. According to my experience these parameters work quite well % but I would not suggest them for every kind of typewritten document. -% In particular the zero value for the text fraction appears strange, but students have -% the tendency to create large figures (more than large tables) and these tend to clog the -% figure queue. -% A 100\% space for the top of page figures and a requirement of 0\% text allows large +% In particular the zero value for the text fraction appears strange, but students have the +% tendency to create large figures (more than large tables) and these tend to clog the figure +% queue. A 100\% space for the top of page figures and a requirement of 0\% text allows large % floats to exit the queue provided they do not exceed the text height. % \begin{macrocode} \def\fps@figure{htb} \def\fps@table{htb} @@ -1017,24 +1121,25 @@ the TOPtesi bundle] \def\dbltopfraction{1} \def\dblfloatpagefraction{0} % \end{macrocode} -%I don't like too much the default definition of the |\caption| command; actually -% it is the internal |\@makecaption| macro that performs the job i don't like. The -% point is that I prefer a narrower justified caption rather than a caption where the last -% line is just a short word or the right segment of an hyphenated word. If one sets the +% One command that the default definition does not satisfy me very much is the |\caption| +% command; actually it is the internal |\@makecaption| macro that performs the job. The point +% is that I prefer a narrower justified caption rather than a caption where the last line is just +% a short word or the right segment of an hyphenated word. If one sets the % |\finalhyphendemerits| counter to an incredibly high value, one might succeed % in avoiding hyphenation in the last word of a caption; but this might lead % to a very loose typesetting of the caption paragraph, especially -% if the horizontal box that contains it hardly exceeds the caption width. I initially set -% the caption width (a new length) to the overall text width diminished by 3em; +% if the horizontal box that contains it hardly exceeds the caption width. +% I initially set the caption width (a new length) to the overall text width diminished by 3em; % then if the caption text, inclusive of the caption type string and number, is shorter than -% the text width it is typeset as centered text; if it exceeds the text width it is set as a -% justified paragraph whose line width equals the established caption width; but in any case -% the last line of the paragraph is measured and if it is shorter than one third of the -% caption width, this latter width is shortened a little bit and the paragraph is set again +% the text width it is typeset as centered text; if it exceeds the text width +% it is set as a justified paragraph whose line width equals the established caption width; +% but in any case the last line of the paragraph is measured and if it is shorter than one third +% of the caption width, this width is shortened a little bit and the paragraph is set again % with this shortened caption width; in order to be sure that one iteration is % sufficient, the shrinking of the caption width must be computed according to % the number of lines the paragraph occupies. -% In order to count the number of lines the caption paragraph occupies, it is +% +% In order to count the number of lines the caption paragraph occupies it is % necessary to recall that the first line occupies a vertical space that equals % |\topskip| while the other lines occupy a vertical space equal to % |\baselineskip|; the latter one is generally larger than |\topskip| therefore @@ -1049,7 +1154,7 @@ the TOPtesi bundle] % and we must remember the presence of this line in our arithmetics. % If the length of the stripped last line is longer that one third of the % caption width, then the vertical box is recomposed by restacking the -% individual lines; on the opposite, if this last line is shorter than one third of the +% individual lines, but if this last line is shorter than one third of the % caption width, this width is recomputed in this way: let $N-1$ be the number % of lines obtained with the integer division, i.e.\ one line less than those % actually contained in the vertical box. Let $x$ be the initial caption @@ -1062,7 +1167,7 @@ the TOPtesi bundle] % space, some words might have been hyphenated in a different way, and so on. % Moreover we do not want a caption that barely exceeds the length of % |\captionwidth| to be retyped into a two line caption width that is about one half -% the width of the other captions. Therefore we allow for some white space in +% of the width of the other captions. Therefore we allow for some white space in % the last line by computing the new caption width with the following formula % \[ y=\frac{(N+0.5)x + x_2}{N+1} \] % \begin{macrocode} @@ -1163,11 +1268,9 @@ the TOPtesi bundle] % must be typeset, such as, for example, $\forall i=0,\,1,\,2,\,3, n$, in the source code % a space \emph{must} be inserted after every punctuating comma while no space follows a % decimal comma: for example \verb*+$\forall i=0, 1, 2, 3,n$+. The space before the |n| is -% not necessary (but it wouldn't hurt) beecause |n| is not recognized as a digit, therefore +% not necessary (but it wouldn't hurt) because |n| is not recognized as a digit, therefore % the ``intelligent'' comma inserts the necessary space by itself. % -% |\topmargin| set to 0pt simply means that the real top margin is 25.4mm, i.e.\ one -% inch, since the output offset is one inch by default. % \begin{macrocode} \DeclareMathSymbol{\virgola}{\mathpunct}{letters}{"3B} \DeclareMathSymbol{\virgoladecimale}{\mathord}{letters}{"3B} @@ -1187,14 +1290,14 @@ the TOPtesi bundle] % that start these sections depend on the used language. % % Because of this it is necessary to extend the list of infix string definitions provided -% the |\captions|$\langle$\texttt{language}$\rangle$ macros defined by the language -% description files of \texttt{babel}; for this purpose we define a macro for adding new -% items for these two new sectioning commands. This macro receives three arguments: the -% first is the babel language name, the second is the string for the summary name, and -% finally the third is the string for the acknowledgements name; everything is contained -% within a group and only the relevant captions macro is globally redefined. The token -% register `0' is normally for scratch usage, but the fact that its value is restored upon -% exiting the group provides the necessary protection against an involuntary reassignment +% the |\captions|$\langle$\texttt{language}$\rangle$ macros defined by the language description +% files of \texttt{babel} or of \texttt{polyglossia}; for this purpose we define a macro for +% adding new items for these two new sectioning commands. This macro receives three arguments: +% the first is the babel language name, the second is the string for the summary name, and +% finally the third is the string for the acknowledgements name; everything is contained within +% a group and only the relevant captions macro is globally redefined. The token register `0' is +% normally for scratch usage, but the fact that its value is restored upon exiting the +% group provides the necessary protection against an involuntary reassignment % to this register. At the same time if a specific language option was not % specified, a warning message is issued, but compilations goes on any way % without the sectioning string names. For being sure no other undefined error @@ -1216,7 +1319,7 @@ Skipping any redefinition\MessageBreak}% }}}% % \end{macrocode} % For Italian and English there are no problems; we provide immediately these extensions -% by means of the newly available macros: +% by means of the newly available macro: % \begin{macrocode} \ExtendCaptions{italian}{Sommario}{Ringraziamenti} \ExtendCaptions{english}{Summary}{Acknowledgements} @@ -1225,8 +1328,8 @@ Skipping any redefinition\MessageBreak}% % default; therefore both caption macros |\captionsitalian| and |\captionsenglish| are % already defined and can be freely extended. For any other language the corresponding % language option must be entered in the class opening statement, otherwise a warning -% is issued but compilation is not stopped. Therefore if, for example, the user wants to -% write the thesis in Spanish, the thesis main file shall start like this: +% is issued but compilation is not stopped. Therefore if, for example, the user wants to write +% the thesis in Spanish, the thesis main file shall start like this: % \begin{verbatim} % \documentclass[...,spanish]{toptesi} % \ExtendCaptions{spanish}{Resumen}{Agradecimientos} @@ -1258,11 +1361,15 @@ Skipping any redefinition\MessageBreak}% % following: % \begin{itemize} % \item specify |\english| \emph{after} the |\begin{document}| statement, if English is -% supposed to be the default language, or -% \item specify the language name, other than Italian or English, among the class options; -% use the |\ExtendCaptions| macro for extending the list of sectioning commands infix -% strings as explained above; specify with |\selectlanguage| the new language as the default -% one \emph{after} the |\begin{document}| statement. +% supposed to be the default language, or +% \item specify the language name, other than Italian or English, among the class options; use +% the |\ExtendCaptions| macro for extending the list of sectioning commands infix strings +% as explained above; specify with |\selectlanguage| the new language as the default one +% \emph{after} the |\begin{document}| statement. +% \item If XeLaTeX is being used for typesetting it suffixes to specify in the preamble the name +% of the other language to be used, by means of the |setotherlanguage| command, and to define the +% summary and acknowledgments names in the same way as with pdf\/\LaTeX; the same must be done at +% the beginning of the document to declare the new language a the default one. % \end{itemize} % \begin{macrocode} \AtBeginDocument{% @@ -1272,10 +1379,86 @@ Skipping any redefinition\MessageBreak}% % \end{macrocode} % % At last the subsidiary and independent packages \texttt{topcoman} and \texttt{topfront} -% are requested for input and file input is explicitly ended. +% are requested for input. For using XeLaTeX as the typesetting engine it's necessary to load such packages at the ``begin document'' step, so that all a the other settings, especially fonts are already established. May be it should be better done also when using pdf\/\LaTeX\ as the typesetting engine, but the past experience has not shown any inconvenience. +% \begin{macrocode} +\ifxetex + \AtBeginDocument{\RequirePackage{topfront} + \RequirePackage{topcoman}} +\else + \RequirePackage{topfront} + \RequirePackage{topcoman} +\fi +\def\sf@size{7} +% \end{macrocode} +% +% Last but not least, here come the specifications for the PDF/A-1b format. First of +% all the patches to the macros |\not| and |\mapstochar| that produce problems with +% the format, because they have a declared width of 0\,pt; this is no problem for +% \texttt{latex} or \texttt{pdflatex}, but it is a problem for the PDF/A format. +% Therefore these commands must be replaced by equivalent ones that do not use zero-width +% glyps. For |\not|, another slash can be used, but in order to have it the right size +% in all math typesetting modes it is necessary to have a different command for +% every mode; this is achieved with the |\mathchoice| primitive as such: +% \begin{macrocode} +\ifxetex\else +\renewcommand*\not{\mathrel{\mathchoice% + {\rlap{$\displaystyle\mkern2.5mu\mathnormal{/}$}}% + {\rlap{$\textstyle\mkern2.5mu\mathnormal{/}$}}% + {\rlap{$\scriptstyle\mkern2.5mu\mathnormal{/}$}}% + {\rlap{$\scriptscriptstyle\mkern2.5mu\mathnormal{/}$}}% +}} +% \end{macrocode} +% Actually the zero-width property of the slash must be simulated with a zero-width box +% but within this box it is necessary to specify the typesetting style of the math +% mode material. +% +% A similar trick is used to patch the |\mapstochar| command but no other glyph was +% found suitable for substituting the original one; therefore we had to make it up +% with the |picture| environment: +% \begin{macrocode} +\renewcommand\mapstochar{\mathrel{\mathchoice +{\displaystyle\unitlength=0.0555\fontdimen6\font + \picture(0,0)\put(1,1.5){\linethickness{0.72\unitlength}% + \line(0,1){6}}\endpicture} +{\textstyle\unitlength=0.0555\fontdimen6\font + \picture(0,0)\put(1,1.5){\linethickness{0.72\unitlength}% + \line(0,1){6}}\endpicture} +{\scriptstyle\unitlength=0.0555\fontdimen6\font + \picture(0,0)\put(1,0.55){\linethickness{0.61\unitlength}% + \line(0,1){5}}\endpicture} +{\scriptscriptstyle\unitlength=0.0555\fontdimen6\font + \picture(0,0)\put(1,0.2){\linethickness{0.56\unitlength}% + \line(0,1){4}}\endpicture} +}}\fi +% \end{macrocode} +% The above patches are introduced irrespective of using \texttt{pdflatex} for producing +% a PDF/A compliant file; one might need to produce a traditional PDF file, or even a +% DVI file, to be converted to the PS format, in order to possibly further transform +% it to PDF/A by means of \texttt{ghostscript} (see the details in the +% \texttt{ps2pdf.html} file belonging to the \texttt{ghostscript} documentationx). The +% patches are avoided if XeLaTeX is being used with the UNICODE math definitions. +% +% Finally, if the class option |pdfa| was specified, we load the |pdfx.sty| file +% with the suitable option for typesetting a (hopefully) PDF/A conforming file. +% We must remember that |pdfx.sty| on turn loads +% the |hyperref.sty| file with the necessary |pdfa| option. The user, therefore does +% not need to reload that package, but is free to configure it through the +% |\hypersetup| command arguments right at the beginning of the thesis main file. +% +% Nevertheless if \XeLaTeX\ is being used to typeset the document, loading of the package +% |pdfx| is skipped; at the same time the |hyperref| package is being loaded anyhow +% just because the |pdfa| option was specified, but at least the |pdfa| option is +% specified, so that even if it's necessary to resort to |ghostscript| in order to produce +% a PDF/A compliant file, at least the hyperlinks to external sites are suitably +% ``sterilized''. % \begin{macrocode} -\RequirePackage{topfront} -\RequirePackage{topcoman} +\ifT@Ppdfa + \unless\ifxetex + \RequirePackage[a-1b]{pdfx} + \else + \RequirePackage{hyperref} + \fi +\fi % \end{macrocode} % % \subsection{The \texttt{classica} option} @@ -1283,10 +1466,10 @@ Skipping any redefinition\MessageBreak}% % in humanities and the specifications came from Paolo Ciacchi, a student of the University % of Trieste, who was preparing a master thesis in classical Greek philology. The necessity % of the large normal size derived from the necessity of having clear mark-up signs among -% the myriad signs philologists use, that sometimes let me believe that the philological +% the myriad signs philologists use, that sometimes let me believe that the philological % mark-up requires typesetting environments similar to the mathematical ones, since the -% material to be typeset does not form a linear sequence, as in plain text, but a -% bi-dimensional structure as in mathematics. +% material to be typeset does not form linear sequences, as in plain text, but +% bi-dimensional structures as in mathematics. % % The other requirements involve the title page and I agreed to implement them, since they % are likely to be useful for other universities as well; the effort for localizing this @@ -1378,13 +1561,13 @@ Skipping any redefinition\MessageBreak}% \let\@evenfoot\@oddfoot % \def\@evenhead{% - \setbox\@intesta\hbox{\latintext + \setbox\@intesta\hbox{\unless\ifxetex\latintext\fi \footnotesize\strut\textsc{% \@author\ifx\@secondauthor\empty\else\ et al.\fi: \@stitle}% }% \ifdim\wd\@intesta>\textwidth\headwrn{\titolo}\fi \underline{\makebox[\textwidth]{\box\@intesta}}}% - \def\@oddhead{\latintext + \def\@oddhead{\unless\ifxetex\latintext\fi \setbox\@intesta\hbox{% \footnotesize\strut\textsl{\rightmark}}% \ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi% @@ -1395,19 +1578,19 @@ Skipping any redefinition\MessageBreak}% \renewcommand*{\ps@headings}{\let\@mkboth\markboth \def\@oddfoot{\null \hfill \textbf{\lapagina}\hfill \null}% \let\@evenfoot\empty\let\@evenhead\empty - \def\@oddhead{{\setbox\z@\hbox{\latintext\footnotesize + \def\@oddhead{{\setbox\z@\hbox{\unless\ifxetex\latintext\fi\footnotesize \textsc{% \@author\ifx\@secondauthor\empty\else\ et al.\fi: \@stitle}}% - \setbox\tw@\hbox{\latintext\footnotesize\textsl{\rightmark}}% + \setbox\tw@\hbox{\unless\ifxetex\latintext\fi\footnotesize\textsl{\rightmark}}% \dimen@=2em\advance\dimen@\wd\z@\advance\dimen@\wd\tw@ \ifdim\dimen@<\textwidth \relax \else \setbox\z@\vbox{\hsize.48\textwidth\parindent\z@\raggedright - \latintext\footnotesize\textsc{% + \unless\ifxetex\latintext\fi\footnotesize\textsc{% \@author\ifx\@secondauthor\empty\else\ et al.\fi: \@stitle }}% \setbox\tw@\vbox{\hsize.48\textwidth\parindent\z@\raggedleft - \latintext\footnotesize\textsl{\rightmark}}% + \unless\ifxetex\latintext\fi\footnotesize\textsl{\rightmark}}% \fi \setbox\@intesta\vbox to\z@{% \vss\hbox to\textwidth{\strut\box\z@\hfill\box\tw@}}% @@ -1511,100 +1694,42 @@ Skipping any redefinition\MessageBreak}% }{% \endlist\clearpage } -% \end{macrocode} -% -% \subsection{PDF/A patches and configuration} -% Last but not least, here come the specifications for the PDF/A-1b format. First of -% all the patches to the macros |\not| and |\mapstochar| that produce problems with -% the format, because they have a declared width of 0\,pt; this is no problem for -% \texttt{latex} or \texttt{pdflatex}, but it is a problem for the PDF/A format. -% Therefore these commands must be replaced by equivalent ones that do not use zero-width -% glyps. For |\not|, another slash can be used, but in order to have it the right size -% in all math typesetting modes it is necessary to have a different command for -% every mode; this is achieved with the |\mathchoice| primitive as such: -% \begin{macrocode} -\renewcommand*\not{\mathrel{\mathchoice% - {\rlap{$\displaystyle\mkern2.5mu\mathnormal{/}$}}% - {\rlap{$\textstyle\mkern2.5mu\mathnormal{/}$}}% - {\rlap{$\scriptstyle\mkern2.5mu\mathnormal{/}$}}% - {\rlap{$\scriptscriptstyle\mkern2.5mu\mathnormal{/}$}}% -}} -% \end{macrocode} -% Actually the zero-width property of the slash must be simulated with a zero-width box -% but within this box it is necessary to specify the typesetting style of the math -% mode material. -% -% A similar trick is used to patch the |\mapstochar| command but no other glyph was -% found suitable for substituting the original one; therefore we had to make it up -% with the |picture| environment: -% \begin{macrocode} -\renewcommand\mapstochar{\mathrel{\mathchoice -{\displaystyle\unitlength=0.0555\fontdimen6\font - \picture(0,0)\put(1,1.5){\linethickness{0.72\unitlength}% - \line(0,1){6}}\endpicture} -{\textstyle\unitlength=0.0555\fontdimen6\font - \picture(0,0)\put(1,1.5){\linethickness{0.72\unitlength}% - \line(0,1){6}}\endpicture} -{\scriptstyle\unitlength=0.0555\fontdimen6\font - \picture(0,0)\put(1,0.55){\linethickness{0.61\unitlength}% - \line(0,1){5}}\endpicture} -{\scriptscriptstyle\unitlength=0.0555\fontdimen6\font - \picture(0,0)\put(1,0.2){\linethickness{0.56\unitlength}% - \line(0,1){4}}\endpicture} -}} -% \end{macrocode} -% The above patches are introduced irrespective of using \texttt{pdflatex} for producing -% a PDF/A compliant file; one might need to produce a traditional PDF file, or even a -% DVI file, to be converted to the PS format, in order to possibly further transform -% it to PDF/A by means of \texttt{ghostscript} (see the details in the -% \texttt{ps2pdf.html} file belonging to the \texttt{ghostscript} documentation). -% -% Finally, if the class option |pdfa| was specified, we load the |pdfx.sty| file -% with the suitable option for typesetting a (hopefully) PDF/A conforming file. -% We must remember that |pdfx.sty| on turn loads -% the |hyperref.sty| file with the necessary |pdfa| option. The user, therefore does -% not need to reload that package, but is free to configure it through the -% |\hypersetup| command arguments right at the beginning of the thesis main file. -% \begin{macrocode} -\ifT@Ppdfa\RequirePackage[a-1b]{pdfx}\fi % % \end{macrocode} % % \subsection{The package file \texttt{topfront.sty}} -% This file is input by \texttt{toptesi}, but it can be used as an -% independent extension package also with other classes. +% This file is input by \texttt{toptesi}, version 5.x, but it can be used as an +% independent extension package. % -% It contains all the definitions for the composition of just the title page -% along the style requirements of \texttt{toptesi}. Since version 5.x -% it makes use of an optional configuration file where the user can define +% It contains all the definition for the composition of just the title page +% along the style requirements of \texttt{toptesi}, version 5.x. +% It makes use of an optional configuration file where the user can define % a lot of default information and all the infix language dependent strings % that are peculiar to this title page. % % This file specifies that it requires the \LaTeXe\ format and identifies itself. Since the % package might be used to extend the performances of other classes, this package does not -% specify any input encoding, assuming that the calling class already provided this -% information. +% specify any input encoding, assuming that the calling class already provided this information. % \begin{macrocode} %<*topfrn> \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{topfront}[2011/05/25 v.5.50 Title page for TOPtesi] +\ProvidesPackage{topfront}[2011/08/09 v.5.59 Title page for TOPtesi] % \end{macrocode} % % The title page information depends on the type of ``thesis' that is being typeset. % The following commands specify the kind of information that is going to be typeset. % Some boolean variables are automatically set by the commands in order to change some % formatting depending on the kind of thesis. For languages that distinguish feminine from -% masculine adjectives or qualifications some automatic machinery is set up in order to -% format some infix strings in a way that copes with the singular or plural forms; in -% particular when there is a multitude of authors (maximum three) of different gender the -% adjectives or qualifications are set masculine plurals, while when there is just one -% author or the authors are of the same gender the adjectives or qualifications are set -% according to number and gender. Al this is done by setting or resetting the truth value -% associated to the boolean variable \texttt{femminile}. The boolean variable -% \texttt{dottorato} controls the PhD thesis format, while the other variable -% \texttt{laureatriennale} controls the formatting of the bachelor's degree report. All -% other theses are treated as master theses, and in all cases the appropriate infix string -% is typeset in the title page +% masculine adjectives or qualifications some automatic machinery is set up in order to format +% some infix strings in a way that copes with the singular or plural forms; in particular when +% there is a multitude of authors (maximum three) of different gender the adjectives or +% qualifications are set masculine plurals, while when there is just one author or the authors +% are of the same gender the adjectives or qualifications are set according to number and +% gender. Al this is done by setting or resetting the truth value associated to the boolean +% variable \texttt{femminile}. The boolean variable \texttt{dottorato} controls the PhD thesis +% format, while the other variable \texttt{laureatriennale} controls the formatting of the +% bachelor's degree report. All other theses are treated as master theses, and in all cases +% the appropriate infix string is typeset in the title page % \begin{macrocode} \newif\iffemminile \newif\ifdottorato \dottoratofalse @@ -1614,7 +1739,7 @@ Skipping any redefinition\MessageBreak}% % The thesis title is specified by means of the following commands; |\monografia|, % the name of the bachelors degree final report, sets also the corresponding % boolean variables and redefines the command |\titolo| so as to avoid -% duplications and inconsistencies; of course something could still be inconsistent +% duplications and inconsistencies; of course something might still be inconsistent % if the commands are given in the wrong order. % % |\titolo| accepts an optional argument, the ``short title'', more or less @@ -1665,10 +1790,10 @@ Skipping any redefinition\MessageBreak}% % this may be called in whatever mode but here we assume his name is input % with the command |\tutore| even if ``tutor'' does not appear as the best choice; % in any case in Italian ``tutore'' does not have the same meaning as the English ``tutor''. -% Most Doctoral Schools require in place to name the School's director or -% coordinator. This is why this person's name can be introduced with +% Most Doctoral Schools require to name the School's director or +% coordinator instead of the tutor. This is why this person's name can be introduced with % |\direttore| or |\coordinatore|; the actual label printed over this person -% name is ``Direttore'' or ``Coordinatore'' % but it can be changed with +% name is ``Direttore'' or ``Coordinatore'' but it can be changed with % |\QualificaDirettore|. % \begin{macrocode} \newif\ifDirettore \Direttorefalse @@ -1704,33 +1829,35 @@ Skipping any redefinition\MessageBreak}% \def\terzacandidata#1{\gdef\@thirdauthor{#1}} % \end{macrocode} % -% The next set of macros is used to typeset the ``date'' of the thesis defense or -% presentation or whatever is done for the final exam. The macro is sort of complicated -% because the input format for this ``date'' may vary from a single year, to a year range, -% to a month and year specification so that different actions must be taken; if the option -% \texttt{classica} is in force\footnote{This option cannot be active if this extension -% package is used to extend a document class other than \texttt{toptesi}.} then the -% formatting of the ``date'' may be still different. This command is aliased with -% |\esamendidottorato| which literally means ``defense of the doctoral dissertation''; -% nevertheless both commands refer to a simple date in one of those formats. -% -% |\getseduta| splits the date in its two components, month and year; if the argument is a -% single string without intervening spaces, the first one is the string itself and the -% second is empty; this emptiness may be tested and in case the date formatting is modified -% accordingly. In particular if the string is a single spaceless one, this string is -% assigned to |\@submitdate|; otherwise a different treatment is made according to the fact +% The next set of macros is used to typeset the ``date'' of the thesis defense or presentation +% or whatever is done for the final exam. The macro is sort of complicated because the input +% format for this ``date'' may vary from a single year, to a year range, to a month and year +% specification so that different actions must be taken; if the option \texttt{classica} is in +% force\footnote{This option cannot be active if this extension package is used to extend a +% document class other than \texttt{toptesi}; nevertheless if the package \texttt{trieste.sty} +% is loaded before this package, the relevant information equivalent to \texttt{classica} +% is fully defined and this package works as it should.} then the formatting of the ``date'' +% may be still different. This command is aliased with |\esamendidottorato| which literally +% means ``defense of the doctoral dissertation''; nevertheless both commands refer to a simple +% date in one of those formats. +% +% |\getseduta| splits the date in its two components, month and year; +% if the argument is a single string without intervening spaces, the first one is the string +% itself and the second is empty; this emptiness may be tested and in case the date formatting +% is modified accordingly. In particular if the string is a single spaceless one, this string +% is assigned to |\@submitdate|; otherwise a different treatment is made according to the fact % that \texttt{classica} is in force; if \texttt{classica} is not in force the total string, % including spaces is assigned to |\@submitade|. If \texttt{classica} is in force, % |\s@dutaTrieste| is called with the whole string. On turn |\s@dutaTrieste| verifies -% if the date should be typeset with old style numbers or in the usual way; in the latter -% case the whole string is assigned to |\@submitdate|; in the former one the year part may -% be a single year or a year range; This separation is tested by splitting the year part -% across one dash; if the dash is present the extremes of the year range are assigned to -% |\1| and |\2|, otherwise the year part is a single year;. If a single year is given this -% is simply typeset with old style numbers and the appropriate commands are assigned to the -% |\@submitdate| control sequence.. If a year range is given, this year range is also -% typeset with old style numbers, and the dash is executed with a regular en-dash surrounded -% with white space. +% if the date should be typeset with old style numbers or in the usual way; in the latter case +% the whole string is assigned to |\@submitdate|; in the former one the year part may be a +% single year or a year range; this separation is tested by splitting the year part across +% one dash; if the dash is present the extremes of the year range are assigned to |\1| and +% |\2|, otherwise the year part is a single year. If a single year is given this is simply +% typeset with old style numbers and the appropriate commands are assigned to the +% |\@submitdate| control sequence. If a year range is given, this year range is also typeset +% with old style numbers, and the dash is executed with a regular en-dash surrounded with +% white space. % % \begin{macrocode} \def\sedutadilaurea#1{\getseduta#1 !} @@ -1739,8 +1866,7 @@ Skipping any redefinition\MessageBreak}% \ifx\@tempA\empty \def\@submitdate{#1}% \else - \expandafter - \ifx\csname StileTrieste\endcsname\relax + \unless\ifclassica \def\@submitdate{#1 #2}% \else \s@dutaTrieste#1 #2!% @@ -1776,26 +1902,25 @@ Skipping any redefinition\MessageBreak}% % depending on the default language and the configuration file. % % |\scuoladidottorato| gets the name of the PhD School; |\ateneo| gets the the generic name -% of the university; |\nomeateneo| gets the proper name of the university. -% In Italy Universities are generally named after the city they are in; in large cities -% where there are several universities, each one of them has a proper name. For example the -% generic name might be ``Universit\`a di Roma'' and the proper name might be ``La -% Sapienza''. -% |\facolta| receives an optional argument that is the uppercase roman numeral specific of -% the faculty and a compulsory argument that corresponds to the type of faculty; for -% example, with |\facolta[II]{Ingegneria}| the package typesets in the title page -% ``II Facolt\`a di Ingengeria''; if the optional argument is not specified non roman -% numeral is typeset; the infix string \verb*+Facolt\`a di + may be changed with the -% configuration file depending on the default language. -% Finally |\logosede| gets the name of the graphic file that contains the information -% relative to the university logo. If such logo is not available, the user does not specify -% this command; if the user uses this command to insert the university logo but the file is -% not available the usual \texttt{graphicx} package warning is issued but compilation goes -% on without the logo. -% The |\tutoreaziendale| macro is the last addition; several students who work on their -% thesis or final project in a company want to have the company supervisor name printed in -% the title page; this does not preclude expressing the student's deepest thanks in the -% acknowledgements section, but it does not harm ro name this person also in the title page. +% of the university; |\nomeateneo| gets the proper name of the university. In Italy +% Universities are generally named after the city they are in; in large cities where there are +% several universities, each one of them has a proper name. For example the generic name might +% be ``Universit\`a di Roma'' and the proper name might be ``La Sapienza''. |\facolta| +% receives an optional argument that is the uppercase roman numeral specific of the faculty +% and a compulsory argument that corresponds to the type of faculty; for example, with +% |\facolta[II]{Ingegneria}| the package typesets in the title page ``II Facolt\`a di +% Ingengeria''; if the optional argument is not specified, no roman numeral is typeset; the +% infix string \verb*+Facolt\`a di + may be changed with the configuration file depending on +% the default language. +% Finally |\logosede| gets the name of the graphic file that contains the information relative +% to the university logo. If such logo is not available, the user does not specify this +% command; if the user uses this command to insert the university logo but the file is not +% available the usual \texttt{graphicx} package warning is issued but compilation goes on +% without the logo. +% The |\tutoreaziendale| macro is the last addition; several students who work on their thesis +% or final project in a company want to have the company supervisor name printed in the title +% page; this does not preclude expressing the student's deepest thanks in the acknowledgements +% section, but it does not harm to name this person also in the title page. % \begin{macrocode} \def\ciclodidottorato#1{\gdef\@ciclo{#1 \@cyclename}}% \def\corsodilaurea#1{\global\dottoratofalse\gdef\@corso{#1}} @@ -1839,11 +1964,11 @@ Skipping any redefinition\MessageBreak}% % \item[NomeTerzoTomo] ``Tomo terzo'' in, say, ``Third volume'' % \item[NomeQuartoTomo] ``Tomo quarto'' in, say, ``Fourth volume'' % \end{description} -% In the above description the first string is generally the default one, while the -% second string is just an example of the corresponding string to be set in another language -% or to be changed in Italian. The last four commands clearly show the difficulty of -% localizing language strings: it is necessary to localize the whole phrase, because of -% the position of the adjectives. +% In the above description the first string is generally the default one, while the second +% string is just an example of the corresponding string to be set in another language or to be +% changed in Italian. The last four commands clearly show the difficulty of localizing +% language strings: it is necessary to localize the whole phrase, because of the position of +% the adjectives. % \begin{macrocode} \newcommand\FacoltaDi[1]{\gdef\@faculty{#1}} \newcommand\DottoratoIn[1]{\gdef\@PhDname{#1}} @@ -1864,19 +1989,19 @@ Skipping any redefinition\MessageBreak}% \newcommand\NomeQuartoTomo[1]{\gdef\QuartoTomo{#1}} % \end{macrocode} % -% Now we can read the configuration file if it exists; in any case what is possibly defined -% or redefined in the configuration file must not be redefined in the following lines and -% this is why everything is subject to the test |\@ifundefined|. Most default definitions -% are simply ``blank''; the others are in Italian. All of them, except the supervisor and -% candidate strings may be individually be redefined in the configuration file or in the -% preamble. Those that cannot be redefined such as the four ``candidate'' strings may be -% actually redefined through the only |\CandidateName| that should be used in a language -% dependent way and with the correct number and gender once for all. The four endings in the -% Italian strings allow to exercise the correct selection only for Italian; a specific test -% is made inside the |\frontespizio| command; because of this the same machinery cannot be -% used, say, for French but may be in the future this feature is resolved in a proper way. -% The same is true for the supervisor and the co-supervisor strings that may be changed once -% for all with |\AdvisorName| and |\CoAdvisorName|. +% Now we can read the configuration file if it exists; in any case what is possibly defined or +% redefined in the configuration file must not be redefined in the following Lines and this is +% why everything is subject to the test |\@ifundefined|. Most default definitions are simply +% ``blank''; the others are in Italian. All of them, except the supervisor and candidate +% strings may be individually be redefined in the configuration file or in the preamble. Those +% that cannot be redefined such as the four ``candidate'' strings may be actually redefined +% through the only |\CandidateName| that should be used in a language depended way and with +% the correct number and gender once for all. The four endings in the Italian strings allow to +% exercise the correct selection only for Italian; a specific test is made inside the +% |\frontespizio| command; because of this the same machinery cannot be used, say, for French +% but may be in the future this feature is resolved in a proper way. The same is true for the +% supervisor and the co-supervisor strings that may be changed once for all with +% |\AdvisorName| and |\CoAdvisorName|. % \begin{macrocode} \IfFileExists{toptesi.cfg}{\input{toptesi.cfg}}{} % @@ -1922,10 +2047,10 @@ Skipping any redefinition\MessageBreak}% \@ifundefined{TerzoTomo}{\def\TerzoTomo{Tomo terzo}}{} \@ifundefined{QuartoTomo}{\def\QuartoTomo{Tomo quarto}}{} % \end{macrocode} -% If the final exam date is not given the default value is the current month -% and the current year typeset in Italian; therefore the user is strongly -% requested to enter a date either with the |\sedutadilaurea| or the -% |\esamedidottorato| commands. The university logo command by default is also empty. +% If the final exam date is not given the default value is the current month and the current +% year typeset in Italian; therefore the user is strongly requested to enter a date either +% with the |\sedutadilaurea| or the |\esamedidottorato| commands. The university logo command +% by default is also empty. % \begin{macrocode} \@ifundefined{@submitdate}{\def\@submitdate{\ifcase\the\month\or% Gennaio\or Febbraio\or Marzo\or Aprile\or Maggio\or Giugno\or @@ -1942,13 +2067,12 @@ Skipping any redefinition\MessageBreak}% \@ifundefined{@InName}{\def\@InName{in}}{} % \end{macrocode} % -% Finally it comes the only active macro |\frontespizio|, the one macro that -% actually typesets the title page. The macro starts with a local redefinition -% of the \texttt{myheadings} page style; with this style the university name -% goes into the header, while the exam date goes in the footer; in this way the -% information that must be typeset in the title page is not crunched in too -% little space and the overall text bounding box assumes a shape similar to that -% of the page. +% Finally we have the only active macro |\frontespizio|, the real macro that actually +% typesets the title page. The macro starts with a local redefinition of the +% \texttt{myheadings} page style; with this style the university name goes into the header, +% while the exam date goes into the footer; in this way the information that must be typeset in +% the title page is not crunched in too little a space and the overall text bounding box assumes +% a shape similar to that of the page. % % Everything is closed within a group so all definitions remain local. % \begin{macrocode} @@ -1957,18 +2081,14 @@ Skipping any redefinition\MessageBreak}% \def\ps@myheadings{\let\@mkboth\markboth \def\@oddhead{\vbox{% \hbox to \hsize{\hfill {\LARGE \@ateneo}\hfill}% - \expandafter - \ifx\csname StileTrieste\endcsname\relax - \else + \ifclassica \hbox to \hsize{\hfil\vrule\@width\z@ \@height3.5ex\vrule\@height1.4\p@\@depth-\p@\@width50mm\hfil}% \fi }}% \def\@oddfoot{\vbox to 15mm{\vss - \expandafter - \ifx\csname StileTrieste\endcsname\relax - \else - \hbox to \hsize{\hfil\raisebox{-.3ex}[\z@][\z@]{% + \ifclassica + \hbox to \hsize{\hfil\raisebox{-.3ex}[\z@][\z@]{% \vrule\@height-2.6\p@\@depth3\p@\@width50mm}\hfil}% \fi \hbox to\hsize{\hfill{\Large{\@submitdate}}\hfill}}% @@ -1986,9 +2106,8 @@ Skipping any redefinition\MessageBreak}% \evensidemargin \oddsidemargin % \end{macrocode} % -% We select the \texttt{myheadings} page style; setting the page counter to zero is a remain -% of old settings, but it does not hurt; the |\null| command inserts a void horizontal box -% into the vertical list; it is useful to act as a block against which the vertical glue +% We select the \texttt{myheadings} page style; the |\null| command inserts a void horizontal +% box into the vertical list; it is useful to act as a block against which the vertical glue % pushes for setting the subsequent material. The normal font is chosen in case preceding % commands did change the font characteristics. % \begin{macrocode} @@ -2000,15 +2119,13 @@ Skipping any redefinition\MessageBreak}% % we set in the page is the university proper name and some vertical glue. % \begin{macrocode} \ifx\@nomeat\empty \else - {\vspace*{-1.5\topskip} - \centering + {\vspace*{-3\topskip}\centering {\Large \@nomeat}\par}\vfill \fi % \end{macrocode} -% Then the faculty name comes next; but fot the doctoral school it uses the doctoral -% school name entered with |\scuoladidottorato|, otherwise it inserts the faculty -% ordinal number or prefix and name already entered with the optional and required -% arguments of |\facolta|. +% Then the faculty name comes next; but for the doctoral school it uses the doctoral school +% name entered with |\scuoladidottorato|, otherwise it inserts the faculty ordinal number or +% prefix and name already entered with the optional and required arguments of |\facolta|. % \begin{macrocode} \begin{center} {\rmfamily\mdseries @@ -2021,7 +2138,7 @@ Skipping any redefinition\MessageBreak}% \par\medskip}% % \end{macrocode} % Further specification: it inserts the field of the PhD research or the degree course name; -% for example it inserts the line ``Philosophy Degree in Applied Tetratricotomy~--VI~cycle'' +% for example it inserts the line ``Philosophy Degree in Applied Tetratricotomy~--~XVI~cycle'' % or ``Master of Science in Applied Tetratricotomy''. % \begin{macrocode} \ifx\@corso\empty \else{\large @@ -2034,9 +2151,9 @@ Skipping any redefinition\MessageBreak}% \fi \end{center} % \end{macrocode} -% It now centers the name of the report, be it ``Doctoral Dissertation'' or ``Master -% Thesis'' or whatever; in case the command |\materia| was used, it then centers the area -% which the thesis deals with. +% It now centers the name of the report, be it ``Doctoral Dissertation'' or ``Master Thesis'' +% or whatever; in case the command |\materia| was used, it then centers the area which the +% thesis deals with. % \begin{macrocode} \vfill \begin{center} @@ -2055,8 +2172,7 @@ Skipping any redefinition\MessageBreak}% \fi \end{center} % \end{macrocode} -% Next comes the real title entered with |\titolo| or |\monografia| and the possible -% subtitle. +% Next comes the real title entered with |\titolo| or |\monografia| and the possible subtitle. % \begin{macrocode} \vfill \begin{center} @@ -2070,15 +2186,13 @@ Skipping any redefinition\MessageBreak}% \end{center}% \fi % \end{macrocode} -% If the option \texttt{classica} is in force the thesis might be divided in several -% volumes; apparently these in humanities are often oversized. In this case the -% |\frontespizio| command may be given at the beginning of every volume and the counter -% \texttt{tomo} is stepped up; the volume number is therefore printed in each title page; -% the infix string may be redefined as it was shown above. +% If the option \texttt{classica} is in force the thesis might be divided in several volumes; +% theses in humanities are apparently often oversized. In this case the |\frontespizio| +% command may be given at the beginning of every volume and the counter \texttt{tomo} is +% stepped up; the volume number is therefore printed in each title page; the infix string +% may be redefined as it was shown above. % \begin{macrocode} - \expandafter - \ifx\csname StileTrieste\endcsname\relax - \else + \ifclassica \ifnum\value{tomo}>\z@ \par\bigskip \noindent\makebox[\textwidth]{% @@ -2098,22 +2212,22 @@ Skipping any redefinition\MessageBreak}% \fi \par % \end{macrocode} -% Going down in the title page now comes the optional insertion of the university logo; -% this is a simple task once |\@logosede| has been defined, and this was done either with -% an explicit command |\logosede| with its argument in the preamble, or a specific line in -% the configuration file. +% Going down in the title page now comes the optional insertion of the university logo; this +% is a simple task once |\@logosede| has been defined, and this was done either with an +% explicit command |\logosede| with its argument in the preamble, or a specific line in the +% configuration file. % \begin{macrocode} \ifx\@logosede\@empty\else \vspace*{\bigskipamount} {\centering \@logosede\par}\fi % \end{macrocode} % -% The final task is to typeset the possible supervisors' names, the candidates' names and -% all the rest of the bureaucratical terms. We have to distinguish between a bachelor degree -% report that is not supposed to have a supervisor, from the doctoral dissertation where we -% do not indicate the supervisor, but the School Director, and the master thesis where there +% the final task is to typeset the possible supervisors' names, the candidates' names and all +% the rest of the bureaucratical terms. We have to distinguish between a bachelor degree +% report that is not supposed to have a supervisor, from the doctoral dissertation where we do +% not indicate the supervisor, but the School Director, and the master thesis where there % might be one or more supervisors; with the \texttt{classica} option in force no label is -% printed over the supervisor's name, unless there is a plurality od supervisors. +% printed over the supervisor's name, unless there is a plurality of supervisors. % \begin{macrocode} \vfill \iflaureatriennale @@ -2125,18 +2239,18 @@ Skipping any redefinition\MessageBreak}% \ifx\@principaladviser\empty\else \def\@nomerelatore{\Relatore:}% \fi - \@ifundefined{StileTrieste}% - {\ifx\@secondadviser\empty \else + \unless\ifclassica + \ifx\@secondadviser\empty \else \def\@nomerelatore{\Relatori:}% - \fi}{}% + \fi + \fi \fi \fi % \end{macrocode} -% Similarly the label names for the exam candidates are chosen; in Italian the names are -% infix strings that are selected according the gender and the number; if these labels have -% to be set in a different language it is necessary to define one string that has to be -% selected by the user according to number and gender. The label for the doctorship is left -% empty. +% Similarly the label names for the exam candidates are chosen; in Italian the names are infix +% strings that are selected according the gender and the number; if these labels have to be +% set in a different language it is necessary to define one string that has to be selected by +% the user according to number and gender. The label for the PhD candidate is left empty. % \begin{macrocode} \ifdottorato \let\@nomecandidato\empty @@ -2157,9 +2271,9 @@ Skipping any redefinition\MessageBreak}% \fi % \end{macrocode} % -% For the names of the supervisor(s) and of the candidate(s) a different approach is used -% for each one of the three categories of theses. If a bachelor degree report is dealt with, -% the name of the \emph{only} candidate is centerd and written in caps-and-small-caps. +% For the supervisor(s) and of the candidate(s) name(s) a different approach is used for +% each one of the three categories of theses. If a bachelor degree report is dealt with, the +% name of the \emph{only} candidate is centered and written in caps-and-small-caps. % \begin{macrocode} \iflaureatriennale \begin{center}% @@ -2167,32 +2281,32 @@ Skipping any redefinition\MessageBreak}% \end{center}% % \end{macrocode} % For doctoral and master theses two virtual boxes (actually macros) are filled up so as to -% align the supervisor name(s) and, in second virtual box, the candidate name(s). The label -% is set in the first line with proper number and gender; in the second line the first name, -% and in the subsequent lines, if there are any, the other names. These virtual boxes -% actually contain a tabular environment each; these environments shall be actually typeset -% when these virtual box macros are executed. If the \texttt{classica} option is in force no -% label is set over the principal advisor name, but a label is set over the co-advisor -% name(s). The type size is also e little different for the \texttt{classica} option. The -% |\protect| command is used to protect the names in case they contain accent macros that -% might be expanded at the wrong moment. +% align the supervisor name(s) and, in a second virtual box, the candidate name(s). The label is +% set in the first line with proper number and gender; in the second line the first name, and +% in the subsequent lines, if there are any, the other names. These virtual boxes actually +% contain a tabular environment each; these environments shall be actually typeset when these +% virtual box macros are executed. If the \texttt{classica} option is in force no label is set +% over the principal advisor name, but a label is set over the co-advisor name(s). The type +% size is also a little different for the \texttt{classica} option. The |\protect| command +% is used to protect the names in case they contain accent macros that might be expanded at +% the wrong moment. % \begin{macrocode} \else % Per laurea e dottorato con relatori e correlatori... \def\BoxRelatori{% \begin{tabular}[t]{l}% - \hbox{{\@ifundefined{StileTrieste}{\large}{}% - \textbf{\protect\@nomerelatore}}}\\[.6ex] - \hbox{{\large\textrm{\protect\@principaladviser}}}% + \hbox{\ifclassica\else\large\fi + \textbf{\protect\@nomerelatore}}\\[.6ex] + \hbox{\large\textrm{\protect\@principaladviser}}% \ifx\@secondadviser\empty \else - \@ifundefined{StileTrieste}{}{% + \unless\ifclassica \ifx\@thirdadviser\empty \ifx\@secondadviser\empty\else \\[1.5ex]\textbf{\Correlatore:}% \fi \else \\[1.5ex]\textbf{\Correlatori:}% - \fi} + \fi\fi \\[.6ex]\hbox{{\large\textrm{\protect\@secondadviser}}}% \fi \ifx\@thirdadviser\empty \else @@ -2205,7 +2319,7 @@ Skipping any redefinition\MessageBreak}% % \begin{macrocode} \def\BoxCandidati{% \begin{tabular}[t]{l}% - \hbox{\@ifundefined{StileTrieste}{\large}{}% + \hbox{\unless\ifclassica\large\fi \textbf{\protect\@nomecandidato}}\\[.6ex] \hbox{\large\textrm{\protect\@author}}% \ifx\@secondauthor\empty @@ -2224,8 +2338,8 @@ Skipping any redefinition\MessageBreak}% % remember that the bachelor degree case has already taken place. For the doctoral % dissertation the doctoring person name is typeset centered in one line by itself and % everything else is set 3em below into a three column table extended to the |\hsize|, the -% first line containing the person's qualifiers and the second line containing the true -% names. The central column is used just for spacing, but it does not contain anything. +% first line containing the person labels and the second line containing the true names. The +% central column is used just for spacing, but it does not contain anything. % \begin{macrocode} \ifdottorato \begin{center}\large @@ -2252,21 +2366,20 @@ Skipping any redefinition\MessageBreak}% \end{center} \else % \end{macrocode} -% For the master thesis the two virtual boxes are set one besides the other but skewed so -% that to the right or, respectively, to the left of every name there is enough space for -% the signatures. With the \texttt{classica} option in force the two boxes are simply -% aligned. +% For the master thesis the two virtual boxes are set one besides the other but skewed so that +% to the right or, respectively, to the left of every name there is enough space for the +% signature. With the \texttt{classica} option in force the two boxes are simply aligned. % \begin{macrocode} - \@ifundefined{StileTrieste}{% + \unless\ifclassica \begin{flushleft}% \BoxRelatori \end{flushleft}\par\vspace*{-1.5\baselineskip} \begin{flushright}% \BoxCandidati - \end{flushright}\par}{% + \end{flushright}\else \noindent - \makebox[\textwidth]{\BoxRelatori - \hfill\BoxCandidati}\par}% + \makebox[\textwidth]{\BoxRelatori\hfill\BoxCandidati}\par + \fi \fi \fi % \end{macrocode} @@ -2297,7 +2410,7 @@ Skipping any redefinition\MessageBreak}% %% %%================================================================ %% This file is the only file of the TOPtesi bundle that the user -%% can modify without restrictions in order to personalize the +%% can modify without restrictions in order to customize the %% contents of this configuration file to his/her needs. The user %% can add or remove lines, comment or uncomment lines, change the %% arguments to the macros, add definitions and so on. @@ -2316,6 +2429,7 @@ Skipping any redefinition\MessageBreak}% %%\CycleName{ciclo} % % \end{macrocode} +% % \subsection{The package file \texttt{topcoman.sty}} % This file may be used as an independent extension package for the \texttt{report} % document class, and possibly for other classes @@ -2323,13 +2437,17 @@ Skipping any redefinition\MessageBreak}% %<*topcmn> \NeedsTeXFormat{LaTeX2e} % lavora solo con LaTeX 2e \ProvidesPackage{topcoman}% - [2011/05/25 v.5.50 Additional commands for the TOPtesi bundle] + [2011/08/09 v.5.59 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 % the math roman fonts, at is is by default; some persons prefer to use both symbols with -% different meanings, so this command lets them do so. +% different meanings, so this command lets them do so. This may be useful unless the XeTeX +% typesetting engine is used; in facts the Unicode math defines specific commands for setting +% any Latin or Greek mathematical letter in any possible font shape and series. % \begin{macrocode} +\RequirePackage{ifxetex} +\ifxetex\else \newcommand*\DeclareSlantedCapitalGreekLetters{% \mathchardef\Gamma="7100 \mathchardef\Delta="7101 @@ -2342,47 +2460,58 @@ Skipping any redefinition\MessageBreak}% \mathchardef\Phi="7108 \mathchardef\Psi="7109 \mathchardef\Omega="710A -} +}\fi % \end{macrocode} % The |\ensuremath| command is defined in the \LaTeX\ kernel from a certain version on; % should the user employ a really old \LaTeXe\ implementation this definition -% supplies the missing one. +% supplies the missing one. Should the |babel| package not be loaded, then we provide the +% useful command |\textormath| provided by |babel|. We define the text version of the +% subscript and ensure also that the |textcomp| package is loaded; of course it it's already +% loaded the |\RequirePackage| command performs the necessary tests and possibly does not load +% anything. % \begin{macrocode} \providecommand{\ensuremath}[1]{\ifmmode#1\else$#1$\fi}% +\providecommand{\textormath}{\ifmmode\expandafter\@secondoftwo\else + \expandafter\@firstoftwo\fi} +\providecommand*\textsubscript{\raisebox{-0.5ex}} +\ifxetex\else +\RequirePackage{textcomp} +\fi % \end{macrocode} % The following commands may be already defined; should they be missing they are supplied % here. The greatest part of them is already defined in the Italian option to the -% \texttt{babel} language; but remember; this package may be used as a stand alone one, -% without the initial call by the \texttt{toptesi} document class, so that the language +% \texttt{babel} language if the thesis is typeset with \textsf{pdflatex} that loads that +% package; these commands are not predefined if the thesis is typeset with \XeLaTeX\ that does +% not load the \texttt{babel} package; but remember; this package may be used as a stand alone +% one, without the initial call by the \texttt{toptesi} document class, so that the language % Italian might be undefined. % \begin{macrocode} -\providecommand{\ohm}{\ensuremath{{\mathrm{\Omega}}}} -\providecommand{\ped}[1]{\ensuremath{_{\mathrm{#1}}}} -\providecommand{\ap}[1]{\ensuremath{^{\mathrm{#1}}}} +\providecommand{\ohm}{\textormath{\textohm}{\mathrm{\Omega}}} +\providecommand{\ped}[1]{\textormath{\textsubscript{#1}}{_{\mathrm{#1}}}} +\providecommand{\ap}[1]{\textormath{\textsuperscript{#1}}{^{\mathrm{#1}}}} \providecommand{\unit}[1]{\ensuremath{{\mathrm{\,#1}}}} \providecommand{\gei}{\ensuremath{{\mathop{\mathrm{j}}\nolimits}}} \providecommand{\eu}{\ensuremath{{\mathop{\mathrm{e}}\nolimits}}} -\providecommand{\micro}{\ensuremath{\ifx\muup\undefined\mu\else\muup\fi}} -\providecommand{\gradi}{\ensuremath{^\circ}} -% \end{macrocode} -% -% The next set of definitions are used to list a program file. There are -% better packages to perform this task in the CTAN archives. This set of macros -% has the advantage that is very short and light on the computer memory; nevertheless -% it performs its duty pretty well. The font face is the typewriter one; the -% font size is chosen so as to -% allow approximately 80 characters in the text width of the thesis. It respects -% the possible indentation tabs (ASCII code 9) by inserting the correct amount -% of typewriter spaces so as to align every line to the correct boundary which -% is ``zero modulo eight''. If the program file contains some form feed ASCII -% characters (ASCII code 12), this \TeX\ code inserts a new page command. The -% code may appear strange, and it does because it makes heavy use of the dirty -% tricks of appendix~D of the \TeX\-book. +\providecommand{\micro}{\textormath{\textmu}{\ifxetex\mathup{μ}\else + \ifx\muup\undefined\mu\else\muup\fi\fi}} +\providecommand{\gradi}{\textormath{\textdegree}{^\circ}} +% \end{macrocode} +% +% The next set of definitions are used to list a program file. There are better packages to +% perform this task in the CTAN archives. This set of macros has the advantage that is very +% short and light on the computer memory; nevertheless it performs its duty pretty well. The +% font face is the typewriter one; the font size is chosen so as to allow approximately 80 +% characters in the text width of the thesis. It respects the possible indentation tabs (ASCII +% code 9) by inserting the correct amount of typewriter spaces so as to align every line to +% the correct boundary which is ``zero modulo eight''. If the program file contains some form +% feed ASCII characters (ASCII code 12), this \TeX\ code inserts a new page command. The code +% may appear strange, and it does because it makes heavy use of the dirty tricks of appendix~D +% of the \TeX\-book. % \begin{macrocode} \def\listing#1{\par\begingroup \programma \input #1 \endgroup} \def\uncatcodespecials{\def\do##1{\catcode`##1=12}\dospecials} -\def\programma{\footnotesize\tt \parindent 0pt +\def\programma{\ttfamily\footnotesize \parindent 0pt \def\par{\leavevmode\egroup\box0\endgraf} \catcode`\`=\active \catcode`\^^I=\active \catcode`\^^L=\active \obeylines \uncatcodespecials \obeyspaces @@ -2392,7 +2521,9 @@ Skipping any redefinition\MessageBreak}% % new page command associated to the form feed ASCII character are done with the % following definitions. % \begin{macrocode} -\newdimen\tabwidth \setbox0=\hbox{\footnotesize\tt\space} \tabwidth=8\wd0 +\newdimen\tabwidth +\setbox0=\hbox{\ttfamily\footnotesize\space} +\tabwidth=8\wd0 \def\startbox{\setbox0=\hbox\bgroup} {\obeyspaces\global\let =\ } {\catcode`\`=\active \gdef`{\relax\lq}} @@ -2402,33 +2533,32 @@ Skipping any redefinition\MessageBreak}% \multiply\dimen0 by\tabwidth \advance\dimen0 by\tabwidth \wd0=\dimen0 \box0 \startbox}} -{\catcode`\^^L=\active \gdef^^L{\par\penalty-10000}} -% \end{macrocode} -% -% The following code is already set in the \texttt{toptesi} package; here it is -% repeated because this package might be used as a stand alone one. Remember that -% the comma as a decimal separator is required for all languages except English. -% \begin{macrocode} -\mathcode`\,="013B -\catcode`\^^Z=10 -% \end{macrocode} -% -% The following commands are used to write the ``lower case'' roman numerals -% with the small-caps; in order to avoid complications with missing fonts or math -% environments we make sure to typeset these numerals with script size capitals; -% this solution is not probably the best one but it works; it typesets -% these roman numerals with the current font; for this thesis bundle roman numerals -% are used only for folios, therefore there are no problems with a choice of font shapes -% and series. But for this task we need a robust command in order to set the script math -% size +{\catcode`\^^L=\active \global\let^^L\newpage} +% \end{macrocode} +% +% Remember that the comma as a decimal separator is required for all languages except English. +% If you use they package outside TOPtesi, but as an extension of other packages, it's up to +% you to define an ``intelligent comma'' macro or to load either the |icomma.sty| or the +% |nccomma.sty| package that defines such a macro: the |icomma| package defines the comma as +% a mathematical active character that recognizes the subsequent token as a space token so as +% to insert a punctuation comma; |nccomma| behaves more or less as the macro defined in +% TOPtesi and recognizes digits so as to use a decimal comma. +% +% The following commands are used to write the ``lower case'' roman numerals with the +% small-caps; in order to avoid complications with missing fonts or math environments we make +% sure to typeset these numerals with script size capitals; this solution is not probably the +% best one but it works; it typesets these roman numerals with the current font; in TOPtesi +% roman numerals are used only for folios, but in order to be compliant with the package +% |hyperref|, I avoided using this new macro for folios; in other situations there are no more +% any problems with the choice of font shapes and series. We need a robust command in order to +% set the script math size % \begin{macrocode} \DeclareRobustCommand*{\simulatedSC}[1]{% {\check@mathfonts\fontsize{\sf@size}{\f@baselineskip}\selectfont#1}}% -%\renewcommand*{\@roman}[1]{\simulatedSC{\@Roman#1}}% % \end{macrocode} % % A user, Antonio Mele, suggested and requested the possibility of having -% the figure and table name inserted automatically when the |\ref| command is +% the figure and table name inserted automatically when the |\ref|command is % issued. For single citations the solution works fine, but for range % references it does not work. In Italian the name must be lower case while in % other languages, specifically in English, the name has a capital initial. @@ -2449,6 +2579,8 @@ Skipping any redefinition\MessageBreak}% \DisableFigTabNames % % \end{macrocode} +% +% % \Finale % \endinput -% \ No newline at end of file +% diff --git a/Master/texmf-dist/tex/latex/toptesi/topcoman.sty b/Master/texmf-dist/tex/latex/toptesi/topcoman.sty index 8ec87eacc84..2b5b26f325c 100644 --- a/Master/texmf-dist/tex/latex/toptesi/topcoman.sty +++ b/Master/texmf-dist/tex/latex/toptesi/topcoman.sty @@ -7,7 +7,7 @@ %% toptesi.dtx (with options: `topcmn') %% ______________________________________________________ %% The TOPtesi package -%% Copyright (C) 2010 Claudio Beccari +%% Copyright (C) 2011 Claudio Beccari %% All rights reserved %% %% License information appended @@ -27,10 +27,11 @@ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} - \NeedsTeXFormat{LaTeX2e} % lavora solo con LaTeX 2e \ProvidesPackage{topcoman}% - [2011/05/25 v.5.50 Additional commands for the TOPtesi bundle] + [2011/08/09 v.5.59 Additional commands for the TOPtesi bundle] +\RequirePackage{ifxetex} +\ifxetex\else \newcommand*\DeclareSlantedCapitalGreekLetters{% \mathchardef\Gamma="7100 \mathchardef\Delta="7101 @@ -43,25 +44,34 @@ \mathchardef\Phi="7108 \mathchardef\Psi="7109 \mathchardef\Omega="710A -} +}\fi \providecommand{\ensuremath}[1]{\ifmmode#1\else$#1$\fi}% -\providecommand{\ohm}{\ensuremath{{\mathrm{\Omega}}}} -\providecommand{\ped}[1]{\ensuremath{_{\mathrm{#1}}}} -\providecommand{\ap}[1]{\ensuremath{^{\mathrm{#1}}}} +\providecommand{\textormath}{\ifmmode\expandafter\@secondoftwo\else + \expandafter\@firstoftwo\fi} +\providecommand*\textsubscript{\raisebox{-0.5ex}} +\ifxetex\else +\RequirePackage{textcomp} +\fi +\providecommand{\ohm}{\textormath{\textohm}{\mathrm{\Omega}}} +\providecommand{\ped}[1]{\textormath{\textsubscript{#1}}{_{\mathrm{#1}}}} +\providecommand{\ap}[1]{\textormath{\textsuperscript{#1}}{^{\mathrm{#1}}}} \providecommand{\unit}[1]{\ensuremath{{\mathrm{\,#1}}}} \providecommand{\gei}{\ensuremath{{\mathop{\mathrm{j}}\nolimits}}} \providecommand{\eu}{\ensuremath{{\mathop{\mathrm{e}}\nolimits}}} -\providecommand{\micro}{\ensuremath{\ifx\muup\undefined\mu\else\muup\fi}} -\providecommand{\gradi}{\ensuremath{^\circ}} +\providecommand{\micro}{\textormath{\textmu}{\ifxetex\mathup{μ}\else + \ifx\muup\undefined\mu\else\muup\fi\fi}} +\providecommand{\gradi}{\textormath{\textdegree}{^\circ}} \def\listing#1{\par\begingroup \programma \input #1 \endgroup} \def\uncatcodespecials{\def\do##1{\catcode`##1=12}\dospecials} -\def\programma{\footnotesize\tt \parindent 0pt +\def\programma{\ttfamily\footnotesize \parindent 0pt \def\par{\leavevmode\egroup\box0\endgraf} \catcode`\`=\active \catcode`\^^I=\active \catcode`\^^L=\active \obeylines \uncatcodespecials \obeyspaces \everypar{\startbox}} -\newdimen\tabwidth \setbox0=\hbox{\footnotesize\tt\space} \tabwidth=8\wd0 +\newdimen\tabwidth +\setbox0=\hbox{\ttfamily\footnotesize\space} +\tabwidth=8\wd0 \def\startbox{\setbox0=\hbox\bgroup} {\obeyspaces\global\let =\ } {\catcode`\`=\active \gdef`{\relax\lq}} @@ -71,9 +81,7 @@ \multiply\dimen0 by\tabwidth \advance\dimen0 by\tabwidth \wd0=\dimen0 \box0 \startbox}} -{\catcode`\^^L=\active \gdef^^L{\par\penalty-10000}} -\mathcode`\,="013B -\catcode`\^^Z=10 +{\catcode`\^^L=\active \global\let^^L\newpage} \DeclareRobustCommand*{\simulatedSC}[1]{% {\check@mathfonts\fontsize{\sf@size}{\f@baselineskip}\selectfont#1}}% \def\ft@figure{\iflanguage{italian}{\MakeLowercase{\figurename}}% @@ -98,10 +106,10 @@ %% and the derived files: %% %% toptesi.cls, toptesi.sty, topfront.sty, topcommand.sty, -%% toptesi.cfg, and the English documentation toptesi.pdf; +%% toptesi.cfg, and the English documentation toptesi.pdf. %% -%% Furthermore the bundle contains the documentation source file toptesi-doc.tex -%% and the derived file toptesi-doc.pdf. +%% Furthermore the bundle contains the documentation source file toptesi-doc-xetex.tex +%% and the derived file toptesi-doc-xetex.pdf. %% %% The toptesi-example.tex source file is just an example that shows how %% to use the various commands; by commenting or uncommenting certain @@ -111,10 +119,10 @@ %% The toptesi.cfg file is a sample of a local configuration file that can be %% freely edited and modified. %% -%% By running pdflatex on toptesi.dtx the user gets the cls, sty and cfg files +%% By running pdflatex on toptesi.dtx the user gets the class, sty and cfg files %% and the English documentation file in pdf format. %% -%% The documentation file toptesi-doc.pdf is in Italian; its source file is +%% The documentation file toptesi-doc-xetex.pdf is in Italian; its source file is %% another example of how to use toptesi. %% %% End of file `topcoman.sty'. diff --git a/Master/texmf-dist/tex/latex/toptesi/topfront.sty b/Master/texmf-dist/tex/latex/toptesi/topfront.sty index f9cf61213b9..4140552e019 100644 --- a/Master/texmf-dist/tex/latex/toptesi/topfront.sty +++ b/Master/texmf-dist/tex/latex/toptesi/topfront.sty @@ -7,7 +7,7 @@ %% toptesi.dtx (with options: `topfrn') %% ______________________________________________________ %% The TOPtesi package -%% Copyright (C) 2010 Claudio Beccari +%% Copyright (C) 2011 Claudio Beccari %% All rights reserved %% %% License information appended @@ -27,9 +27,8 @@ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} - \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{topfront}[2011/05/25 v.5.50 Title page for TOPtesi] +\ProvidesPackage{topfront}[2011/08/09 v.5.59 Title page for TOPtesi] \newif\iffemminile \newif\ifdottorato \dottoratofalse \newif\iflaureatriennale \laureatriennalefalse @@ -66,8 +65,7 @@ \ifx\@tempA\empty \def\@submitdate{#1}% \else - \expandafter - \ifx\csname StileTrieste\endcsname\relax + \unless\ifclassica \def\@submitdate{#1 #2}% \else \s@dutaTrieste#1 #2!% @@ -176,18 +174,14 @@ \def\ps@myheadings{\let\@mkboth\markboth \def\@oddhead{\vbox{% \hbox to \hsize{\hfill {\LARGE \@ateneo}\hfill}% - \expandafter - \ifx\csname StileTrieste\endcsname\relax - \else + \ifclassica \hbox to \hsize{\hfil\vrule\@width\z@ \@height3.5ex\vrule\@height1.4\p@\@depth-\p@\@width50mm\hfil}% \fi }}% \def\@oddfoot{\vbox to 15mm{\vss - \expandafter - \ifx\csname StileTrieste\endcsname\relax - \else - \hbox to \hsize{\hfil\raisebox{-.3ex}[\z@][\z@]{% + \ifclassica + \hbox to \hsize{\hfil\raisebox{-.3ex}[\z@][\z@]{% \vrule\@height-2.6\p@\@depth3\p@\@width50mm}\hfil}% \fi \hbox to\hsize{\hfill{\Large{\@submitdate}}\hfill}}% @@ -202,8 +196,7 @@ \null\setcounter{page}{1}% \normalfont \ifx\@nomeat\empty \else - {\vspace*{-1.5\topskip} - \centering + {\vspace*{-3\topskip}\centering {\Large \@nomeat}\par}\vfill \fi \begin{center} @@ -250,9 +243,7 @@ \large\textrm{\@subtitle}\par \end{center}% \fi - \expandafter - \ifx\csname StileTrieste\endcsname\relax - \else + \ifclassica \ifnum\value{tomo}>\z@ \par\bigskip \noindent\makebox[\textwidth]{% @@ -284,10 +275,11 @@ \ifx\@principaladviser\empty\else \def\@nomerelatore{\Relatore:}% \fi - \@ifundefined{StileTrieste}% - {\ifx\@secondadviser\empty \else + \unless\ifclassica + \ifx\@secondadviser\empty \else \def\@nomerelatore{\Relatori:}% - \fi}{}% + \fi + \fi \fi \fi \ifdottorato @@ -314,18 +306,18 @@ \else \def\BoxRelatori{% \begin{tabular}[t]{l}% - \hbox{{\@ifundefined{StileTrieste}{\large}{}% - \textbf{\protect\@nomerelatore}}}\\[.6ex] - \hbox{{\large\textrm{\protect\@principaladviser}}}% + \hbox{\ifclassica\else\large\fi + \textbf{\protect\@nomerelatore}}\\[.6ex] + \hbox{\large\textrm{\protect\@principaladviser}}% \ifx\@secondadviser\empty \else - \@ifundefined{StileTrieste}{}{% + \unless\ifclassica \ifx\@thirdadviser\empty \ifx\@secondadviser\empty\else \\[1.5ex]\textbf{\Correlatore:}% \fi \else \\[1.5ex]\textbf{\Correlatori:}% - \fi} + \fi\fi \\[.6ex]\hbox{{\large\textrm{\protect\@secondadviser}}}% \fi \ifx\@thirdadviser\empty \else @@ -335,7 +327,7 @@ }% \def\BoxCandidati{% \begin{tabular}[t]{l}% - \hbox{\@ifundefined{StileTrieste}{\large}{}% + \hbox{\unless\ifclassica\large\fi \textbf{\protect\@nomecandidato}}\\[.6ex] \hbox{\large\textrm{\protect\@author}}% \ifx\@secondauthor\empty @@ -372,16 +364,16 @@ }% \end{center} \else - \@ifundefined{StileTrieste}{% + \unless\ifclassica \begin{flushleft}% \BoxRelatori \end{flushleft}\par\vspace*{-1.5\baselineskip} \begin{flushright}% \BoxCandidati - \end{flushright}\par}{% + \end{flushright}\else \noindent - \makebox[\textwidth]{\BoxRelatori - \hfill\BoxCandidati}\par}% + \makebox[\textwidth]{\BoxRelatori\hfill\BoxCandidati}\par + \fi \fi \fi \ifx\@tutoreaziendale\@empty\else @@ -405,10 +397,10 @@ %% and the derived files: %% %% toptesi.cls, toptesi.sty, topfront.sty, topcommand.sty, -%% toptesi.cfg, and the English documentation toptesi.pdf; +%% toptesi.cfg, and the English documentation toptesi.pdf. %% -%% Furthermore the bundle contains the documentation source file toptesi-doc.tex -%% and the derived file toptesi-doc.pdf. +%% Furthermore the bundle contains the documentation source file toptesi-doc-xetex.tex +%% and the derived file toptesi-doc-xetex.pdf. %% %% The toptesi-example.tex source file is just an example that shows how %% to use the various commands; by commenting or uncommenting certain @@ -418,10 +410,10 @@ %% The toptesi.cfg file is a sample of a local configuration file that can be %% freely edited and modified. %% -%% By running pdflatex on toptesi.dtx the user gets the cls, sty and cfg files +%% By running pdflatex on toptesi.dtx the user gets the class, sty and cfg files %% and the English documentation file in pdf format. %% -%% The documentation file toptesi-doc.pdf is in Italian; its source file is +%% The documentation file toptesi-doc-xetex.pdf is in Italian; its source file is %% another example of how to use toptesi. %% %% End of file `topfront.sty'. diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi.cfg b/Master/texmf-dist/tex/latex/toptesi/toptesi.cfg index d60a0fc4cf8..78dcce4b29b 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi.cfg +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi.cfg @@ -7,7 +7,7 @@ %% toptesi.dtx (with options: `topcfg') %% ______________________________________________________ %% The TOPtesi package -%% Copyright (C) 2010 Claudio Beccari +%% Copyright (C) 2011 Claudio Beccari %% All rights reserved %% %% License information appended @@ -27,11 +27,10 @@ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} - %% %%================================================================ %% This file is the only file of the TOPtesi bundle that the user -%% can modify without restrictions in order to personalize the +%% can modify without restrictions in order to customize the %% contents of this configuration file to his/her needs. The user %% can add or remove lines, comment or uncomment lines, change the %% arguments to the macros, add definitions and so on. @@ -61,10 +60,10 @@ %% and the derived files: %% %% toptesi.cls, toptesi.sty, topfront.sty, topcommand.sty, -%% toptesi.cfg, and the English documentation toptesi.pdf; +%% toptesi.cfg, and the English documentation toptesi.pdf. %% -%% Furthermore the bundle contains the documentation source file toptesi-doc.tex -%% and the derived file toptesi-doc.pdf. +%% Furthermore the bundle contains the documentation source file toptesi-doc-xetex.tex +%% and the derived file toptesi-doc-xetex.pdf. %% %% The toptesi-example.tex source file is just an example that shows how %% to use the various commands; by commenting or uncommenting certain @@ -74,10 +73,10 @@ %% The toptesi.cfg file is a sample of a local configuration file that can be %% freely edited and modified. %% -%% By running pdflatex on toptesi.dtx the user gets the cls, sty and cfg files +%% By running pdflatex on toptesi.dtx the user gets the class, sty and cfg files %% and the English documentation file in pdf format. %% -%% The documentation file toptesi-doc.pdf is in Italian; its source file is +%% The documentation file toptesi-doc-xetex.pdf is in Italian; its source file is %% another example of how to use toptesi. %% %% End of file `toptesi.cfg'. diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi.cls b/Master/texmf-dist/tex/latex/toptesi/toptesi.cls index 3b2bf38aed8..741cca0626f 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi.cls +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi.cls @@ -7,7 +7,7 @@ %% toptesi.dtx (with options: `class') %% ______________________________________________________ %% The TOPtesi package -%% Copyright (C) 2010 Claudio Beccari +%% Copyright (C) 2011 Claudio Beccari %% All rights reserved %% %% License information appended @@ -27,14 +27,23 @@ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} - \NeedsTeXFormat{LaTeX2e} \ProvidesClass{toptesi}% -[2011/05/25 v.5.50 Class for typesetting university theses] +[2011/08/09 v.5.59 Class for typesetting university theses] \DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}} \ProcessOptions\relax \LoadClass[a4paper]{report} -\RequirePackage[english,italian]{babel} +\RequirePackage{ifxetex} +\ifxetex + \RequirePackage{fontspec} + \RequirePackage{polyglossia} + \setmainlanguage{italian} + \setotherlanguage{english} + \renewcommand*{\iflanguage}[1]{\ifnum\the\language=\csname l@#1\endcsname + \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi} +\else + \RequirePackage[english,italian]{babel} +\fi \RequirePackage{toptesi} %% %% Copyright 2005-2011 Claudio Beccari @@ -49,10 +58,10 @@ %% and the derived files: %% %% toptesi.cls, toptesi.sty, topfront.sty, topcommand.sty, -%% toptesi.cfg, and the English documentation toptesi.pdf; +%% toptesi.cfg, and the English documentation toptesi.pdf. %% -%% Furthermore the bundle contains the documentation source file toptesi-doc.tex -%% and the derived file toptesi-doc.pdf. +%% Furthermore the bundle contains the documentation source file toptesi-doc-xetex.tex +%% and the derived file toptesi-doc-xetex.pdf. %% %% The toptesi-example.tex source file is just an example that shows how %% to use the various commands; by commenting or uncommenting certain @@ -62,10 +71,10 @@ %% The toptesi.cfg file is a sample of a local configuration file that can be %% freely edited and modified. %% -%% By running pdflatex on toptesi.dtx the user gets the cls, sty and cfg files +%% By running pdflatex on toptesi.dtx the user gets the class, sty and cfg files %% and the English documentation file in pdf format. %% -%% The documentation file toptesi-doc.pdf is in Italian; its source file is +%% The documentation file toptesi-doc-xetex.pdf is in Italian; its source file is %% another example of how to use toptesi. %% %% End of file `toptesi.cls'. diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi.sty b/Master/texmf-dist/tex/latex/toptesi/toptesi.sty index a727632b4a1..8f27454d7cf 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi.sty +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi.sty @@ -7,7 +7,7 @@ %% toptesi.dtx (with options: `topsty') %% ______________________________________________________ %% The TOPtesi package -%% Copyright (C) 2010 Claudio Beccari +%% Copyright (C) 2011 Claudio Beccari %% All rights reserved %% %% License information appended @@ -27,17 +27,17 @@ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} - \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{toptesi}% -[2011/05/25 v.5.50 Extension for toptesi.cls]% +[2011/08/09 v.5.59 Extension for toptesi.cls]% \def\TRON{\tracingcommands \tw@ \tracingmacros \tw@} \def\TROFF{\tracingcommands\z@ \tracingmacros \z@} \let\TROF\TROFF \newif\if@utoretitolo \@utoretitolofalse \newif\if@ldstyle \@ldstylefalse \newif\if@xivpt \@xivptfalse -\newlength\T@Pbinding\setlength\T@Pbinding{7mm}\def\setbindingcorrection#1{\T@Pbinding=#1} +\newlength\T@Pbinding\setlength\T@Pbinding{7mm} +\def\setbindingcorrection#1{\T@Pbinding=#1} \newif\if@binding \@bindingfalse \newif\ifT@Ppdfa \T@Ppdfafalse \newif\ifchapterbibliography \chapterbibliographyfalse @@ -81,11 +81,11 @@ \mark{{}{}} \newbox\@intesta \def\ps@plain{\let\@mkboth\@gobbletwo -\def\@oddfoot{\null\hfill \textsc{\lapagina}\hfill \null}\def\@oddhead{} +\def\@oddfoot{\null\hfill {\scshape\lapagina}\hfill \null}\def\@oddhead{} \def\@evenhead{}\let\@evenfoot\@oddfoot} \if@twoside \def\ps@headings{\let\@mkboth\markboth% - \def\@oddfoot{\null\hfill \textsc{\lapagina} \hfill\null} + \def\@oddfoot{\null\hfill {\scshape\lapagina} \hfill\null} \let\@evenfoot\@oddfoot % \def\@evenhead{\setbox\@intesta\hbox{\footnotesize\slshape @@ -103,7 +103,7 @@ \thesection\ -- \fi ##1}}} \else \def\ps@headings{\let\@mkboth\markboth - \def\@oddfoot{\null \hfill \textsc{\lapagina} \hfill \null} + \def\@oddfoot{\null\hfill {\scshape\lapagina} \hfill\null} \def\@evenfoot{} \def\@oddhead{\setbox\@intesta\hbox{\footnotesize\slshape \rightmark}% @@ -112,10 +112,27 @@ \strut\rightmark}}}% \def\chaptermark##1{\markright{\thechapter\ -- ##1}}} \fi + \def\headWarn#1{\PackageWarning{toptesi}{% THE HEADING IS TOO LONG\MessageBreak Use the optional argument of command \string#1\MessageBreak See the LaTeX Handbook (1994) on section C.4.1\MessageBreak}} +\renewcommand*\l@chapter[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 1.0em \@plus\p@ + \setlength\@tempdima{1.5em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak + \hb@xt@\@pnumwidth{\hss\unless\ifxetex\normalfont\fi\scshape{#2}}\par + \penalty\@highpenalty + \endgroup + \fi} \newif\iffigurespage \newif\iftablespage \newif\ifnumeriromani @@ -337,8 +354,42 @@ Skipping any redefinition\MessageBreak}% \italiano \renewcommand\@chapapp{\chaptername}% } +\ifxetex +\AtBeginDocument{\RequirePackage{topfront} +\RequirePackage{topcoman}} +\else \RequirePackage{topfront} \RequirePackage{topcoman} +\fi +\def\sf@size{7} +\ifxetex\else +\renewcommand*\not{\mathrel{\mathchoice% +{\rlap{$\displaystyle\mkern2.5mu\mathnormal{/}$}}% +{\rlap{$\textstyle\mkern2.5mu\mathnormal{/}$}}% +{\rlap{$\scriptstyle\mkern2.5mu\mathnormal{/}$}}% +{\rlap{$\scriptscriptstyle\mkern2.5mu\mathnormal{/}$}}% +}} +\renewcommand\mapstochar{\mathrel{\mathchoice +{\displaystyle\unitlength=0.0555\fontdimen6\font + \picture(0,0)\put(1,1.5){\linethickness{0.72\unitlength}% + \line(0,1){6}}\endpicture} +{\textstyle\unitlength=0.0555\fontdimen6\font + \picture(0,0)\put(1,1.5){\linethickness{0.72\unitlength}% + \line(0,1){6}}\endpicture} +{\scriptstyle\unitlength=0.0555\fontdimen6\font + \picture(0,0)\put(1,0.55){\linethickness{0.61\unitlength}% + \line(0,1){5}}\endpicture} +{\scriptscriptstyle\unitlength=0.0555\fontdimen6\font + \picture(0,0)\put(1,0.2){\linethickness{0.56\unitlength}% + \line(0,1){4}}\endpicture} +}}\fi +\ifT@Ppdfa + \unless\ifxetex + \RequirePackage[a-1b]{pdfx} + \else + \RequirePackage{hyperref} + \fi +\fi \ifclassica \def\Candidato{Laureando} \def\Candidata{Laureanda} @@ -364,13 +415,13 @@ Skipping any redefinition\MessageBreak}% \def\@oddfoot{\null \hfill \textbf{\lapagina} \hfill \null}% \let\@evenfoot\@oddfoot \def\@evenhead{% - \setbox\@intesta\hbox{\latintext + \setbox\@intesta\hbox{\unless\ifxetex\latintext\fi \footnotesize\strut\textsc{% \@author\ifx\@secondauthor\empty\else\ et al.\fi: \@stitle}% }% \ifdim\wd\@intesta>\textwidth\headwrn{\titolo}\fi \underline{\makebox[\textwidth]{\box\@intesta}}}% - \def\@oddhead{\latintext + \def\@oddhead{\unless\ifxetex\latintext\fi \setbox\@intesta\hbox{% \footnotesize\strut\textsl{\rightmark}}% \ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi% @@ -381,19 +432,19 @@ Skipping any redefinition\MessageBreak}% \renewcommand*{\ps@headings}{\let\@mkboth\markboth \def\@oddfoot{\null \hfill \textbf{\lapagina}\hfill \null}% \let\@evenfoot\empty\let\@evenhead\empty - \def\@oddhead{{\setbox\z@\hbox{\latintext\footnotesize + \def\@oddhead{{\setbox\z@\hbox{\unless\ifxetex\latintext\fi\footnotesize \textsc{% \@author\ifx\@secondauthor\empty\else\ et al.\fi: \@stitle}}% - \setbox\tw@\hbox{\latintext\footnotesize\textsl{\rightmark}}% + \setbox\tw@\hbox{\unless\ifxetex\latintext\fi\footnotesize\textsl{\rightmark}}% \dimen@=2em\advance\dimen@\wd\z@\advance\dimen@\wd\tw@ \ifdim\dimen@<\textwidth \relax \else \setbox\z@\vbox{\hsize.48\textwidth\parindent\z@\raggedright - \latintext\footnotesize\textsc{% + \unless\ifxetex\latintext\fi\footnotesize\textsc{% \@author\ifx\@secondauthor\empty\else\ et al.\fi: \@stitle }}% \setbox\tw@\vbox{\hsize.48\textwidth\parindent\z@\raggedleft - \latintext\footnotesize\textsl{\rightmark}}% + \unless\ifxetex\latintext\fi\footnotesize\textsl{\rightmark}}% \fi \setbox\@intesta\vbox to\z@{% \vss\hbox to\textwidth{\strut\box\z@\hfill\box\tw@}}% @@ -451,27 +502,6 @@ Skipping any redefinition\MessageBreak}% }{% \endlist\clearpage } -\renewcommand*\not{\mathrel{\mathchoice% -{\rlap{$\displaystyle\mkern2.5mu\mathnormal{/}$}}% -{\rlap{$\textstyle\mkern2.5mu\mathnormal{/}$}}% -{\rlap{$\scriptstyle\mkern2.5mu\mathnormal{/}$}}% -{\rlap{$\scriptscriptstyle\mkern2.5mu\mathnormal{/}$}}% -}} -\renewcommand\mapstochar{\mathrel{\mathchoice -{\displaystyle\unitlength=0.0555\fontdimen6\font - \picture(0,0)\put(1,1.5){\linethickness{0.72\unitlength}% - \line(0,1){6}}\endpicture} -{\textstyle\unitlength=0.0555\fontdimen6\font - \picture(0,0)\put(1,1.5){\linethickness{0.72\unitlength}% - \line(0,1){6}}\endpicture} -{\scriptstyle\unitlength=0.0555\fontdimen6\font - \picture(0,0)\put(1,0.55){\linethickness{0.61\unitlength}% - \line(0,1){5}}\endpicture} -{\scriptscriptstyle\unitlength=0.0555\fontdimen6\font - \picture(0,0)\put(1,0.2){\linethickness{0.56\unitlength}% - \line(0,1){4}}\endpicture} -}} -\ifT@Ppdfa\RequirePackage[a-1b]{pdfx}\fi %% %% Copyright 2005-2011 Claudio Beccari %% @@ -485,10 +515,10 @@ Skipping any redefinition\MessageBreak}% %% and the derived files: %% %% toptesi.cls, toptesi.sty, topfront.sty, topcommand.sty, -%% toptesi.cfg, and the English documentation toptesi.pdf; +%% toptesi.cfg, and the English documentation toptesi.pdf. %% -%% Furthermore the bundle contains the documentation source file toptesi-doc.tex -%% and the derived file toptesi-doc.pdf. +%% Furthermore the bundle contains the documentation source file toptesi-doc-xetex.tex +%% and the derived file toptesi-doc-xetex.pdf. %% %% The toptesi-example.tex source file is just an example that shows how %% to use the various commands; by commenting or uncommenting certain @@ -498,10 +528,10 @@ Skipping any redefinition\MessageBreak}% %% The toptesi.cfg file is a sample of a local configuration file that can be %% freely edited and modified. %% -%% By running pdflatex on toptesi.dtx the user gets the cls, sty and cfg files +%% By running pdflatex on toptesi.dtx the user gets the class, sty and cfg files %% and the English documentation file in pdf format. %% -%% The documentation file toptesi-doc.pdf is in Italian; its source file is +%% The documentation file toptesi-doc-xetex.pdf is in Italian; its source file is %% another example of how to use toptesi. %% %% End of file `toptesi.sty'. -- cgit v1.2.3