diff options
Diffstat (limited to 'Master/texmf-dist')
18 files changed, 1142 insertions, 669 deletions
diff --git a/Master/texmf-dist/doc/latex/toptesi/LPPL.tex b/Master/texmf-dist/doc/latex/toptesi/LPPL.tex deleted file mode 100644 index 0bd4aeb51d0..00000000000 --- a/Master/texmf-dist/doc/latex/toptesi/LPPL.tex +++ /dev/null @@ -1,409 +0,0 @@ -\chapter{The \LaTeX\ Project Public License}\label{ch:LPPL} -\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 36ac9623628..dccaae41bed 100644 --- a/Master/texmf-dist/doc/latex/toptesi/README +++ b/Master/texmf-dist/doc/latex/toptesi/README @@ -17,16 +17,23 @@ to the double degree programs of the European Union Erasmus programs or the Life Long Learning European programs. This version 6.x is backwards compatible, but it is completely new; it -uses key=value options, and uses different modules to typeset all -types of thesis supported by the package; it allows to select the use +uses key=value options, and uses different modules to typeset any +type of thesis supported by the package; it allows to select the use of the frontespizio package to typeset the title page in substitution of its standard modules; it allows a custom setting, to let the user -typeset his/her own title page layout. +typeset the titlepage with his/her own title page layout. As a new feature, among the various thesis types there is also the one that Italian students submit to the examining committee of their final high-school State Exam. +Version 6.2.09 has a different (backwards compatible) way of handling +the metadata required by the PDF/A regulations. It has a check to inhibit +the use of hacked and/obsolete versions of its modules, so as to avoid +requests of assistance in these cases: a strong visible message is issued +to warn the user and the job is aborted. The documentation is further +corrected and updated. + Version 6.2.05 has several corrections to the documentation; in particular for what concerns the production of PDF/A compliant files, since the actual pdfx package has a glitch, known to its maintainers, diff --git a/Master/texmf-dist/doc/latex/toptesi/lppl.tex b/Master/texmf-dist/doc/latex/toptesi/lppl.tex new file mode 100644 index 00000000000..bf0da5c7bb6 --- /dev/null +++ b/Master/texmf-dist/doc/latex/toptesi/lppl.tex @@ -0,0 +1,511 @@ +% +% Copyright 1999 2002-2011 LaTeX3 Project +% Everyone is allowed to distribute verbatim copies of this +% license document, but modification of it is not allowed. +% +% +% If you wish to load it as part of a ``doc'' source, you have to +% ensure that a) % is a comment character and b) that short verb +% characters are being turned off, i.e., +% +% \DeleteShortVerb{\'} % or whatever was made a shorthand +% \MakePercentComment +% \input{lppl} +% \MakePercentIgnore +% \MakeShortVerb{\'} % turn it on again if necessary +% +% +% By default the license is produced with \section* as the highest +% heading level. If this is not appropriate for the document in which +% it is included define the commands listed below before loading this +% document, e.g., for inclusion as a separate chapter define: +% +% \providecommand{\LPPLsection}{\chapter*} +% \providecommand{\LPPLsubsection}{\section*} +% \providecommand{\LPPLsubsubsection}{\subsection*} +% \providecommand{\LPPLparagraph}{\subsubsection*} +% +% +% To allow cross-referencing the headings \label's have been attached +% to them, all starting with ``LPPL:''. As by default headings without +% numbers are produced, this will only allow page references. +% However, you can use the titleref package to produce textual +% references or you change the definitions of \LPPLsection, and +% friends to generated numbered headings. +% +% +% We want it to be possible that this file can be processed by +% (pdf)LaTeX on its own, or that this file can be included in another +% LaTeX document without any modification whatsoever. +% Hence the little test below. +% +% +\makeatletter +\ifx\@preamblecmds\@notprerr + % In this case the preamble has already been processed so this file + % is loaded as part of another document; just enclose everything in + % a group + \let\LPPLicense\bgroup + \let\endLPPLicense\egroup +\else + % In this case the preamble has not been processed yet so this file + % is processed by itself. + \documentclass{article} + \let\LPPLicense\document + \let\endLPPLicense\enddocument +\fi +\makeatother + + +\begin{LPPLicense} + \providecommand{\LPPLsection}{\section*} + \providecommand{\LPPLsubsection}{\subsection*} + \providecommand{\LPPLsubsubsection}{\subsubsection*} + \providecommand{\LPPLparagraph}{\paragraph*} + \providecommand*{\LPPLfile}[1]{\texttt{#1}} + \providecommand*{\LPPLdocfile}[1]{`\LPPLfile{#1.tex}'} + \providecommand*{\LPPL}{\textsc{lppl}} + + \LPPLsection{The \LaTeX\ Project Public License} + \label{LPPL:LPPL} + + \emph{LPPL Version 1.3c 2008-05-04} + + \textbf{Copyright 1999, 2002--2008 \LaTeX3 Project} + \begin{quotation} + Everyone is allowed to distribute verbatim copies of this + license document, but modification of it is not allowed. + \end{quotation} + + \LPPLsubsection{Preamble} + \label{LPPL:Preamble} + + The \LaTeX\ Project Public License (\LPPL) is the primary license + under which 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 it is written in such a way that you can use + it 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 \LPPLdocfile{cfgguide} and + \LPPLdocfile{modguide} in the base \LaTeX\ distribution for suggestions. + + + \LPPLsubsection{Definitions} + \label{LPPL:Definitions} + + In this license document the following terms are used: + + \begin{description} + \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 \textsc{ftp} or + \textsc{http} or by shared file systems such as Sun's Network File + System (\textsc{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' or in the case of files belonging to the + `\LaTeX-format' a program implementing the `\TeX{} language'. + \end{description} + + \LPPLsubsection{Conditions on Distribution and Modification} + \label{LPPL:Conditions} + + \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\label{LPPL:item:distribute} 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~\ref{LPPL:item:distribute} 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\label{LPPL:item:currmaint} 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\label{LPPL:item:conditions} 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\label{LPPL:item:changelog} 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\label{LPPL:item:unmodifiedcopy} 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~\ref{LPPL:item:conditions}, 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~\ref{LPPL:item:currmaint}, 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~\ref{LPPL:item:conditions} 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 a different 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~\ref{LPPL:item:conditions} 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} + + \LPPLsubsection{No Warranty} + \label{LPPL: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 required by applicable law or 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. + + \LPPLsubsection{Maintenance of The Work} + \label{LPPL:Maintenance} + + 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 it 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\label{LPPL:item:intention} 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 + \texttt{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\label{LPPL:item:announce} 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\label{LPPL:item:change} If you make an `intention + announcement' as described in~\ref{LPPL:item:intention} 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~\ref{LPPL:item:announce} + or~\ref{LPPL:item:change}, 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~\ref{LPPL:item:intention} above. + + \LPPLsubsection{Whether and How to Distribute Works under This License} + \label{LPPL:Distribute} + + This section contains important instructions, examples, and + recommendations for authors who are considering distributing their + works under this license. These authors are addressed as `you' in + this section. + + \LPPLsubsubsection{Choosing This License or Another License} + \label{LPPL:Choosing} + + If for any part of your work you want or need to use + \emph{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 \LPPLdocfile{modguide} in the base \LaTeX\ distribution + explains the motivation behind the conditions of this license. It + explains, for example, why distributing \LaTeX\ under the + \textsc{gnu} General Public License (\textsc{gpl}) was considered + inappropriate. Even if your work is unrelated to \LaTeX, the + discussion in \LPPLdocfile{modguide} may still be relevant, and authors + intending to distribute their works under any license are encouraged + to read it. + + \LPPLsubsubsection{A Recommendation on Modification Without Distribution} + \label{LPPL:WithoutDistribution} + + 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. + + \LPPLsubsubsection{How to Use This License} + \label{LPPL:HowTo} + + 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 2005 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 + % https://www.latex-project.org/lppl.txt + % and version 1.3 or later is part of all distributions of LaTeX + % version 2005/12/01 or later. + % + % This work has the LPPL maintenance status `maintained'. + % + % The 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 `\LPPLfile{pig.dtx}', `\LPPLfile{pig.ins}', and + `\LPPLfile{pig.sty}' (the last being generated from + `\LPPLfile{pig.dtx}' using `\LPPLfile{pig.ins}'), the `Base + Interpreter' referring to any `\LaTeX-Format', and both `Copyright + Holder' and `Current Maintainer' referring to the person `M. Y. + Name'. + + If you do not want the Maintenance section of \LPPL\ to apply to + your Work, change `maintained' above into `author-maintained'. + However, we recommend that you use `maintained' as the Maintenance + section was added in order to ensure that your Work remains useful + to the community even when you can no longer maintain and support it + yourself. + + \LPPLsubsubsection{Derived Works That Are Not Replacements} + \label{LPPL:NotReplacements} + + Several clauses of the \LPPL\ specify means to provide reliability + and stability for the user community. They therefore concern + themselves with the case that a Derived Work is intended to be used + as a (compatible or incompatible) replacement of the original + Work. If this is not the case (e.g., if a few lines of code are + reused for a completely different task), then clauses + \ref{LPPL:item:changelog} and \ref{LPPL:item:unmodifiedcopy} + shall not apply. + + \LPPLsubsubsection{Important Recommendations} + \label{LPPL:Recommendations} + + \LPPLparagraph{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{LPPLicense} +\endinput diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-it.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi-it.pdf Binary files differindex 9be3543d4ce..d02f0580111 100644 --- a/Master/texmf-dist/doc/latex/toptesi/toptesi-it.pdf +++ b/Master/texmf-dist/doc/latex/toptesi/toptesi-it.pdf diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-it.tex b/Master/texmf-dist/doc/latex/toptesi/toptesi-it.tex index 7e0496e5974..5ebbd848715 100644 --- a/Master/texmf-dist/doc/latex/toptesi/toptesi-it.tex +++ b/Master/texmf-dist/doc/latex/toptesi/toptesi-it.tex @@ -19,6 +19,24 @@ % appendix of this documentation, but the primary source remains in % http://www.latex-project.org/ % +\documentclass[% + corpo=12pt,% + tipotesi=monografia,% + twoside,% +% numerazioneromana,% +% libro% +]{toptesi}\errorcontextlines=9 +\ProvidesFile{toptesi-it.tex}[2018-11-20 v.0.9.37] +%%% Il pacchetto imakeidx va caricato prima di pdfx, +%%% altrimenti non funziona bene +\usepackage{imakeidx}% Vedi documentazione +\indexsetup{headers={\indexname}{\indexname}} + +% Avendo caricato il pacchetto filecontents.sty nella classe +% questo ambiente va caricato dopo \documenclass e prima di +% caricare pdfx. +% Viene riscritto tranquillamente ad ogni compilazione. +% \begin{filecontents*}{\jobname.xmpdata} \Title{La classe TOPtesi} \Author{Claudio Beccari} @@ -33,27 +51,7 @@ LuaLaTeX} \setRGBcolorprofile{sRGB.icc}{sRGB}{Argyll CMS, sRGB color profile}{https://www.argyllcms.com/} \end{filecontents*} % -\documentclass[% - corpo=12pt,% - tipotesi=monografia,% - twoside,% -% numerazioneromana,% -% libro% -]{toptesi}\errorcontextlines=9 -\ProvidesFile{toptesi-it.tex}[2018-10-30 v.0.9.35] -%%% Il pacchetto imakeidx va caricato prima di pdfx, -%%% altrimenti non funziona bene -\usepackage{imakeidx}% Vedi documentazione -\indexsetup{headers={\indexname}{\indexname}} - -\unless\ifXeTeX % una di queste due macro è necessaria sui Mac - \providecommand{\MacOSColordir}{/System/Library/ColorSync/Profiles/} -% \MacOSColordir - -%\providecommand{\AdobeMacOSdir}% -% {/Library/Application Support/Adobe/Color/Profiles/Recommended/} -% \AdobeMacOSdir - +\unless\ifXeTeX \usepackage[a-1b]{pdfx}% vedi documentazione \fi \ifPDFTeX @@ -185,14 +183,16 @@ tabularx,enumitem,ragged2e,siunitx,curve2e,microtype} \fontsize{#2}{#2}\selectfont} \makeatletter -\def\GetFileInfo#1{% - \def\filename{#1}% - \edef\@tempa{\csname ver@#1\endcsname}% - \def\@tempb##1 ##2 ##3\relax##4\relax{% - \def\filedate{##1}% - \edef\fileversion{\@gobbletwo##2}% - \def\fileinfo{##3}}% - \expandafter\@tempb\@tempa\space\relax\hbox{} \hbox{} \relax\relax} +% \GetFileInfo è già definita dalla classe +% +%\def\GetFileInfo#1{% +% \def\filename{#1}% +% \edef\@tempa{\csname ver@#1\endcsname}% +% \def\@tempb##1 v.##2 ##3\relax##4\relax{% +% \def\filedate{##1}% +%% \edef\fileversion{\@gobbletwo##2}% +% \def\fileinfo{##3}}% +% \expandafter\@tempb\@tempa\space\relax\hbox{} \hbox{} \relax\relax} \def\bottomfraction{1} @@ -288,12 +288,11 @@ tabularx,enumitem,ragged2e,siunitx,curve2e,microtype} urlcolor={blue} } + \makeindex[intoc,columns=2] \begin{document} % -% - \thispagestyle{empty} \vspace*{.2\textheight} @@ -319,14 +318,14 @@ tabularx,enumitem,ragged2e,siunitx,curve2e,microtype} \titolo{Il pacchetto \TOPtesi\\ \textnormal{\normalsize Versione\ \classvers\ del \classdate}} \TitoloListaCandidati{} -\sottotitolo{Per comporre tesi al Politecnico di Torino\\e in molte altre università\\[1ex] +\sottotitolo{Per comporre tesi in molti atenei fra i quali il Politecnico di Torino\\[1ex] Il pacchetto \TOPtesi contiene la classe omonima e diversi altri file per comporre tesi di diverso tipo\\[1ex] Questa documentazione fornisce anche le linee guida per comporre una tesi rispettando certe regole tipografiche} \GetFileInfo{toptesi-it.tex} \sedutadilaurea{Documentazione: versione \fileversion\ del \filedate} \retrofrontespizio{Questo testo è libero secondo le condizioni stabilite dalla \LaTeX Project Public Licence (LPPL) riportata -nell'appendice~\ref{ch:LPPL} alla pagina~\pageref{ch:LPPL}. +nella pagina~\pageref{ch:LPPL}. \bigskip @@ -336,11 +335,11 @@ nell'appendice~\ref{ch:LPPL} alla pagina~\pageref{ch:LPPL}. \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 le sue varianti \pdfLaTeX, \XeLaTeX\ o \LuaLaTeX; per produrre con \XeLaTeX\ il file finale in formato PDF archiviabile secondo la norma ISO \mbox{19005-1} bisogna procedere come descritto nel paragrafo~\ref{sec:XePDFA}. +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 le sue varianti \pdfLaTeX, \XeLaTeX\ o \LuaLaTeX; per produrre con \XeLaTeX\ il file finale in formato PDF archiviabile secondo la norma ISO \mbox{19005-1} bisogna procedere come descritto nel paragrafo~\ref{sec:XePDFA}. Il formato PDF archiviabile si ottiene più facilmente con \LuaLaTeX e \pdfLaTeX. \english \sommario -This text describes how to typeset a university master thesis, or the bachelor final report, or the PhD dissertation through the well known typesetting program \LaTeX, or rather through its variants \pdfLaTeX, \XeLaTeX, or \LuaLaTeX; in order to produce the final document in a PDF archivable format according to the ISO regulation \mbox{19005-1} it's necessary to proceed as described in section~\ref{sec:XePDFA}. +This text describes how to typeset a university master thesis, or the bachelor final report, or the PhD dissertation through the well known typesetting program \LaTeX, or rather through its variants \pdfLaTeX, \XeLaTeX, or \LuaLaTeX; in order to produce the final document in a PDF archivable format according to the ISO regulation \mbox{19005-1} it's necessary to proceed as described in section~\ref{sec:XePDFA}. A PDFA archivable output file is more easily obtained with \LuaLaTeX and \pdfLaTeX. \italiano @@ -353,10 +352,12 @@ Ringrazio gli studenti del Politecnico di Torino che mi hanno sollecitato a mett \indici +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \chapter{Guida rapida all'uso di questo manuale} -Prima di prendere ironicamente l'aggettivo `rapida' attribuito a questa guida di più di 160 pagine, vorrei sottolineare che essa è lunga perché TOPtesi permette di svolgere moltissimi compiti. E per comporre bene la propria tesi, le cose da fare sono moltissime e non sono descritte tutte in questa guida. Ma c'è un altro aspetto: comporre tipograficamente non consiste solo nel seguire certe regole tali da far diventare questa operazione una cosa che potrebbe fare qualunque macchina; c'è di mezzo il gusto estetico personale; la materia di cui si tratta nella tesi; il fatto che ogni problema di composizione non ha mai un'unica soluzione; e via di questo passo. Non è un caso che il sistema \TeX offra una moltitudine di pacchetti per comporre tesi, ognuno di quali risolve certi problemi di composizione secondo i gusti di chi ha scritto quella classe, o quel pacchetto, o quel modello. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +Prima di prendere ironicamente l'aggettivo `rapida' attribuito a questa guida di più di 170 pagine, vorrei sottolineare che essa è lunga perché TOPtesi permette di svolgere moltissimi compiti. E per comporre bene la propria tesi, le cose da fare sono moltissime e non sono descritte tutte in questa guida. Ma c'è un altro aspetto: comporre tipograficamente non consiste solo nel seguire certe regole tali da far diventare questa operazione una cosa che potrebbe fare qualunque macchina; c'è di mezzo il gusto estetico personale; la materia di cui si tratta nella tesi; il fatto che ogni problema di composizione non ha mai un'unica soluzione; e via di questo passo. Non è un caso che il sistema \TeX offra una moltitudine di pacchetti per comporre tesi, ognuno di quali risolve certi problemi di composizione secondo i gusti di chi ha scritto quella classe, o quel pacchetto, o quel modello. -Ecco, questa guida è lunga perché cerco di spiegare in dettaglio come certi problemi siano stati affrontati in modo che il laureando possa capire come ho affrontato il problema e quali alternative esistono. +Ecco, questa guida è lunga perché cerco di spiegare in dettaglio come certi problemi siano stati affrontati in modo che il laureando possa capire come ho affrontato ciascun problema e quali alternative esistono. Questo testo è destinato specialmente agli studenti universitari, ma non lascia a piedi gli studenti delle scuole secondarie superiori che si accingono a predisporre la loro “tesina” da presentare alla commissione dell'esame di Stato, che essi devono affrontare alla fine di questo loro ciclo di studi. @@ -368,13 +369,13 @@ Non spaventatevi quindi della lunghezza di questo testo; al di là degli aspetti Nella pagina~\pageref{warn:avvertenza} c'è scritto in rosso quanto segue. \begin{quote}{\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 testuali, 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 tal documentazione”; per voi sarebbe una vera umiliazione\dots} +Attenzione: non si minimizzi la frase precedente: la documentazione va letta sempre e capita fino in fondo; se c'è qualcosa che non si capisce, ci si provi ad esercitare con qualche piccolo esercizio, visto che la pratica permette di capire la teoria (e viceversa), ma non si vada a cercare aiuto in rete nei vari forum dedicati a \LaTeX per farvi dire: “guarda nella pagina tal-dei-tali della tal documentazione”; per voi sarebbe una vera umiliazione\dots} \end{quote} -Detto in altre parole, non cominciate nemmeno a leggere questo manuale e non usate \TOPtesi se non avete ancora un minimo di conoscenza di \LaTeX. Non è solo una questione di esperienza pratica; è anche una questione di linguaggio; se non si conosce la terminologia, non si capisce nemmeno quello che si legge. Faccio solo un paio di esempi che mostrano l'ambiguità di certi termini, dei quali bisogna conoscere il significati e bisogna saperli distinguere in base al contesto. +Detto in altre parole, non si cominci nemmeno a leggere questo manuale e non si usi \TOPtesi se non si ha ancora un minimo di conoscenza di \LaTeX. Non è solo una questione di esperienza pratica; è anche una questione di linguaggio; se non si conosce la terminologia, non si capisce nemmeno quello che si legge. Faccio solo un paio di esempi che mostrano l'ambiguità di certi termini, dei quali bisogna conoscere il significati e bisogna saperli distinguere in base al contesto. \begin{description}[noitemsep] \item[Pacchetto] In inglese esistono due termini usati nel sistema \TeX: \emph{bundle} e \emph{package}: il primo termine si riferisce ad una collezione di diversi file, per lo più di tipo \emph{package}, ma non solo; i file di tipo \emph{package} sono delle collezioni di definizioni, le cosiddette macro. In italiano i due termini vengono abitualmente tradotti entrambi con il nome \emph{pacchetto}, per cui la parola italiana è ambigua. \textcolor{red}{Per questo motivo nel seguito mi riferirò all'intero pacchetto \TOPtesi usando le prime tre lettere maiuscole, mentre mi riferirò a certi file interni con i nomi `classe' (per esempio classe \class{toptesi}), e `modulo' (per esempio modulo \pack{toptesi}) usando lettere minuscole e caratteri diversi da quelli del testo. Per file che non fanno parte di \TOPtesi userò il comune nome `pacchetto' perché i loro autori li hanno chiamati `package'.} -\item[Formato] Nel mondo \TeX la parola \emph{formato}, in inglese \emph{format}, ha almeno tre significati; i principali significati sono i seguenti. +\item[Formato] Nel mondo \TeX la parola \emph{formato}, in inglese \emph{format}, ha almeno tre significati; i principali sono i seguenti. \begin{description}[noitemsep] \item[Forma del mark up] Con questo significato ci si riferisce al file con estensione \file{.fmt} che contiene la traduzione in linguaggio macchina dell'insieme di macro che definiscono il mark up specifico del linguaggio usato; qui potrebbero interessare i file di formato \file{pdflatex.fmt}, \file{xelatex.fmt}, \file{lualatex,fmt}; ne esistono diversi altri. \item[Forma della pagina del testo composto] Le varie carte disponibili vengono vendute in diversi formati; per esempio A4 (210\unit{mm} per 297\unit{mm}), B5 (176\unit{mm} per 210\unit{mm}), eccetera. Si può usare questa parola anche per riferirsi alla forma della gabbia del testo e al layout della pagina composta tipograficamente. @@ -385,7 +386,7 @@ Detto in altre parole, non cominciate nemmeno a leggere questo manuale e non usa \section{A cosa serve TOPtesi} -Serve per comporre una tesi, sia essa la \emph{monografia} (detta anche \emph{elaborato finale}) preparata alla fine della laurea triennale, oppure la \emph{tesi di laurea} predisposta alla fine della laurea magistrale, o della laurea a ciclo unico, oppure la \emph{dissertazione di dottorato}. Sia essa da scrivere in italiano o in un'altra lingua. +Serve per comporre una tesi, sia essa la \emph{monografia} (detta anche \emph{elaborato finale} o \emph{tesi di laurea triennale}) preparata alla fine della laurea triennale, oppure la \emph{tesi di laurea} predisposta alla fine della laurea magistrale, o della laurea a ciclo unico, oppure la \emph{dissertazione di dottorato}. Sia essa da scrivere in italiano o in un'altra lingua. La tesi, in realtà, non è altro che il rapporto relativo allo studio, alla ricerca, alle sperimentazioni, al progetto, svolti come lavoro conclusivo di un periodo di studi universitari. Il contenuto della tesi non differisce sostanzialmente da qualunque altro rapporto scritto in una qualsiasi disciplina su cui verta principalmente la tesi. @@ -393,13 +394,13 @@ La tesi, in realtà, non è altro che il rapporto relativo allo studio, alla ric La “tesi” differisce da un generico rapporto, perché ha un valore legale come elaborato da presentare all'esame finale per un ciclo di studi superiori; deve quindi avere certi requisiti che permettano di soddisfare le richieste di tipo burocratico di ogni ateneo. -Questi requisiti riguardano principalmente il frontespizio; quindi in questo manuale si dedicherà molto spazio alla predisposizione del frontespizio da comporre con vari stili, e in diverse lingue. +Questi requisiti riguardano principalmente le informazioni da inserire nel frontespizio , eventualmente nel retrofrontespizio; quindi in questo manuale si dedicherà molto spazio alla predisposizione del frontespizio da comporre con vari stili, e in diverse lingue. -Con questa nuova versione di \TOPtesi il pacchetto viene esteso anche alla compilazione della \emph{tesina} da presentare all'esame di stato per il conseguimento del diploma di maturità. È chiaro che la tesina ha scopi diversi da quelli delle tesi universitarie, ma è comunque un testo che deve essere composto con dignità tipografica se non altro per amor proprio, ma anche per mostrare alla commissione d'esame che come si è dedicata una cura particolare all'aspetto dell'elaborato così se ne è dedicata altrettanta al suo contenuto. +Con la versione 6.x di \TOPtesi il pacchetto viene esteso anche alla compilazione della \emph{tesina} da presentare all'esame di stato per il conseguimento del diploma di maturità. È chiaro che la tesina ha scopi diversi da quelli delle tesi universitarie, ma è comunque un testo che deve essere composto con dignità tipografica se non altro per amor proprio, ma anche per mostrare alla commissione d'esame che come si è dedicata una cura particolare all'aspetto dell'elaborato così se ne è dedicata altrettanta al suo contenuto. \TOPtesi serve anche per fornire alcune altre semplici estensioni che rendono più agevole la redazione del contenuto della tesi, ma in fondo non è questa la parte più importante di \TOPtesi. -Come tutti i pacchetti che estendono la funzionalità di \LaTeX, \TOPtesi definisce la geometria della pagina e dispone le informazioni accessorie come le testatine e i piedini. Queste impostazioni non sono modificabili né con \TOPtesi né con la maggior parte degli altri pacchetti destinati alle tesi. Più o meno vale il concetto “prendere o lasciare”. +Come tutti i pacchetti che estendono le funzionalità di \LaTeX, \TOPtesi definisce la geometria della pagina e dispone le informazioni accessorie come le testatine e i piedini. Queste impostazioni non sono modificabili né con \TOPtesi né con la maggior parte degli altri pacchetti destinati alle tesi. Più o meno vale il concetto “prendere o lasciare”. Questo è un aspetto importante: \textcolor{red}{la licenza \LaTeX Project Public Licence (LPPL), riportata per esteso nell'appendice della pagina~\pageref{ch:LPPL} consente di apportare modifiche ai file di questo pacchetto, ma solo a certe condizioni. Per non violare queste condizioni, nel caso che si vogliano apportare modifiche ai file del pacchetto, si veda il capitolo~\ref{ch:customise}}. {\tolerance=3000 Prima di usare \TOPtesi si esaminino i semplici esempi contenuti nei file accessori di questo pacchetto: \file{toptesi-example.pdf}, \file{toptesi-example-luatex.pdf}, \file{topfront.example.pdf}, \texttt{toptesi-example-con-frontespizio.pdf}\index{file!toptesi-example-con-frontespizio.pdf@\texttt{toptesi\discretionary{-}{}{-}example\discretionary{-}{}{-}con\discretionary{-}{}{-}frontespizio.pdf}} e diversi altri che sono variazioni dei precedenti. Si potrà vedere se l'impaginazione aggrada oppure se si desidera un'altra impaginazione; in questo secondo caso ci si rivolga ad altre classi e ad altri pacchetti: in rete non è difficile usare un motore di ricerca per trovare il pacchetto \pack{frontespizio}, le classi \class{sapthesis}, \class {suftesi}, i modelli \file{TesiModerna}, \file{TesiClassica} e diverse altre classi prodotte specialmente nel mondo angloamericano e ancor meno adatte ad una personalizzazione multilingue. Alcune di queste classi sono dotate di eccellenti file di documentazione, altre sono usabili grazie a “template” o modelli di tesi scritte facendo uso di testo fittizio, ma tali da rendere immediatamente l'idea di come usare quei software.\par} @@ -412,21 +413,21 @@ Esistono opzioni specifiche anche per le normali tesi triennale, magistrale e do \section{Cosa leggere} Un manuale di solito non è da leggere dalla prima pagina all'ultima. Se ne possono saltare diverse sezioni, ma è bene sapere che cosa si salta, quindi una rapida sfogliata delle pagine che si saltano non fa male. -Se avete già il sistema \TeX installato nel vostro PC, potete saltare buona parte del capitolo~\ref{cap:introduzione}, ma almeno una volta conviene leggere la parte che precede il primo paragrafo numerato. +Se si ha già il sistema \TeX installato nel proprio elaboratore, si può saltare buona parte del capitolo~\ref{cap:introduzione}, ma almeno una volta conviene leggere la parte che precede il primo paragrafo numerato. -Del capitolo~\ref{cap:uso} è opportuno leggere il paragrafo~\ref{sec:configurazione}, perché descrive l'uso di un file di configurazione, che non è obbligatorio usare, ma che può risultare molto comodo. +Del capitolo~\ref{cap:uso} è opportuno leggere il paragrafo~\ref{sec:configurazione}, perché descrive l'uso di un file di configurazione, che non è obbligatorio usare, ma che può risultare comodo. -Conviene leggere l'uso dei loghi nel paragrafo~\ref{ssec:loghi}, perché \TOPtesi consente di usare diversi loghi nel frontespizio e li può collocare in posti diversi della pagina. +Conviene leggere l'uso dei loghi nel paragrafo~\ref{ssec:loghi}, perché \TOPtesi consente di usarne diversi nel frontespizio e li può collocare in posti diversi della pagina. Il paragrafo~\ref{sec:cominciare} espone come impostare inizialmente il documento principale della tesi e di come frazionarne il contenuto in diversi file. Non esiste un unico metodo e i vari metodi presentano vantaggi e svantaggi. Conviene conoscere bene questi metodi e i loro pro e contro, anche perché nella documentazione di \LaTeX per neofiti questi concetti non vengono mai affrontati con la necessaria profondità. Il paragrafo~\ref{sec:codifica} è fondamentale; disporre di un editor che salva i file sorgente con una certa codifica e poi cercare di compilare quei file con \LaTeX impostato per una codifica diversa, vuol dire combinare pasticci inenarrabili; in questo manuale si consiglia di usare sia per l'editor sia per \LaTeX la codifica \opt{utf8} ma è il laureando che deve sceglierla in base alle caratteristiche del suo software e ai programmi che intende usare per la compilazione. Tutti e tre i programmi principali di composizione, \pdfLaTeX, \XeLaTeX, e \LuaLaTeX\ funzionano bene con la codifica \opt{utf8}; \pdfLaTeX\ funziona anche con altre codifiche; gli editor un po' datati non funzionano con la codifica \opt{utf8}, quindi è evidente che le varie situazioni richiedono impostazioni attente e accurate. Se fosse necessario, l'argomento codifiche può essere approfondito anche su altri testi liberi, per esempio la guida tematica che si trova nella sezione documentazione dell'associazione \GuIT, in \url{http://guitex.org/home/images/doc/GuideGuIT/introcodifiche.pdf} dal titolo \emph{Introduzione alle codifiche in entrata e in uscita}. -Il paragrafo~\ref{sec:lingue} descrive come impostare il file sorgente della tesi per comporre il testo in diverse lingue o per impostare una lingua principale diversa dall'italiano. È essenziale per comporre tesi in programmi di doppia laurea. Infatti \TOPtesi è stato creato anche per poter soddisfare le esigenze che un numero sempre maggiore di laureandi incontrano quando partecipano a programmi di doppio titolo con quelli europei Erasmus, Life Long Learning, Erasmus Mundus, eccetera; le tesi svolte in questi percorsi solitamente richiedono l'uso di altre lingue oltre o in sostituzione dell'italiano. \TOPtesi viene incontro a queste esigenze sia grazie all'uso di \pdfLaTeX\ o \XeLaTeX\ o \LuaLaTeX\ che sono in grado di gestire una ottantina di lingue, sia perché quasi tutti i comandi che devono essere usati per il frontespizio e per molte strutture interne sono completamente configurabili in accordo con le lingue usate. Il paragrafo~\ref{sec:lingue} provvede a spiegare come eseguire queste configurazioni. +Il paragrafo~\ref{sec:lingue} descrive come impostare il file sorgente della tesi per comporre il testo in diverse lingue o per impostare una lingua principale diversa dall'italiano. È essenziale per comporre tesi in programmi di doppia laurea. Infatti \TOPtesi è stato creato anche per poter soddisfare le esigenze che un numero sempre maggiore di laureandi incontrano quando partecipano a programmi di doppio titolo come quelli europei Erasmus, Life Long Learning, Erasmus Mundus, eccetera; le tesi svolte in questi percorsi solitamente richiedono l'uso di altre lingue oltre o in sostituzione dell'italiano. \TOPtesi viene incontro a queste esigenze sia grazie all'uso di \pdfLaTeX\ o \XeLaTeX\ o \LuaLaTeX\ che sono in grado di gestire più di una ottantina di lingue, sia perché quasi tutti i comandi che devono essere usati per il frontespizio e per molte strutture interne sono completamente configurabili in accordo con le lingue usate. Il paragrafo~\ref{sec:lingue} provvede a spiegare come eseguire queste configurazioni. Per la questione codifiche e la questione lingue, due aspetti che hanno forti collegamenti, è opportuno tenere presenti le seguenti considerazioni. -\TOPtesi non serve solo per comporre tesi di laurea in ingegneria. Sono al corrente che il pacchetto \TOPtesi è stato usato per comporre almeno una tesi di filologia greca classica, e almeno una tesi di commento ad un testo copto altomedievale. Di queste sono sicuro, ma ho informazioni indirette che sono state composte altre tesi in lingue moderne e antiche che facevano uso di alfabeti diversi da quello cosiddetto “latino”. Al tempo di quelle due tesi sul greco antico e sul copto altomedievale non esistevano ancora i programmi del sistema \TeX, \XeLaTeX\ e \LuaLaTeX; oggi che sono disponibili forse sarebbero state composte più facilmente con uno di questi due programmi; ma con questi è obbligatorio usare la codifica d'entrata \opt{utf8}\footnote{In realtà si potrebbero anche usare le codifiche a 8~bit tipiche di \pdfLaTeX, ma bisogna ricorrere ad artifici che non vale la pena usare quando sono disponibili i font OpenType; sarebbe stato necessario farlo per il copto altomedievale e per il copto liturgico, per i quali ho creato solo font con codifiche a 8~bit.} e font codificati UNICODE, come i font OpenType. +\TOPtesi non serve solo per comporre tesi di laurea in ingegneria benché sia nato in quest'ambiente disciplinare. Sono al corrente che il pacchetto \TOPtesi è stato usato per comporre almeno una tesi di filologia greca classica, e almeno una tesi di commento ad un testo copto altomedievale. Di queste sono sicuro, ma ho informazioni indirette che sono state composte altre tesi in lingue moderne e antiche che facevano uso di alfabeti diversi da quello cosiddetto “latino”. Al tempo di quelle due tesi sul greco antico e sul copto altomedievale non esistevano ancora i programmi del sistema \TeX, \XeLaTeX\ e \LuaLaTeX; oggi che sono disponibili forse sarebbero state composte più facilmente con uno di questi due programmi; ma con questi è obbligatorio usare la codifica d'entrata \opt{utf8}\footnote{In realtà si potrebbero anche usare le codifiche a 8~bit tipiche di \pdfLaTeX, ma bisogna ricorrere ad artifici che non vale la pena usare quando sono disponibili i font OpenType; sarebbe stato necessario farlo per il copto altomedievale e per il copto liturgico, per i quali ho creato solo font con codifiche a 8~bit.} e font codificati UNICODE, come i font OpenType. La codifica di entrata \opt{utf8} è consigliabile anche se si usa \pdfLaTeX, ma non è imposta, quindi \TOPtesi è “indifferente"' alla codifica d'entrata purché glielo si dica: \textcolor{red}{è quindi compito e responsabilità del laureando quello di specificare la codifica d'entrata. Similmente in relazione alla lingua o alle lingue usate è compito del laureando specificare la o le codifiche dei font da usare e di specificare i nomi di tali font.} @@ -434,16 +435,16 @@ Infine il capitolo~\ref{cap:comandispecifici} contiene tutti i comandi e gli amb \section{Errori da evitare} -Tuttavia si abbia anche cura di \textcolor{red}{non copiare nel preambolo di una tesi da comporre con \TOPtesi un preambolo recuperato dalla tesi di un amico o, peggio ancora, dalla rete!}. Sarebbe una operazione fonte di molte delusioni, perché da una parte potrebbero venire caricati pacchetti incompatibili con \TOPtesi, dall'altro alcuni comandi di \TOPtesi ne potrebbero venire modificati con funzionalità diverse da quelle previste. Potrebbero anche manifestarsi dei conflitti fra pacchetti caricati nel preambolo e quelli già caricati da \TOPtesi. +Tuttavia si abbia anche cura di \textcolor{red}{non copiare nel preambolo di una tesi da comporre con \TOPtesi un preambolo recuperato dalla tesi di un amico o, peggio ancora, da siti generici della rete!}. Sarebbe una operazione fonte di molte delusioni, perché da una parte potrebbero venire caricati pacchetti incompatibili con \TOPtesi, dall'altro alcuni comandi di \TOPtesi ne potrebbero venire modificati con funzionalità diverse da quelle previste; infine nei siti “non certificati” della rete si trovano versioni obsolete, fonte di innumerevoli delusioni. Potrebbero anche manifestarsi dei conflitti fra pacchetti caricati nel preambolo e quelli già caricati da \TOPtesi. Un modello di tesi copiato da un amico può esporre anche a delusioni incredibili, mancanza di supporto on line e incomprensioni di vario genere e a notevoli perdite di tempo anche quando l'aiuto viene richiesto direttamente a me (per favore, passare sempre attraverso il Forum del \GuIT); a questo proposito si veda quanto scritto nel capitolo~\ref{ch:customise}. \emph{Per questo motivo da questa versione di \TOPtesi, viene fatto un cntrollo e se la classe non carica la giusta versioen del modilo \pack{toptesi.sty}, emette un messaggio molto visibile e termina la compilazione immediatamente} \section{Pacchetti già caricati da TOPtesi} Vale la pena di elencare i pacchetti o moduli già caricati dalla classe \class{toptesi}, al fine di evitare di ricaricarli nel preambolo della propria tesi. \begin{description}[noitemsep]\def\Item[#1]{\item[\normalfont\pack{#1}]} -\Item[toptesi] è il file di macro di \TOPtesi; potrebbe anche essere usato con una classe diversa da \class{toptesi}. +\Item[toptesi] è il file di macro di \TOPtesi; potrebbe anche essere usato con una classe diversa da \class{toptesi}; la classe \class{toptesi} però lo carica specificandone la data in modo che se la versione presente sul proprio calcolatore fosse obsoleta, verrebbe almeno generato un avviso (Warning) che lo segnala. % \Item[graphicx] serve per gestire diverse funzioni grafiche e per l'inclusione di file grafici esterni, come fotografie, disegni, e simili. % -\Item[etoolbox] è un pacchetto di servizio, le cui funzionalità possono essere usate anche da un laureando molto competente; questo pacchetto agevola moltissimo la gestione dei file di classe e di quelli di estensione. Se il laureando ha sufficiente padronanza di \LaTeX, può definirsi altri comandi specifici per la sua tesi, sfruttando le funzionalità avanzate di questo pacchetto. +\Item[etoolbox] è un pacchetto di servizio, le cui funzionalità possono essere usate anche da un laureando molto competente; questo pacchetto agevola moltissimo la gestione dei file di classe e di quelli di estensione. Se il laureando ha sufficiente padronanza di \LaTeX, può definirsi altri comandi specifici per la sua tesi, sfruttando le funzionalità avanzate di questo pacchetto. Si veda anche il capitolo~\ref{ch:customise}. % \Item[xspace] serve per definire macro che capiscono da sole se il testo che compongono viene seguito da uno spazio o da un segno analfabetico. In genere viene suggerito di scrivere, per esempio, \verb*|\LaTeX\ |, oppure \verb*|\LaTeX{} |, oppure \verb*|{\LaTeX} | perché lo spazio dopo il logo di \LaTeX non sparisca; con l'uso dello spazio intelligente di questo pacchetto non è più necessario ricorrere a nulla di più che scrivere \verb*|\LaTeX |. @@ -452,22 +453,24 @@ Vale la pena di elencare i pacchetti o moduli già caricati dalla classe \class{ % \Item[fancyverb] serve per comporre testo verbatim in modo più personalizzabile che con i semplici comandi del nucleo di \LaTeX; tuttavia quando il laureando deve listare i programmi che ha scritto per svolgere le ricerche connesse con la sua tesi, è comodo disporre di un comando che importi un file esterno inserendolo direttamente in modo verbatim nel file della propria tesi. Esistono altri pacchetti che permettono di eseguire questa operazione, ma questo ha la proprietà di lavorare correttamente anche con testi codificati~\opz{utf8}. % -\Item[xkeyval] serve per gestire le opzioni con la sintassi \emph{chiave\,$=$\,valore}; è funzionale al lavoro della classe, ma se l'utente sa come gestire queste cose, e ne ha letto la documentazione, può usarlo anche per la definizione di comandi personali dotati di opzioni. +\Item[xkeyval] serve per gestire le opzioni con la sintassi \emph{chiave\,$=$\,valore}; è funzionale al lavoro della classe, ma se l'utente sa come gestire queste cose, e ne ha letto la documentazione, può usarlo anche per la definizione di comandi personali dotati di opzioni a chiave. % \Item[topfront] contiene i comandi specifici per comporre il frontespizio; potrebbe venire anche usato da solo con un'altra classe; se si specifica alla classe \class{toptesi} l'opzione \chiave{tipotesi}{topfront} oppure senza specificare nessuna opzione che contenga la chiave \chiave{tipotesi}, viene usato questo pacchetto per comporre il frontespizio della tesi; se si specifica uno degli altri valori leciti per la chiave \chiave{tipotesi}, se ne inibisce il caricamento così che l'operatore possa comporre il frontespizio con uno degli altri moduli dedicati di \TOPtesi o con altri pacchetti esterni, oppure possa comporlo a modo suo sfruttando come meglio crede l'ambiente \env{titlepage}. La classe \class{toptesi} carica questo modulo e gli altri moduli dedicati solo durante l'esecuzione del comando \Bambiente{document}, quindi nessun comando che abbia a che fare con il frontespizio può essere usato nel preambolo, in quanto \pack{topfront} o ogni altro modulo dedicato non è ancora stato letto e quindi i comandi non sono ancora stati definiti. % \Item[topcoman] è un piccolo pacchetto che contiene alcuni comandi utili in generale, non solo per l'uso con \TOPtesi. Non è possibile inibirne il caricamento, ma si è fatto il possibile affinché provveda da solo a non entrare in conflitto con altri pacchetti; finora non ho rilevato conflitti. % -\Item[iftex] serve per distinguere il motore di composizione con cui si compila la tesi; distingue \prog*{pdftex}, \prog*{xetex}, e \prog*{luatex}; questi sono i nomi dei programmi che effettivamente traducono in linguaggio macchina ed eseguono le macro definite con il linguaggio \LaTeX rispettivamente da \prog*{pdflatex}, \prog*{xelatex}, e \prog*{lualatex}. +\Item[iftex] serve per distinguere il motore di composizione con cui si compila la tesi; distingue \prog*{pdftex}, \prog*{xetex}, e \prog*{luatex}; questi sono i nomi dei programmi che effettivamente traducono in linguaggio macchina le istruzioni specificate con il mark-up \LaTeX e le eseguono rispettivamente da \prog*{pdflatex}, \prog*{xelatex}, e \prog*{lualatex}. % \item[\normalfont\meta{nome del main file}\file{.cfg}] Il file di configurazione specifico per una data tesi viene caricato solo se ne esiste una versione nella medesima cartella dove risiede il main file della tesi stessa. % -\Item[babel] viene caricato con le opzioni \opt{english} e \opt{italian}, cosicché l'italiano risulta svolgere le funzioni della lingua principale; questo pacchetto viene caricato solo se si compone la tesi con \prog{pdflatex}, che \TOPtesi riconosce da solo grazie all'uso del pacchetto \pack{iftex}. Con l'opzione \chiave{tipotesi}{scudo} l'inglese viene impostato come lingua principale. +\Item[babel] viene caricato con le opzioni \opt{english} e \opt{italian}, cosicché l'italiano risulta svolgere le funzioni della lingua principale; questo pacchetto viene caricato solo se si compone la tesi con \prog{pdflatex}, che \TOPtesi riconosce da solo grazie all'uso del pacchetto \pack{iftex}. Con l'opzione \chiave{tipotesi}{scudo}, invece, l'inglese viene impostato come lingua principale. % \Item[polyglossia] viene caricato solo se la tesi viene composta con \XeLaTeX\ o \LuaLaTeX. L'italiano viene specificato come lingua principale, e l'inglese come altra lingua. Con l'opzione \chiave{tipotesi}{scudo} l'inglese viene viene invece impostato come lingua principale. % -\Item[pdfx] deve venire caricato esplicitamente dall'utente, come spiegato nell'apposito paragrafo; nelle versioni precedenti esso veniva caricato specificando l'opzione \opt{pdfa} per produrre un file possibilmente conforme al formato PDF/A. Ora, per compatibilità con il passato, l'opzione è ancora attiva, ma il suo scopo è solo quello di emettere l'avviso di consultarne la documentazione. +\Item[pdfx] ora deve venire caricato esplicitamente dall'utente per produrre un file possibilmente conforme al formato PDF/A; nelle versioni precedenti esso veniva caricato specificando l'opzione \opt{pdfa}. Ora l'opzione è ancora attiva, ma il suo scopo è solo quello di emettere l'avviso di consultare la documentazione. Per usare correttamente \pack{pdfx} \TOPtesi carica anche il pacchetto che segue e lo fa indipendentemente dal fatto che si voglia usare \pack{pdfx}. +% +\Item[filecontents] serve per ridefinire gli ambienti \amb{filecontents} e \amb{filecontents*} in modo che non siano soggetti alle limitazioni degli omonimi ambienti del nucleo di \LaTeX. Quelli originali non si possono usare fuori del preambolo ma si possono usare anche prima della dichiarazione di classe; inoltre gli ambienti originali non permttono di ridefinire il loro contenuto se non dopo aver cancellato a mano il file che l'ambiente creerebbe. Per i file da comporre con \TOPtesi è necessario creare i corrispondenti file con i metadati; ad ogni modifica dei metadati diventerebbe troppo complesso ricordarsi di cancellare i file precedentemente creati; non che sia difficile, ma è facile dimenticarsene e finire con trovare messaggi d'errore incomprensibili oppure file non conformi con le norme PDF/A. % \Item[hyperref] serve per comporre i collegamenti ipertestuali. Non è il caso di preoccuparsi di quando \TOPtesi carica \pack{hyperref} perché ci pensa lui a usarlo al momento opportuno. Si veda più avanti per sapere come e quando eventualmente configurare \pack{hyperref} con le sue opzioni. \end{description} @@ -486,26 +489,26 @@ Si noti: usando \prog{pdflatex}, non sono precaricati i pacchetti \pack{inputenc È voluto: \pack{inputenc} non deve essere caricato se si usano \XeLaTeX\ o \LuaLaTeX, ma in entrambi i casi l'editor che si usa per comporre il file sorgente \emph{deve} essere configurato in modo che salvi i file sorgente con la codifica \opt{utf8}. Con \pdfLaTeX\ ci sarebbe una certa libertà nello scegliere la codifica d'entrata, ma, insisto, sarebbe meglio in ogni caso evitare di usare qualunque altra codifica diversa da \opt{utf8}. -Per i font di uscita la o le codifiche da specificare dipendono dalle lingue usate; ripeto la raccomandazione di preferire i font espressamente creati per l'uso con \pdfLaTeX, quando si compone con questo programma; se si usano i programmi \XeLaTeX\ o \LuaLaTeX\ si abbia l'accortezza di usare il pacchetto \pack{fontspec} (che \emph{non} è precaricato) specificandogli le opzioni giuste e caricando poi, mediante le sue funzionalità, i font OpenType di cui si sia accertata la presenza sulla propria macchina e si sia verificato che contengano tutti i glifi che si intendono usare nella tesi. Tanto per sottolineare l'importanza di questa verifica, questi programmi lavorano di default con i font Latin Modern, che, come dice il nome, contengono \emph{solo} i caratteri latini. Se ci fosse bisogno di scrivere in greco o in cirillico, per esempio, allora i font OpenType \Font{UCM}\footnote{Questi font sono distribuiti con il sistema \TeX completo e aggiornato; la sigla UCM sta per \Font{Unicode Computer Modern}; contiene un solo corpo che può essere ingrandito o rimpicciolito a piacere; contiene sia i font latini, sia quelli greci e quelli cirillici; sostanzialmente contiene tutti i glifi greci che sono disponibili con la collezione CBfonts, anche quelli insoliti come `qoppa", `stigma' e `sampi".} contengono anche questi alfabeti. +Per i font di uscita la o le codifiche da specificare dipendono dalle lingue usate; ripeto la raccomandazione di preferire i font espressamente creati per l'uso con \pdfLaTeX, quando si compone con questo programma; se si usano i programmi \XeLaTeX\ o \LuaLaTeX\ si abbia l'accortezza di usare il pacchetto \pack{fontspec} (che \emph{non} è precaricato) specificandogli le opzioni giuste e caricando poi, mediante le sue funzionalità, i font OpenType di cui si sia accertata la presenza sulla propria macchina e si sia verificato che contengano tutti i glifi che si intendono usare nella tesi. Tanto per sottolineare l'importanza di questa verifica, questi programmi lavorano di default con i font Latin Modern, che, come dice il nome, contengono \emph{solo} i caratteri latini. Se ci fosse bisogno di scrivere in greco o in cirillico, per esempio, allora i font OpenType \Font{CMU}\footnote{Questi font sono distribuiti con il sistema \TeX completo e aggiornato; la sigla CMU sta per \Font{Computer Modern Unicode}; contiene un solo corpo che può essere ingrandito o rimpicciolito a piacere; contiene sia i font latini, sia quelli greci e quelli cirillici; sostanzialmente contiene tutti i glifi greci che sono disponibili con la collezione CBfonts, anche quelli insoliti come `qoppa", `stigma' e `sampi". I font OpenType CMU contengono gli stili Bright, Classical Serif, Concrete, Sans Serif, Sans Serif Demi Condensed, Serif, Serif Extra (sostanzialmente i font della forma slanted), Serif Upright Italic, Typewrite Text, Typewriter Text Variable Width. La collezione è quindi molto completa.} contengono anche questi alfabeti. -Ecco quindi che la specificazione delle codifiche dei font di uscita è importante per \pdfLaTeX\ perché con questo programma i font predefiniti sono i \Font{Computer Modern} codificati in \opt{OT1}; questi infatti mancano di qualunque segno accentato e non sono nemmeno completamente compatibili con la codifica \acro{ascii}. Questi font preimpostati potevano (forse) andare bene ai primordi dell'esistenza del sistema \TeX ma non vanno bene oggi nemmeno per l'inglese, visto che anche in inglese si fanno citazioni di testi o di nomi di persone in lingue straniere che usano caratteri latini accentati. +Ecco quindi che la specificazione delle codifiche dei font di uscita è importante per \pdfLaTeX\ perché con questo programma i font predefiniti sono i \Font{Computer Modern} codificati in \opt{OT1}; questi infatti mancano di qualunque segno accentato e non sono nemmeno completamente compatibili con la codifica \acro{ascii}. Questi font preimpostati potevano (forse) andare bene ai primordi dell'esistenza del sistema \TeX ma non vanno bene oggi nemmeno per l'inglese, visto che anche in inglese si fanno citazioni di testi o di nomi di persone o di luoghi in lingue straniere che usano caratteri latini accentati. -Per motivi diversi non si sono caricati altro che pacchetti funzionali alla classe, ma nessun pacchetto specifico per scopi particolari della tesi (salvo piccole eccezioni che confermano la regola: i moduli per la tesina e per la tesi ScuDo preimpostano alcuni altri pacchetti); per esempio, per la composizione della matematica estesa, non si sono caricati \pack{amsmath}, \pack{amssymb} (che a sua volta carica \pack{amsfonts}), né \pack{amsthm} per la definizione di enunciati come teoremi, lemmi corollari, definizioni e simili, né \pack{bm}, per comporre in neretto matematico simboli isolati di una formula. Se si usano \XeLaTeX\ o \LuaLaTeX\ si possono caricare i pacchetti \pack{amsmath} e \pack{amsthm}, ma non si devono assolutamente caricare i pacchetti \pack{amssymb} e \pack{amsfonts}; invece si deve specificare il pacchetto \pack{unicode-math} e bisogna esplicitamente indicare i font OpenType matematici che si vogliono usare. +Per motivi diversi non si sono caricati altro che pacchetti funzionali alla classe, ma nessun pacchetto specifico per scopi particolari della tesi (salvo piccole eccezioni che confermano la regola: i moduli per la tesina e per la tesi ScuDo preimpostano alcuni altri pacchetti); per esempio, per la composizione della matematica estesa, non si sono caricati \pack{amsmath}, \pack{amssymb} (che a sua volta carica \pack{amsfonts}), né \pack{amsthm} per la definizione di enunciati come teoremi, lemmi corollari, definizioni e simili, né \pack{bm}, per comporre in neretto matematico simboli isolati di una formula. Se si usano \XeLaTeX\ o \LuaLaTeX\ si possono caricare i pacchetti \pack{amsmath} e \pack{amsthm}, ma non si devono assolutamente caricare i pacchetti \pack{amssymb} e, quindi, nemmeno \pack{amsfonts}; invece si deve specificare il pacchetto \pack{unicode-math} e bisogna esplicitamente indicare i font OpenType matematici che si vogliono usare. È certo che quegli ulteriori pacchetti sono utilissimi per ingegneri, fisici e matematici, forse anche per studiosi di altre discipline, ma è probabile che non siano utili per le tesi umanistiche. Il concetto alla base di queste scelte è il seguente: è bene non caricare pacchetti di utilità ipotetica sulla base del detto: “non si sa mai, potrebbero tornare utili”. Alcuni di questi pacchetti sono stati caricati per comporre questa guida, perché vengono usati per davvero; ma, in generale, meno pacchetti si caricano meno possibilità di conflitti si generano\footnote{Tali conflitti non dovrebbero mai generarsi, tuttavia in un sistema aperto come il sistema \TeX, che accetta contributi da “chiunque”, è inevitabile che non tutti i collaboratori seguano gli stessi stili di programmazione; per cui i conflitti sono molto rari, ma purtroppo ci sono.} -Non si è caricato nulla per comporre la bibliografia (eccetto per il modulo ScuDo; si veda come evitare quel caricamento nella sezione specifica); l'utente è completamente responsabile e autonomo di scegliere una composizione manuale o automatica; in questo secondo caso esistono molti pacchetti sia per \pdfLaTeX\ sia per \XeLaTeX e \LuaLaTeX. Personalmente debbo ammettere che mi piace molto lo stile generato dal pacchetto \pack{natbib} e sulla base dei suoi file di stile bibliografico me ne sono creati alcuni molto personalizzati; ma in generale consiglierei di usare il pacchetto \pack{biblatex} dalle funzionalità molto avanzate e in grado di caricare a sua volta diversi moduli di configurazione (una scelta fra una trentina di moduli); il pacchetto è particolarmente efficace se si usa il programma \prog{biber} per estrarre dai propri database bibliografici solo le opere da citare, elencandole nella bibliografia in modi diversi e consentendo diversi stili di citazione nel testo e nelle note. L'unico svantaggio di \pack{biblatex} è la lunghezza del suo manuale d'uso (\texttt{texdoc biblatex}); esso è necessariamente lungo proprio perché le funzionalità del pacchetto sono sterminate. +Non si è caricato nulla per comporre la bibliografia (eccetto per il modulo ScuDo; si veda come evitare quel caricamento nella sezione specifica); l'utente è completamente responsabile e autonomo di scegliere una composizione manuale o automatica; in questo secondo caso esistono molti pacchetti sia per \pdfLaTeX\ sia per \XeLaTeX e \LuaLaTeX. Personalmente debbo ammettere che mi piace molto lo stile generato dal pacchetto \pack{natbib} e sulla base dei suoi file di stile bibliografico me ne sono creati alcuni molto personalizzati; ma in generale consiglierei di usare il pacchetto \pack{biblatex} dalle funzionalità molto avanzate e in grado di caricare a sua volta diversi moduli di configurazione (da scegliere fra una trentina di moduli); il pacchetto è particolarmente efficace se si usa il programma \prog{biber} per estrarre dai propri database bibliografici solo le opere da citare, elencandole nella bibliografia in modi diversi e consentendo diversi stili di citazione nel testo e nelle note. L'unico svantaggio di \pack{biblatex} è la lunghezza del suo manuale d'uso (\texttt{texdoc biblatex}); esso è necessariamente lungo proprio perché le funzionalità del pacchetto sono sterminate. Non si sono caricati nemmeno i pacchetti per il disegno programmato come, per esempio, \pack{tikz}; a un laureando in ingegneria certamente servono, a un laureando in letteratura medievale difficilmente potrebbero servire. -Non venga in mente al laureando in discipline che fanno uso della matematica delle grandezze, di caricare quei font che non gli permettono di comporla secondo le norme ISO-UNI; fra questi font incompatibili con le norme ci sono i font \Font{euler}, certamente molto belli, ma non consentono di rispettare le norme ISO-UNI, perché i caratteri non sono sufficientemente inclinati come invece deve essere un buon corsivo matematico (\emph{math italics}) e molti caratteri non sono facilmente distinguibili da quelli composti in tondo (\emph{roman}). Le norme ISO-UNI, applicabili alle discipline che usano la matematica delle grandezze, prescrivono un uso molto specifico di font di famiglie e serie diverse, in quanto queste assumono significati particolari per questo tipo di matematica. +Non venga in mente al laureando in discipline che fanno uso della matematica delle grandezze, di caricare quei font che non gli permettono di comporla secondo le norme ISO-UNI; fra questi font incompatibili con le norme ci sono i font \Font{euler}, certamente molto belli, ma non consentono di rispettare le norme ISO-UNI, perché i caratteri non sono sufficientemente inclinati come invece deve essere un buon corsivo matematico (\emph{math italics}) e molti caratteri non sono facilmente distinguibili da quelli da compore in tondo (\emph{roman}). Le norme ISO-UNI, applicabili alle discipline che usano la matematica delle grandezze, prescrivono un uso molto specifico di font di famiglie e serie diverse, in quanto queste assumono significati particolari per questo tipo di matematica. \section{Pacchetti da non caricare affatto} \textcolor{red}{Non si devono assolutamente caricare pacchetti che modifichino l'aspetto della pagina, né caricare pacchetti che modifichino la composizione dei titoli o delle didascalie o delle note}; eccezionalmente si può caricare il pacchetto \pack{caption}; \TOPtesi verifica se tale pacchetto è stato effettivamente caricato e, nel caso, non definisce nemmeno le macro che esso userebbe per le sue didascalie. -Se si vuole fare questo genere di modifiche, stile della pagina, testatine, piedini, note,~\dots\ è meglio rivolgersi ad altri pacchetti diversamente configurabili; cito fra gli altri \class{suftesi}, \class{sapthesis}; ma quando si va a leggerne la documentazione si scopre che tutti vietano la modifica dell'aspetto della pagina o dei titoli o delle didascalie, a meno che quelle stesse classi non dispongano di comandi già predisposti per la personalizzazione di alcuni di quegli elementi. In particolare \class{sufftesi} consente moltissime personalizzazioni che riguardano prevalentemente il testo, piuttosto che la geometria della pagina; tuttavia esso è una validissima alternativa a TOPtesi. +Se si vuole fare questo genere di modifiche, stile della pagina, testatine, piedini, note,~\dots\ è meglio rivolgersi ad altri pacchetti diversamente configurabili; cito fra gli altri \class{suftesi}, \class{sapthesis}; ma quando si va a leggerne la documentazione si scopre che tutti vietano la modifica dell'aspetto della pagina o dei titoli o delle didascalie, a meno che quelle stesse classi non dispongano di comandi già predisposti per la personalizzazione di alcuni di quegli elementi. In particolare \class{sufftesi} consente moltissime personalizzazioni che riguardano prevalentemente il testo, oltre alla geometria della pagina; tuttavia esso è una validissima alternativa a TOPtesi. Se il laureando va a cercare in rete altri pacchetti per comporre tesi, si trova davanti allo stesso ostacolo. Se la propria università prescrive stili di pagina diversi o mette a disposizione file di classe appositi (di solito piuttosto datati e costruiti male), si renderebbe necessario creare una classe apposita per soddisfare quelle esigenze. Non saprei cosa consigliare, se non ricorrere ad una classe generica, per esempio \class{book}, e caricare tutti i possibili pacchetti di configurazione che si considerino necessari, per arrivare ad un risultato come quello richiesto dalla propria sede universitaria; i pacchetti preconfezionati come \TOPtesi, e gli altri citati sopra, risparmiano questo lavoro, ma sono rigidi. In fondo anche \TOPtesi è costruito così: parte dalla classe \class{report} e vi costruisce attorno quello che si è voluto fare in base a prescrizioni valide per il Politecnico di Torino, ma lungamente discusse e concordate con l'ateneo e poi rese compatibili con le prescrizioni di diverse altre università. Non è certo un pacchetto perfetto, ma è un buon compromesso. @@ -517,11 +520,11 @@ Nel capitolo~\ref{cap:comandispecifici} sono descritti i comandi specifici e gli In particolare, anche se \TOPtesi è costruita sopra la classe \class{report}, dispone dei comandi di ‘super\-zionamento” \cs{frontmatter},\cs{mainmatter} e \cs{backmattter}, specifici della classe \class{book}, e qui adattati per lo scopo della tesi. Vale la pena ricordare come sono adattati. \begin{description}[noitemsep] -\item[\cs{frontmatter}] è l'impostazione di default; non è necessario specificare questo comando; la differenza rispetto alla definizione della classe \class{book} consiste nel fatto che per impostazione predefinita \emph{non} usa la numerazione romana per le pagine; questo tipo di numerazione si può ottenere solo con l'opzione della classe \chiave{numerazioneromana} che, se impostata, modifica l'aspetto dei numeri usando il maiuscoletto per i simboli romani, invece delle cifre arabe. I comandi di sezionamento non asteriscati non sono numerati ma sono elencati nell'indice; tuttavia al primo comando \cs{chapter} che il compilatore incontra, passa automaticamente alla \cs{mainmatter}. Per questo i capitoli corrispondenti ai ringraziamenti e al sommario sono ottenuti medianti specifici proprio per non commutare alla \cs{mainmatter}. +\item[\cs{frontmatter}] è l'impostazione di default; non è necessario specificare questo comando; la differenza rispetto alla definizione della classe \class{book} consiste nel fatto che per impostazione predefinita \emph{non} usa la numerazione romana per le pagine; questo tipo di numerazione si può ottenere solo con l'opzione della classe \chiave{numerazioneromana} che, se impostata, modifica l'aspetto dei numeri usando il maiuscoletto per i simboli romani, invece delle cifre arabe. I comandi di sezionamento non asteriscati non sono numerati ma sono elencati nell'indice; tuttavia al primo comando \cs{chapter} che il compilatore incontra, passa automaticamente alla \cs{mainmatter}. Per questo i capitoli corrispondenti ai ringraziamenti e al sommario sono ottenuti mediante specifici proprio per non commutare alla \cs{mainmatter}. % \item[\cs{mainmatter}] Numera i capitoli e li indica nell'indice generale; se la numerazione della parte iniziale era romana, la cambia in numerazione con cifre arabe ricominciando da~1, mentre se la numerazione della parte iniziale era in cifre arabe la prosegue senza cambiare aspetto. Come detto, non è necessario, anche se non è proibito, esplicitare questo comando, perché la commutazione dalla parte iniziale a quella principale della tesi avviene automaticamente quando il programma di compilazione incontra il primo comando \cs{chapter}. Questo implica che un'eventuale prefazione o presentazione del lavoro sia formata da un capitolo numerato; questa è l'impostazione predefinita di \TOPtesi; se si vuole fare diversamente bisogna ricorrere a comandi di basso livello del linguaggio \LaTeX come \cs{chapter*} seguito da \cs{addcontentline} con i suoi vari argomenti. % -\item[\cs{backmatter}] Inizia la composizione della parte finale della tesi. Generalmente questa parte finale contiene la bibliografia, ma può contenere anche liste di acronimi, nomenclature, indice analitico,~\dots, tutte parti non obbligatorie, ma talvolta necessarie a seconda del tipo di tesi e del suo contenuto. I comandi \cs{chapter}, quando si compone fronte"/retro, possono iniziare anche sulle pagine pari e non sono numerati. Perciò se la tesi contiene una sola appendice, questa non ha bisogno di numerazione e può costituire il primo capitolo della parte finale; se invece le appendici sono più di una, vanno inserite nella parte finale della parte principale, dopo aver esplicitato l'istruzione \cs{appendix}, che cambia la numerazione dei capitoli da numerica a letterale e cambia il nome “Capitolo” (espresso nella lingua principale della tesi) nel nome “Appendice”. +\item[\cs{backmatter}] Inizia la composizione della parte finale della tesi. Generalmente questa parte finale contiene la bibliografia, ma può contenere anche liste di acronimi, nomenclature, indice analitico,~\dots, tutte parti non obbligatorie, ma talvolta necessarie a seconda del tipo di tesi e del suo contenuto. I comandi \cs{chapter}, quando si compone fronte"/retro, possono iniziare anche sulle pagine pari e non sono numerati. Perciò se la tesi contiene una sola appendice, questa non ha bisogno di numerazione e può costituire il primo capitolo della parte finale; se invece le appendici sono più di una, vanno inserite verso la fine della parte principale, dopo aver esplicitato l'istruzione \cs{appendix}, che cambia la numerazione dei capitoli da numerica a letterale e cambia il nome “Capitolo” nel nome “Appendice” (espressi nella lingua principale della tesi). % \end{description} @@ -541,7 +544,7 @@ Il laureando non dedichi invece troppo tempo alla lettura del paragrafo~\ref{sec \section{Modelli di tesi e di frontespizi} -Ricordo infine che il pacchetto \TOPtesi contiene anche un certo campionario di modelli di tesi e di frontespizi di vario genere, che possono essere composti con diversi programmi di composizione. Il laureando può servirsene in modo molto semplice: copia il file di esempio nella propria cartella di lavoro, gli cambia nome e poi modifica il modello commentando o de-commentando alcune righe, togliendo parti che non servono; per esempio, vi ho messo un piccolo esempio di ringraziamenti, ma i ringraziamenti non andrebbero mai usati -- vedi più avanti perché--; vi ho messo un piccolo esempio di dedica, ma le dediche sono superflue nel 99\% dei casi; eccetera. +Ricordo infine che \TOPtesi contiene anche un certo campionario di modelli di tesi e di frontespizi di vario genere, che possono essere composti con diversi programmi di composizione. Il laureando può servirsene in modo molto semplice: copia il file di esempio nella propria cartella di lavoro, gli cambia nome e poi modifica il modello commentando o de-commentando alcune righe, togliendo parti che non servono; per esempio, vi ho messo un piccolo esempio di ringraziamenti, ma i ringraziamenti non andrebbero mai usati -- vedi più avanti perché--; vi ho messo un piccolo esempio di dedica, ma le dediche sono superflue nel 99\% dei casi; eccetera. Ripulito il preambolo delle cose che non servono, e scelte le righe ritenute necessarie, basta cambiare i nomi di fantasia che ho usato e i testi di fantasia che ho inserito per ottenere lo schema della tesi, che va poi riempito col contenuto relativo a quella che si vuole effettivamente comporre. @@ -549,7 +552,9 @@ Per le tesi di dottorato della ScuDo si è anche predisposto uno schema scritto +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \chapter{Introduzione}\label{cap:introduzione} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Si legge ancora nelle istruzioni per scrivere le tesi di molte università italiane e straniere: @@ -591,8 +596,7 @@ La cosa era o stava diventando insostenibile durante i vari anni in cui uscivano i successivi volumi dell'opera di Knuth \emph{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 e molto vivace dopo oltre -trent'anni di onorato servizio. +ripeto, è ancora in ottima salute e molto vivace dopo una quarantina d'anni di onorato servizio. Inizialmente 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. @@ -619,7 +623,7 @@ 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 piegarle, 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 lo fanno servendosi di altri programmi. +acrobazia con le righe di testo, come per esempio piegarle, 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 lo fanno servendosi di altri programmi. Ci riesce anche \LaTeX, ma non è il suo punto di forza. 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. Se state componendo una tesi nel campo delle scienze umane aspettatevi il meglio in assoluto; se poi vi interessate di filologia di lingue antiche, non c'è altro programma che possiate usare a questo scopo. Aspettatevi uno stampato estremamente professionale. @@ -639,36 +643,36 @@ funzioni, badando invece a presentare sullo schermo con la massima velocità il testo composto. \LaTeX richiede che voi scriviate un testo non formattato in puri -caratteri ASCII\footnote{In realtà potete scrivere con qualunque set di caratteri e con qualunque \emph{codifica}; oggi poi è possibile avere editor testuali che usano la codifica UNICODE, che consente, essendone capaci, di scrivere anche in cinese. Il documento che state leggendo è stato composto usando un file sorgente codificato in UNICODE; non contiene caratteri cinesi, ma avrei potuto farlo se conoscessi questa lingua!}, ma marcato con un particolare sistema di \emph{mark-up} che consente di sapere che cosa sia ogni parte del vostro scritto: una equazione, una citazione, un'enumerazione, un'elencazione, una descrizione, una poesia, una bibliografia, un'epigrafe, eccetera. 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. +caratteri ASCII\footnote{In realtà potete scrivere con qualunque set di caratteri e con qualunque \emph{codifica}; oggi poi è possibile avere editor testuali che usano la codifica UNICODE, che consente, essendone capaci, di scrivere anche in cinese. Il documento che state leggendo è stato composto usando un file sorgente codificato in UNICODE; non contiene caratteri cinesi, ma avrei potuto farlo se conoscessi questa lingua! Per i curiosi: dalla Sezione Guide Tematiche del \GuIT\ si può scaricare una mia guida, \emph{L'Arte di scrivere in diverse lingue con \emph{\{Xe|Lua\}\LaTeX}}, dove compaiono anche esempi di scrittura in greco, in cirillico, in ebraico, in arabo, e nelle lingue orientali cinese, giapponese e coreano.}, ma marcato con un particolare sistema di \emph{mark-up} che consente di sapere che cosa sia ogni parte del vostro scritto: una equazione, una citazione, un'enumerazione, un'elencazione, una descrizione, una poesia, una bibliografia, un'epigrafe, eccetera. 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à una conoscenza di base del linguaggio \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}, da \emph{Introduzione all'arte della composizione tipografica con \LaTeX} a \emph{\LaTeX\-pedia}; basta cercare questi titoli in rete e si troverà da dove scaricarli\footnote{In realtà è molto semplice: il gruppo italiano degli utenti di \TeX e \LaTeX dispone del sito \url{www.guitex.org} da dove si possono scaricare tutte quelle guide.}. +Attenzione: questa guida presuppone che si abbia già una conoscenza di base del linguaggio \LaTeX. Se non la si ha ancora, si installi pure il programma, ma non si usi 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}, da \emph{Introduzione all'arte della composizione tipografica con \LaTeX} a \emph{\LaTeX\-pedia}; basta cercare questi titoli in rete e si troverà da dove scaricarli\footnote{In realtà è molto semplice: il gruppo italiano degli utenti di \TeX e \LaTeX dispone del sito \url{www.guitex.org} da dove si possono scaricare tutte quelle guide.}. -Ricordatevi però che il vostro primo problema sarà quello di superare lo scoglio psicologico di non vedere subito il frutto delle vostre fatiche; abituati come siete ai word processor che seguono il paradigma \emph{What you see is what you get} (Quello che vedi è quello che ottieni), che più realisticamente andrebbe scritto \emph{What you see is all you can get} (Quello che vedi è tutto ciò 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 scrittura iniziale non è importante, ma è importante il significato di ciò che si è scritto; il suo aspetto grafico gli verrà dato da \LaTeX in un secondo tempo e in una maniera estremamente professionale. +Ci si ricordi però che il primo problema sarà quello di superare lo scoglio psicologico di non vedere subito il frutto delle vostre fatiche; abituati come si è ai word processor che seguono il paradigma \emph{What you see is what you get} (Quello che vedi è quello che ottieni), che più realisticamente andrebbe scritto \emph{What you see is all you can get} (Quello che vedi è tutto ciò che puoi ottenere), bisogna 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 scrittura iniziale non è importante, ma è importante il significato di ciò che si è 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 \TOPtesi, ma certo il risultato è molto migliore di quello che si può ottenere con qualsiasi word processor. +Non pretendo di dire che non si possano scrivere tesi ancora più professionali di come si ottengono con \TOPtesi, ma certo il risultato è incomparabilmente migliore di quello che si può ottenere con qualsiasi word processor. Vi consiglio fortemente di \emph{non} lasciarvi “attrarre” dall'usare programmi come LyX o TeXmacs; vi danno l'illusione di comporre come fareste con un comune word processor, anzi TeXmacs usa gli stessi font che userebbe \LaTeX; è tutta un'illusione; la comodità del comporre in modo da vedere sullo schermo qualcosa che vorrebbe essere molto simile a quanto \LaTeX produrrà, vi distrae dal vostro compito di fare attenzione al significato di quello che scrivete, e vi mettete a “giocare” con la sua forma. Non solo, ma quando vorrete estendere le capacità di presentare il testo che volete scrivere alla “\LaTeX”, scoprirete ben presto che con LyX è molto difficile e con TeXmacs è impossibile. -{\tolerance=3000 Procuratevi invece un ottimo \emph{shell editor} predisposto per lavorare con \pdfLaTeX, \XeLaTeX e \LuaLaTeX; supererete ben presto l'imbarazzo di non poter vedere subito il risultato del vostro scrivere, ma sarete abbondantemente ricompensati dalle infinite possibilità compositive dei programmi del sistema \TeX. Più avanti ne parlerò diffusamente, ma qui ho voluto avvisarvi subito di non farvi incantare dal canto delle sirene come LyX e TeXmacs.\par} +{\tolerance=3000 Ci si procuri invece un ottimo \emph{shell editor} predisposto per lavorare con \pdfLaTeX, \XeLaTeX e \LuaLaTeX; si supererà ben presto l'imbarazzo di non poter vedere subito il risultato del proprio scrivere, ma si sarà abbondantemente ricompensati dalle infinite possibilità compositive dei programmi del sistema \TeX. Più avanti ne parlerò diffusamente, ma qui ho voluto avvisarvi subito di non farvi incantare dal canto delle sirene come LyX e TeXmacs.\par} \section{Installare \LaTeX} -Potete saltare questo paragrafo, se avete già installato il necessario per lavorare con \LaTeX; ma non credo che sia inutile che gli diate almeno una rapida scorsa, specialmente se lavorate su piattaforme Windows o piattaforme Linux conformi alle prescrizioni del consorzio Debian. Potreste scoprire che la vostra installazione non è completa o ha delle restrizioni eccessive. +Si può saltare questo paragrafo, se si è già installato il necessario per lavorare con \LaTeX; ma non credo che sia inutile che gli si dia almeno una rapida scorsa, specialmente se si lavora su piattaforme Windows o sulle piattaforme Linux conformi alle prescrizioni del consorzio Debian. Potreste scoprire che la vostra installazione non è completa o ha delle restrizioni eccessive. Ci sono sostanzialmente tre situazioni. \begin{description}[noitemsep] -\item[Windows] Gli utenti delle piattaforme Windows possono collegarsi in rete al sito \url{www.miktex.org} e scaricarsi ed installarsi la distribuzione di \LaTeX, o meglio, del sistema \TeX chiamata \MiKTeX. Se si procede per questa via, allora si scarichi l'installazione completa, anche se si potrebbe installare la versione di base \texttt{small-miktex} che, seguendo le istruzioni di installazione, bisogna configurare in modo da consentirle di scaricare dalla rete ogni possibile pacchetto di estensione che possa via via essere necessario. +\item[Windows] Gli utenti delle piattaforme Windows possono collegarsi in rete al sito \url{www.miktex.org} e scaricarsi ed installarsi la distribuzione di \LaTeX, o meglio, del sistema \TeX, chiamata \MiKTeX. Se si procede per questa via, allora si scarichi l'installazione completa, anche se si potrebbe installare la versione di base \texttt{small-miktex} che, seguendo le istruzioni di installazione, bisogna configurare in modo da consentirle di scaricare dalla rete ogni possibile pacchetto di estensione che possa via via essere necessario. Ovviamente questo modo di installare e usare il sistema \TeX implica una connessione di rete sufficientemente veloce; personalmente, quando usavo una piattaforma Windows, ero solito scaricare la versione completa ed ero molto soddisfatto. -Oggi, però, anche su una macchina Windows consiglierei di installare la distribuzione \TeXLive che viene gestita nello stesso modo sulle piattaforme Windows, Linux e Mac. Il pregio è che \TeXLive viene aggiornata quasi quotidianamente sui server e comunque è la versione dalla quale il curatore di \MiKTeX attinge per creare gli aggiornamenti della sua distribuzione; necessariamente, quindi, prima che il curatore sia riuscito a portare MiKTeX allo stesso livello di \TeXLive, passano di solito alcune settimane, a volte anche di più; non voglio togliere niente alla bravura del curatore, ma il progetto \MiKTeX è il lavoro di un solo uomo, mentre \TeXLive è il frutto del lavoro di una squadra completa e attivissima. +Oggi, però, anche su una macchina Windows consiglierei di installare la distribuzione \TeXLive che viene gestita nello stesso modo sulle piattaforme Windows, Linux e Mac. Il pregio è che \TeXLive viene aggiornata quasi quotidianamente sui server e comunque è la versione dalla quale il curatore di \MiKTeX attinge per creare gli aggiornamenti della sua distribuzione; necessariamente, quindi, prima che il curatore sia riuscito a portare \MiKTeX allo stesso livello di \TeXLive, passano di solito alcune settimane, a volte anche di più; non voglio togliere niente alla bravura del curatore, ma il progetto \MiKTeX è il lavoro di un solo uomo, mentre \TeXLive è il frutto del lavoro di una squadra completa e attivissima. -\item[Linux] Il sistema \TeX è spesso parte integrante di qualunque variante di Linux, anche se non viene installato di default; basta inserire il disco di installazione oppure basta connettersi in rete e invocare uno dei vari programmi come \prog{apt-get}, \prog{rpm}, \prog{yast} o~\dots\ per scaricare tutto quanto serve e per configurare l'installazione. Bisogna ricordarsi 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 i “pinguini doc” ci sono abituati; in compenso si ha il beneficio di avere tutto quanto il software già predisposto fin dalla nascita per macchine UNIX e Linux e quindi si evitano tutti i (pochissimi) piccoli bug che si incontrano quando le cose sono tradotte per altri sistemi operativi. +\item[Linux] Il sistema \TeX è spesso parte integrante di qualunque variante di Linux, anche se non viene installato di default; basta inserire il disco di installazione oppure basta connettersi in rete e invocare uno dei vari programmi come \prog{apt-get}, \prog{rpm}, \prog{yast} o~\dots\ per scaricare tutto quanto serve e per configurare l'installazione. Bisogna ricordarsi 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 i “pinguini doc” ci sono abituati; in compenso si ha il beneficio di avere tutto quanto il software già predisposto fin dalla nascita per macchine UNIX e Linux e quindi si evitano tutti i (rarissimi) piccoli bug che si incontrano quando le cose sono tradotte per altri sistemi operativi. Si faccia però attenzione alle distribuzioni Debian; sono eccellenti e ne è garantita la compatibilità con ogni sistema operativo conforme ai dettami del consorzio Debian, ma solitamente sono in ritardo di alcuni mesi, in passato anche di un paio di anni, rispetto alle versioni aggiornate pubblicate dal \TeX Users Group! Appena si può si installi la distribuzione \TeXLive completa scaricata dal sito \url{http://www.tug.org/ctan.html} ufficiale. Esiste in rete un testo intitolato \emph{texlive-ubuntu.pdf}\footnote{Questo testo è stato scritto nel 2010 per installare \TeXLive su Ubuntu, ma ci sono anche le istruzioni per Fedora e OpenSuse; con piccole varianti sono istruzioni che vanno bene per qualunque macchina Linux.}, che si trova in rete con qualunque motore di ricerca; specifica come installare \TeXLive fresco di giornata (e aggiornabile sistematicamente come detto sopra per le macchine Windows) a fianco della distribuzione Debian di \TeXLive; quest'ultima serve per soddisfare le dipendenze di altri programmi Debian; la prima, invece, serve per lavorare davvero. -\item[Mac] Gli utenti delle piattaforme Macintosh e possessori di un portatile o di un desktop che funziona con il sistema operativo Mac~OS~X hanno anche loro a disposizione una distribuzione che si chiama Mac\TeX, che viene installata e configurata con un particolare software adatto alla specificità di quel sistema operativo; Mac\TeX è sostanzialmente \TeXLive arricchito con alcune applicazioni specifiche per Mac, in particolare il processo di installazione. Si cerchi il nome MacTeX con un qualunque motore di ricerca che indicherà un sito dal quale si può scaricare il pacchetto di installazione (piuttosto grosso); alla fine del download viene chiesto se continuare con l'installazione; rispondendo affermativamente, il software viene scaricato sul disco che si sarà indicato, ma quel che è più comodo, esso è già completo, come ogni distribuzione e installazione \TeXLive. Il sistema Mac\TeX con il suo editor \TeXShop è preimpostato per produrre il suo output in formato PDF; se ne tenga conto leggendo attentamente la documentazione. Il pacchetto è già dotato dello shell editor \TeXShop che fa ricorso ad un suo previewer interno per il formato PDF; questo previewer consente di eseguire sia l'\textit{inverse search} sia la \textit{forward search}. Questo è estremamente comodo durante la fase di editing del documento. +\item[Mac] Gli utenti delle piattaforme Macintosh e possessori di un portatile o di un desktop che funziona con il sistema operativo Mac~OS~X hanno anche loro a disposizione una distribuzione che si chiama Mac\TeX, che viene installata e configurata con un particolare software adatto alla specificità di quel sistema operativo; Mac\TeX è sostanzialmente \TeXLive arricchito con alcune applicazioni specifiche per Mac, in particolare il processo di installazione. Si cerchi il nome “MacTeX” con un qualunque motore di ricerca che indicherà un sito dal quale si può scaricare il pacchetto di installazione (piuttosto grosso); alla fine del download viene chiesto se continuare con l'installazione; rispondendo affermativamente, il software viene scaricato sul disco che si sarà indicato, ma quel che è più comodo, esso è già completo, come ogni distribuzione e installazione \TeXLive. Il sistema Mac\TeX con il suo editor \TeXShop è preimpostato per produrre il suo output in formato PDF; se ne tenga conto leggendo attentamente la documentazione. Il pacchetto è già dotato dello shell editor \TeXShop che fa ricorso ad un suo previewer interno per il formato PDF; questo previewer consente di eseguire sia l'\textit{inverse search} sia la \textit{forward search}. Questo è estremamente comodo durante la fase di editing del documento. Non solo; \TeXShop ha una impostazione, attivabile e disattivabile in qualunque momento, con la quale le due finestre, quella di editing e quella che mostra il file PDF composto, normalmente indipendenti, possono essere riunite in un unica finestra, ed essere spostate, ridimensionate, abbattute nella task bar, recuperate dalla task bar, come se fossero un oggetto solo. Personalmente trovo questa funzionalità molto comoda specialmente su un laptop. \end{description} @@ -679,7 +683,7 @@ Poi sono necessari i programmi accessori per visualizzare sullo schermo e/o stam Oggi, invece, è molto importante disporre di visualizzatori PDF integrati con l'editor, in modo che siano predisposti per lavorare in tandem sia per mostrare costantemente a fianco della finestra di editing la finestra del file composto in formato PDF, sia per fare la ricerca diretta e inversa; oltre ai già citati \TeXShop (solo Mac) e \TeXworks (multipiattaforma) posso citare gli editor TeXstudio e Texmaker (multipiattaforma e molto simili fra loro); altri \emph{shell editor} non dispongono di un visualizzatore integrato, ma possono venire “sincronizzati” con visualizzatori esterni; per esempio su piattaforme Windows il visualizzatore sincronizzabile è SumatraPDF; su Linux è Okular. Su Mac esistono altri due editor integrati: TeXnicle (gratuito) e Texpad (commerciale, ma con un costo accessibilissimo) che non solo hanno il loro visualizzatore sincronizzato, ma le loro “finestre” sono in realtà due parti di una stessa finestra; ingrandendola a pieno schermo si ottiene una comodità di composizione difficilmente ottenibile con altri sistemi. -Anche Emacs (multipiattaforma), arricchito con il plug-in Auctex, che lo rende particolarmente adatto per gestire i file del sistema \TeX, è sincronizzabile con vari visualizzatori PDF; avendo la pazienza di imparare ad usarlo in modo non superficiale, Emacs assieme ad Auctex rendono il lavoro con il sistema \TeX particolarmente comodo. +Anche Emacs (ne esistono versioni per ogni piattaforma), arricchito con il plug-in Auctex, che lo rende particolarmente adatto per gestire i file del sistema \TeX, è sincronizzabile con vari visualizzatori PDF; avendo la pazienza di imparare ad usarlo in modo non superficiale, Emacs assieme ad Auctex rendono il lavoro con il sistema \TeX particolarmente comodo. Per le piattaforme Windows il programma di installazione di \MiKTeX\ offriva la possibilità di installare \prog{TeXnicCenter}, ma lo sconsiglio vivamente, perché non è all'altezza delle distribuzioni moderne di \MiKTeX\ e di \TeXLive; oggi mi pare che \MiKTeX\ venga distribuito con TeXstudio. C'è anche lo \emph{shell editor} WinEdt (shareware), ottimo e dalla versione 8 in poi sembra che sia dotato di un visualizzatore integrato PDF (comunque è sincronizzabile con il visualizzatore SumatraPDF). @@ -691,12 +695,12 @@ Mi sono ripetuto diverse volte nel descrivere gli editor per lavorare con il sis \goodpagebreak -\section{Ora siete pronti} -Ora che avete scaricato tutto il software gratuito o commerciale di cui avete bisogno siete pronti per cominciare. +\section{Ora si è pronti} +Ora che si è scaricato tutto il software gratuito o commerciale di cui avete bisogno si è 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 descritti sopra, siete in grado di capire come funziona il tutto.\label{warn:avvertenza} +{\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 descritti sopra, si è in grado di capire come funziona il tutto.\label{warn:avvertenza} -Attenzione: non si minimizzi la frase precedente: la documentazione va letta sempre e va capita fino in fondo; se c'è qualcosa che non si capisce, si provi 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 tale della documentazione”; per voi sarebbe una vera umiliazione\dots\ I forum vanno benissimo, ma per rispondere a domande serie, non a cose che si trovano già documentate.} +Attenzione: non si minimizzi la frase precedente: la documentazione va letta sempre e va capita fino in fondo; se c'è qualcosa che non si capisce, si provi con qualche piccolo esercizio, visto che la pratica permette di capire la teoria (e viceversa), ma non si vada a cercare in rete aiuto nei vari forum dedicati a \LaTeX per sentirsi dire: “guarda nella pagina tale della tale documentazione”; per voi sarebbe una vera umiliazione\dots\ I forum vanno benissimo, ma per rispondere a domande serie, non a cose che si trovano già documentate.} 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 vuole comunicare bisogna lavorare (apparentemente) di più; in realtà bisogna usare di più la testa e di meno il mouse. @@ -744,13 +748,13 @@ Formato archiviabile& \centering PDF/A-1b & \centering Laboriosa con \XeLaTeX;\n \end{table} -%%%%%%%%%%%%%%%%%%%%%%%%%% - +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \chapter{L'uso di \texorpdfstring{\TOPtesi}{TOPtesi}}\label{cap:uso} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% La maggior parte delle macro definite in \TOPtesi servono per comporre il frontespizio; siccome l'utente potrebbe desiderare di comporre il frontespizio in modo diverso da quello preimpostato in questa classe, prima esporrò come e perché la classe si comporta in un certo modo per comporre questa prima e importante pagina della tesi, poi esporrò che cosa bisogna fare se si usano altri pacchetti o altre tecniche per comporre il frontespizio. -Inizialmente il diagramma di flusso del funzionamento di \TOPtesi era quello lineare rappresentato nella figura~\ref{fig:simple-flow-diagram}. il file sorgente in formato \texttt{.tex} veniva dato in pasto a \texttt{\class{toptesi}.cls} che dopo qualche impostazione passava il controllo al modulo \texttt{\pack{toptesi}.sty}; questo ne componeva il frontespizio mediante il modulo \pack{topfront}; \TOPtesi metteva a disposizione dell'utente anche il modulo \pack{topcoman}, le cui funzionalità potevano venire usate per il file finale in formato \texttt{.pdf}. +Inizialmente il diagramma di flusso del funzionamento di \TOPtesi era quello lineare rappresentato nella figura~\ref{fig:simple-flow-diagram}. Il file sorgente in formato \texttt{.tex} veniva dato in pasto a \texttt{\class{toptesi}.cls} che dopo qualche impostazione passava il controllo al modulo \texttt{\pack{toptesi}.sty}; questo ne componeva il frontespizio mediante il modulo \pack{topfront}; \TOPtesi metteva a disposizione dell'utente anche il modulo \pack{topcoman}, le cui funzionalità potevano venire usate per il file finale in formato \texttt{.pdf}. \begin{figure}\centering \unitlength=0.00925\textwidth @@ -767,7 +771,7 @@ Inizialmente il diagramma di flusso del funzionamento di \TOPtesi era quello lin Il tutto era molto semplice, e per ciò stesso era anche molto rigido e non consentiva personalizzazioni di nessun genere. -A partire dalla versione 5.85 di \TOPtesi l'utente poteva caricare dei pacchetti a sua scelta; la loro presenza veniva controllata dal modulo \pack{topcoman} che a seconda di quali fossero caricati si comportava in modo diverso per evitare possibili conflitti. Allo stesso tempo l'utente poteva impostare determinate variabili booleane, che a seconda del loro stato di `vero' o `falso', gli permettevano di comporre il frontespizio con i comandi del pacchetto \pack{topfront} oppure del pacchetto esterno \pack{frontespizio} modificandone così l'aspetto rispetto a quello che \TOPtesi aveva sempre composto. Il diagramma di flusso mostrato nella figura~\ref{fig:toptesi+frontspizio} è leggermente più complesso, ma tutto sommato ancora molto semplice. In sostanza il frontespizio viene composto o con i comandi originali di \TOPtesi oppure con quelli del pacchetto \pack{frontespizio} ma i due modi sono mutuamente esclusivi e non si possono mescolare le due modalità. +A partire dalla versione 5.85 di \TOPtesi l'utente poteva caricare alcuni pacchetti a sua scelta; la loro presenza veniva controllata dal modulo \pack{topcoman} che a seconda di quali fossero caricati si comportava in modo diverso per evitare possibili conflitti. Allo stesso tempo l'utente poteva impostare determinate variabili booleane, che a seconda del loro stato di `vero' o `falso', gli permettevano di comporre il frontespizio con i comandi del pacchetto \pack{topfront} oppure del pacchetto esterno \pack{frontespizio} modificandone così l'aspetto rispetto a quello che \TOPtesi aveva sempre composto. Il diagramma di flusso mostrato nella figura~\ref{fig:toptesi+frontspizio} è leggermente più complesso, ma tutto sommato ancora molto semplice. In sostanza il frontespizio viene composto o con i comandi originali di \TOPtesi oppure con quelli del pacchetto \pack{frontespizio} ma i due modi sono mutuamente esclusivi e non si possono mescolare le due modalità. \begin{figure}\centering\unitlength=0.009\textwidth \begin{picture}(115,45)(0,-3) @@ -870,7 +874,7 @@ La distribuzione di \TOPtesi contiene molti file; ma ogni distribuzione moderna L'installazione del sistema \TeX prevede che i suoi numerosissimi file siano installati in un certo numero di strutture di cartelle, chiamate “alberi”; ogni albero ha una radice; normalmente la radice della distribuzione si chiama \texttt{texmf-dist}, ma sulla vostra macchina e con il vostro sistema operativo potrebbe avere un altro nome. Esiste anche un albero radicato nella vostra “home”; nei sistemi di 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 bisogna cercare in \texttt{C:\char92Documents and settings} seguito dal vostro \emph{user name}, oppure da \texttt{All users}, oppure da \texttt{Users} seguito dal vostro nome; magari ci sono ancora altri rami di albero da percorrere, ma poi si trova \texttt{texmf} o \texttt{localtexmf}. Nei sistemi Mac la radice dell'albero personale è nella cartella \texttt{\textasciitilde/Library}. -L'albero personale non è mai inizialmente predisposto con l'installazione del sistema \TeX; ognuno se lo dovete creare solo. In esso si creerà una struttura di rami identica a quella degli alberi di sistema, magari sarà un albero più semplice e non così ramificato come gli alberi di sistema, ma i gruppi di cartelle presenti dovranno essere innestati nello stesso modo. Qui si mettono i file personali di classe, di stile, di definizioni, eccetera. Quando si aggiorna la distribuzione del sistema \TeX le cartelle degli alberi di sistema potranno essere completamente riscritte, mentre l'albero personale non verrà assolutamente modificato. +L'albero personale non è mai inizialmente predisposto con l'installazione del sistema \TeX; ognuno se lo deve creare da solo. In esso si creerà una struttura di rami identica a quella degli alberi di sistema, magari sarà un albero più semplice e non così ramificato come gli alberi di sistema, ma i gruppi di cartelle presenti dovranno essere innestati nello stesso modo. Qui si mettono i file personali di classe, di stile, di definizioni, eccetera. Quando si aggiorna la distribuzione del sistema \TeX le cartelle degli alberi di sistema potranno essere completamente riscritte, mentre l'albero personale non verrà assolutamente modificato. Tutti i file del pacchetto \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 eseguiti nel senso informatico del termine.} c'è anche il file \file{toptesi.cfg}. Si copi questo file nella cartella di lavoro come spiegato qui di seguito, gli si cambi il nome ma non l'estensione, e lo si modifichi secondo necessità. @@ -892,7 +896,7 @@ Nel file di configurazione non si possono inserire chiamate ad altri pacchetti; \section{Tutto è ora pronto per cominciare} -Ora si è pronti per comporre la tesi o lamonografia o la +Ora si è pronti per comporre la tesi o la monografia o la dissertazione. Ci si ricordi 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, @@ -907,7 +911,7 @@ solo purché non lo si disturbi con interventi non professionali; se non si è La classe \class{toptesi} richiede un semplice preambolo e nient'altro. In altre parole si specificano le opzioni alla classe e si specificano eventualmente le codifiche e i font da usare; magari si caricano altri pacchetti senza duplicare le chiamate ai pacchetti già caricati; si possono inserire delle definizioni di comandi personali. Alla classe si possono specificare alcune opzioni che non vengono usate dalla classe stessa, ma vengono messe a disposizione dei pacchetti chiamati. In sostanza le opzioni della classe sono globali e servono per tutto il documento, mentre le opzioni specificate ai pacchetti sono locali allo specifico pacchetto che le riceve. -Questo particolare documento contiene un lungo preambolo nel quale sono anche definiti molti comandi che mi sono serviti per comporlo . La parte essenziale, visto che ho compilato il documento con \LuaLaTeX, è la seguente: +Questo particolare documento contiene un lungo preambolo nel quale sono anche definiti molti comandi che mi sono serviti per comporlo. La parte essenziale, visto che ho compilato il documento con \LuaLaTeX, è la seguente: \begin{verbatim} \documentclass[% corpo=12pt, @@ -972,15 +976,15 @@ Va caricato prima di \pack{pdfx} perché questo ridefinisce alcune strutture sul % \item Il pacchetto \pack{pdfx} serve per introdurre nel file PDF di uscita anche i metadati richiesti per l'archiviabilità a lungo termine; sono necessari, ma non sono assolutamente sufficienti; essi vanno completati con i metadati specifici del documento da comporre. Si veda l'apposita sezione sull'archiviabilità. -Tuttavia si noti che ad oggi (2017) questo pacchetto è incompatibile con \pack{imakeidx}; per aggirare questa incompatibilità, se si deve produrre un file archiviabile secondo le norme, si proceda come descritto poco sopra in merito all'uso di \pack{imakeidx}. +Tuttavia si noti che ad oggi questo pacchetto è incompatibile con \pack{imakeidx}; per aggirare questa incompatibilità, se si deve produrre un file archiviabile secondo le norme, si proceda come descritto poco sopra in merito all'uso di \pack{imakeidx} caricandolo prima di \pack{pdfx}. % \item Il pacchetto \pack{fontspec} serve per cariare i font OpenType usati in questa documentazione. % \item Il pacchetto \pack{xcolor} serve per gestire i colori in modo avanzato. % -\item Il comando \cs{MP} serve per poter scrivere il logo del programma \MP del sistema \TeX; \LuaLaTeX\ non gradisce le definizioni dei pacchetti preposti a questo scopo, perché fanno uso di font che non sono OpenType; si possono usare tali font (\Font{Fetamont}) in formato OpenType, e infatti si è fatto così in questo preambolo.. +\item Il comando \cs{MP} serve per poter scrivere il logo del programma \MP del sistema \TeX; \LuaLaTeX\ non gradisce le definizioni dei pacchetti preposti a questo scopo, perché fanno uso di font che non sono OpenType; si possono però usare i font OpenType \Font{Fetamont}, e infatti si è fatto così in questo preambolo.. % -\item Un discorso simile vale per i comando \cs{GuIT}. +\item Un discorso simile vale per il comando \cs{GuIT}. % \item Come font principale con grazie viene scelto un clone dei font \Font{Times}; quelli denominati \Font{TeX Gyre Termes} sono specifici del sistema \TeX. % @@ -995,7 +999,7 @@ Tuttavia si noti che ad oggi (2017) questo pacchetto è incompatibile con \pack{ \item Il pacchetto \pack{amsmath} serve per comporre la matematica avanzata; \pack{unicode-math} serve per accedere non solo ai font matematici OpenType (in questo caso vengono selezionati i font \Font{XITS Math}) ma fornisce tutte le macro compatibili con quelli del sistema \TeX per scrivere la matematica; non occorre invocare altri pacchetti per font matematici, come sarebbe necessario fare se si usasse il programma di composizione \pdfLaTeX. L'opzione \chiave{math-style}{TeX} serve a questo pacchetto per comporre i vari simboli secondo lo standard del sistema \TeX; in alternativa si potrebbero specificare le opzioni \chiave{math-style}{ISO}, per comporre nello stile prescritto dalle norme ISO; \chiave{math-style}{french}, per comporre secondo lo stile francese; \chiave{math-style}{upright}, per comporre tutta la matematica con font non inclinati. Va da sé che gli ultimi due stili sono da evitare accuratamente; lo stile ISO è raccomandato per le tesi in discipline che fanno uso della matematica delle grandezze. % \item Si invocano altri pacchetti necessari per la composizione di questa documentazione; \pack{metalogo} serve per scrivere in modo corretto i loghi dei vari programmi; esso è particolarmente importante per il logo \XeLaTeX, che, come si vede, contiene un simbolo particolare, la `E' speculare rispetto alla `E' normale. -I pacchetti \pack{longtaable}, \pack{array}, \pack{booktabs}, \pack{tabularx} servono per gestire tabelle particolari in modo professionale. Il pacchetto \pack{enumitem} serve per configurare le liste; il lettore avrà notato, infatti, che le liste di questa documentazione, compresa quella che sta leggendo, non hanno le varie voci distanziate verticalmente. Il pacchetto \pack{ragged2e} serve per configurare la composizione in bandiera, in modo che il margine non giustificato non sia troppo seghettato. Il pacchetto \pack{siunitx} serve per gestire i numeri e le unità di misura. Infine il pacchetto \pack{curve2e} serve per eseguire disegni avanzati nell'ambiente \amb{picture}. Il pacchetto \pack{microtype} serve per gli aggiustamenti fini della composizione dei capoversi. +I pacchetti \pack{longtaable}, \pack{array}, \pack{booktabs}, \pack{tabularx} servono per gestire tabelle particolari in modo professionale. Il pacchetto \pack{enumitem} serve per configurare le liste; il lettore avrà notato, infatti, che le liste di questa documentazione, compresa quella che si sta leggendo, non hanno le varie voci distanziate verticalmente. Il pacchetto \pack{ragged2e} serve per configurare la composizione in bandiera, in modo che il margine non giustificato non sia troppo seghettato. Il pacchetto \pack{siunitx} serve per gestire i numeri e le unità di misura. Infine il pacchetto \pack{curve2e} serve per eseguire disegni avanzati nell'ambiente \amb{picture}. Il pacchetto \pack{microtype} serve per gli aggiustamenti fini della composizione dei capoversi. % \item Il pacchetto \pack{afterpage} serve per ritardare la composizione dell'argomento del comando \cs{afterpage} proprio alla fine della pagina corrente, prima che si inizi a comporre la pagina successiva. % @@ -1062,8 +1066,19 @@ La classe \class*{toptesi} accetta diverse opzioni sue specifiche, oltre a quell \Item[\chiave{numerazioneromana}] Chiave booleana che imposta la numerazione romana dei numeri di pagina nella parte preliminare del corpo della tesi; la numerazione - cambia in cifre arabe con il primo capitolo numerato della tesi. - È un tipo di numerazione classico che veniva usato prima + cambia in cifre arabe con il primo uso del comando \cs{chapter}. Per + questo motivo i ringraziamenti e il sommanrio vanno composti con i + comandi appositi \cs{ringraziamanti} e \cs{sommario}; ricordo che i + ringraziamenti non dovrebbero mai apparire in una tesi, se non in + alcune situazioni particolari; il sommario non è inteso come + “abstract”, ma come un riassunto relativamente esteso che alcune + segreterie didattiche inviano ai membri della commissione d'esame + prima dell'esame di laurea o della difesa della dissertazione di + dottorato. Nelle tesi da svolgere nell'ambito di programmi + internazionale di doppio titolo, il sommario potrebbe scritto nella + lingua ufficiale dell'altro ateneo e potrebbe anche essere di poche + decine di pagine. La numerazione delle pagine con numeri romani + era una tradizione classica che veniva usata prima dell'avvento della tipografia elettronica; non è vietato usarlo oggi, ma oggi non sussistono più le circostanze che obbligavano in passato a comporre la parte iniziale \emph{dopo} aver finito @@ -1117,7 +1132,7 @@ Di tutte queste chiavi si parlerà più diffusamente nell'ultimo capitolo dove s \section{I file accessori} -Qui verranno descritti alcuni usi del modulo \pack{topfront} e degli altri moduli specifici per determinati tipi di tesi oltre al modulo \pack{topcoman}. I primi servono per comporre il frontespizio; il secondo mette a disposizione alcuni comandi utili. Né gli uni né l'atro sono indispensabili, ma sono utili. Questi pacchetti sono sempre caricati da \TOPtesi, tranne in alcuni casi specificati meglio più avanti. Ma il fatto di venire o non venire caricati dipende dall'utente, cioè dalle opzioni che egli specifica alla classe \class{toptesi} e dai pacchetti aggiuntivi che egli vuole usare; in altre parole l'utente non ha mai bisogno di caricare esplicitamente questi due pacchetti ma può solo esplicitamente specificare azioni che ne impediscono il caricamento. +Qui verranno descritti alcuni usi del modulo \pack{topfront} e degli altri moduli specifici per determinati tipi di tesi; si descrive brevemente anche il modulo \pack{topcoman}. I primi servono per comporre il frontespizio; il secondo mette a disposizione alcuni comandi utili. Né gli uni né l'altro sono indispensabili, ma sono utili. Questi pacchetti sono sempre caricati da \TOPtesi, tranne in alcuni casi specificati meglio più avanti. Ma il fatto di venire o non venire caricati dipende dall'utente, cioè dalle opzioni che egli specifica alla classe \class{toptesi} e dai pacchetti aggiuntivi che egli vuole usare; in altre parole l'utente non ha mai bisogno di caricare esplicitamente questi due pacchetti ma può solo esplicitamente specificare azioni che ne impediscono il caricamento. \goodpagebreak @@ -1126,7 +1141,7 @@ Questo paragrafo tratta di diversi modi per comporre il frontespizio della tesi; Non è generalmente necessario inserire nel frontespizio il logo dell'ateneo; si controlli presso la propria segreteria competente le regole fissate per la composizione del frontespizio. Se il logo è richiesto, allora la segreteria dice anche quale logo usare e da dove scaricarne il file che ne contiene la descrizione grafica; \textcolor{red}{bisogna essere precisi nel richiedere le limitazioni legali per l'uso del logo dell'ateneo, perché esso è proprietà esclusiva dell'ateneo e l'uso indebito potrebbe essere fonte di problemi legali non indifferenti.} Siccome tali limitazioni esistono, il pacchetto \TOPtesi non viene più distribuito con i file dei loghi di diversi atenei, come veniva fatto nelle prime edizioni. -Si controlli se si tratta di un file vettoriale (estensione \file{.pdf} oppure \file{.eps}), oppure bitmapped (estensione \file{.jpg}, \file{.png}, \file{.bmp}, \file{.wmf}, \file{.tiff},\dots). Ci si ricordi che \prog{pdflatex}, \prog{xelatex} e \prog{lualatex} possono incorporare solo i formati \file{.pdf}, \file{.eps}, \file{.jpg}, \file{.png} o \file{.mps}\footnote{I file vettoriali in formato \file{.mps} sono ottenuti con il programma \MP; il lettore potrà interessarsi a questo formato quando sarà un utente avanzato di \LaTeX; non se ne preoccupi per la tesi.}. Se il file bitmapped viene fornito in un formato diverso da questi cinque, è necessario convertirlo in uno dei formati accettati. +Si controlli se si tratta di un file del logo è vettoriale (estensione \file{.pdf} oppure \file{.eps}), oppure bitmapped (estensione \file{.jpg}, \file{.png}, \file{.bmp}, \file{.wmf}, \file{.tiff},\dots). Ci si ricordi che \prog{pdflatex}, \prog{xelatex} e \prog{lualatex} possono incorporare solo i formati \file{.pdf}, \file{.eps}, \file{.jpg}, \file{.png} o \file{.mps}\footnote{I file vettoriali in formato \file{.mps} sono ottenuti con il programma \MP; il lettore potrà interessarsi a questo formato quando sarà un utente avanzato di \LaTeX; non se ne preoccupi per la tesi.}. Se il file bitmapped viene fornito in un formato diverso da questi cinque, è necessario convertirlo in uno dei formati accettati. Vale la pena di ricordare che il formato \file{.jpg} va bene per immagini a colori sfumati come le fotografie, mentre il formato \file{.png} è più adatto per disegni al tratto con righe fortemente contrastate rispetto allo sfondo. In generale, quindi, sarebbe meglio convertire nel formato \file{.png} un logo bitmapped fornito in un formato diverso da quelli elencati sopra, ma il formato \file{.png} potrebbe contenere delle “trasparenze” che non sono accettabili con le prescrizioni PDF/A dei documenti archiviabili e in questo caso bisogna ricorrere al formato \file{.jpg}. Potendone disporre, sarebbe sempre meglio usare un disegno veramente vettoriale del logo. @@ -1144,7 +1159,7 @@ oppure \end{flushleft} dove il valore prefissato per l'\meta{altezza} del logo è 25\,mm per la carta A4, ed è scalato proporzionalmente per carte di formato diverso; con l'argomento facoltativo si può specificare un'altezza leggermente maggiore o minore del valore predefinito. L'argomento \meta{nome del file del logo} o \meta{lista di nomi di file di loghi separati da virgole} è costituito da un solo nome di file o da una lista di nomi di file separati da virgole, corrispondenti ciascuno al logo di un diverso ateneo. Questi file devono avere i formati corrispondenti a una delle cinque estensioni consentite, ma non è necessario specificare il nome del file completo di estensione; questa specificazione potrebbe essere necessaria solo nel caso in cui si disponga del logo di uno stesso ateneo in diversi formati grafici (o, cosa da non fare mai, immagini o loghi diversi con il nome del loro file uguale e l'estensione diversa; questo genere di pasticci è fonte di numerosi errori, facilmente evitabili se si mantiene in ordine la scelta dei nomi e delle estensioni). -Il programma codificato nel pacchetto \pack{toptesi} provvede a scalare tutti i loghi all'\meta{altezza} specificata e li compone affiancati su una sola riga distanziati mediante uno spazio predefinito di 3\,em; lo si può impostare ad un valore leggermente maggiore o minore tramite il comando \cs{setlogodistance}, per esempio: +Il programma codificato nel modulo \pack{topfront} provvede a scalare tutti i loghi all'\meta{altezza} specificata e li compone affiancati su una sola riga distanziati mediante uno spazio predefinito di 3\,em; lo si può impostare ad un valore leggermente maggiore o minore tramite il comando \cs{setlogodistance}, per esempio: \begin{verbatim} \setlogodistance{2em} \end{verbatim} @@ -1232,7 +1247,7 @@ va sostituita, per esempio, con: \end{verbatim} Ma se si deve scrivere il frontespizio in un'altra lingua bisogna agire come spiegato poco più avanti. -In realtà il pacchetto \pack{topfront} lavora bene in italiano e distingue i singolari dai plurali, i maschili dai femminili; non fa nulla di particolare se la lingua di composizione del frontespizio è l'inglese o un'altra lingua; ci si ricordi che l'inglese è già impostato ma non attivato (tranne per le tesi della ScuDo, per le quali la lingua principale è l'inglese, ovviamente già attivata); lo si attiva nel main file con il comando \cs{english}. Se si vuole comporre il frontespizio in un'altra lingua, diversa dalle due preimpostate, allora, usando \prog{xelatex} o \prog{lualatex}, la si specifica mediante il comando \cs{setotherlanguage}; invece usando \pdfLaTeX\ la si indica fra le opzioni di \cs{documentclass} e poi, prima di usare l'ambiente \amb{frontespizio} o \cs{frontespizio*} o i comandi corrispondenti, la si imposta con \cs{selectlanguage}. Poi si inseriscono i seguenti comandi, modificando gli argomenti in accordo con le restrizioni burocratiche per i frontespizi delle tesi nella propria università\footnote{Le parole fisse in questo esempio sono in inglese; bisogna fare altrettanto per qualunque altra lingua.}: +In realtà il pacchetto \pack{topfront} lavora bene in italiano e distingue i singolari dai plurali, i maschili dai femminili; non fa nulla di particolare se la lingua di composizione del frontespizio è l'inglese o un'altra lingua; ci si ricordi che l'inglese è già impostato ma non attivato (tranne per le tesi della ScuDo, per le quali la lingua principale è l'inglese, ovviamente già attivata); lo si attiva nel main file con il comando \cs{english}. Se si vuole comporre il frontespizio in un'altra lingua, diversa dalle due preimpostate, allora, usando \prog{xelatex} o \prog{lualatex}, la si specifica mediante il comando \cs{setotherlanguage}; invece usando \pdfLaTeX\ la si indica fra le opzioni di \cs{documentclass} e poi, prima di usare l'ambiente \amb{frontespizio} o \amb{frontespizio*} o i comandi corrispondenti, la si imposta con \cs{selectlanguage}. Poi si inseriscono i seguenti comandi, modificando gli argomenti in accordo con le restrizioni burocratiche per i frontespizi delle tesi nella propria università\footnote{Le parole fisse in questo esempio sono in inglese; bisogna fare altrettanto per qualunque altra lingua.}: \begin{Verbatim}[fontsize=\small] \retrofrontespizio{This work is subject to the Creative Commons Licence} \DottoratoIn{Ph.D.\ Course in} @@ -1296,7 +1311,7 @@ I hereby declare that, the contents and organisation of this dissertation consti \begin{minipage}{0.5\textwidth}\centering \rule{0pt}{3\baselineskip}\dotfill\null\\ Mario Rossi\\[\medskipamount] -Turin, 29 of February 2123 +Turin, 29 of February 2345 \end{minipage}\hspace*{2em} \end{flushright} \end{medaglione} @@ -1307,7 +1322,7 @@ Il retrofrontespizio di questa documentazione è stato composto con i comandi se \begin{verbatim} \retrofrontespizio{Questo testo è libero secondo le condizioni stabilite dalla \LaTeX Project Public Licence (LPPL) riportata -nell'appendice~\ref{ch:LPPL} alla pagina~\pageref{ch:LPPL}. +nell'appendice della pagina~\pageref{ch:LPPL}. \bigskip @@ -1483,7 +1498,7 @@ Prof.~I.J., University of \dots} \subsection{Il frontespizio della tesi triennale} -Per la tesi triennale il frontespizio viene composto specificando alla classe l'opzione \chiave{tipotesi}{triennale} (oppure \chiave{tipotesi}{monografia} -- il nome di questa seconda opzione è conservato per retrocompatibilità). +Per la tesi triennale il frontespizio viene composto specificando alla classe l'opzione \chiave{tipotesi}{triennale} (oppure \chiave{tipotesi}{monografia} -- il nome di questa seconda opzione è conservato per retrocompatibilità, ma in questa documentazione viene usato proprio questo valore). I comandi usabili per impostare le parole fisse e i dati variabili sono sostanzialmente gli stessi indicati per il modulo \pack{topfront}; un cambiamento importante è costituito dal fatto che il titolo della tesi si descrive con lo stesso comando \cs{titolo} usato per le altre tesi, al posto del comando \cs{monografia} (che però è conservato per retrocompatibilità e quindi è ancora usabile con questo modulo). @@ -1510,8 +1525,8 @@ Un esempio di frontespizio per tesi triennale è dato dal frontespizio di questa \NomeElaborato{Manuale d'uso} \titolo{Il pacchetto \textsf{TOPtesi}} \TitoloListaCandidati{} -\sottotitolo{Per comporre tesi al Politecnico di Torino\\ -e in molte altre università\\[1ex] +\sottotitolo{{Per comporre tesi in molti atenei fra i quali +il Politecnico di Torino\\[1ex] Il pacchetto \textsf{TOPtesi} contiene la classe omonima e diversi altri file per comporre tesi di diverso tipo\\[1ex] Questa documentazione fornisce anche le linee guida per comporre @@ -1520,8 +1535,7 @@ una tesi rispettando certe regole tipografiche} \fileversion\ del \filedate} \retrofrontespizio{Questo testo è libero secondo le condizioni stabilite dalla \LaTeX Project Public -Licence (LPPL) riportata nell'appendice~\ref{ch:LPPL} -alla pagina~\pageref{ch:LPPL}. +Licence (LPPL) riportata nell'appendice della pagina~\pageref{ch:LPPL}. \bigskip @@ -1557,7 +1571,7 @@ Nuovamente le opzioni \chiave{stile}{classica} e \opz{evenboxes} unite all'aster Per la tesina da presentare all'esame di stato per il conseguimento del diploma di maturità il frontespizio è evidentemente diverso da quello delle tesi universitarie. Un esempio è mostrato nella figura~\ref{fig:frontepizio-tesina}. \begin{figure}[p]\centering -\fbox{\includegraphics[height=\dimexpr\textheight-2\fboxrule-2\fboxsep-2\baselineskip]{Frontespizio-sss}} +\fbox{\includegraphics[height=\dimexpr\textheight-2\fboxrule-2\fboxsep-2.5\baselineskip]{Frontespizio-sss}} \caption{Esempio di frontspizio per una tesina} \label{fig:frontepizio-tesina} \end{figure} @@ -1588,8 +1602,8 @@ Vediamo subito i pacchetti aggiuntivi che bisogna \emph{evitare di ricaricare}. nel preambolo quale font OpenType matematico vuole usare. \Item[xparse] e \pack{xspace} e \pack{xcolor} sono funzionali per la classe, ma le loro funzionalità possono - essere usate anche dall'utente. Ovviamente è necessario leggere - la documentazioni di quei pacchetti per usarli correttamente. + essere usate anche dall'utente. Ovviamente è necessario leggerne + la documentazione per usare quei pacchetti correttamente. \Item[calc] e \pack{ifthen} sono caricati per mettere l'utente nelle condizioni di eseguire semplici calcoli aritmetici e/o logici se per caso desidera @@ -1625,7 +1639,7 @@ Vediamo subito i pacchetti aggiuntivi che bisogna \emph{evitare di ricaricare}. \prog{bibdesk} (quest'ultimo, solo per il Mac, è già installato solo per il fatto di avere installato il sistema \TeX usando Mac\TeX). Predisposto il database bibliografico, - si usa l'elaboratore \prog{bibtex} per estrarre i riferimenti + si usa il programma \prog{bibtex} per estrarre i riferimenti e si usa il comando \cs{printbibliography} per comporre la bibliografia; userà poi i vari tipi di comandi \cs{cite} predisposti da \pack{natbib} che permettono di citare correttamente le opere @@ -1799,8 +1813,7 @@ Qui si ripetono con una descrizione a parole, non nella forma stringata delle ta numero identificativo assegnato dal Ministero alla specifica commissione d'esame. Lo si imposta con la sintassi: \begin{sintassi} - \cs{NumeroCommissione}\marg{numero identificativo della - \qquad commissione} + \cs{NumeroCommissione}\marg{numero identificativo della commissione} \end{sintassi} \end{description} @@ -1832,7 +1845,7 @@ quando compone quell'informazione; dovrebbe curare di fare questa operazione den Non scendo in ulteriori dettagli; l'utente che volesse comporre un frontespizio molto personalizzato per questa via, deve sapere quello che sta facendo e deve farlo con la dovuta competenza tipografica e del linguaggio \LaTeX. I risultati estetici dipendono fortemente da queste sue capacità. -Un esempio di un frontespizio costruito per questa via è quello che un utente ha creato con la pagina in \opt{landscape}; era destinato ad una tesi veramente originale nel formato “panoramico” dovuta al fatto che conteneva molti disegni. Per venire incontro alle queste esigenze è stato scritto questo codice dove i dati sensibili sono sostituiti con nomi di fantasia:\label{proc:titlepage} +Un esempio di un frontespizio costruito per questa via è quello che un utente ha creato con la pagina in \opt{landscape}; era destinato ad una tesi veramente originale nel formato “panoramico” dovuta al fatto che conteneva molti disegni. Per venire incontro a queste esigenze è stato scritto questo codice dove i dati sensibili sono sostituiti con nomi di fantasia:\label{proc:titlepage} \begin{verbatim} \documentclass [titlepage]{article} \usepackage[a4paper,left=3cm,bottom=1.5cm,right=3cm,top=1.5cm,% @@ -1911,7 +1924,7 @@ aprendo un terminale o un prompt dei comandi, scrivendoci dentro \verb|texdoc pdfpages| e poi premendo il tasto \tasto{invio}. \begin{figure}[t]\frame{\includegraphics[width=\textwidth]{FrontespizioLandscape}} -\caption{Frontespizio con l'orientamento \opt{landscape} ottenuto con l'ambiente \env{titlepage}}\label{fig:frontespizio-landscape} +\caption[Frontespizio con l'orientamento landscape ottenuto con l'ambiente titlepage]{Frontespizio con l'orientamento \opt{landscape} ottenuto con l'ambiente \env{titlepage}}\label{fig:frontespizio-landscape} \end{figure} Volendo, si potrebbe mettere tutto il codice precedente in un file personale, per esempio \file*{IlMioFrontespizio.tex}, e immetterlo nel corpo della tesi semplicemente usando il comando \cs{input}. Il corpo della tesi risulta alleggerito e la sua gestione e manutenzione ne risulta semplificata. @@ -1922,7 +1935,6 @@ Volendo, si potrebbe mettere tutto il codice precedente in un file personale, pe Potrebbe essere necessario comporre il frontespizio in modo diverso da come viene composto tramite i comandi contenuti nei vari moduli di \TOPtesi. - Ci sono diversi motivi per i quali un laureando o dottorando vorrebbe comporre un frontespizio diverso da quelli predefiniti dai moduli di \TOPtesi. \begin{enumerate}[noitemsep] \item Le specifiche per le tesi di una data università sono inconciliabili con quelle impostate da tutti i moduli di \TOPtesi. @@ -1948,7 +1960,7 @@ pdflatex MarioRossiTesiMagistrale pdflatex MarioRossiTesiMagistrale-frn pdflatex MarioRossiTesiMagistrale \end{verbatim} -Queste operazioni generalmente sono semplificate dall'uso di uno shell editor adeguato. Ancor meglio, disponendo di un editor giusto, si può usare il programma Java \prog{arara}, di Paulo Massa Cereda, che provvede da solo ad eseguire tutte le operazioni necessarie; nella documentazione di \pack{arara} (terminale: texdoc arara; \tasto{invio}) c'è scritto come fare; leggere in dettaglio la regola “frontespizio” descritta nella pagina~71. +Queste operazioni generalmente sono semplificate dall'uso di uno shell editor adeguato. Ancor meglio, disponendo di un editor giusto, si può usare il programma Java \prog{arara}, di Paulo Massa Cereda, che provvede da solo ad eseguire tutte le operazioni necessarie; nella documentazione di \pack{arara} (terminale: texdoc arara; \tasto{invio}) c'è scritto come fare; leggere in dettaglio la regola “frontespizio” descritta nella pagina~112 della documentazione di \prog{arara}~4.0. Se il frontespizio deve essere composto con font diversi da quelli di default, con codifiche particolari, con altre impostazioni particolari è meglio che il file ausiliario sia dotato di un preambolo \emph{ad hoc}; quindi il file principale avrà la struttura seguente; \begin{sintassi}(\fboxsep=3mm) @@ -2067,7 +2079,7 @@ usando poi \cs{uniModenaReggio} come argomento del comando \cs{ateneo}; il nome è inserito in una scatola \LaTeX di larghezza pari alla giustezza, per cui la sua larghezza vera viene mascherata da quella della scatola e il meccanismo di ridimensionamento non entra in funzione. \section{Il file accessorio \texorpdfstring{\pack*}{}{topcoman}} -L'altro file accessorio \pack{topcoman} contiene diversi utili comandi, alcuni già incorporati nella definizione della lingua italiana del sistema \TeX (solo se si usa \pack{babel}). Tuttavia se si deve scrivere in una lingua diversa dall'italiano, quei comandi non sono disponibili e qui viene utile disporre di quei comandi in un pacchetto distinto da \pack{babel} e non soggetto a test sulla lingua in uso. Alcuni di questi comandi non sono definiti da \pack{polyglossia} quando si scrive in italiano, e si rendono particolarmente utili quando si compone con \prog{xelatex} o \prog{lualatex}. +L'altro file accessorio \pack{topcoman} contiene diversi utili comandi, alcuni già incorporati nella definizione della lingua italiana del sistema \TeX (solo se si usa \pack{babel}). Tuttavia se si deve scrivere in una lingua diversa dall'italiano, quei comandi non sono disponibili e qui viene utile disporre di quei comandi in un pacchetto distinto da \pack{babel} e non soggetto a test sulla lingua in uso. Alcuni di questi comandi non sono predefiniti da \pack{polyglossia} quando si scrive in italiano, quindi \pack{topfront} si rende particolarmente utili quando si compone con \prog{xelatex} o \prog{lualatex}. Il file contiene anche un comando per stampare in modo verbatim il contenuto di un file esterno, per esempio il listato di un programma; ci sono altri pacchetti \LaTeX che consentono di stampare il listato di un programma in modo anche migliore, per esempio il pacchetto \pack{listings}, ma, visto che può servire per la tesi e, visto che una volta che lo si conosce potrebbe piacere e poi si vorrebbe continuare ad usarlo, è meglio disporne come pacchetto separato. Non sarebbe difficile per esempio stamparsi in pulito il listato del proprio programma contenuto nel file \texttt{myprogram.c}: si scrive semplicemente un file del tipo \begin{verbatim} @@ -2081,7 +2093,7 @@ Il file contiene anche un comando per stampare in modo verbatim il contenuto di \end{verbatim} e lo si passa a \prog{pdflatex} per ottenere poi una stampa ben composta da conservare per documentazione; per evitare che le -righe fuoriescano dalla larghezza normale del testo, o, peggio +righe fuoriescano dalla 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 per la carta A4, proporzionalmente di meno per formati di carta più piccoli. @@ -2091,7 +2103,7 @@ Più avanti, nella descrizione del codice, si è abbandonata la definizione iniz \begin{otherlanguage}{english} \section[Doctoral dissertation for the ScuDo school of Politecnico di Torino]{\raggedright Doctoral dissertation for~the~ScuDo school of~Politecnico di~Torino} \label{sec:scudo} -When you specify the \chiave{tipotesi}{scudo} option to the class, some extra files are loaded and loading of the \pack{topfront} module is inhibited. +When you specify the \chiave{tipotesi}{scudo} option to the class, some extra files are loaded and the \pack{topfront} module loading is inhibited. The main module file is \pack{toptesi-scudo.sty}; on turn, it loads several other packages. @@ -2112,19 +2124,19 @@ The \chiave{tipotesi}{scudo} option loads some other packages. If it was for me, \Item[lscape] allows to typeset full pages in landscape orientation. It may be useful to insert large tables and/or figures; when typesetting with a LuaTeX engine version lower than 1.0.4, this landscape orientation does not work. % \Item[setspace] is used to typeset draft versions of the dissertation, -but it should not be used at all for the final version; if a particular paragraph required some extra spacing, the regular \amb{interlinea} environment of \TOPtesi will do the job. But remember: the paragraph must be really special to require extra leading. In general extra leading is poor typography. +but it should not be used at all for the final version; if a particular paragraph required some extra leading, the regular \amb{interlinea} environment of \TOPtesi will do the job. But remember: the paragraph must be really special to require extra leading. In general extra leading is poor typography. % \Item[calc] performs some calculations in a supposedly easier form than the native commands available in the original \TeX since its birth, and extended by \eTeX since 2005 or so. % -\Item[ifthen] defines a comfortable set of macros to execute conditional statements; since this bundle loads the \pack{etoolbox} package, other more efficient and more robust commands are available. +\Item[ifthen] defines a comfortable set of macros to execute conditional statements; since this \TOPtesi bundle loads the \pack{etoolbox} package, other more efficient and more robust commands are available. % -\Item[caption] as described elsewhere in this documentation, when this package is loaded the user becomes responsible of the caption style and the internal definitions of \TOPtesi are not available. +\Item[caption] allows to customise all kinds of captions: but, as described elsewhere in this documentation, loading of this package implies that the user becomes responsible of the caption style because the internal definitions of \TOPtesi are not available any more. % \Item[subcaption] defines the \amb{subfigure} and \amb{subtable} environments and their individual subcaptions. % \Item[tabularx] defines a tabular environment of specified width; the automatic sizing of the table is performed by means of a special column descriptor \verb|X| (that can be used multiple times in a given table) that behaves as the \verb|p|\marg{width} descriptor, with the difference that the X-column width is computed by the package macros so as to reach the specified table width. The package is used for this module internal structures, but is available also for all users. % -\Item[booktabs] allows typesetting professional tables with special horizontal rules; using this package facilities is strongly recommended. +\Item[booktabs] allows typesetting professional tables with special horizontal rules; this package facilities are strongly recommended. % \Item[multirow] allows to describe table cells that span several rows; in general this practice should be avoided, but many users like it very much. The example file \file{toptesi-scudo-example.tex} shows how to avoid the use of this package functionalities, while maintaining full control of the cell contents positioning. @@ -2160,13 +2172,13 @@ Among real new commands it is better to recall that the ISO standards on math ty \end{verbatim} were the first argument is the \LaTeX function macro, while the second argument is the actual name that is being typeset with the “operators” font (roman). -For what concerns the base of natural logarithms and the imaginary unit, commands \cs{eu} and \cs{gei} are already provided; \cs{iu} is an alias to \cs{gei}; if you do not like “j” as the symbol of the imaginary unit (in spite of the fact the “j” is generally used in engineering disciplines), you can redefine \cs{iu} the way you like best (possibly avoiding the math greek \texttt{\string\iota} that is not an ISO official symbol). +For what concerns the base of natural logarithms and the imaginary unit, commands \cs{eu} and \cs{gei} are already provided; \cs{iu} is an alias to \cs{gei}; if you do not like “j” as the symbol of the imaginary unit (in spite of the fact the “j” is generally used in engineering disciplines), you can redefine \cs{iu} to generate “i” and avoiding the math Greek \texttt{\string\iota} that is not an ISO official symbol. For the differential symbol this extension file contains the definition: \begin{verbatim} \newcommand{\diff}{\mathop{}\!\mathrm{d}} \end{verbatim} -that accepts exponents as any regular symbol, but \LaTeX uses it in a particular way: it spaces it at its left as a regular operator, but it does not space it at its right. It is especially useful to write the integrator in an integral expression, such as +that accepts exponents as any regular symbol, but \LaTeX uses it in a particular way: it spaces this symbol at its left as a regular operator, but it does not space it at its right. It is especially useful to write the integrator in an integral expression, such as \[ F(p) = \int_{0-}^{+\infty} \eu^{-pt}f(t) \diff t \] @@ -2175,7 +2187,7 @@ This spacing does not disturb in differential equations, for example: a\frac{\diff^2x}{\diff t^2} + b\frac{\diff x}{\diff t} +cx = f(t) \] -This extension file contains also some patches for composing a nomenclature; the sample file \texttt{toptesi-scudo-example.tex}, part of \TOPtesi, contains sample definition to establish shortcuts for nomenclature groups: +This extension file contains also some patches for composing a nomenclature; the sample file \texttt{toptesi-scudo-example.tex}, part of \TOPtesi, contains sample definitions to establish shortcuts for nomenclature groups: \begin{verbatim} \renewcommand{\nomgroup}[1]{% \ifstrequal{#1}{A}{\item[\textbf{Roman Symbols}]}{% @@ -2195,20 +2207,49 @@ For the ScuDo title page see section~\ref{sec:frontescudo}. \section{Come si comincia}\label{sec:cominciare} -Non dico niente su come si scriva una tesi; so per +Non dico niente su come si scrive una tesi; so per esperienza che all'inizio ci si sente sperduti davanti allo schermo vuoto. Ma i laureandi possono scaricare dal sito -del \GuIT\footnote{Fino a qualche anno fa questo opuscoletto, prodotto da un'apposita commissione di docenti del Politecnico, era scaricabile dal portale della didattica del Politecnico di Torino. Ora un'altra commissione è al lavoro per fornire ai suoi studenti un manuale completamente nuovo che, però, non è ancora disponibile; nel frattempo la versione di Saper comunicare presente nel portale della didattica è ormai diventato obsoleto in alcune sue parti. La versione presente nel sito del \GuIT, invece, continua ad essere aggiornata.} \url{http://www.guitex.org/home/images/doc/} 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. +del \GuIT\footnote{Fino a qualche anno fa questo opuscoletto, prodotto da un'apposita commissione di docenti del Politecnico, era scaricabile dal portale della didattica del Politecnico di Torino. Ora un'altra commissione è al lavoro per fornire ai suoi studenti un manuale completamente nuovo che, però, non è ancora disponibile; nel frattempo la versione di \emph{Saper comunicare} presente nel portale della didattica è ormai diventato obsoleto in alcune sue parti. La versione presente nel sito del \GuIT, invece, continua ad essere aggiornata.} \url{http://www.guitex.org/home/images/doc/} 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 sia la via più indicata. \begin{enumerate}[noitemsep] -\item {\tolerance=3000 Si compone un unico file come esemplificato con i file \file{toptesi-example.tex}, \file{toptesi-example-xetex.tex} e \texttt{toptesi-example-con-frontespizio\discretionary{}{.}{.}tex}\index{file!toptesi-example-con-frontespiziotex@\texttt{toptesi\discretionary{}{-}{-}example\discretionary{}{-}{-}con\discretionary{}{-}{-}frontespizio\discretionary{}{.}{.}tex}} allegati alla documentazione di \TOPtesi. Questi file permettono di sperimentare diverse cose semplicemente mettendo o togliendo dei segni di commento all'inizio delle righe del preambolo che contengono alcuni comandi particolari. Essi sono completi di bibliografia e quell'unico file permette di comporre una tesi completa contenente un testo fasullo; ovviamente può essere usato come modello per una tesi vera; basta cambiare il contenuto dei comandi che contengono i nomi dei candidati, dei relatori, del titolo, dell'ateneo, della eventuale facoltà, eccetera. Ovviamente bisogna cambiare anche il contenuto dei capitoli e della bibliografia.\par} - -\item {\tolerance=3000 Si spezza il file sorgente in un numero adeguato di file parziali da gestire come specificato qui di seguito e che si ritrova nell'esempio costituito da \texttt{toptesi\discretionary{}{-}{-}scudo\discretionary{}{-}{-}example\discretionary{}{.}{.}tex}; 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 \Bambiente{document} e \Eambiente{document}, ma solo il materiale relativo ad uno specifico capitolo cominciando appunto con la riga che ne specifica il titolo: \cs{chapter}\Marg{Il titolo di questo capitolo}.\par} +\item + {\tolerance=3000 Si compone un unico file come esemplificato + con i file \file{toptesi-example.tex}, \file{toptesi-example-xetex.tex} + e \texttt{toptesi-example-con-frontespizio\discretionary{}{.}{.}tex}\index{file!toptesi-example-con-frontespiziotex@\texttt{toptesi\discretionary{}{-}{-}example\discretionary{}{-}{-}con\discretionary{}{-}{-}frontespizio\discretionary{}{.}{.}tex}} + allegati alla documentazione di \TOPtesi. Questi file permettono + di sperimentare diverse cose semplicemente mettendo o togliendo + dei segni di commento all'inizio delle righe del preambolo che + contengono alcuni comandi particolari. Essi sono completi di + bibliografia e quell'unico file permette di comporre una tesi + completa contenente un testo fasullo; ovviamente può essere usato + come modello per una tesi vera; basta cambiare il contenuto dei + comandi che contengono i nomi dei candidati, dei relatori, del + titolo, dell'ateneo, della eventuale facoltà, eccetera. + Ovviamente bisogna cambiare anche il contenuto dei capitoli e della + bibliografia.\par} -Il file che contiene il capitolo può venire chiuso con il comando \cs{endinput}, dopo il quale il file può contenere qualunque cosa che non verrà mai letta dal programma di tipocomposizione, ma per il laureando potrebbe essere molto utile per scrivere alcune annotazioni personali. +\item + {\tolerance=3000 Si spezza il file sorgente in un numero adeguato + di file parziali da gestire come specificato qui di seguito e che + si ritrova nell'esempio costituito da + \texttt{toptesi\discretionary{}{-}{-}scudo\discretionary{}{-}{-}example\discretionary{}{.}{.}tex}; + 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 \Bambiente{document} e \Eambiente{document}, + ma solo il materiale relativo ad uno specifico capitolo cominciando + appunto con la riga che ne specifica il titolo: \cs{chapter}\Marg{Il + titolo di questo capitolo}.\par} + + Il file che contiene il capitolo può venire chiuso con il comando + \cs{endinput}, dopo il quale il file può contenere qualunque cosa + che non verrà mai letta dal programma di tipocomposizione, ma per + il laureando potrebbe essere molto utile per scrivere alcune + annotazioni personali. \end{enumerate} Avendo già predisposto una scaletta da seguire per comporre la @@ -2239,7 +2280,7 @@ master file sarà dunque composto, per esempio, così: \quad \cs{nomeateneo}\Marg{La Saggezza} \quad \cs{titolo}\Marg{Studi di tricotetratomia applicata} \quad \cs{sottotitolo}\Marg{Cosa succede quando si spacca -\qquad un capello in quattro} +\qquad un capello in quattro} \quad \cs{candidata}\Marg{Maria Chiomafolta} \quad \cs{relatore}\Marg{prof.\ Piero Scapigliati} \quad \cs{sedutadilaurea}\Marg{Maggio 2345} @@ -2272,13 +2313,13 @@ del sito \url{http://www.guitex.org}. Il file \texttt{preliminari.tex} conterrà presumibilmente il sommario, molto facoltativamente i ringraziamenti\footnote{I ringraziamenti in una tesi non sono quasi mai necessari; lo sono quando bisogna ringraziare una istituzione o una o più persone \emph{esterne} alla propria università che hanno messo a disposizione le loro strutture o le loro competenze per lo svolgimento della tesi. Non si ringraziano genitori, fidanzati/e, amici, e tutti i parenti di ogni grado, il quali saranno più che contenti di sapervi laureati, piuttosto che vedere il loro nome scritto sulla tesi\dots\ Inoltre rappresenta un atto di piaggeria ringraziare il o i propri relatori; essi hanno svolto un loro compito istituzionale, non vi hanno fatto un piacere. Naturalmente questo non vieta che 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. -Mentre per i ringraziamenti si è già sottolineata la loro utilità solo in certe circostanze e la loro inutilità quando quelle circostanze non sussistono, per il “sommario” la questione è diversa. Infatti in italiano la parola “sommario” può voler dire diverse cose; può indicare una breve descrizione del contenuto di un documento e in questo caso la lingua inglese è più precisa perché indica questa descrizione col nome di \emph{abstract}. “Sommario” può indicare un riassunto o una sinossi piuttosto approfonditi e in questo caso l'inglese usa il nome di \emph{summary}. Inoltre “sommario” può essere usato in italiano come sinonimo di “indice generale”, mentre l'inglese usa solamente la locuzione nominale \emph{table of contents}. Con \TOPtesi\ l'abstract si crea con l'ambiente \amb{abstract} con un'avvertenza: se lo si scrive in italiano bisogna cambiargli il nome da “Sommario” in qualcosa d'altro che personalmente non saprei come scegliere; se lo si volesse chiamare “Breve descrizione”, per esempio, bisognerebbe aggiungere nel preambolo l'istruzione +Mentre per i ringraziamenti si è già sottolineata la loro utilità solo in certe circostanze e la loro inutilità quando quelle circostanze non sussistono, per il “sommario” la questione è diversa. Infatti in italiano la parola “sommario” può voler dire diverse cose; può indicare una breve descrizione del contenuto di un documento e in questo caso la lingua inglese è più precisa perché indica questa descrizione col nome di \emph{abstract}. “Sommario” può indicare un riassunto o una sinossi piuttosto approfonditi e in questo caso l'inglese usa il nome di \emph{summary}. Inoltre “sommario” può essere usato in italiano come sinonimo di “indice generale”, mentre l'inglese usa solamente la locuzione nominale \emph{table of contents}. Con \TOPtesi l'abstract si crea con l'ambiente \amb{abstract} con un'avvertenza: se lo si scrive in italiano bisogna cambiargli il nome da “Sommario” in qualcosa d'altro che personalmente non saprei come scegliere; se lo si volesse chiamare “Breve descrizione”, per esempio, bisognerebbe aggiungere nel preambolo l'istruzione \begin{sintassi} \cs{addto}\Marg{\cs{captionsintalian}}\Marg{\cs{renewcommand}\cs{abstractname}\Marg{Breve descrizione}} \end{sintassi} mentre componendo in inglese (e probabilmente anche in altre lingue) non è necessario aggiungere nessuna istruzione. -Per l'indice generale e gli altri indici non occorre fare nulla se non quanto è descritto più avanti in merito al comando \cs{indici}. +Per l'indice generale e gli altri indici non occorre fare nulla se non quanto è descritto più avanti in merito al comando \cs{indici}. Per il riassunto o la sinossi approfonditi (da comporsi solo se \emph{non} si è usato l'ambiente \amb{abstract}) lo si introduce con il comando \cs{sommario}, che compone un capitolo non numerato intitolato Sommario in italiano e Summary in inglese. Un capitolo implica non solo un titolo ma anche alcune pagine di testo; il capitolo può anche essere strutturato in paragrafi, sottoparagrafi e contenere anche delle figure; sarebbe preferibile evitare qualunque numerazione. In ogni caso un riassunto deve essere significativamente più breve della tesi. @@ -2317,7 +2358,7 @@ inserisce direttamente una È all'inizio di un periodo e inserisce direttamente \end{verbatim} per ottenere: \begin{quote} -\`E\ conveniente rilevare che\dots +È conveniente rilevare che\dots \end{quote} L'uso del pacchetto \pack{xspace} fa sì che esso, tramite il comando \cs{xspace}, inserisca uno spazio, a meno che il comando \cs{E} non sia seguito da qualunque cosa che non sia uno spazio, per esempio un segno di interpunzione, o una tilde di legatura; anche il comando esplicito di spazio \verb*|\ | impedisce l'inserimento di un ulteriore spazio da parte di \cs{xspace}. @@ -2341,7 +2382,7 @@ oppure ... \end{document} \end{verbatim} -Al posto di \opt{ancient} si può specificare \opt{polutoniko}; \opt{polutoniko} si riferisce al greco moderno scritto con tutta la varietà di accenti e diviso in sillabe con i criteri adatti alla lingua moderna; \opt{ancient} si riferisce al greco classico, che oltre ad usare la solita varietà di accenti, usa altre regole per la sillabazione di questa varietà di lingua. +Al posto di \opt{ancient} si può specificare \opt{polutoniko}; \opt{polutoniko} si riferisce al greco moderno scritto con tutta la varietà di accenti e diviso in sillabe con i criteri adatti alla lingua moderna; \opt{ancient} si riferisce al greco classico che, oltre ad usare la solita varietà di accenti, usa altre regole per la sillabazione di questa varietà di lingua. Per una tesi che tratti il greco antico in forma filologica, consiglio l'uso del pacchetto \pack{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 \pack{teubner} non viene caricato se non è stato precedentemente specificata la lingua greca fra le opzioni, ma poi provvede da solo ad impostare l'attributo \opt{ancient} e tutte le altre caratteristiche necessarie per comporre in greco con il \emph{mark-up} filologico. A tutt'oggi (2018) il pacchetto \pack{teubner} non è stato adeguatamente controllato sotto \XeLaTeX\ e \LuaLaTeX. Probabilmente non è completamente compatibile, ma non sono ancora in grado di dire niente né in positivo né in negativo. @@ -2351,11 +2392,11 @@ Immagino che per usare le lingue che si scrivono in cirillico, basti specificare Suggerisco di riferirsi al documento \emph{L'Arte di scrivere in diverse lingue con (Xe)LaTeX}, liberamente scaricabile dalla sezione Documentazione del sito \url{www.guitex.org}. Questa guida tratta molti argomenti utili per comporre in lingue straniere comprese alcune di quelle che si scrivono con insiemi di caratteri diversi da quelli latini; descrive anche molte caratteristiche delle tradizioni tipografiche in uso in nazioni diverse dall'Italia oltre, ovviamente, quelle delle tradizioni italiane. -Ma, tornando alla codifica UTF-8, il problema non è tanto l'editor che consenta o non consenta di usare quella codifica; quasi tutti i sistemi operativi consentono di installare diversi driver per la tastiera del PC, cosicché con un semplice click del mouse si può passare da un alfabeto all'altro; il problema sono i tasti della tastiera sulla cui faccia è riportato il segno che si ottiene premendo quel tasto quando è attivo il driver corrispondente a quella specifica tastiera. Non è ovviamente possibile cambiare il disegno che appare sui tasti semplicemente cliccando per cambiare driver; forse lo si può fare con le tastiere virtuali dei PC \emph{touch screen}, ma con i PC normali questo non è possibile. Ecco quindi che la difficoltà di scrivere con un alfabeto diverso richiede una memoria ferrea per ricordare a quale segno dell'altro alfabeto corrisponda il tasto della nostra tastiera. +Ma, tornando alla codifica UTF-8, il problema non è tanto l'editor che consenta o non consenta di usare quella codifica; quasi tutti i sistemi operativi consentono di installare diversi driver per la tastiera del PC, cosicché con un semplice click del mouse si può passare da un alfabeto all'altro; il problema sono i tasti della tastiera sulla cui faccia è riportato il segno che si ottiene premendo quel tasto quando è attivo il driver corrispondente a quella specifica tastiera. Non è ovviamente possibile cambiare il disegno che appare sui tasti semplicemente cliccando per cambiare driver; forse lo si può fare con le tastiere virtuali dei PC \emph{touch screen}, ma con i PC normali questo non è possibile. Ecco quindi che la difficoltà di scrivere con un alfabeto diverso richiede una memoria ferrea per ricordare a quale segno dell'altro alfabeto corrisponda il tasto della propeia tastiera. Per il greco moderno e classico, se si usano con \prog{pdflatex} i font di default con la codifica LGR (Local GReek) (che vengono installati praticamente con ogni installazione del sistema \TeX aggiornata e, soprattutto, \emph{completa}) 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, eccetera). 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 in generale con il cirillico che ha un alfabeto composto di più di 30 segni, per cui la corrispondenza diretta con l'alfabeto latino è impossibile; so che una delle traslitterazioni latine del cirillico permette di scrivere in russo giocando con combinazioni di lettere che vengono trasformate in legature e quindi nei segni cirillici che non corrispondono direttamente a quelli latini. -Con le macchine Mac il sistema operativo Mac OS X mette a disposizione una specie di tastiera virtuale sui tasti della quale si può cliccare con il mouse; si possono installare diverse tastiere che possono venire alternate con un semplice click sulla icona disegnata nella barra superiore; per cui scrivere in greco politonico o in russo o in ebraico, o in\dots, non è un grosso problema. Temo che lo sia con altre macchine e altri sistemi operativi. +Con le macchine Mac il sistema operativo Mac OS X mette a disposizione una specie di tastiera virtuale sui tasti della quale si può cliccare con il mouse; si possono installare diversi driver di tastiere che possono venire alternati con un semplice click sulla icona disegnata nella barra superiore; per cui scrivere in greco politonico o in russo o in ebraico, o in\dots, non è un grosso problema. Temo che lo sia con altre macchine e altri sistemi operativi. Sembra che sulle macchine Linux l'editor \prog{Vim} e, su tutte le macchine, l'editor \prog{emacs} prevedano delle combinazioni di tasti che consentono di scrivere direttamente in greco sullo schermo, nella finestra del file \texttt{.tex}. Ho letto qualcosa in merito, ma non sono in grado di confermare per esperienza diretta. @@ -2369,7 +2410,7 @@ Inoltre con la codifica \opt{OT1} la presenza di macro per gli accenti impedisce Allora per tutte le lingue diverse dall'inglese, ma anche per l'inglese, è quanto mai opportuno specificare per i font di uscita la codifica \opt{T1}. C'è però un problemino, facilmente risolubile, ma bisogna pensarci: fino ad oggi (2018) i font di default usati da \pdfLaTeX\ sono i font della collezione Computer Modern con codifica \opt{OT1}; e ogni installazione del sistema \TeX li può usare sia nella versione “bitmapped” sia in quella PostScript Type~1. Quest'ultimo formato dei font dovrebbe essere quello da usare sempre con qualunque font per il formato PDF del file di uscita, perché questo formato è portabile da una macchina all'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 \opt{T1}, conosciuti anche come font EC, sono invece distribuiti solo nella forma bitmapped, la quale, oltre ad essere vietata nei file PDF archiviabili, si legge molto male sullo schermo, se il programma di visualizzazione non è molto ben adattato ai font bitmapped. Esiste la collezione di font \Font{CM-Super} per ovviare a questo inconveniente (questa collezione è installata di default in ogni installazione \emph{completa} del sistema \TeX), ma l'uso di questi font implica un aumento non trascurabile delle dimensioni del file di uscita. Per aggirare questi inconvenienti è meglio usare i font della collezione Latin Modern, per cui nel preambolo del file da gestire con \prog{pdflatex} si specificherà: +I file della collezione Computer Modern con codifica \opt{T1}, conosciuti anche come font EC, sono invece distribuiti solo nella forma bitmapped, la quale, oltre ad essere vietata nei file PDF archiviabili, si legge molto male sullo schermo, se il programma di visualizzazione non è molto ben adattato ai font bitmapped. Esiste la collezione di font \Font{CM-Super} per ovviare a questo inconveniente (questa collezione è installata di default in ogni installazione \emph{completa} del sistema \TeX), ma questi font soffrono di un inconveniente che i font Latin Modern non hanno. Perciò è meglio usare i font della collezione Latin Modern, per cui nel preambolo del file da gestire con \prog{pdflatex} si specificherà: \begin{verbatim} \documentclass[...]{toptesi} ... @@ -2385,36 +2426,40 @@ Se invece il file viene gestito con \prog{xelatex} o \prog{lualatex}, oltre alla Naturalmente per gli utenti esperti di \LaTeX ci sono anche altri pacchetti usabili per impiegare altri font diversi da quelli della collezione Latin Modern; questi comunque, secondo me, sono i migliori per la loro completezza; inoltre, grazie al diverso disegno dei corpi minori, la lettura dei pedici e degli apici ne risulta agevolata. -Qui, per la composizione della tesi con \prog{pdflatex} segnalo solo la collezione dei font Times eXtended, richiamabili con i pacchetti \pack{newtxtext} e \pack{newtxmath}, e la collezione dei font Palatino eXtended, richiamabili con i pacchetti \pack{newpxtext} e \pack{newpxmath}. 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 talvolta allungano la tesi di qualche pagina. I nuovi pacchetti \pack{newtx...} e \pack{newpx...} sono configurabili con diverse opzioni; li consiglio a coloro che vogliono usare i font Times o Palatino, ma se devo dare un consiglio assoluto, direi che sia sempre preferibile usare i font Latin Modern dalle prestazioni migliori grazie ai corpi ottici; volendo si può usare il pacchetto \pack{cfr-lm} che consente di personalizzare fortemente le proprietà dei font Latin Modern da usare, per esempio permettendo l'uso delle cifre minuscole \ifPDFTeX\oldstylenums{1234567890}\else {\addfontfeature{Numbers=OldStyle}{1234567890}}\fi\ nel testo, e le cifre maiuscole 1234567890 nella composizione della matematica. +Qui, per la composizione della tesi con \prog{pdflatex} segnalo solo la collezione dei font Times eXtended, richiamabili con i pacchetti \pack{newtxtext} e \pack{newtxmath}, e la collezione dei font Palatino eXtended, richiamabili con i pacchetti \pack{newpxtext} e \pack{newpxmath}. 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 talvolta allungano la tesi di qualche pagina. I nuovi pacchetti \pack{newtx...} e \pack{newpx...} sono configurabili con diverse opzioni; li consiglio a coloro che vogliono usare i font Times o Palatino, ma se posso dare un consiglio assoluto, direi che sia sempre preferibile usare i font Latin Modern dalle prestazioni migliori grazie ai corpi ottici; volendo si può usare il pacchetto \pack{cfr-lm} che consente di personalizzare fortemente le proprietà dei font Latin Modern da usare, per esempio permettendo l'uso delle cifre minuscole \ifPDFTeX\oldstylenums{1234567890}\else {\addfontfeature{Numbers=OldStyle}{1234567890}}\fi\ nel testo, e le cifre maiuscole 1234567890 nella composizione della matematica. -Tanto per confronto, questo testo di documentazione su \textsf{TOPtesi}, quando è composto con il motore di composizione \prog{lualatex}, usa i font OpenType TeX Gyre Termes con codifica UNICODE presenti nella distribuzione \emph{completa} del sistema \TeX; come si vede la divisione delle parole in fin di riga non presenta inconvenienti particolari; forse con un testo di altro genere, con composizione in colonne strette o all'interno di tabelle, si potrebbe verificare la presenza di righe molto lasche, dove è stato allargato troppo lo spazio interparola. Per questa eventualità di ottenere righe lasche, quando si usa il programma di composizione \prog{pdflatex}, si consiglia sempre di usare la codifica \opt{T1}, perché certamente con questa codifica si hanno meno inconvenienti e le lettere accentate sono disegnate meglio. Se inoltre si usano i programmi \prog{pdflatex} o \prog{lualatex}, è conveniente invocare anche il pacchetto di estensione \pack{microtype} che consente di comporre ancora meglio le righe del testo; invece con \prog{xelatex} le funzionalità di questo pacchetto sono solo parzialmente usabili; comunque si può usare \pack{microtype} anche compilando con \prog{xelatex} sebbene i miglioramenti siano meno “vistosi\footnote{“Vistosi” è fra virgolette, perché il compito di \pack{microtype} è quello di \emph{non far vedere} i piccolissimi difetti che si hanno quando non lo si usa; troppe righe con cesura alla fine, ruscelletti bianchi che serpeggiano fra le righe; spazi interparola disomogenei e altri simili difettucci. Voglio segnalare che con i normali word processor la divisione in sillabe in fin di riga è consentita, ma di solito non viene attivata dall'utente; inoltre anche impostando questa funzionalità, lavorando in italiano l'apostrofo impedisce la sillabazione, quindi in certe circostanze gli spazi interparola diventano immensi. Ecco perché con i word processor il risultato della composizione non è di qualità tipografica.}” che con \prog{pdflatex} o \prog{lualatex}.\enlargethispage{\baselineskip} +Tanto per confronto, questo testo di documentazione su \textsf{TOPtesi}, quando è composto con il motore di composizione \prog{lualatex}, usa i font OpenType TeX Gyre Termes con codifica UNICODE presenti nella distribuzione \emph{completa} del sistema \TeX; come si vede la divisione delle parole in fin di riga non presenta inconvenienti particolari; forse con un testo di altro genere, con composizione in colonne strette o all'interno di tabelle, si potrebbe verificare la presenza di righe molto lasche, dove è stato allargato troppo lo spazio interparola. Per questa eventualità di ottenere righe lasche, quando si usa il programma di composizione \prog{pdflatex}, si consiglia sempre di usare la codifica \opt{T1}, perché certamente con questa codifica si hanno meno inconvenienti e le lettere accentate sono disegnate meglio. Se inoltre si usano i programmi \prog{pdflatex} o \prog{lualatex}, è conveniente invocare anche il pacchetto di estensione \pack{microtype} che consente di comporre ancora meglio le righe del testo; invece con \prog{xelatex} le funzionalità di questo pacchetto sono solo parzialmente usabili; comunque si può usare \pack{microtype} anche compilando con \prog{xelatex} sebbene i miglioramenti siano meno “vistosi” che con \prog{pdflatex} o \prog{lualatex}\footnote{“Vistosi” è fra virgolette, perché il compito di \pack{microtype} è quello di \emph{non far vedere} i piccolissimi difetti che si hanno quando non lo si usa; troppe righe con cesura alla fine, ruscelletti bianchi che serpeggiano fra le righe; spazi interparola disomogenei e altri simili difettucci. Voglio segnalare che con i normali word processor la divisione in sillabe in fin di riga è consentita, ma di solito non viene attivata dall'utente; inoltre anche impostando questa funzionalità, lavorando in italiano l'apostrofo impedisce la sillabazione, quindi in certe circostanze gli spazi interparola diventano immensi. Ecco perché con i word processor il risultato della composizione non è di qualità tipografica.}. +%\enlargethispage{\baselineskip} \section{Come stampare la tesi} \TOPtesi ridefinisce il layout della pagina seguendo questi criteri, concordati con la segreteria del Politecnico di Torino; in realtà queste sono le preferenze di quella segreteria, ma se si legge con attenzione si vede che compaiono diverse volte parole come “almeno”, “non meno di” e simili. Esse rappresentano dei limiti entro cui restare e, se si rispettano questi limiti, qualunque layout di pagina sarebbe accettabile; il requisito più importante è dato da questa frase: “Lo specchio di stampa deve avere le dimensioni di almeno 150\unit{mm} per 210\unit{mm} e deve contenere almeno 43 righe di testo. Il margine interno non deve essere inferiore a 25\unit{mm}.” -In un foglio A4, di 210\unit{mm} per 297\unit{mm} quello spazio lascia complessivamente 60\unit{mm} per i margini laterali e 87\unit{mm} per quelli verticali. Siccome i margini interno ed esterno vengono fissati da TOPtesi, è opportuno che anche i margini superiore e inferiore siano uguali; siccome il numero di pagina nel piedino non ha alcun impatto visivo, mentre le testatine, al contrario, sono visivamente importanti; i valori numerici dei due margini vengono posti a valori diversi, proprio per tenere conto che le “almeno 43 righe” occupino la posizione visivamente corretta nonostante i margini verticali siano, in definitiva, numericamente un po' diversi. +In un foglio A4, di 210\unit{mm} per 297\unit{mm} quello spazio lascia complessivamente 60\unit{mm} per i margini laterali e 87\unit{mm} per quelli verticali. Siccome i margini interno ed esterno vengono fissati da \TOPtesi, è opportuno che anche i margini superiore e inferiore siano uguali; siccome il numero di pagina nel piedino non ha alcun impatto visivo, mentre le testatine, al contrario, sono visivamente importanti; i valori numerici dei due margini vengono posti a valori diversi, proprio per tenere conto che le “almeno 43 righe” occupino la posizione visivamente corretta nonostante i margini verticali siano, in definitiva, numericamente un po' diversi. Quelle erano le prescrizioni della segreteria del Politecnico; e continuano ad essere valide, specialmente in vista dell'archiviazione elettronica che viene fatte per tutte le tesi. In altri Atenei vengono accettati anche altri formati, specialmente il formato B5 in molte facoltà umanistiche. TOPtesi, pertanto accetta anche altre opzioni di formato di carta e provvede alle giuste impostazioni anche per quel che riguarda questo tipo di informazioni all'interno del file PDF di uscita; questo in vista della stampa, ma più ancora per le lettura a video. Ovviamente con i formati di carta più piccoli le dimensioni sono ridotte proporzionalmente, tranne lo scartamento delle righe di testo che viene mantenuto uguale a quello che si sarebbe usato con la carta~A4; il numero di righe di una pagina di solo testo, evidentemente, su fogli di minori dimensioni diminuisce quasi proporzionalmente. Per questi motivi TOPtesi, qualunque sia il formato della carta, divide lo spazio complessivo in parti uguali fra i margini laterali quando si desidera produrre una versione del file PDF da leggere a video. Invece divide lo spazio complessivo in parti diverse se il file PDF deve essere stampato; in particolare la proporzioni fra il margine interno e quello esterno sono uguali a quelle fa la giustezza e la larghezza della carta e questa stessa proporzione viene usata fra il margine superiore e quello inferiore; ne consegue che, se non si usano caratteri troppo grandi, una delle diagonali dello specchio di stampa coincide con la corrispondente diagonale della pagina. Questa disposizione coincide con uno dei disegni classici del layout di pagina. -Ora si tenga presente che per la leggibilità confortevole del testo sarebbe opportuno che in ogni riga fossero presenti tanti caratteri, spazi e segni di interpunzione compresi, in numero compreso nella fascia di $66\pm6$. Ovviamente a pari giustezza del testo il numero di caratteri varia a seconda del loro corpo e del loro disegno; una buona indicazione approssimata della “larghezza” di un font è dato dalla lunghezza della stringa che contiene l'alfabeto minuscolo. Secondo Bringhurst (vedi la guida tematica \url{http://guitex.org/home/images/doc/GuideGuIT/IntroPageDesign.pdf} nella pagina~6) la lunghezza ottima di una riga di stampa (la giustezza) dovrebbe essere pari a due volte e mezza la lunghezza dell'alfabeto; si vede anche nella figure~1.1 di quella guida, che i font di default di TOPtesi, i Latin Modern, sono lunghi 128\unit{pt} pari a 45\unit{mm}; quindi la giustezza ottimale dovrebbe essere di 113\unit{mm} invece dei 150\unit{mm} prescritti dalla segreteria\footnote{Questi conti e quelli immediatamente successivi sono arrotondati al millimetro; non è importantissimo fare i conti con grande precisione, visto che la regola di Bringhurst concede circa il 10\% di tolleranza.}. Con i Times che hanno una larghezza dell'alfabeto di 119\unit{pt} pari a 42\unit{mm} la giustezza ottimale dovrebbe essere di 105\unit{mm}; con i Palatino l'alfabeto è lungo 133\unit{pt} pari a 47\unit{mm} e la giustezza ottimale sarebbe di 118\unit{mm}. Aumentando il corpo a 12\unit{pt} le tre giustezze ottimali appena determinate diventano rispettivamente di 136\unit{mm}, 126\unit{mm} e 142\unit{mm}. come si vede solo componendo in corpo 12\unit{pt} con i font Palatino si resterebbe dentro i margini indicati (verso il limite superiore) dalla regola di Bringhurst; con i Times usati in questo testo e la giustezza di 150\unit{mm} si arriva ad una numero medio di caratteri per ogni riga di circa 79 caratteri, fuori del margine superiore indicato dalla regola di Bringhurst. Non è un eccesso terribile, ed è sopportabile; ma le esigenze di archiviazione dell'Ateneo richiedono di non sprecare spazio nelle pagine senza però sacrificare il contenuto. +Ora si tenga presente che per la leggibilità confortevole del testo sarebbe opportuno che in ogni riga fossero presenti tanti caratteri, spazi e segni di interpunzione compresi, in numero compreso nella fascia di $66\pm6$. Ovviamente a pari giustezza del testo il numero di caratteri varia a seconda del loro corpo e del loro disegno; una buona indicazione approssimata della “larghezza” di un font è dato dalla lunghezza della stringa che contiene l'alfabeto minuscolo. Secondo Bringhurst (vedi la guida tematica \url{http://guitex.org/home/images/doc/GuideGuIT/IntroPageDesign.pdf} nella pagina~6) la lunghezza ottima di una riga di stampa (la giustezza) dovrebbe essere pari a due volte e mezza la lunghezza dell'alfabeto; si vede anche nella figura~1.1 di quella guida, che i font di default di TOPtesi, i Latin Modern, sono lunghi 128\unit{pt} pari a 45\unit{mm}; quindi la giustezza ottimale dovrebbe essere di 113\unit{mm} invece dei 150\unit{mm} prescritti dalla segreteria\footnote{Questi conti e quelli immediatamente successivi sono arrotondati al millimetro; non è importantissimo fare i conti con grande precisione, visto che la regola di Bringhurst concede circa il 10\% di tolleranza.}. Con i Times che hanno una larghezza dell'alfabeto di 119\unit{pt} pari a 42\unit{mm} la giustezza ottimale dovrebbe essere di 105\unit{mm}; con i Palatino l'alfabeto è lungo 133\unit{pt} pari a 47\unit{mm} e la giustezza ottimale sarebbe di 118\unit{mm}. Aumentando il corpo a 12\unit{pt} le tre giustezze ottimali appena determinate diventano rispettivamente di 136\unit{mm}, 126\unit{mm} e 142\unit{mm}. come si vede solo componendo in corpo 12\unit{pt} con i font Palatino si resterebbe dentro i margini indicati (verso il limite superiore) dalla regola di Bringhurst; con i Times usati in questo testo e la giustezza di 150\unit{mm} si arriva ad una numero medio di caratteri per ogni riga di circa 79 caratteri, fuori del margine superiore indicato dalla regola di Bringhurst. Non è un eccesso terribile, ed è sopportabile; ma le esigenze di archiviazione dell'Ateneo richiedono di non sprecare spazio nelle pagine senza però sacrificare il contenuto. Con il formato B5 i problemi di leggibilità indicati sopra non esistono; meno che mai con il formato A5; tuttavia i formati più piccoli a pari contenuto richiedono più pagine, quindi i problemi di archiviazione “cartacea” si ripresentano. Inoltre i formati più piccoli richiedono una paziente messa a punto delle singole pagine, perché in una tesi con molta matematica ed altri oggetti “ingombranti” potrebbero esserci molte pagine mal composte; suggerirei di non scendere mai sotto il formato~B5. -Insomma TOPtesi sacrifica un poco la leggibilità, ma viene incontro ad altre esigenze. Altre classi possono avere layout più consone alle regole di Bringhurst, ma anche in formato A4 usano più pagine. +Insomma \TOPtesi sacrifica un poco la leggibilità, ma viene incontro ad altre esigenze. Altre classi possono avere layout più consone alle regole di Bringhurst, ma anche in formato A4 usano più pagine. -Alla luce di quanto sopra descritto, TOPtesi non solo usa uno scartamento leggermente minore di quello ritenuto ottimale per i font in uso, ma richiede che l'utente non metta mano ad allontanare le righe; per lo stesso motivo TOPtesi invita gli utenti a servirsi della stampa fronte/retro. +Alla luce di quanto sopra descritto, \TOPtesi non solo usa uno scartamento leggermente minore di quello ritenuto ottimale per i font in uso, ma richiede che l'utente non metta mano ad allontanare le righe; per lo stesso motivo \TOPtesi invita gli utenti a servirsi della stampa fronte/retro. -Il pacchetto \textsf{TOPtesi} accetta anche l'opzione di composizione in \emph{bianca e volta}, ma di default compone su una facciata sola della pagina (impostazione di default della sottostante classe \class{report} come anche il formato della carta, di default \texttt{letter}); resta responsabilità dell'utente quella di specificare l'opzione \opz{twoside} al fine di ottimizzare lo spazio disponibile stampando su entrambe le facciate di ogni pagina, e una delle opzioni \opz{a4paper} (default di \textsf{TOPtesi}) o \opz{b5paper}, o qualsiasi altra opzione di formato di carta accettata dalla classe \class{report} per confezionare lo specchio di stampa in modo più consono al formato della carta; in realtà \TOPtesi provvede a realizzare uno specchio di stampa che si adatta particolarmente bene ai formati ISO, mentre non rispetta i formati americani, anche se gli specchi di stampa tutto sommato vanno bene anche per questi formati. +Il pacchetto \textsf{TOPtesi} accetta anche l'opzione di composizione in \emph{bianca e volta}, ma di default compone su una facciata sola della pagina cartacea (impostazione di default della sottostante classe \class{report}; anche il formato della carta, di default \texttt{letter}) richiama i formati di carta americani; resta responsabilità dell'utente quella di specificare l'opzione \opz{twoside} al fine di ottimizzare lo spazio disponibile stampando su entrambe le facciate di ogni pagina, e una delle opzioni \opz{a4paper} (default di \textsf{TOPtesi}) o \opz{b5paper}, o qualsiasi altra opzione di formato di carta accettata dalla classe \class{report} per confezionare lo specchio di stampa in modo più consono al formato della carta; in realtà \TOPtesi provvede a realizzare uno specchio di stampa che si adatta particolarmente bene ai formati ISO, mentre non rispetta i formati americani, anche se gli specchi di stampa tutto sommato vanno bene anche per questi formati. In Italia i formati americani non sono in commercio, però potrebbero servire per gli studenti che seguono un programma di doppio titolo in congiunzione con un'università statunitense. Inoltre qual è la differenza fra la stampa in bianca e quella in bianca e volta? È quella che si osserva nei libri composti meglio: cioè, nelle testatine delle pagine stampate solo in bianca compare sempre e solo il titolo del capitolo corrente, mentre stampando in bianca e volta nelle testatine delle pagine \emph{pari} compare il titolo del capitolo, mentre nelle pagine \emph{dispari} compare il titolo del paragrafo con cui comincia quella pagina. Cercare qualche argomento nel testo stampato risulta molto più facile se le testatine delle pagine pari e di quelle dispari contengono tutta l'informazione necessaria. -I libri stampati meglio hanno i margini laterali diversi, con quello interno più piccolo di quello esterno; questo si ottiene facilmente impostando \opz{libro} fra le opzioni per la classe; l'utente che volesse conservarsi la tesi in forma cartacea, può comporre la versione d'archivio in forma elettronica con i margini uguali e poi ricomporre la versione a stampa con i margini diversi grazie all'opzione indicata; ricompilando il documento, si ottengono tutti gli elementi per i riferimenti incrociati perfettamente coerenti con la nuova impaginazione; si tratta di un'operazione che dura complessivamente poche decine di secondi. +I libri stampati meglio hanno i margini laterali diversi, con quello interno più piccolo di quello esterno; tutto ciò si ottiene facilmente impostando \opz{libro} fra le opzioni per la classe; l'utente che volesse conservarsi la tesi in forma cartacea, può comporre la versione d'archivio in forma elettronica con i margini uguali e poi ricomporre la versione a stampa con i margini diversi grazie all'opzione indicata; ricompilando il documento, si ottengono tutti gli elementi per i riferimenti incrociati perfettamente coerenti con la nuova impaginazione; si tratta di un'operazione che dura complessivamente poche decine di secondi. -\goodpagebreak[5] +Va da se che quando si stampa, bisogna informare la copisteria dell'impostazione in bianca e volta, in modo che i fogli siano stampati su entrambi i lati; la legatura che le copisterie generalmente forniscono per le tesi, anche se sono fatte con la coperta rigida, hanno solitamente i blocchi delle pagine incollati, invece che cuciti; è per questo che con l'opzione \opz{libro} conviene usare anche l'opzione \chiave{cucitura} specificando un valore di pochi millimetri; di solito 4\,mm o 5\,mm vanno bene. + + +%\goodpagebreak[5] \section{Comporre la tesi in diverse lingue}\label{sec:lingue} Il pacchetto \textsf{TOPtesi} usa di default il pacchetto \pack{babel} o il pacchetto \pack{polyglossia} per gestire la composizione in diverse lingue. @@ -2466,28 +2511,28 @@ slovenian, spanish, swedish, turkish, turkmen, ukrainian, uppersorbian, welsh, loaded. \end{Verbatim} -Dal 2014, purtroppo l'elenco delle lingue è sostituito dalla seguente laconica frase: +Dal 2014, purtroppo l'elenco delle lingue è sostituito laconicamante da una frase del tipo: \begin{verbatim} Babel <3.9k> and hyphenation patterns for 81 languages loaded. \end{verbatim} -Non c'è bisogno di preoccuparsi; nella mia macchina sono installate alcune lingue in più rispetto a quelle di default, ma se il numero è così alto, vuol dire che sono installate tutte le lingue che i programmi di composizione del sistema \TeX sono capaci di gestire; fra queste c'è l'italiano, tre versioni di greco, tre versioni di latino, eccetera. L'elenco completo può venire letto nei file \file{pdflatex.log}, \file{xelatex.log} che si trovano in uno degli alberi del sistema \TeX. La lettura è un po' criptica, anche perché il file è piuttosto lungo, ma basta cercare la stringa \texttt{l@english}, e di lì in avanti è registrato tutto quello che serve conoscere per l'elenco delle lingue installate. \LuaLaTeX, diversamente da \pdfLaTeX\ e da \XeLaTeX, carica le impostazioni per le lingue del documento, sillabazione compresa, solo al momento di compilare quel dato documento; per questo compilatore solo l'inglese è precaricato, ma al momento opportuno esso si carica tutto ciò che è necessario per comporre in ciascuna dell'ottantina di lingue che riesce a gestire, o meglio in ciascuna delle lingue specificate per la composizione di ogni particolare documento, massimo un'ottantina (dovrebbero essere sufficienti\dots). +Non c'è bisogno di preoccuparsi; nella mia macchina sono installate alcune lingue in più rispetto a quelle di default, ma se il numero è così alto, vuol dire che sono installate tutte le lingue che i programmi di composizione del sistema \TeX sono capaci di gestire; fra queste c'è l'italiano, tre versioni di greco, tre versioni di latino, eccetera. L'elenco completo può venire letto nei file \file{pdflatex.log}, \file{xelatex.log} che si trovano in uno degli alberi del sistema \TeX. La lettura è un po' criptica, anche perché il file è piuttosto lungo, ma basta cercare la stringa \texttt{l@english}, e di lì in avanti è registrato tutto quello che serve conoscere per l'elenco delle lingue installate. \LuaLaTeX, diversamente da \pdfLaTeX\ e da \XeLaTeX, carica le impostazioni per le lingue del documento, sillabazione compresa, solo al momento di compilare quel dato documento; per questo compilatore solo l'inglese è precaricato, ma al momento opportuno esso si carica tutto ciò che è necessario per comporre il test in ciascuna dell'ottantina di lingue che riesce a gestire, o meglio in ciascuna delle lingue specificate per la composizione di ogni particolare documento, massimo un'ottantina (dovrebbero essere sufficienti\dots). Quel listato o quella riga è quanto appare sempre quando si usa la distribuzione \TeXLive completa o quando si usa la distribuzione \MiKTeX~2.9 (o successiva) completa; serve per dare un'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 (oppure sono elencate solo una mezza dozzina di lingue, oppure si dice che le lingue installate sono in un numero molto inferiore a 80), 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. Questo inconveniente si manifesta quando si installa una versione ridotta delle distribuzioni del sistema \TeX, oppure quando si usa la distribuzione \TeXLive/Debian (sempre sconsigliabile per vari motivi, non escluso il fatto che l'installazione di default di solito prevede solo la sillabazione per l'inglese). Le regole per inizializzare le lingue gestibili differiscono da distribuzione a distribuzione del sistema \TeX. Bisogna quindi leggere la documentazione che accompagna la distribuzione che si sta usando; qui darò alcuni cenni relativi alle distribuzioni che io conosco. \subsubsection{\MiKTeX} -Questa distribuzione è forse quella che più sovente viene installata nella forma “basic” (errore! mai installare la versione di base, perché è tutt'altro che completa) e perciò è fra quelle che hanno bisogno di essere gestite. Si apre il wizard da \texttt{Avvio\discretionary{}{|}{|}Programmi\discretionary{}{|}{|}MiKTeX\discretionary{}{|}{|}MiKTeX\textvisiblespace Settings}. Esso apre una finestra di dialogo con diverse linguette; si clicca sulla linguetta \textsf{Languages} e viene aperta un'altra finestra con l'elenco di tutte le lingue gestibili, alcune già con il segno di spunta alla loro sinistra nell'apposito quadratino, altre senza il segno di spunta. Potete cliccare per togliere il segno di spunta sulle lingue già spuntate ma che non userete mai, ma lo sconsiglio, e potete aggiungere il segno di spunta cliccando nel quadratino corrispondente alle lingue desiderate, ma consiglio di spuntarle tutte. +Questa distribuzione è forse quella che più sovente viene installata nella forma “basic” (errore! mai installare la versione di base, perché è tutt'altro che completa) e perciò è fra quelle che hanno bisogno di essere gestite. Si apre il wizard da \texttt{Avvio\discretionary{}{|}{|}Programmi\discretionary{}{|}{|}MiKTeX\discretionary{}{|}{|}MiKTeX\textvisiblespace Settings}. Esso apre una finestra di dialogo con diverse linguette; si clicca sulla linguetta \textsf{Languages} e viene aperta un'altra finestra con l'elenco di tutte le lingue gestibili, alcune già con il segno di spunta alla loro sinistra nell'apposito quadratino, altre senza il segno di spunta. Potete cliccare per togliere il segno di spunta sulle lingue già spuntate ma che non userete mai (ma lo sconsiglio) e potete aggiungere il segno di spunta cliccando nel quadratino corrispondente alle lingue desiderate (ma consiglio di spuntarle tutte). Poi, usciti dal dialogo per la scelta delle lingue, si clicca \texttt{OK} e si torna sulla linguetta \textsf{General}; qui si trovano due bottoni il primo dei quali serve per aggiornare il database dei nomi dei file, mentre il secondo serve per re-inizializzare i file di formato, cioè quei file che contengono già la traduzione in linguaggio macchina di tutte le operazioni che la distribuzione del sistema \TeX è capace di compiere con i suoi vari applicativi. La divisione in sillabe è una di quelle operazioni che deve essere inizializzata, perché richiede strutture dati particolari che sarebbe troppo lungo generare di volta in volta (\LuaLaTeX, però ci riesce). Si clicchi sul bottone per re-inizializzare i file di formato; alla fine di questa operazione si può chiudere il wizard e controllare, dopo aver ricomposto, per esempio, \file{sample.tex} che le prime righe del file \texttt{.log} contengano tutte le lingue che volete usare. \subsubsection{\TeXLive} -La distribuzione \TeXLive completa distribuita sul circuito \acro{ctan} 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. +La distribuzione \TeXLive completa distribuita sul circuito \sigla{ctan} 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 \prog{Mac\TeX} sostanzialmente coincide con \TeX-live, salvo che contiene anche programmi accessori specifici per le macchine Macintosh; è pre"configurato per gestire tutte le lingue di cui il sistema è capace, compreso l'italiano. Ma per l'ostrogoto altomedievale\dots +Dal 2007 la distribuzione di \prog{Mac\TeX} sostanzialmente coincide con \TeX-live, salvo che contiene anche programmi accessori specifici per le macchine Mac; è pre"configurato per gestire tutte le lingue di cui il sistema è capace, compreso l'italiano. Ma per l'ostrogoto altomedievale\dots \subsection{Le lingue della tesi} \subsubsection{Comporre in italiano} @@ -2497,11 +2542,11 @@ Se si devono inserire nella tesi brani di testo in lingua straniera, ma lasciand \begin{verbatim} \documentclass[corpo=12pt,twoside,french]{toptesi} \end{verbatim} -Poi nel corpo della tesi includerà i brani in francese dentro l'ambiente \amb{otherlanguage*} in questo modo: +Poi nel corpo della tesi si includeranno i brani in francese dentro l'ambiente \amb{otherlanguage*} in questo modo: \begin{verbatim} I primi versi della Marsigliese sono i seguenti: «\begin{otherlanguage*}{french} -Allons enfants de la Patrie / Les jour de la gloire +Allons enfants de la Patrie / Les jours de la gloire sont arrivés. \end{otherlanguage*}» \end{verbatim} @@ -2537,7 +2582,7 @@ e si strinsero la mano. \end{Verbatim} \subsubsection{Impostare le lingue con \texorpdfstring{\prog*}{}{lualatex} o \texorpdfstring{\prog*}{}{xelatex}} -Con i programmi \prog{xelatex} e \prog{lualatex} le lingue ausiliarie, oltre l'italiano e l'inglese già preinstallate in \pack{toptesi}, basta specificare nel preambolo, per esempio: +Con i programmi \prog{xelatex} e \prog{lualatex} le lingue ausiliarie, oltre l'italiano e l'inglese già preinstallate in \TOPtesi, basta specificare nel preambolo, per esempio: \begin{verbatim} \setotherlanguages{french,spanish} \end{verbatim} @@ -2570,7 +2615,7 @@ Anche usando \prog{xelatex} e \prog{lualatex} bisogna definire \cs{sommario} e \subsubsection {Comporre in lingue diverse dall'italiano e dall'inglese} -Invece per comporre la tesi in una lingua diversa dall'italiano e dall'inglese con \prog{pdflatex} bisogna lavorare un pochino di più perché bisogna ridefinire alcune cose; per esempio, per scrivere la tesi in spagnolo bisogna agire così\footnote{Il procedimento può essere usato anche per cambiare le intestazioni per l'italino o l'inglese.}: +Invece per comporre la tesi in una lingua diversa dall'italiano e dall'inglese con \prog{pdflatex} bisogna lavorare un pochino di più perché bisogna ridefinire alcune cose; per esempio, per scrivere la tesi in spagnolo bisogna agire così\footnote{Il procedimento può essere usato anche per cambiare le intestazioni per l'italiano o l'inglese.}: \begin{Verbatim}[fontsize=\fontsize{10.5}{13.2}\selectfont] \documentclass[corpo=12pt,spanish]{toptesi}% <-- la lingua come opzione % della classe! @@ -2596,7 +2641,7 @@ e per le lingue che richiedono un trattamento particolare si usa un comando simi 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, invece di usare \prog{tex}, usano come interpreti \prog{pdftex}, \prog{luatex} o \prog{xetex}. L'estensione di \prog{tex}, già un avanzamento rispetto al programma di Knuth, in origine si chiamava \eTeX; la variante moderna, che produce il file del documento composto in formato \texttt{.pdf}, si chiama \prog{pdftex} e comprende tutte le estensioni di \eTeX. Ciò premesso, queste versioni moderne servono anche per gestire le lingue con scrittura retrograda pur di disporre dei pacchetti relativi a queste lingue. -I programmi \prog{xelatex} e \prog{lualatex} sono in grado di gestire le lingue retrograde ma sono anche capaci, con modesti adattamenti di alcuni comandi, di comporre in verticale (cinese, giapponese,\dots). +I programmi \prog{xelatex} e \prog{lualatex} sono in grado di gestire le lingue retrograde ma sono anche capaci, con modesti adattamenti di alcuni comandi, di comporre in verticale (cinese, giapponese,\dots). A questo proposito conviene consultare la guida \emph{L'Arte di scrivere in diverse lingue con \emph{\{Xe|Lua\}\LaTeX}} reperibile nella sezione Documentazione del già citato sito del \GuIT \texttt{https://www.guitex.org/home/it/doc}. \subsubsection{Comporre la tesi di dottorato secondo il modello della Scuola di Dottorato del Politecnico di Torino} @@ -2606,23 +2651,28 @@ Più avanti si daranno indicazioni sull'uso di questi ulteriori pacchetti e sara \section{Il formato PDF archiviabile}\label{sec:PDFA} -Il Politecnico di Torino, come anche molte università italiane e straniere, intende “smaterializzare” le copie di archivio delle tesi di laurea. Questo intendimento è cominciato nel 2008; sono al corrente che l'apposito gruppo di lavoro sta studiando come richiedere le tesi da archiviare in modo che siano accessibili anche a chi è affetto da disabilità; è un ottimo progetto, ma non esistono ancora (2017) norme ISO che specifichino come debbano essere composti tali documenti. +Il Politecnico di Torino, come anche molte università italiane e straniere, intende “smaterializzare” le copie di archivio delle tesi di laurea. Questo intendimento è cominciato nel 2008; sono al corrente che l'apposito gruppo di lavoro sta studiando come richiedere le tesi da archiviare in modo che siano accessibili anche a chi è affetto da disabilità; è un ottimo progetto, ma non esistono ancora (2017) norme ISO che specifichino come debbano essere composti tali documenti. Nel 2018 è a buon punto lo sviluppo della progettata norma ISO PDF/UA (Universal Accessibility), ma ancora non è promulgata ufficialmente. La commissione del Politecnico ora ha più materiale su cui operare, ma ancora non ha emesso norme in merito a questo importante aspetto. Il problema dell'archiviazione elettronica è che il materiale archiviato deve essere reperibile, leggibile e stampabile per un tempo indefinito, anche secoli! 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, non necessariamente quelli che esistono oggi. -L'International Standards Organization (ISO) ha pubblicato nel 2005 uno standard per l'archiviazione dei file con la norma ISO 19005-1:2005 (nel 2011 e poi ancora nel 2012 sono stati approvati due aggiornamenti dello standard, ma per quello che interessa qui non è necessario vederne le modifiche in dettaglio). Secondo questa norma i file archiviabili devono avere il formato PDF del livello 1.4 e devono soddisfare ad altri requisiti, oltre a contenere un certo numero di \emph{metadati} specificati dalla norma stessa. +L'International Standards Organization (ISO) ha pubblicato nel 2005 uno standard per l'archiviazione dei file con la norma ISO 19005-1:2005 (nel 2011 e poi ancora nel 2012 sono stati approvati due aggiornamenti dello standard, ma per quello che interessa qui non è necessario vederne le modifiche in dettaglio). Secondo questa norma i file archiviabili devono avere il formato PDF del livello 1.4 e devono soddisfare ad altri requisiti, oltre a contenere un certo numero di \emph{metadati} specificati dalla norma stessa. Negli aggiornamenti successivi il livelllo del linguaggio PDF è stato portato a 1.7, ma questo è un dettaglio relativamente poco importante: sono gli altri requisiti che rendono le norme aggiornate più o meno stringenti rispetto a quanto descrivo in questo paragrafo riferendomi alla prima stesura delle norme codificate con le sigle PDF/A-1a e PDF/A-1b. -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, che il file debba mantenere le informazioni relative alla sua struttura logica, e che queste possano essere esaminate 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 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, che il file debba mantenere le informazioni relative alla sua struttura logica, e che queste possano essere esaminate con i motori di ricerca biblioteconomici. 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. -Per il Politecnico, per ora, sarebbe sufficiente il sotto"formato PDF/A-1b. Come ho già detto, mi risulta che sia allo studio da parte del Politecnico la possibilità di richiedere il rispetto di una norma molto più restrittiva, che garantisca l'accessibilità e la fruibilità dei documenti archiviati anche a coloro che hanno alcune forme di disabilità; tuttavia a tutt'oggi (2017) l'ISO non ha ancora messo a punto tale norma, quindi l'apposita commissione del Politecnico sta giustamente precorrendo i tempi perché l'Ateneo sia pronto ad attuare la futura norma. Nel frattempo l'apposito gruppo di lavoro del TUG sta cercando di estendere i suoi pacchetti per l'archiviabilità anche per la norma PDF/A-1a, che richiede di disporre di file PDF classificati come \emph{tagged PDF}. +Per il Politecnico, per ora, sarebbe sufficiente il sotto"formato PDF/A-1b. Come ho già detto, mi risulta che sia allo studio da parte del Politecnico la possibilità di richiedere il rispetto di una norma molto più restrittiva, che garantisca l'accessibilità e la fruibilità dei documenti archiviati anche a coloro che hanno alcune forme di disabilità; tuttavia a tutt'oggi (2018) l'ISO non ha ancora messo a punto tale norma, quindi l'apposita commissione del Politecnico sta giustamente precorrendo i tempi perché l'Ateneo sia pronto ad attuare la futura norma. Nel frattempo l'apposito gruppo di lavoro del TUG sta cercando di estendere i suoi pacchetti per l'archiviabilità anche per la norma PDF/A-1a, che richiede di disporre di file PDF classificati come \emph{tagged PDF}. -Le istruzioni che seguono per la produzione di un file conforme alla normativa PDF/A sono applicabili se si compone la tesi sia con il programma \prog{pdflatex} sia con \prog{xelatex} sia con \prog{lualatex}. In particolare, per sfruttare al meglio le possibilità offerte da \prog{xelatex} e \prog{lualatex} è necessario usare il pacchetto \pack{fontspec} che, senza ulteriori opzioni o specificazioni, usa di default i font Latin Modern nella versione OpenType; volendo si possono usare i comandi specifici disponibili con quel pacchetto per caricare font diversi. Notare che se si è predisposto il preambolo del file sorgente per la tesi in modo da poterlo compilare con \prog{pdflatex}, si può ugualmente compilare il documento anche con \prog{xelatex} o \prog{lualatex}, perché \TOPtesi è perfettamente conscio del motore di composizione che si sta usando e sa che il file sorgente parte dal presupposto che si volevano creare gli hyperlink. In altre parole, non c'è bisogno di modificare sostanzialmente il file sorgente per passare da \prog{pdflatex} a \prog{xelatex} o \prog{lualatex}, se non eventualmente usando solo il ramo \emph{vero} oppure \emph{falso} del test indicato qui sotto. Però il file prodotto con \prog{xelatex} necessita di ulteriore elaborazione (\emph{postprocessing}) per soddisfare le specifiche richieste dalla norma ISO relativa al formato archiviabile; con \prog{pdflatex} e \prog{lualatex} non è necessaria nessuna operazione di post"processing; è per questo che qui si è aggiunto un test per evitare di caricare il pacchetto \pack{pdfx} quando si compila con \prog{xelatex}; ma si veda più avanti. +Le istruzioni che seguono per la produzione di un file conforme alla normativa PDF/A sono applicabili se si compone la tesi sia con il programma \prog{pdflatex} sia con \prog{xelatex} sia con \prog{lualatex}. In particolare, per sfruttare al meglio le possibilità offerte da \prog{xelatex} e \prog{lualatex} è necessario usare il pacchetto \pack{fontspec} che, senza ulteriori opzioni o specificazioni, usa di default i font Latin Modern nella versione OpenType; volendo si possono usare i comandi specifici disponibili con quel pacchetto per caricare font diversi. Notare che se si è predisposto il preambolo del file sorgente per la tesi in modo da poterlo compilare con \prog{pdflatex}, si può ugualmente compilare il documento anche con \prog{xelatex} o \prog{lualatex}, perché \TOPtesi è perfettamente conscio del motore di composizione che si sta usando e sa che il file sorgente parte dal presupposto che si volevano creare gli hyperlink. In altre parole, non c'è bisogno di modificare sostanzialmente il file sorgente per passare da \prog{pdflatex} a \prog{xelatex} o \prog{lualatex}, se non eventualmente usando solo il ramo \emph{vero} oppure \emph{falso} del test indicato qui sotto. Però il file prodotto con \prog{xelatex} necessita di ulteriore elaborazione (\emph{postprocessing}) per soddisfare le specifiche richieste dalla norma ISO relativa al formato archiviabile. Con \prog{pdflatex} e \prog{lualatex} non è necessaria nessuna operazione di post"processing; è per questo che qui si è aggiunto un test per evitare di caricare il pacchetto \pack{pdfx} quando si compila con \prog{xelatex}; ma si veda più avanti. Come esempio si può comunque fare riferimento alla parte iniziale del preambolo del file usato per comporre questa stessa documentazione, che si riporta a partire dalla pagina~\pageref{pag:preambolo-pdfa}. \label{pag:preambolo-pdfa} \begin{Verbatim}[fontsize=\small,numbers=left,numbersep=3pt] % !TEX encoding = UTF-8 Unicode % !TEX TS-program = luaLaTeX +\documentclass[corpo=12pt,twoside,tipotesi=monografia]{toptesi} +\ProvidesFile{toptesi-it.tex}[2018-11-19 v.0.9.36] +\usepackage{imakeidx}% da caricare prima di pdfx +\indexsetup{headers={\indexname}{\indexname}} + \begin{filecontents*}{\jobname.xmpdata} \Title{La classe TOPtesi} \Author{Claudio Beccari} @@ -2635,11 +2685,6 @@ pdfLaTeX\sep XeLaTeX\sep LuaLaTeX} \end{filecontents*} -% -\documentclass[corpo=12pt,twoside,tipotesi=monografia]{toptesi} -\ProvidesFile{toptesi-it.tex}[2018-10-30 v.0.9.35] -\usepackage{imakeidx}% da caricare prima di pdfx -\indexsetup{headers={\indexname}{\indexname}} \unless\ifXeTeX \usepackage[a-1b]{pdfx} @@ -2686,41 +2731,41 @@ tabularx,enumitem,ragged2e,siunitx,curve2e,microtype} \includegraphics[height=\dimexpr\ht0+\dp0]{GuITlogo}}}} \end{Verbatim} -Un commento va fatto subito: il lettore non si spaventi di una prima parte di preambolo così complessa, e non ha nessun bisogno di copiarla integralmente. Per questo documento ho predisposto un test per verificare con quale programma di composizione compilo il documento e, come si vede, imposto i font e le lingue come specificato sopra, ma nel ramo \emph{falso} (cioè non si sta compilando con \prog{pdflatex} ma con \prog{lualatex} oppure \prog{xelatex}); tuttavia se il programma con cui si compila è \prog{xelatex}, si evita di caricare il pacchetto speciale \pack{pdfx}, necessario per produrre file PDF/A compatibili. +Un commento va fatto subito: il lettore non si spaventi di una prima parte di preambolo così complessa, e non ha nessun bisogno di copiarla integralmente. Per questo documento ho predisposto un test per verificare con quale programma di composizione compilo il documento e, come si vede, imposto i font e le lingue come specificato sopra, ma nel ramo \emph{falso} (cioè non si sta compilando con \prog{pdflatex} ma con \prog{lualatex} oppure \prog{xelatex}) ho inserito gli specifici comandi per gestire le lingue e per scegliere i font tenendo presente che \pack{polyglossia} e \pack{fontspec} sono già caricati dalla classe; tuttavia se il programma con cui si compila è \prog{xelatex}, si evita di caricare il pacchetto speciale \pack{pdfx}, necessario per produrre file PDF/A compatibili. Il lettore sa perfettamente con quale programma vuole compilare la sua tesi e può tranquillamente mettere nel suo preambolo solo il ramo \emph{vero} del test se compila con \prog{pdflatex} o solo il ramo \emph{falso} se compila con \prog{lualatex} o con \prog{xelatex}. Se vuol produrre un file PDF/A compatibile con \prog{xelatex} ha due vie: \begin{itemize}[noitemsep] -\item lascia perdere \prog{xelatex} e compila con \prog{lualatex}; il frutto della compilazione è persino migliore, visto che \prog{lualatex} usa le funzionalità del pacchetto \pack{microtype} in modo più avanzato rispetto a \prog{xelatex}; +\item o lascia perdere \prog{xelatex} e compila con \prog{lualatex}; il frutto della compilazione è persino migliore, visto che \prog{lualatex} usa le funzionalità del pacchetto \pack{microtype} in modo più avanzato rispetto a \prog{xelatex}; oppure % -\item ma se proprio non può fare a meno di usare \prog{xelatex}, toglie il test \verb|\ifXeTeX|, conservando solo \cs{usepackage}\Marg{pdfx} e usa solo il ramo \emph{falso} del test \verb|\ifPDFTeX|; tuttavia ciò non basta perché deve poi procedere ad un certo postprocessing come specificato nel paragrafo~\ref{sec:XePDFA}. +\item se proprio non può fare a meno di usare \prog{xelatex}, toglie il test \verb|\ifXeTeX|, conservando solo \cs{usepackage}\Marg{pdfx} e usa solo il ramo \emph{falso} del test \verb|\ifPDFTeX|; tuttavia ciò non sufficiente perché deve poi procedere ad un certo postprocessing come specificato nel paragrafo~\ref{sec:XePDFA}. \end{itemize} -Nel codice precedente le prime due righe sono commenti per il programma di compilazione, ma per il programma di editing sono comandi di autoconfigurazione; essi dicono al programma di editing di salvare il documento dopo la prima creazione e dopo ogni modifica con la codifica \opz{utf8}; la seconda riga dice che quando si clicca il bottone per la compilazione l'editor deve inviare al sistema operativo il comando di lanciare il programma \prog{lualatex}. Ricordo che questo tipo di commenti di autoconfigurazione sono decifrati correttamente dagli editor \TeXShop, \TeXworks e TeXstudio (forse anche da altri editor, ma questi tre sono quelli che io consiglieri per ogni utente). +Nel codice precedente le prime due righe sono solo dei commenti per il programma di compilazione, ma per il programma di editing sono comandi di autoconfigurazione; essi dicono al programma di editing di salvare il documento dopo la prima creazione e dopo ogni modifica con la codifica \opz{utf8}; la seconda riga dice che quando si clicca il bottone per la compilazione l'editor deve inviare al sistema operativo il comando di lanciare il programma \prog{lualatex}. Ricordo che questo tipo di commenti di autoconfigurazione sono interpretati correttamente dagli editor \TeXShop, \TeXworks e TeXstudio (forse anche da altri editor, ma questi tre sono quelli che io consiglieri per ogni utente). -Le righe dalla 3 alla 14 contengono l'ambiente \amb{filecontents*} che provvede a generare la lista dei metadati che ho usato per questo documento\footnote{\label{nota:colorprofileerror}In realtà, almeno fino alla fine di ottobre 2018 c'è un problema facilmente risolvibile. Il profilo di colore precedentemente usato per descrivere i colori RGB era protetto da una clausola che ne impediva la distribuzione; evidentemente qualcuno si è fatto vivo per segnalare questa violazione. Ma nell'aggiornamento di \TeXLive di ottobre 2018 è stato arricchito di un nuovo pacchetto che genera almeno due altri profili di colore con licenza libera, uno dei quali è dato dal file \file{sRGB.icc}. Basta copiare questo file e incollarlo, per esempio nell'albero personale nella cartella \url{$HOME/texmf/tex/generic/pdfx/} (se non c'è, bisogna crearla) e poi aggiungere al contenuto di \amb{filecontents*}, subito prima della chiusura la riga seguente:\begin{center} \cs{setRGBcolorprofile}\Marg{sRGB.icc}\Marg{sRGB}\Marg{Argyll CMS, sRGB color profile}\%\\\Marg{https://www.argyllcms.com/}\end{center} -Con \MiKTeX bisogna anche aggiornare il database dei nomi dei file, mentre con \TeXLive l'aggiornamento è automatico. È possibile che quando il lettore leggerà questa nota, il pacchetto \pack{pdfx} sia già stato aggiornato in modo che l'aggiunta di questa riga non sia più necessaria.}. +Le righe dalla 8 alla 19 contengono l'ambiente \amb{filecontents*} che provvede a generare la lista dei metadati che ho usato per questo documento\footnote{\label{nota:colorprofileerror}In realtà, almeno fino alla fine di ottobre 2018 c'è un problema facilmente risolvibile. Il profilo di colore precedentemente usato per descrivere i colori RGB era protetto da una clausola che ne impediva la distribuzione; evidentemente qualcuno si è fatto vivo per segnalare questa violazione. Ma nell'aggiornamento di ottobre 2018 \TeXLive è stato arricchito di un nuovo pacchetto che genera almeno due altri profili di colore con licenza libera, uno dei quali è il file \file{sRGB.icc}. Basta copiare questo file e incollarlo, per esempio nell'albero personale nella cartella \url{$HOME/texmf/tex/generic/pdfx/} (se non c'è, bisogna crearla) e poi aggiungere al contenuto di \amb{filecontents*}, subito prima della chiusura, la riga seguente:\begin{center} \cs{setRGBcolorprofile}\Marg{sRGB.icc}\Marg{sRGB}\Marg{Argyll CMS, sRGB color profile}\%\\\Marg{https://www.argyllcms.com/}\end{center} Bisogna ricordarsi di cestinare un file \file{.xmpdata} pre"esitente, perché l'ambiente \amb{filecontents*} non sovrascrive un file con lo stesso nome. Con \MiKTeX bisogna anche aggiornare il database dei nomi dei file, mentre con \TeXLive l'aggiornamento non è necessario. È possibile che quando il lettore leggerà questa nota, il pacchetto \pack{pdfx} sia già stato aggiornato in modo che l'aggiunta di questa riga non sia più necessaria.}. -La riga 16 contiene la dichiarazione della classe; come si vede, specifico solo il corpo normale dei font al valore di 12\,pt, e seleziono la composizione in bianca e volta, successivamente non specifico nessuna correzione per la cucitura delle segnature; specifico solo che il tipo di documento è quello che corrisponde alla \chiave{tipotesi}{monografia}, dove ho preferito usare il nome \texttt{monografia} piuttosto che il nome \texttt{triennale}, visto che questo documento non è una tesi. +Si noti che in contrasto con le versioni precedenti di \TOPtesi, è meglio che questo ambiente si trovi dopo e non prima di \cs{documentclass}; questa lieve modifica (retrocompatibile) è stata introdotta per ovviare ad un inconveniente piccolo, ma che lascia interdetti gli utenti alle prime armi: l'ambiente originale non sovrascrive i file se già esistono. Questo implica che qualunque modifica si esegua fra i dati contenuti in questo ambiente non viene di fatto memorizzata nel file \verb|\jobname.xmpdata| se non dopo averne cancellato una eventuale versione precedente. Con la presente versione di \TOPtesi viene caricato direttamente dalla classe il pacchetto \pack{filecontentes} che ridefinisce gli ambienti \amb{filecontentes} e \amb{filecontents*} in modo da eliminare questa loro limitazione; questa funzionalità è operativa se si sposta il codice di questo ambiente ad un punto che preceda il caricamento di \pack{pdfx}, ma dopo aver caricato \pack{filecontents}, che, essendo a sua volta già caricato dalla classe, equivale a dire \emph{dopo} la dichiarazione della classe. Quindi l'utente può mettere l'ambiente prima della dichiarazione di classe, come in passato ma rinuncia alla nuova funzionalità, che invece è disponibile solo se l'ambiente si trova, come indicato, dopo la dichiarazione di classe ma prima di invocare il pacchetto \pack{pdfx}. -Importante per questo documento è la riga 17, dove specifico il nome del file, ma ne specifico anche la data e la versione; così sono sempre sicuro di sapere quale versione sto componendo e i lettori, che trovano questo file fra la documentazione di \class{toptesi}, sanno subito se si tratta di documentazione aggiornata o se non sia il caso di aggiornare la propria installazione. +La riga 3 contiene la dichiarazione della classe; come si vede, specifico solo il corpo normale dei font al valore di 12\,pt, e seleziono la composizione in bianca e volta, successivamente non specifico nessuna correzione per la cucitura delle segnature; specifico solo che il tipo di documento è quello che corrisponde alla opzione \chiave{tipotesi}{monografia}, dove ho preferito usare il nome \texttt{monografia} piuttosto che l'equivalente nome \texttt{triennale}, visto che questo documento non è una tesi. -Con le righe 18 e 19 carico il pacchetto \pack{imakeidx} e lo configuro. Questo pacchetto va caricato prima di \pack{pdfx}, perché questo ridefinisce alcuni comandi sui quali \pack{imakeidx} non può più intervenire. +Importante per questo documento è la riga 4, dove specifico il nome del file, ma ne specifico anche la data e la versione; così sono sempre sicuro di sapere quale versione sto componendo e i lettori, che trovano questo file fra la documentazione di \class{toptesi}, sanno subito se si tratta di documentazione aggiornata o se non sia il caso di aggiornare la propria installazione. + +Con le righe 5 e 6 carico il pacchetto \pack{imakeidx} e lo configuro. Questo pacchetto va caricato prima di \pack{pdfx}, perché questo ridefinisce alcuni comandi sui quali \pack{imakeidx} non può più intervenire. Con le righe 21--23 eseguo il test per sapere se sto componendo con \prog{xelatex} (il cui interprete si chiama \prog{xetex}) così da \emph{non} caricare il pacchetto \pack{pdfx}. Poi dalla riga 25 comincia il test importante per configurare il preambolo correttamente secondo le necessità di compilazione; dalla riga 26 alla riga 32 si ha il ramo \emph{vero} da usarsi quando si compila con \prog{pdflatex}; invece dalla riga 34 alla riga 44 si ha il ramo \emph{falso} da usarsi quando si compila con \prog{lualatex}; per compilare con \prog{xelatex}, ho già detto che oltre a togliere le righe 21 e 23 (ma non la riga 22) bisogna poi procedere come specificato nel paragrafo~\ref{sec:XePDFA}. -Le righe successive dalla 43 alla 64 servono per mostrare non solo i pacchetti che ho caricato, ma anche come ho configurato le opzioni per \pack{hyperref}: un test serve per verificare (tramite l'esistenza della macro il cui nome contiene una stringa col nome completo del pacchetto adeguatamente prefissato con \texttt{ver@}) se \pack{hyperef} è già stato caricato; se non lo è, lo si carica e poi si impostano le opzioni. Infine si impostano i comandi \cs{MP} e \cs{GuIT} per importare due piccoli file che contengono il logo di \MP\ e quello del \GuIT. Questo artificio è stato usato per evitare di usare certi font che potrebbero dare luogo a problemi per l'archiviabilità +Le righe successive dalla 46 alla 63 servono per mostrare non solo i pacchetti che ho caricato, ma anche come ho configurato le opzioni per \pack{hyperref}: un test serve per verificare (tramite l'esistenza della macro il cui nome contiene una stringa col nome completo del pacchetto adeguatamente prefissato con \texttt{ver@}) se \pack{hyperref} è già stato caricato; se non lo è, lo si carica e poi si impostano le opzioni. Infine si impostano i comandi \cs{MP} e \cs{GuIT} per importare due piccoli file che contengono il logo di \MP\ e quello del \GuIT. Questo artificio è stato usato per evitare di usare certi font che potrebbero dare luogo a problemi per l'archiviabilità Per la compilazione del documento in modo che sia conforme con lo standard PDF/A vorrei sottolineare l'opportunità di specificare i metadati richiesti come indicato nel codice precedente. Non è obbligatorio, ma in questo modo si è sicuri che il file dei metadati abbia l'estensione giusta e il nome assolutamente coincidente con il nome del main file del documento, cioè della tesi. -L'altro punto importante è non solo caricare il pacchetto \pack{pdfx}, ma è necessario caricarlo nell'ordine indicato, cioè, se lo si usa, subito dopo il pacchetto \pack{imakeidx}. +L'altro punto importante è non solo caricare il pacchetto \pack{pdfx}, ma è necessario caricarlo nell'ordine indicato, cioè, se lo si usa, subito dopo il pacchetto \pack{imakeidx} e l'ambiente che contiene i metadati. -Ho collaudato questo preambolo compilando sia con \prog{pdflatex} sia con \prog{lualatex}. Volendo, avrei potuto seguire le raccomandazioni che scrivo nel paragrafo~\ref{sec:XePDFA} ma non l'ho fatto e, visto che ottengo lo stesso risultato, anzi un risultato migliore, con \prog{lualatex}, mi è parso un collaudo superfluo. Con questo non voglio dire che \prog{xelatex} sia diventato inutile; esso, come \prog{pdflatex}, ha un file di formato che contiene tutte le impostazioni per tutte le lingue che il sistema \TeX può gestire, mentre \prog{lualatex} in questo momento (2018) di ogni lingua può gestire una sola impostazione; per esempio il greco ha tre varianti e il file di formato di \prog{xelatex} le potrebbe gestire tutte e tre come ci riesce \prog{pdflatex}; lo stesso vale per il latino e per diverse altre lingue; \prog{lualatex} al momento può gestire una sola variante di ciascuna lingua. Perciò in questo momento \prog{xelatex} potrebbe essere preferibile a \prog{lualatex} per le tesi di carattere linguistico, filologico, o umanistico in generale\footnote{Recentemente è apparso il nuovo pacchetto \pack{luahyphenrules} che permette di accettare le varianti anche compilando con \LuaLaTeX.}. +Ho collaudato questo preambolo compilando sia con \prog{pdflatex} sia con \prog{lualatex}. Volendo, avrei potuto seguire le raccomandazioni che scrivo nel paragrafo~\ref{sec:XePDFA} ma non l'ho fatto e, visto che ottengo lo stesso risultato, anzi un risultato migliore, con \prog{lualatex}, mi è parso un collaudo superfluo. Con questo non voglio dire che \prog{xelatex} sia diventato inutile; esso, come \prog{pdflatex}, ha un file di formato che contiene tutte le impostazioni per tutte le lingue che il sistema \TeX può gestire, mentre \prog{lualatex} in questo momento (2018) di ogni lingua può gestire una sola impostazione; per esempio, il greco ha tre varianti e il file di formato di \prog{xelatex} le potrebbe gestire tutte e tre come ci riesce \prog{pdflatex}; lo stesso vale per il latino e per diverse altre lingue; \prog{lualatex} al momento può gestire una sola variante di ciascuna lingua. Perciò in questo momento\footnote{Sono al corrente che per il greco il gruppo di lavoro sta lavorando per superare questo piccolo scoglio; è possibile che quando si sta leggendo questa documentazione lo scoglio sia superato e il file \file{gloss-greek.ldf} sia già in grado di gestire le tre varianti del greco come gli altri due programmi.} \prog{xelatex} potrebbe essere preferibile a \prog{lualatex} per le tesi di carattere linguistico, filologico, o umanistico in generale\footnote{Recentemente è apparso il nuovo pacchetto \pack{luahyphenrules} che dovrebbe permettere di accettare le varianti anche compilando con \LuaLaTeX, ma come ho specificato, al momento di scrivere questa documentazione questa funzionalità non è ancora completamente operativa.}. \goodpagebreak - \subsection{\texorpdfstring{\prog*}{}{pdflatex} e il formato PDF/A} Usando \prog{pdflatex} è necessario usare il pacchetto specifico \pack{pdfx} richiamandolo con l'opzione giusta; precisamente il preambolo deve contenere la richiesta: @@ -2735,13 +2780,15 @@ Il pacchetto \pack{pdfx} è già presente con ogni installazione completa e aggi Il pacchetto \pack{pdfx} con l'opzione \opz{a-1b} provvede a quasi tutto il necessario, per esempio, a definire un profilo di colore, ma non provvede ai metadati specifici di ogni particolare documento, che invece descrivo qui di seguito. -I {metadati} di carattere generale sono inseriti nel file di uscita dall'azione diretta del file \file{pdfx.sty}; ma per i {metadati} specifici del documento che si sta componendo è necessario predisporre nella cartella dove risiede il file principale della tesi (quello sul quale opera il programma di composizione) un file contenente questi {metadati}. Il metodo migliore per farlo è mostrato nel codice della pagina~\pageref{pag:preambolo-pdfa}: si tratta di inserire i metadati all'interno dell'ambiente \amb{filecontents*} prima ancora della dichiarazione della classe; questo ambiente \LaTeX è l'unica struttura di questo linguaggio che può essere inserita prima di \cs{documentclass}. +I {metadati} di carattere generale sono inseriti nel file di uscita dall'azione diretta del file \file{pdfx.sty}; ma per i {metadati} specifici del documento che si sta componendo è necessario predisporre nella cartella dove risiede il file principale della tesi (quello sul quale opera il programma di composizione) un file contenente questi {metadati}. Il metodo migliore per farlo è mostrato nel codice della pagina~\pageref{pag:preambolo-pdfa}: si tratta di inserire i metadati all'interno dell'ambiente \amb{filecontents*} subito dopo la dichiarazione della classe. -Ci si ricordi che il pacchetto \pack{toptesi} controlla solo se si sta usando \prog{pdflatex} e assume che, se non si sta componendo con \prog{pdflatex}, allora si sta usando \prog{xelatex} oppure \prog{lualatex}. In particolare si ottiene un errore se si compila con \prog{latex} (il programma ancora esistente ma che io considero obsoleto) con il quale si produce un file in formato DVI, ormai quasi estinto. Si noti che, in effetti, sebbene il programma \prog{latex} esista ancora, il motore di composizione di \prog{latex} e di \prog{pdflatex} è lo stesso, ma ne differiscono le impostazioni; il test \cs{ifPDFTeX} che usa \TOPtesi per conoscere se si sta usando \prog{pdftex} per produrre un file in formato PDF piuttosto che in formato DVI, non è detto che riesca a distinguere questi due casi. Non ho mai verificato, perché usando un Mac, il mio formato di default è sempre PDF; per ottenere il formato DVI devo dare comandi specifici mediante il terminale, cosa che evidentemente non faccio mai perché, oltretutto, non dispongo di un visualizzatore per il formato DVI (sono capace di aggirare questi ostacoli grazie al Mac stesso, ma non lo faccio mai perché il formato DVI non è adatto a quanto solitamente scrivo). +Ci si ricordi che il pacchetto \pack{toptesi} controlla solo se si sta usando \prog{pdflatex} e assume che, se non si sta componendo con \prog{pdflatex}, allora si sta usando \prog{xelatex} oppure \prog{lualatex}. In particolare si ottiene un errore se si compila con \prog{latex} (il programma è ancora esistente ma io lo considero obsoleto) con il quale si produce un file in formato DVI, ormai quasi estinto. Si noti che, in effetti, sebbene il programma \prog{latex} esista ancora, il motore di composizione di \prog{latex} e di \prog{pdflatex} è lo stesso, ma ne differiscono le impostazioni; il test \cs{ifPDFTeX} che usa \TOPtesi per conoscere se si sta usando \prog{pdftex} per produrre un file in formato PDF piuttosto che in formato DVI, non è detto che riesca a distinguere questi due casi. Non ho mai verificato, perché usando un Mac, il mio formato di default è sempre PDF; per ottenere il formato DVI devo dare comandi specifici mediante il terminale, cosa che evidentemente non faccio mai perché, oltretutto, non dispongo di un visualizzatore per il formato DVI (sono capace di aggirare questi ostacoli grazie al Mac stesso, ma non lo faccio mai perché il formato DVI non è adatto a quanto solitamente scrivo). Nei rarissimi casi in cui esistono validi motivi per non usare \prog{pdflatex}, allora bisogna usare il semplice \prog{latex}, e poi convertire il file DVI ottenuto in un file PDF; per la conversione in file PDF/A, bisogna poi procedere come indicato sotto nel paragrafo~\ref{sec:XePDFA}. -È meglio evitare di usare quei pacchetti che richiedono comandi PostScript, come per esempio \pack{PSTricks} o \pack{XYpic}, ma è preferibile usare i pacchetti di grafica, come \pack{pgf} con il suo modulo \pack{tikz}, che consentono di fare quasi tutto quello che si può fare con gli altri pacchetti che richiedono il linguaggio PostScript. All'occorrenza, però, esistono pacchetti da usare con \prog{pdflatex} che permettono (almeno) di usare il potentissimo PSTricks anche con \prog{pdflatex}; questi pacchetti, lavorando in background senza che l'utente debba metterci mano, estraggono il codice di PSTricks dal file sorgente, lo salvano in un nuovo file \file{.tex} di servizio che compilano con \prog{latex} e ne trasformano il file di uscita in formato PDF per poi importarlo già scontornato nel file che interessa all'utente. Se fra una compilazione e l'altra non sono state eseguite modifiche al codice PSTricks, questa operazione in background viene tranquillamente saltata, quindi non si nota nemmeno nessun rallentamento nell'elaborazione del documento. Vale comunque il consiglio di non usare questi moduli che richiedono l'uso del linguaggio PostScript, perché i moduli che lavorano direttamente con il linguaggio PDF lavorano altrettanto bene nella stragrande maggioranza dei casi. +È meglio evitare di usare quei pacchetti che richiedono comandi PostScript, come per esempio \pack{PSTricks} o \pack{XYpic}, ma è preferibile usare i pacchetti di grafica, come \pack{pgf} con il suo modulo \pack{tikz}, che consentono di fare quasi tutto quello che si può fare con gli altri pacchetti che richiedono il linguaggio PostScript. + +All'occorrenza, però, esistono pacchetti da usare con \prog{pdflatex} che permettono (almeno) di usare il potentissimo PSTricks anche con \prog{pdflatex}; questi pacchetti, lavorando in background senza che l'utente debba metterci mano, estraggono il codice di PSTricks dal file sorgente, lo salvano in un nuovo file \file{.tex} di servizio che compilano con \prog{latex} e ne trasformano il file di uscita in formato PDF per poi importarlo già scontornato nel file che interessa all'utente. Se fra una compilazione e l'altra non sono state eseguite modifiche al codice PSTricks, questa operazione in background viene tranquillamente saltata, quindi non si nota nemmeno nessun rallentamento nell'elaborazione del documento. Vale comunque il consiglio di non usare questi moduli che richiedono l'uso del linguaggio PostScript, perché i moduli che lavorano direttamente con il linguaggio PDF lavorano altrettanto bene nella stragrande maggioranza dei casi. Bisogna ricordare che produrre un file PDF/A non è semplice, ma se si usa \prog{pdflatex} con i font di default con codifica \opz{T1} (se si usa \prog{lualatex} con i font OpenType si veda sotto), se si incorporano solo figure PNG (senza trasparenze) e JPEG con profilo di colore RGB (red, green, blue), se ogni file PDF da incorporare contiene al suo interno anche i font che eventualmente sono necessari per comporre il suo testo, se sono presenti tutti i metadati necessari, non si dovrebbero incontrare problemi di certificazione della conformità PDF/A del file della tesi. @@ -2781,19 +2828,27 @@ Vista questa trafila di post"processing, si capisce anche perché sconsiglio di Esistono altri metodi per ottenere la produzione di file conformi alla norma PDF/A. Uno è quello che consiste nel produrre un secondo file importando le pagine del primo mediante il pacchetto \pack{pdfpages}; un altro è quello di ottenere la trasformazione mediante il programma \prog{ghostscript}. Nel seguito si illustrerà il primo metodo; anche se nel seguito continuerò ad esemplificare parlando della tesi, ritengo che questi due metodi siano più utili per i lettori proprio allo scopo di controllare singoli file esterni da importare nella tesi. -Infatti è meglio creare un piccolo file presumibilmente PDF/A compatibile e verificarne la compatibilità: se è compatibile, non ci sono problemi ad importarlo nella tesi; se è incompatibile prima si esaminano le cause dell'incompatibilità, poi lo si può correggere per renderlo compatibile, oppure si possono prendere decisioni valide su cosa farne per importarlo nella tesi. +Infatti è meglio creare un piccolo file presumibilmente PDF/A compatibile e verificarne la compatibilità: se è compatibile, non ci sono problemi ad importarlo nella tesi; se è incompatibile prima si esaminano le cause dell'incompatibilità, poi lo si può correggere per renderlo compatibile, oppure si possono prendere decisioni su cosa farne per importarlo validamente nella tesi. Dopo aver ottenuto un file PDF della tesi, se ci si ritrova con un file che non è ancora conforme allo standard PDF/A, si può provvedere con altri programmi. Qui indicherò un metodo che può avere vantaggi o svantaggi; nessuno è perfetto, ma funziona. Accennerò appena ad un altro metodo solo per segnalare che il primo non è l'unico; tuttavia ho usato questo secondo metodo per anni prima di “scoprire” come fare con il primo (l'uovo di Colombo), ma siccome il secondo è decisamente più complesso, ritengo che il primo sia da preferire. +\setcounter{tocdepth}{3} + \subsubsection{Conformità con TOPtesi} +\addcontentsline{toc}{subsection}{\numberline{\relax}Conformità con TOPtesi} I file di esempio che fan parte del bundle di \TOPtesi sono tutti conformi allo standard ISO per l'archiviabilità, qualunque sia il programma con cui sono stati composti. Se si dovesse manifestare l'errore segnalato nella nota~\ref{nota:colorprofileerror} nella pagina\pageref{nota:colorprofileerror} bisogna comunque procedere come è indicato in quella nota. Come è stato già osservato, anche con \XeLaTeX sarebbe possibile ottenere file archiviabili, ma la laboriosità e delicatezza del postprocessing, inclusa la disponibilità del programma commerciale Adobe Acrobat Pro~XI, o successivo, rende sconsigliabile l'uso di \XeLaTeX\ per comporre qualunque tesi da archiviare. -\subsubsection{Conformity with \TOPtesi and option \texorpdfstring{\chiave{tipotesi}}{}{scudo}} +\subsubsection{Conformity when using \TOPtesi with option \texorpdfstring{\chiave{tipotesi}}{}{scudo}} +\addcontentsline{toc}{subsection}{\numberline{\relax}Conformity when using TOPtesi for ScuDo doctoral theses} The example file \file{toptesi-scudo-example.tex} included in this \TOPtesi bundle shows exactly how to produce an ISO PDF/A-1b conforming output PDF file. -Of course the procedure is correct, but the difficulty to produce a PDF/A conforming output depends on the correctness of metadata, on the correct color profile, on the used fonts, on the quality and contents of the imported figures. The rules to follow are described both in the previous sections in Italian, and in the English documentation of the the \TOPtesi bundle: \file{toptesi.pdf}. +Of course the procedure is correct, but the difficulty to produce a PDF/A conforming output depends on the correctness of metadata, on the correct color profile, on the used fonts, on the quality and contents of the imported figures. The rules to follow are described both in the previous sections in Italian, and in the English documentation (\file{toptesi.pdf}) of the the \TOPtesi bundle: \file{toptesi.pdf}. + +\textcolor{red}{Please, if you get an error implying \texttt{sRGB} color profile, remember to check the presence of the special line that specifies this color profile in your specific file \file{.xmpdata}. This error is temporary and does not depend on \TOPtesi; there are chances are that when you read this file and/or when you type your doctoral thesis, this error does not show any more; that special line is intended just to patch its occurrence.} + + \subsubsection{Uso di \texorpdfstring{\pack*}{}{pdfpages}} @@ -2843,7 +2898,7 @@ Per verificare in modo serio la conformità ci sono alcune strade che non si esc \begin{enumerate}[noitemsep] \item Ci si procura la versione del programma \prog{veraPDF}; questo software nel 2016 era ancora in fase di sviluppo e per questo era considerato sperimentale; dal 2017 il programma non è più sperimentale ma, senza escludere possibili aggiornamenti, ora è stabile. L'azienda che se ne occupa è sostenuta dalla Unione Europea proprio affinché la versione definitiva sia aperta e libera. Funziona benissimo e i suoi verdetti, secondo l'esperienza già fatta, sono praticamente sempre concordi con quelli del modulo Preflight di Adobe Acrobat Pro~XI. Questo programma è disponibile per le tre piattaforme Windows, Mac, Linux. % -\item Si cerca in dipartimento una stazione di lavoro dove un computer sia dotato del programma commerciale {Adobe Acrobat Pro XI}; spesso i dipartimenti dispongono di licenze multiple, oppure è possibile che un ricercatore dia una mano lasciando usare un suo calcolatore sul quale è montato il software indicato. Si procede poi come indicato tra poco +\item Si cerca in dipartimento una stazione di lavoro dove un computer sia dotato del programma commerciale {Adobe Acrobat Pro XI}; spesso i dipartimenti dispongono di licenze multiple, oppure è possibile che un ricercatore dia una mano lasciando usare un suo calcolatore sul quale è montato il software indicato. Si procede poi come indicato tra poco. %. \item La Adobe, come molte altre imprese produttrici di software, dispone di un programma \emph{Education} che consente agli studenti e ai docenti di università e scuole secondarie superiori di acquistare i loro software a prezzi molto, molto vantaggiosi. Io come privato cittadino non mi sarei mai comprato l'Adobe Acrobat Pro~XI se non avessi avuto la possibilità di avvantaggiarmi di questa offerta vantaggiosissima ma, come professore, ho potuto farlo senza bisogno di ricorrere a nessuno per usarne una copia acquistata regolarmente. \end{enumerate} @@ -2881,7 +2936,7 @@ Qualunque sia l'esito conviene visualizzare ed eventualmente salvare il verdetto Disponendo di Adobe Acrobat Pro XI, si apre il file PDF, si va nella voce di menù \textsf{Edit} e si sceglie l'opzione \textsf{Preflight}; nella finestrina che si apre si sceglie la voce \textsf{PDF/A compliance} e sotto questa la voce \textsf{Verify compliance with PDF/A-1b}; poi si clicca sul bottone \textsf{Analyse}; dopo pochi secondi si apre una seconda finestrina dove appare il risultato dell'analisi. Se il risultato è positivo il file è definitivamente pronto come conforme alla norma PDF/A-1b. -Se invece l'analisi indicasse errori, bisogna provvedere a correggerli; è vero che nella stessa finestrina c'è anche il bottone \textsf{Analyse and fix}, ma l'operazione di “aggiustamento” di solito riesce a correggere errori molto veniali, quindi con i programmi di composizione del sistema \TeX (col quale non si compiono errori veniali) questo aggiustamento è raro che abbia successo. Tuttavia nella versione di Acrobat Pro~XI c'è la possibilità di correggere alcuni errori specifici; per esempio se viene lamentata la presenza di trasparenze, esiste la possibilità di cliccare l'azione \textsf{Flatten} e le trasparenze svaniscono. Dopo la versione XI, la Adobe ha creato la versione che lavora in rete con di un modico abbonamento mensile; conviene se si usa Acrobat molto spesso e si ha il vantaggio di usare sempre la versione più aggiornata. Con questa versione ad abbonamento le possibilità di correzione sono maggiori e quasi sempre permettono di evitare di servirsi di \prog{Inkscape}. +Se invece l'analisi indicasse errori, bisogna provvedere a correggerli; è vero che nella stessa finestrina c'è anche il bottone \textsf{Analyse and fix}, ma l'operazione di “aggiustamento” di solito riesce a correggere errori molto veniali, quindi con i programmi di composizione del sistema \TeX (col quale non si compiono errori veniali) questo aggiustamento è raro che abbia successo. Tuttavia nella versione di Acrobat Pro~XI c'è la possibilità di correggere alcuni errori specifici; per esempio se viene lamentata la presenza di trasparenze, esiste la possibilità di cliccare l'azione \textsf{Flatten} e le trasparenze svaniscono. Dopo la versione XI, la Adobe ha creato la versione che lavora in rete con un modico abbonamento mensile; conviene se si usa Acrobat molto spesso e si ha il vantaggio di usare sempre la versione più aggiornata. Con questa versione ad abbonamento le possibilità di correzione sono maggiori e quasi sempre permettono di evitare di servirsi di \prog{Inkscape}. Ma non bisogna dimenticare che questo genere di piccoli errori spesso si presentano quando si importano file esterni; quindi tanto vale, invece, selezionare nella finestra di dialogo di Preflight la funzione Fixup; che parte e richiede con che nome si vuole salvare il file “difettoso”; si può tranquillamente specificare di sovrascrivere il file da sistemare; fra le altre operazioni che Fixup può fare c'è anche quella di modificare il profilo di colore dei file che ne hanno uno errato, e questa, fra le altre è una operazione da fare piuttosto spesso quando si importano file esterni. L'ho dovuto fare anche con questo file di documentazione a causa di alcune figure create da me stesso per le quali non avevo controllato che avessero il profilo di colore corretto, cioè~RGB. @@ -2909,7 +2964,9 @@ Come esperienza personale ritengo che sia opportuno convertire ogni figura vetto Come si vede, dunque, la produzione di un file conforme alla norma PDF/A non è una operazione semplice e senza disporre di Adobe Acrobat Pro XI o di VeraPDF si consuma molto tempo per ricorrere a postazioni di lavoro esterne, dovendo chiedere favori a laboratori o ad altre persone. Però se si osservano le indicazioni di questo paragrafo, è possibile che il file della tesi sia conforme alla norma fin dal primo momento. Questa stessa guida è stata prodotta con questo tipo di procedimenti; io sono avvantaggiato per la verifica perché dispongo personalmente di entrambi i software descritti nei paragrafi precedenti. Ma, appunto, questo mio privilegio mi ha permesso di sviluppare una certa esperienza e di formulare i consigli che ho indicato nei paragrafi indicati, grazie alle soluzioni che sono riuscito a trovare nei numerosi file che ho prodotto in modo conforme alla norma. Non sono consigli infallibili e completi per risolvere qualunque problema di conformità, tuttavia ne risolvono molti e quasi sempre il procedimento ha successo. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \chapter{I comandi specifici introdotti da \textsf{TOPtesi}}\label{cap:comandispecifici} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Introduzione} @@ -2928,7 +2985,7 @@ comando di dichiarazione della classe; negli esempi acclusi al pacchetto ne sono \begin{description}[noitemsep]\def\Item[#1]{\item[\normalfont\opt{#1}]} \Item[\chiave{tipotesi}] La chiave \chiave{tipotesi} serve per esprimere delle opzioni che riguardano il tipo della tesi, almeno il modo di comporre il suo frontespizio; essa accetta diversi valori; se non si specifica l'opzione o non si specifica nessun valore, per il frontespizio viene usato il modulo \pack{topfront}. I valori che si possono specificare sono indicati nella tabella~\ref{tab:tipotesi} % -\Item[\chiave{stile}] accetta come valori solo \texttt{standard} e \texttt{classica}; per la verità, per retrocompatibilità, la classe accetta anche il valore \texttt{trieste}, che ricorda i vecchi tempi quando questo stile era stato definito per le tesi umanistiche dell'università di Trieste; esso è un sinonimo di \texttt{classica}; l'uso di \texttt{trieste} è deprecato. +\Item[\chiave{stile}] accetta come valori solo \texttt{standard} e \texttt{classica}; per la verità, per retrocompatibilità, la classe accetta anche il valore \texttt{trieste}, che ricorda i vecchi tempi quando questo stile era stato definito per le tesi umanistiche dell'università di Trieste; esso è un sinonimo di \texttt{classica}; l'uso di \texttt{trieste} è scoraggiato. % \Item[classica] È un valore che può essere specificato alla chiave \chiave{stile} mediante l'opzione \chiave{stile}{classica}; l'alternativa è quella di non specificare niente, perché l'opzione \chiave{stile}{standard} è quella di default. L'opzione \opz{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 umanistiche spesso legate alla tradizione. Si veda la tabella~\ref{tab:front5} per i comandi disponibili quando questa opzione è attivata. % @@ -2944,7 +3001,7 @@ Questa opzione funziona solo se viene specificata anche l'opzione \chiave{stile} delle pagine con le cifre minuscole o all'antica, cioè con segni di altezze e profondità diverse; si confrontino le cifre minuscole \oldstylenums{123456\discretionary{}{}{}7890} con quelle maiuscole 1234567890. % -\Item[numerazioneromana] Questa opzione è inserita più per retrocompatibilità che per altro. Nelle versioni precedenti di \TOPtesi la parte iniziale aveva le pagine numerate con numeri romani; col primo capitolo automaticamente cominciava la “main matter”, il corpo principale della tesi, e la numerazione ricominciava da~1 con cifre arabe. Questo modo di procedere era giustificato quando la tipografia si serviva di caratteri metallici, con i quali prima si componevano le pagine del corpo principale e solo quando queste erano state completate con la loro numerazione in cifre arabe a partire da~1, allora si potevano comporre gli indici, le introduzioni, le presentazioni e quant'altro andasse composto nella parte iniziale, con numerazione romana per non dover cambiare la numerazione della parte principale. Con la tipografia elettronica questo artifizio non ha più motivo di essere ancora usato. Tuttavia grazie a questa opzione si può ripristinare il comportamento delle versioni precedenti; oppure si può usare questa opzione per dare un tocco di “antichità” alla tesi. +\Item[numerazioneromana] Questa opzione è inserita più per retrocompatibilità che per altro. Nelle versioni precedenti di \TOPtesi la parte iniziale aveva le pagine numerate con numeri romani; col primo capitolo automaticamente cominciava la “main matter”, il corpo principale della tesi, e la numerazione ricominciava da~1 con cifre arabe. Questo modo di procedere era giustificato quando la tipografia si serviva di caratteri metallici, con i quali prima si componevano le pagine del corpo principale e solo quando queste erano state completate con la loro numerazione in cifre arabe a partire da~1, allora si potevano comporre gli indici, le introduzioni, le presentazioni e quant'altro andasse composto nella parte iniziale, con numerazione romana per non dover cambiare la numerazione della parte principale. Con la tipografia elettronica questo artifizio non ha più motivo di essere ancora usato. Tuttavia grazie a questa opzione si può ripristinare il comportamento delle versioni precedenti; oppure si può usare questa opzione per dare un tocco \emph{retro} alla tesi. % \Item[libro] Questa opzione permette di comporre la tesi con i margini esterno e interno diversi, precisamente nel rapporto $3:2$ con il margine esterno più largo di quello interno, conformemente alla tradizione tipografica. Lo specchio di stampa resta invariato rispetto a quando i margini sono uguali; questo cambiamento dei margini consente il funzionamento della variazione della correzione di legatura prodotto dal valore assegnato alla chiave \chiave{cucitura}. Tuttavia se l'utente vuole stamparsi la tesi con i margini diversi secondo la tradizione, vuol dire che ci tiene a che il “libro” della tesi sia confezionato bene; quindi se lo legherà o se lo farà rilegare con le segnature cucite e con una copertura rigida, lasciando perdere la confezione più economica col dorso incollato o la confezione ancora più economica con i fogli spillati o con cucitura trasversale; peggio ancora, con legatura a spirale. % @@ -3049,7 +3106,7 @@ tabella~\ref{tab:generale}. \cs{cleardoublepage} quando deve passare ad una pagina dispari in composizione fronte retro - & \cs{blankpagestyle}\Arg{empty}\\ + & \cs{blankpagestyle}\Arg{empty}\\ \cs{goodpagebreak}\Oarg{...} & 4 & Inserisce un fine pagina condizionale; l'argomento facoltativo serve per @@ -3070,7 +3127,7 @@ tabella~\ref{tab:generale}. \end{table}} \subsubsection{Il comando \texorpdfstring{\cs}{}{interlinea} e l'ambiente corrispondente} -{\tolerance=6000 Vale la pena di commentare sull'uso dell'ambiente \amb{interlinea} e del comando \cs{interlinea}. +{\tolerance=6000 Vale la pena di commentare l'uso dell'ambiente \amb{interlinea} e del comando \cs{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 modifichi il @@ -3106,14 +3163,14 @@ di default. Tra l'altro non si vuole 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 alcune tesi svolte al Politecnico di Torino all'inizio degli anni 20 del XX secolo non superavano le 30~pagine dattiloscritte o scritte a mano (!), ma ricevettero la dignità di stampa\footnote{Una era del candidato Carlo Alberto Castigliano e vi veniva enunciato il teorema di Castigliano; un'altra era di Placido Cicala e vi si svolgeva la teoria delle volte sottili, teoria che gli strutturisti considerano assolutamente fondamentale ancora oggi.}; le si sta studiando ancora oggi dopo quasi un secolo! +sguardo. Ci si ricordi che alcune tesi svolte al Politecnico di Torino all'inizio degli anni 20 del XX secolo non superavano le 30~pagine dattiloscritte o scritte a mano (!), ma ricevettero la dignità di stampa\footnote{Una era del candidato Carlo Alberto Castigliano e vi veniva enunciato il teorema di Castigliano; un'altra era di Placido Cicala e vi si svolgeva la teoria delle volte sottili, teoria che gli strutturisti considerano assolutamente fondamentale ancora oggi.}; le si sta studiando ancora oggi dopo circa un secolo! \subsubsection{La misteriosa pagina bianca} Vale la pena di commentare il misterioso comando \cs{blankpagestyle}. Quando si compone fronte e retro senza usare l'opzione di classe \opt{openright}, i capitoli vengono sempre aperti nelle pagine di destra, cioè nelle pagine dispari. Per fare questo il comando \cs{chapter} agisce eseguendo subito il comando \cs{cleardoublepage} che, fra le altre cose, controlla se la nuova pagina su cui scrivere il titolo del capitolo sia dispari. Se non lo fosse provocherebbe la stampa di una pagina “bianca”; bianca nel senso che non contiene testo ma contiene la testatina e il piedino. -Fino alla versione 0.62 di \TOPtesi, questa eventuale pagina bianca prima dell'apertura di un nuovo capitolo conteneva la testatina e il piedino; d'accordo nel piedino c'è solo il numero della pagina, e ci può stare, ma nella testatina rimaneva il titolo del capitolo precedente: tipograficamente molto antiestetico ed errato. Da molti anni questa pagina bianca viene composta di default solo con il piedino che, ricordiamo, contiene solo il numero della pagina. Alcuni preferiscono che questa pagina bianca sia davvero vuota e non contenga nemmeno il piedino; ecco, in questo caso basta specificare: +Fino alla versione “antica” 0.62 di \TOPtesi, questa eventuale pagina bianca prima dell'apertura di un nuovo capitolo conteneva la testatina e il piedino; d'accordo nel piedino c'è solo il numero della pagina, e ci può stare, ma nella testatina rimaneva il titolo del capitolo precedente: tipograficamente molto antiestetico ed errato. Da molti anni questa pagina bianca viene composta di default solo con il piedino che, ricordiamo, contiene solo il numero della pagina. Alcuni preferiscono che questa pagina bianca sia davvero vuota e non contenga nemmeno il piedino; ecco, in questo caso basta specificare: \begin{flushleft}\ttfamily -\cs{blankpagestyle}\{empty\} +\cs{blankpagestyle}\Marg{empty} \end{flushleft} e il problema è risolto. Volendo si potrebbe specificare il nome di qualunque altro stile di pagina già definito ma, ad essere franchi, non vedo alternative fra i due stili \texttt{plain} e \texttt{empty} rispetto agli altri stili che contengono sempre le testatine, eventualmente ridotte al solo loro filetto. @@ -3246,7 +3303,7 @@ dove i vari argomenti hanno il seguente significato. il prefisso con il nome e il numero seguito da qualche segno di separazione, talvolta formato solo da spazio non scritto; il titolo che è generalmente una frase senza verbo - e che, se non è seguita da altro, non termina col punto finale; + e che, se non è seguito da altro, non termina col punto finale; questo invece è presente se c'è la terza parte: la descrizione (facoltativa), che contiene dettagli ulteriori relativi all'immagine e termina con il punto finale. Nessun comando @@ -3300,7 +3357,7 @@ dove i vari argomenti hanno il seguente significato. la didascalia cade sempre a destra. \item Il \meta{float} (se viene usato), il \meta{tipo} e l'\meta{etichetta} - giuocano ruoli fra loro subalterni + giuocano ruoli fra loro interconnessi a quelli descritti sopra. Bisogna ricordare che la scatola SD può contenere una didascalia numerata col suo prefisso, oppure una didascalia non numerata e priva di prefisso. Se @@ -3318,7 +3375,7 @@ dove i vari argomenti hanno il seguente significato. Questa lunga descrizione si è resa necessaria per consentire al lettore di usare correttamente questo ambiente; esso è molto utile quando si devono inserire delle piccole figure che altrimenti lascerebbero troppo spazio ai loro fianchi; vale anche con figure che hanno un prevalente sviluppo verticale. Non è il caso di usarlo sempre, ma solo quando il contenuto lo richiede. Vale anche, come si è già detto quando una figura con didascalia va inserita assieme ad una tabella dentro l'ambiente \amb{table}, o viceversa. -Preciso che se viene caricato il pacchetto \pack{caption}, la definizione di questo ambiente non è più disponibile perché essa fa riferimento a come è stato ridefinito il comando \cs{caption} di questa classe. Se si volessero usare ugualmente alcune figure con la didascalia a lato, si può usare il pacchetto \pack{sidecap} che ha prestazioni simili, ma con meno funzionalità rispetto a quelle qui descritte, in quanto produce solo figure (e tabelle) flottanti. +\textcolor{red}{Preciso che se viene caricato il pacchetto \pack{caption}, la definizione di questo ambiente non è più disponibile perché essa fa riferimento a come è stato ridefinito il comando \cs{caption} di questa classe. Se si volessero usare ugualmente alcune figure con la didascalia a lato, si può usare il pacchetto \pack{sidecap} che ha prestazioni simili, ma con meno funzionalità rispetto a quelle qui descritte, in quanto produce solo figure (e tabelle) flottanti.} \subsubsection{Il comando \texorpdfstring{\cs*}{}{goodpagebreak}} Qualche annotazione va fatta per il comando \cs{goodpagebreak}. Il nucleo di \LaTeX contiene il comando \cs{goodbreak} che dovrebbe impostare un consenso di eseguire un fine pagina impostando una penalità molto piccola negativa, più o meno simile a quello che fa il comando \cs{pagebreak}\Oarg{1}. In realtà questo comando nativo di Plain \TeX, conservato in \LaTeX, di fatto non funziona come ci si aspetterebbe. Il comando di questa classe, \cs{goodpagebreak} procede in un altro modo, anche perché si comporta in modo diverso se viene specificato in modo verticale o in modo orizzontale. @@ -3326,7 +3383,7 @@ Qualche annotazione va fatta per il comando \cs{goodpagebreak}. Il nucleo di \La Infatti in modo orizzontale inserisce d'ufficio un comando \cs{vadjust} il cui argomento vale esattamente \cs{newpage} che agisce in modo incondizionato quando la \emph{riga} che lo contiene viene scritta nel file di uscita; si dovrà porre un minimo di attenzione a fare sì che lo spazio alla fine della macro non elimini spazi interparola, né introduca spazi spuri; quando lo si usa, quindi, sarà opportuno lasciare uno spazio prima e dopo la macro, per esempio \begin{flushleft}\verb*|...prima \goodpagebreak di...|\end{flushleft} -Vale la pena di usare questo comando in certi casi in cui la bozza (non interlineata) mostra un salto pagina prima dell'ultima riga di un capoverso, cioè quando viene prodotta una riga vedova; quando si corregge la bozza si cerca il testo della riga prima di quella vedova e si inserisce la macro fra due parole qualsiasi di quel testo. È evidente che se si modifica il capoverso e non c'è più bisogno del salto pagina incondizionato, bisogna cancellare la macro da quella posizione. +Vale la pena di usare questo comando in certi casi in cui la bozza (non interlineata) mostra un salto pagina prima dell'ultima riga di un capoverso, cioè quando viene prodotta una riga vedova; quando si corregge la bozza si cerca il testo della riga prima di quella vedova e si inserisce la macro fra due parole qualsiasi di quel testo. È evidente che, se si modifica il capoverso e non c'è più bisogno del salto pagina incondizionato, bisogna cancellare la macro da quella posizione. In modo verticale, invece, viene calcolata la differenza fra le lunghezze \cs{pagegoal} e \cs{pagetotal}; la prima corrisponde più o meno a \cs{textheight} diminuita dello spazio riservato alle note in calce e del loro spazio di separazione dal testo; è insomma l'obbiettivo per raggiungere la giusta altezza del testo; la seconda lunghezza è la lunghezza netta del testo raggiunta fino a quel momento; se questa differenza è \emph{non maggiore} (che per la sintassi nativa di \TeX vuol dire \emph{minore o uguale}) al numero di righe specificate di default (4 righe), o specificate mediante l'argomento facoltativo, allora viene inserito un salto pagina incondizionato. Vale la pena servirsi di questo comando in modo verticale quando un oggetto relativamente grande e indivisibile viene rinviato alla pagina successiva, così che obbligherebbe \LaTeX a stiracchiare lo spazio elastico verticale al fine di giustificare la pagina che precede il salto pagina. @@ -3350,6 +3407,8 @@ Il lettore non si scoraggi: questi sono ritocchi destinati a rifinire la tesi qu Infine il comando \cs{captionof} serve per assegnare una didascalia ad un oggetto che avrebbe potuto riceverne una, ma che non è stato composto all'interno di un ambiente mobile come \amb{figure} o \amb{table}. Il pacchetto \pack{caption} lo definisce, ma se l'utente di \TOPtesi non lo ha caricato, questo comando non sarebbe disponibile. Invece \TOPtesi lo definisce nel caso che, appunto, non sia disponibile. La sua sintassi è semplice: \cs{captionof}\marg{nome di float}\marg{didascalia}. Tuttavia l'abitudine di inserire dei (piccoli) oggetti con didascalia in ambienti fissi in display all'interno del testo, deriva dal desiderio di imitare il comportamento dei word processor. Io ritengo che non sia una buona pratica, ma forse è solo una questione di gusti personali; esistono altri modi per inserire (piccoli) oggetti più o meno flottanti e dotati della loro didascalia ricorrendo a pacchetti esterni come \pack{wrapfig} che permette di inserire un oggettino flottante con tanto di didascalia sia nel margine, sia nel testo, ma con il testo che lo avvolge; oppure usando il pacchetto \pack{sidecap} e i suoi ambienti (vedi documentazione), che permette di comporre la didascalia a fianco invece che sotto o sopra l'oggetto; il fatto di avere disponibile il lato della figura ed eventualmente il margine della pagina per disporvi la didascalia permette di risparmiare un poco di spazio verticale o di sfruttare meglio lo spazio a fianco di una figura relativamente stretta. La scatola SD descritta sopra risolve il problema della didascalia laerale in modo più flessibile rispetto a quanto si può fare con il pacchetto \pack{sidecap}. +\newpage + \section{Comandi per il frontespizio} \textcolor{red}{Questo paragrafo descrive i comandi per comporre il frontespizio con i moduli di \TOPtesi (vedi la tabella~\ref{tab:tipotesi}). Se si vuole comporre il frontespizio con un altro pacchetto, non si usino questi comandi ma quelli descritti nella documentazione del pacchetto alternativo. Naturalmente si sarà specificata l'opzione giusta, o \chiave{tipotesi}{custom} o \chiave{tipotesi}{frontespizio}, fra le opzioni della classe.} @@ -3359,7 +3418,7 @@ Il pacchetto \pack{caption} lo definisce, ma se l'utente di \TOPtesi non lo ha c I comandi di questa sezione possono essere introdotti in un ordine qualunque, ma è più chiaro se sono introdotti nell'ordine in cui sono elencati nelle tabelle~\ref{tab:front1}-\ref{tab:front4} riportate dalla pagina~\pageref{tab:front1} alla pagina~\pageref{tab:front4}. -Alcuni comandi sono generali; altri si riferiscono specificatamente alla monografia di laurea, o alla tesi laurea, o alla dissertazione dottorato. In una colonna di queste tabelle vi è indicata la sigla del modulo per il quale quel comando è valido; se manca questa sigla, il comando vale per tutti i moduli. Le sigle sono `t' per la triennale, `m' per la magistrale, `d' per la dottorale, `S' per la tesi dottorale della ScuDo, `n' per usare il modulo di default, e `s' per la tesina della scuola secondaria. +Alcuni comandi sono generali; altri si riferiscono specificatamente alla monografia di laurea, o alla tesi laurea, o alla dissertazione dottorato. In una colonna di queste tabelle vi è indicata la sigla del modulo per il quale quel comando è valido; se manca questa sigla, il comando vale per tutti i moduli. Le sigle sono: `t' per la triennale, `m' per la magistrale, `d' per la dottorale, `S' per la tesi dottorale della ScuDo, `n' per usare il modulo di default, e `s' per la tesina della scuola secondaria. Per le tesi dottorali della ScuDo si veda più avanti il paragrafo~\ref{sec:frontescudo}. @@ -3371,7 +3430,7 @@ Per comporre questo testo si è usata la classe \class{toptesi}, e si è supposto di scrivere una monografia; tuttavia alcune delle stringhe di default non sono adeguate a questo uso, quindi il preambolo di questo documento contiene le seguenti specificazioni -che illustrano l'impiego di diversi fra i comandi descritti nelle +che illustrano l'impiego di alcuni fra i comandi descritti nelle tabelle citate: \begin{Verbatim}[fontsize=\cambiacorpo{11}] \begin{ThesisTitlePage} @@ -3382,8 +3441,8 @@ tabelle citate: \titolo{Il pacchetto \TOPtesi\\ \textnormal{\normalsize Versione\ \classvers\ del \classdate}} \TitoloListaCandidati{} -\sottotitolo{Per comporre tesi al Politecnico di Torino - \\e in molte altre università\\[1ex] +\sottotitolo{{Per comporre tesi in molti atenei fra i quali + il Politecnico di Torino\\[1ex] ...} \GetFileInfo{toptesi-it.tex}% per recuperare versione e data di questa % documentazione @@ -3417,7 +3476,7 @@ Vale la pena di fare le seguenti osservazioni. % \item Il comando \cs{titolo} non è disponibile per la monografia nel modulo di default \pack{topfront}, mentre negli altri moduli esso è definito e si può usare tranquillamente anche per la monografia. % -\item Il comando \cs{titolo} accetta un argomento facoltativo, la versione breve del titolo del frontespizio; serve con \chiave{stile}{classica} e l'opzione \opt{autoretitolo}, perché il titolo breve va nella testatina delle pagine; se il titolo del frontespizio fosse troppo lungo la testatina verrebbe molto, molto male! +\item Il comando \cs{titolo} accetta un argomento facoltativo, la versione breve del titolo del frontespizio; serve con \chiave{stile}{classica} e l'opzione \opt{autoretitolo}, perché il titolo breve appaia nella testatina delle pagine di sinistra; se il titolo del frontespizio fosse troppo lungo la testatina verrebbe molto, molto male! % \item Se non si danno i comandi \cs{relatore}, \cs{secondorelatore} e \cs{terzorelatore} non viene scritto nulla nel frontespizio che riguardi questi ruoli; di solito né per la dissertazione di dottorato né per la monografia si hanno le figure dei relatori, ma “di solito” non vuol dire né “sempre” né “mai”. @@ -3478,7 +3537,7 @@ e questa definizione corrisponde a scrivere l'etichetta e il numero con un rien \item \TOPtesi inizialmente veniva distribuito con un certo numero di loghi di università italiane e straniere. La politica di \TeXLive è quella di distribuire solo materiale con licenza libera e incondizionata; i loghi delle varie università certamente non lo sono, quindi i loghi non vengono più distribuiti con \class{toptesi}. Ogni laureando è quindi tenuto a chiedere il logo alla sua università accettandone tutte le limitazioni d'uso che l'università potrebbe imporgli. \end{enumerate} -Per quanto riguarda i loghi, essi implicano l'uso del pacchetto \pack{graphicx}, che perciò \class{toptesi} già 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. Però, evidentemente, lo si è già detto all'inizio, non è bene caricare una seconda volta i pacchetti che sono già stati caricati. +Per quanto riguarda i loghi, essi implicano l'uso del pacchetto \pack{graphicx}, e perciò \class{toptesi} già lo 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. Però, evidentemente, lo si è già detto all'inizio, non è bene caricare una seconda volta i pacchetti che sono già stati caricati. \textcolor{red}{Per i formati dei file grafici da includere, le versioni recenti di \pdfLaTeX, di \XeLaTeX e di \LuaLaTeX accettano i formati PDF, PNG, JPG, MPS, EPS. La cosa è scritta a chiare lettere nella guida \file{grfguide.pdf} (già presente nella propria installazione del sistema \TeX aggiornata e completa), ma è un fatto che viene dimenticato troppo spesso e che obbliga a cercare aiuto da chi ne sa di più, compagni o professori, ma che anche loro talvolta dimenticano.} @@ -3487,7 +3546,7 @@ Per quanto riguarda i loghi, essi implicano l'uso del pacchetto \pack{graphicx}, Per questo io preferisco usare sempre e solamente i compilatori \pdfLaTeX, \XeLaTeX\ o \LuaLaTeX. L'unico inconveniente è che non posso usare direttamente il pacchetto \pack{PSTricks}; ma finora me la sono cavata molto bene anche senza fruire delle prestazioni di questo bellissimo pacchetto. D'altra parte esistono pacchetti che consentono di usare \pack{PSTricks} anche con \pdfLaTeX e gli altri programmi; l'operazione diventa un po' più complicata ma se ne occupa direttamente il programma di tipocomposizione usato; l'utente deve solo caricare uno di quei pacchetti e seguirne le indicazioni specificate nella documentazione (vedi per esempio il pacchetto \pack{pdftricks} già presente in ogni installazione aggiornata e completa di \TeXLive; documentazione: \texttt{texdoc pdftricks}). -\goodpagebreak +%\goodpagebreak \section{Opzioni per la classe \texorpdfstring{\class}{}{toptesi}} @@ -3496,7 +3555,7 @@ Le opzioni che si possono specificare per la classe \class{toptesi} sono tutte d \def\item[#1]{\originalitem[\chiave{#1}]} \item[formato] nella forma \chiave{formato}{\meta{formato della carta}} permette di specificare il \meta{formato della carta} con una delle parole chiave accettate dalla sottostante classe \class{report}; di default esso vale \opz{a4paper}. % -\item[corpo] nella forma \chiave{corpo}{\meta{corpo normale}} accetta un valore anche fratto compreso fra ampi limiti, ma si consiglia di restare nell'intervallo fra $9,5\unit{pt}$ e $13.5\unit{pt}$, se non si specifica l'unità di misura vengono assunte pari a $1\unit{pt}$, altrimenti qualunque altra unità di misura accettata dai programmi di composizione del sistema \TeX\ è valida, purché si resti in effetti entro l'intervallo specificato sopra. Se il \meta{corpo normale} venisse specificato con un valore superiore a $13.5\unit{pt}$ anche la gabbia di stampa viene modificata per non comporre righe troppo corte in relazione al corpo. Questo è un altro motivo che sconsiglia vivamente di specificare corpi troppo grandi per il testo normale +\item[corpo] nella forma \chiave{corpo}{\meta{corpo normale}} accetta un valore anche fratto compreso fra ampi limiti, ma si consiglia di restare nell'intervallo fra $9,5\unit{pt}$ e $13.5\unit{pt}$, se non si specifica l'unità di misura vengono assunte pari a $1\unit{pt}$, altrimenti qualunque altra unità di misura accettata dai programmi di composizione del sistema \TeX\ è valida, purché si resti preferibilmente entro l'intervallo specificato sopra. Se il \meta{corpo normale} venisse specificato con un valore superiore a $13.5\unit{pt}$ anche la gabbia di stampa viene modificata per non comporre righe troppo corte in relazione al corpo. Questo è un altro motivo che sconsiglia vivamente di specificare corpi troppo grandi per il testo normale % \item[tipotesi] nella forma \chiave{tipotesi}{\meta{tipo della tesi}} accetta molti valori; il valore nullo \chiave{tipotesi}{} o il valore di default \chiave{tipotesi}{topfront}, fra loro equivalenti, per comporre una tesi in maniera retrocompatibile con le funzionalità del pacchetto TOPtesi fino alla versione~5; \chiave{tipotesi}{custom} per un frontespizio personalizzato a mano dall'utente; inoltre \chiave{tipotesi}{frontespizio} per comporre il frontespizio con le funzionalità del pacchetto \pack{frontespizio} che l'utente deve caricare espressamente; \chiave{tipotesi}{sss} per la tesina delle scuole secondarie superiori; \chiave{tipotesi}{scudo}, per la dissertazione dottorale presso la Scuola di Dottorato del Politecnico di Torino; \chiave{tipotesi}{triennale} o \chiave{tipotesi}{monografia} per comporre una tesi di laurea triennale; l'opzione \chiave{tipotesi}{magistrale} per comporre una tesi magistrale o a ciclo unico; \chiave{tipotesi}{dottorale} per comporre una tesi dottorale senza le caratteristiche della dissertazione della scuola ScuDo. % @@ -3506,26 +3565,26 @@ Le opzioni che si possono specificare per la classe \class{toptesi} sono tutte d % \item[stile] nella forma \chiave{stile}{\meta{stile della composizione}} può ricevere i valori \chiave{stile}{standard} per comporre in modo predefinito i frontespizi e le testatine; \chiave{stile}{classica} oppure \chiave{stile}{trieste} (questa deprecata, ma conservata per retrocompatibilità) compone in modo `classico' il frontespizio e accetta che vengano specificate anche altre opzioni per configurare le testatine. % -\item[autoretitolo] accettabile solo con l'opzione \chiave{stile}{classica}, serve per comporre le testatine in modo diverso, con il nome dell'autore e il titolo (breve) della tesi nella testatina di sinistra e il titolo del capitolo nella testatina di destra. Sconsiglio vivamente di usare questa opzione, richiestami dai classicisti, perché vanifica in parte l'utilità delle testatine; inoltre, se non si specifica il titolo breve mediante l'argomento facoltativo del comando \cs{title}, la probabilità che la testatina di sinistra esca dalla gabbia di composizione o anche dalla larghezza della pagina è elevata. +\item[autoretitolo] accettabile solo con l'opzione \chiave{stile}{classica}, serve per comporre le testatine in modo diverso, con il nome dell'autore e il titolo (breve) della tesi nella testatina di sinistra e il titolo del capitolo nella testatina di destra. Sconsiglio vivamente di usare questa opzione (richiestami dai classicisti) perché vanifica in parte l'utilità delle testatine; inoltre, se non si specifica il titolo breve mediante l'argomento facoltativo del comando \cs{titolo} o \cs{title}, la probabilità che la testatina di sinistra esca dalla gabbia di composizione o anche dalla larghezza della pagina è elevata. % \item[oldstyle] valido solo con l'opzione \chiave{tipotesi}{classica}, serve per usare le cifre minuscole nella composizione del frontespizio. % -\item[numerazioneromana] serve per comporre il numero della pagine in numeri romani in maiuscoletto nella parte iniziale della tesi, prima di iniziare il primo capitolo numerato. È un dettaglio stilistico, che oggi appare un po' troppo desueto e comunque privo di ogni motivazione (questa esisteva quando si componeva a mano o a macchina con caratteri in piombo). +\item[numerazioneromana] serve per comporre il numero della pagine in numeri romani in maiuscoletto nella parte iniziale della tesi, prima di emettere il primo comando \cs{chapter} con o senza asterisco. È un dettaglio stilistico, che oggi appare un po' troppo desueto e comunque privo di ogni motivazione (questa esisteva quando si componeva a mano o a macchina con caratteri metallici). % \item[evenboxes] serve per specificare che nello \chiave{stile}{standard} si vogliono comporre le due `scatole' contenti i nomi dei relatori e dei candidati affiancate ma allineate superiormente. Senza questa opzione, in questo stile, le due `scatole' sono collocate disallineate in modo tale da poter inserire le firme degli uni e degli altri sulla stessa riga del loro nome. % \item[mybibliostyle] serve solo quando si compone con l'opzione \chiave{tipotesi}{scudo} per evitare il caricamento automatico dei pacchetti di gestione della bibliografia in modo che l'utente possa caricarsi i pacchetti che preferisce, senza incorrere in errori di tipo “Option clash”. % -\item[chapterbib] questa opzione è conservata per retrocompatibilità e per quando si compone la bibliografia a mano; siccome oggi questo metodo, benché usabile, di fatto non si usa più, ma si usano i database bibliografici e i programmi di gestione come \BibTeX\ e \prog{biber}, se si volesse davvero comporre una bibliografia distinta alla fine di ogni capitolo, si suggerisce di servirsi delle funzionalità del pacchetto \pack{biblatex} e del programma \prog{biber}, che consentono di estrarre e di comporre le diverse bibliografie estraendo dai database bibliografici solo le informazioni relative alle opere citate in ciascun capitolo. Sconsiglio di comporre bibliografie separate per ogni capitolo quando si compone qualunque tesi, tuttavia è possibile farlo. Potrebbe avere qualche senso in una tesi compilativa dove si citano e si commentano molte decine, forse centinaia di riferimenti. +\item[chapterbib] questa opzione è conservata per retrocompatibilità e per quando si compone la bibliografia a mano; siccome oggi questo metodo, benché usabile, di fatto non si usa più, ma si usano i database bibliografici e i programmi di gestione come \BibTeX\ e \prog{biber}, se si volesse davvero comporre una bibliografia distinta alla fine di ogni capitolo, si suggerisce di servirsi delle funzionalità del pacchetto \pack{biblatex} e del programma \prog{biber}, che consentono di estrarre e di comporre le diverse bibliografie estraendo dai database bibliografici solo le informazioni relative alle opere citate in ciascun capitolo. Sconsiglio di comporre bibliografie separate per ogni capitolo quando si compone qualunque tesi, tuttavia è possibile farlo. Potrebbe avere qualche senso in una tesi compilativa dove si citano e si commentano molte decine, talvolta centinaia di riferimenti. % \end{description} \section{Altri comandi} La classe \class{toptesi} richiede l'uso di altri comandi; con i suoi moduli specializzati compone i frontespizi con ambienti adatti allo scopo; con il suo modulo di default \pack{topfront} ci sono diversi ambienti e programmi per comporre i vari frontespizi dei diversi tipi di tesi. Diciamo che questo modulo di default andrebbe usato il meno possibile perché è conservato per retrocompatibilità e come fallback quando non si usano correttamente le opzioni relative alla chiave \chiave{tipotesi} -Tuttavia se si è costretti ad usare quei comandi o quegli ambienti, quando è in vigore il modulo di fefault \pack{topfront}, si usi solo l'ambiente \amb{frontespizio} con o senza asterisco integrato nel nome, inserendo i dati relativi al frontespizio all'interno dell'ambiente. +Tuttavia se si è costretti ad usare quei comandi o quegli ambienti, quando è in vigore il modulo di default \pack{topfront}, si usi solo l'ambiente \amb{frontespizio}, con o senza asterisco integrato nel nome, inserendo i dati relativi al frontespizio all'interno dell'ambiente. -Merita sottolineare che il formato richiesto dal Politecnico di Torino va bene nel senso che il logo di quell'ateneo contiene già il suo logotipo\footnote{Il logo del Politecnico di Torino è formato da due parti accostate con un piccolo spazio; nella parte di sinistra compare il marchio dell'ateneo, il solito simbolo tondo, mentre la parte di destra contiene il logotipo, cioè il nome \textsf{POLITECNICO DI TORINO} su due righe scritto con certi font e con un colore particolare; font e colore non possono venire modificati, pena la violazione d'uso del logo.}. Sarebbe quanto mai inestetico se in testa al frontespizio comparisse due volte il nome del Politecnico; quindi non è strano che l'intestazione della tesi contenga formalmente solo il logo. Lo stesso potrebbe essere fatto, per esempio, con i loghi di diverse altre università, per esempio quello dell'Università di Torino, di Ca' Foscari a Venezia, di Bologna, dell'Università Cattolica, di Padova, del Politecnico di Milano, giusto per citarne alcuni, perché già contengono sia il marchio sia il logotipo. Per alcune università sono disponibili sia il logo col solo marchio, sia il logo completo di logotipo. Nonostante questo, alcune facoltà"/scuole"/dipartimenti richiedono l'uso del logo completo in testa alla pagina e la ripetizione del nome dell'ateneo subito sotto. È un vero peccato che quegli atenei non abbiano concordato un tipo standard di frontespizio, composto tipograficamente in modo corretto, a cui tutte le facoltà dovrebbero adeguarsi. +Merita sottolineare che il formato richiesto da molti atenei va bene nel senso che i loro logo contengono già il logotipo\footnote{Per esempio, il logo del Politecnico di Torino è formato da due parti separate da un piccolo spazio; nella parte di sinistra compare il marchio dell'ateneo, il solito simbolo tondo, mentre la parte di destra contiene il logotipo, cioè il nome \textsf{POLITECNICO DI TORINO} su due righe scritto con certi font e con un colore particolare; font e colore non possono venire modificati, pena la violazione d'uso del logo.}. Sarebbe quanto mai inestetico se in testa al frontespizio comparisse due volte il nome dell'ateneo; quindi non è strano che l'intestazione della tesi contenga formalmente solo il logo. I loghi di diverse università richiedono lo stesso trattamento: per esempio quello dell'Università di Torino, di Ca' Foscari a Venezia, di Bologna, dell'Università Cattolica, di Padova, del Politecnico di Milano, giusto per citarne alcuni, perché già contengono sia il marchio sia il logotipo. Per alcune università sono disponibili sia il logo col solo marchio, sia il logo completo di logotipo. Nonostante questo, alcune facoltà"/scuole"/dipartimenti richiedono l'uso del logo completo in testa alla pagina e la ripetizione del nome dell'ateneo subito sotto. È un vero peccato che quegli atenei non abbiano concordato un tipo standard di frontespizio, composto tipograficamente in modo corretto, a cui tutte le facoltà dovrebbero adeguarsi. Per le università che hanno un nome proprio, come per esempio \emph{Tor Vergata} per la seconda università di Roma ma, che io sappia, non hanno il logotipo nel loro logo, sarebbe quanto mai inestetico usare il logo sopra, in testa, poi il nome proprio, poi tutto il resto; io non consiglierei mai di usare l'ambiente normale in questi casi, ma userei solo quello asteriscato. @@ -3534,7 +3593,7 @@ Nella figura~\ref{fig:frontespizi} nella pagina~\pageref{fig:frontespizi} sono r \item tesi di laurea magistrale (o specialistica, secondo una vecchia terminologia) o tesi di laurea per un corso di studi a ciclo unico (giurisprudenza, medicina,\dots), \item dissertazione di dottorato, \item tesi di laurea del vecchio ordinamento, -\item monografia di laurea, +\item tesi di laurea triennale, \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. @@ -3793,7 +3852,7 @@ Comando &sigla& Default & Scopo & Esempio d'uso \\ \begin{table}[p] \def\V{\rule{0pt}{2.5ex}} \def\d{\discretionary{\%}{\rule{1em}{0pt}}{}}\let\t\ttfamily -\caption[Comandi per i frontespizi delle tesi universitarie]{Comandi per i frontespizi delle tesi universitarie. L'indicazione della sigla indica che il comando, oltre che certamente presente anche nei moduli specializzati nei diversi tipi di tesi, sono tutti definiti anche nel modulo generico \file{topfront}.}\label{tab:front3} +\caption[Comandi per i frontespizi delle tesi universitarie]{Comandi per i frontespizi delle tesi universitarie. I comandisono tutti definiti nel modulo generico \file{topfront}; l'indicazione della sigla indica che il comando, è presente anche nei moduli specializzati nei diversi tipi di tesi.}\label{tab:front3} \makebox[\textwidth]{\tabcolsep=3pt\small% \begin {tabular}{p{.3\textwidth}c>{\raggedright}p{.175\textwidth}p{.26\textwidth}p{.275\textwidth}@{}} \toprule @@ -3960,14 +4019,14 @@ Comando &sigla& Default & Scopo & Esempio d'uso \\ \section{ ScuDo title page commands}\label{sec:frontescudo} -The \file{toptesi-scudo.sty} module contains all the definitions necessary to typeset the thesis title page. Some of the commands just set the “fixed” parts of the title page; other are used to enter the variable parts, that is pieces of information such as the thesis author, title, defence date, and the like. All parts, fixed or variable have specific default values. Here we describe just the user commands divided in two sets, the most important and compulsory variant data, and the customisation of “fixed” data. +The \file{toptesi-scudo.sty} module contains all the necessary definitions to typeset the thesis title page. Some of the commands just set the “fixed” parts of the title page; other are used to enter the variable parts, i.e. pieces of information such as the thesis author, title, defence date, and the like. All parts, fixed or variable have specific default values. Here we describe just the user commands divided in two sets, the most important and compulsory variant data, and the customisation of “fixed” data. \subsection{Variant data} -All commands to insert variant data accept one mandatory argument. +All commands to insert variant data accept one mandatory argument. The expression “Default empty” implies that missing to specify one of the following commands, its predefined value is an empty string; in some cases this string is tested for emptiness and specific actions may be taken as specified below. \begin{description}[noitemsep] \def\Item[#1]{\item[\normalfont\cs{#1}]} % -\Item[Cyclenumber] Defines a string that represents the ordinal number of the cycle program. This ordinal may be written in a variety of ways, from “29\ap{th}”, to “29.th”; from “Twenty\-ninth”, to “XXIX”. If the ordinal number string is not specified, its label “cycle” is omitted. +\Item[Cyclenumber] Defines a string that represents the ordinal number of the cycle program. This number may be written in a variety of ways, from “29\ap{th}”, to “29.th”; from “Twenty\-ninth”, to “XXIX”. If the ordinal number string is not specified, its label “cycle” is omitted. % \Item[ProgramName] The argument is the name of the discipline the thesis is about, it may be composed with several words. Default empty. % @@ -4012,9 +4071,9 @@ Most of the fixed data have a default value consisting in a character-string. \begin{description}[noitemsep] \def\Item[#1]{\item[\normalfont\cs{#1}]} % -\Item[PhDschoolLogo] Specifies the name of the file that contains the School Logo. Default none; the file extension may be omitted, but the real extension should be one of \file{.pdf}, \file{.eps}, \file{.png}, \file{.jpg}. Actually this command accepts a list of comma separated names of Doctoral School logos, even if they are under control of the ScuDo school. We refer to the partnerships that ScuDo has with Università di Torino and with Istituto Nazionale di Ricerca Metrologica (INRiM). When a doctoral thesis is supported by INRiM or is a joint Doctoral Thesis with the University of Turin, their logos are supposed to be set in the title page; such logos, as well as the ScuDo one are available from the Students Office or downloaded from a specific reserved Web site. +\Item[PhDschoolLogo] Specifies the name of the file that contains the School Logo. Default none; the file extension may be omitted, but the real extension should be one of \file{.pdf}, \file{.eps}, \file{.png}, \file{.jpg}. Actually this command accepts a list of comma separated names of Doctoral School logos, even if they are under control of the ScuDo school. We refer to the partnerships that ScuDo has with Università di Torino and with Istituto Nazionale di Ricerca Metrologica (INRiM). When a doctoral thesis is supported by INRiM or is a joint Doctoral Thesis with the University of Turin, their logos are supposed to be set in the title page; such logos, as well as the ScuDo one, are available from the Students Office or may be downloaded from a specific reserved Web site. -Please, take notice that ScuDo has available four different logos (to be asked for at the Student Office); the four variants of the school logo are: $(a)$ \texttt{Logo-ScuDo.pdf} (a black and white logo without any decoration at its sides; may be it is an old school logo); $(b)$ \texttt{Logo-ScuDo-RGB.pdf} (an inverted color logo with decoration at its right, with white and yellow inscriptions over a blue background); $(c)$ \texttt{Logo-ScuDo-BN-RGB\discretionary{}{.}{.}pdf} (a black and white logo with decorations at its right; a new logo, the one you probably should use); $(d)$ \texttt{Logo-ScuDo-blu-RGB\discretionary{}{.}{.}pdf} (a blue on white logo with decorations at its right; the blue tint is the official blue required by most internal documents of Politecnico di Torino). This bundle TOPtesi does not contain any official logo, because these trademarked images are property of the respective entities, and cannot be freely distributed under the permissive LPPL licence common to most of \TeX-system software. +Please, take notice that ScuDo has available four different logos (to be asked for at the Student Office); the four variants of the school logo are: $(a)$ \texttt{Logo-ScuDo.pdf} (a black and white logo without any decoration at its sides; may be it is an old school logo); $(b)$ \texttt{Logo-ScuDo-RGB.pdf} (an inverted color logo with decoration at its right, with white and yellow inscriptions over a blue background); $(c)$ \texttt{Logo-ScuDo-BN-RGB\discretionary{}{.}{.}pdf} (a black and white logo with decorations at its right; a new logo, the one you probably should use); $(d)$ \texttt{Logo-ScuDo-blu-RGB\discretionary{}{.}{.}pdf} (a blue on white logo with decorations at its right; the blue tint is the official blue required by most official documents of Politecnico di Torino). This bundle TOPtesi does not contain any real logo, because these trademarked images are property of the respective entities, and cannot be freely distributed under the permissive LPPL licence common to most of \TeX-system software, see page~\pageref{ch:LPPL}. The last three logos were provided by the specific office of Politecnico di Torino in EPS format and CMYK color profile; very large files due to the verbosity of the PostScript commands and to the fact that such files contained both the EPS code and the compressed bitmapped image. By using the \prog{Inkscape} program as described in the English documentation \file{toptesi.pdf}, these PDF/A incompatible images were converted to pure EPS code and RGB profile; they were further processed to transform them in PDF/A compliant format. Hopefully these transformations should be much handier than the original images. In any case, remember that these four logos are not part of this bundle, but you have to ask the school Student Office in order to receive the logo file directly or the authorisation to download it from a reserved Web site. % @@ -4075,10 +4134,62 @@ An example title page is shown in figure~\ref{fig:frontescudo} on page~\pageref{ \end{otherlanguage} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Personalizzazioni}\label{ch:customise} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +Le personalizzazioni, diverse da quelle già previste da questo insieme di file di \TOPtesi, sono vivamente scoraggiate. Ci si ricordi che lo stile tipografico, sia la geometria della pagina, sia lo stile scelto per la maggior parte dei caratteri usati, sono i risultati precisi di accordi fatti con gli organi competenti di diverse università. Modificare queste cose vuol dire non rispettare le norme emesse da quegli organi competenti: segreterie studenti degli atenei o delle facoltà, dei corsi di studi, delle scuole, eccetera. + + +Tuttavia, di principio per TOPtesi le modifiche non sono vietate, ma sono solo scoraggiate. + +La licenza LPPL della pagina~\pageref{ch:LPPL} è molto permissiva, ma pone alcuni limiti. Quello più importante è che i file originali non possono essere modificati, ma non è vietato modificarne delle copie a cui sia stato cambiato il nome e dalle quali sia stato eliminato il nome della persona che esegue la manutenzione degli originali; questo nome deve essere sostituito con quello della persona che ne esegue qualsiasi modifica, pur lasciando la stessa indicazione di licenza e la paternità dell'autore originale. In questo modo chiunque usi la versione modificata sa a chi rivolgersi perché l'autore originale non è più responsabile “dell'assistenza” agli utenti. Siccome \TOPtesi è modulare e i suoi vari moduli sono richiamati in cascata, questo significa che bisogna cambiare nome e commenti iniziali all'indietro fino al file di classe; in pratica di tutti i file di coi è composto \TOPtesi. + +L'operazione è abbastanza delicata, perché non bisogna dimenticare le necessarie modifiche a tutti i file della catena; tuttavia, una volta eseguita questa operazione, si ha la massima libertà di modificare qualsiasi cosa senza violare nessuna licenza. + +Siccome è già successo che qualcuno mi chiedesse assistenza attraverso il Forum del \GuIT, mentre stava lavorando su una versione obsoleta e forse modificata da chissà chi, abbiamo avuto una serie di dialoghi “fra sordi”, perché io non riuscivo a replicare gli inconvenienti che quella persona lamentava; ci abbiamo messo almeno tre giorni attraverso i messaggi del forum per arrivare a scoprire che gli inconvenienti lamentati erano il frutto dell'uso di una versione obsoleta (forse anche modificata senza rispettare i vincoli suddetti). Ci saremmo risparmiati le incomprensioni generate dal fatto che stavamo parlando di due cose diverse che però avevano lo stesso nome. Ora l'inconveniente non dovrebbe presentarsi più, perché la classe esegue un controllo sulle versioni dei pacchetti usati e se non fossero conformi interromperebbe immediatamente la compilazione emettendo un messaggio molto evidente cosicché l'utente sarebbe costretto a verificare lo stato dei suoi file. + +Secondo me ci sono altri due modi per eseguire certe personalizzazioni senza violare la licenza pur mantenendo invariati i file originali. + +\begin{enumerate}[noitemsep] +\item Un primo metodo consiste nel crearsi un file di macro personali, dove inserire tutto o quasi tutto quanto generalmente si mette nel preambolo del proprio documento; anche senza modificare nulla, questo semplice fatto svuota il preambolo lasciando più facilmente leggibile il file sorgente della tesi o di qualsiasi altro documento. + +In ogni caso in questo file si possono copiare le definizioni dei comandi o degli ambienti di \TOPtesi che si vogliono modificare; questi comandi e questi ambienti possono venire modificati, ricordando di usare \cs{renewcommand} al posto di \cs{newcommand} e \cs{renewenvironment} al posto di \cs{newenvironment} e apportando tutte le modifiche che si vogliono al testo sostitutivo di quei comandi e di quegli ambienti. Ovviamente bisogna conoscere il linguaggio \LaTeX sufficientemente a fondo per fare una operazione del genere, ma spesso le modifiche desiderate sono piuttosto semplici e quindi, se è così, l'operazione non è difficile. + +Tuttavia c'è un problema: molti moduli di \TOPtesi vengono letti solo durante l'esecuzione dell'istruzione \Bambiente{document}, quindi il file di macro personali non può venire letto durante l'elaborazione del preambolo; dimenticarsi di questo fatto vuol dire ricevere una quantità di messaggi d'errore di difficile interpretazione per molti utenti. + +La cosa migliore da fare, quindi, è quella di inserire il file delle macro personali e delle modifiche alle macro di \TOPtesi subito dopo \Bambiente{document} con alcune avvertenze: + \begin{itemize}[noitemsep] + \item il file deve avere estensione \file*{.tex}; + + \item il file deve essere immesso subito dopo \Bambiente{document} con + il comando \cs{input}, assolutamente non con il comando \cs{include} + e meno che mai con il comando \cs{usepackage}; meglio ancora: si può + mettere tutt nel preambolo ma inserendo \cs{inpute} col suo argomento + in quello del comando \cs{AfterEndPreamble}, già disponibile, visto + che la classe già carica il pacchetto \pack{etoolbox}; + + \item il file deve cominciare con il comando \cs{makeatletter} + e finire con il comando \cs{makeatother}, se e solo se alcune + delle macro originali di \TOPtesi da modificare contengono + il carattere~\texttt{@}\index{"@@\texttt{"@}|textsc}. + \end{itemize} + +In questo modo i file originali di \TOPtesi restano immutati e le modifiche riguardano solo il documento che si sta componendo. + +\item Un altro modo consiste nell'uso dele funzionalità dei comandi definiti nel pacchetto \pack{etoolbox}; questi comandi permettono di “rattoppare” (traduzione letterale di \emph{to patch}), cioè di modificare comandi esistenti e, con una buona conoscenza del funzionamento interno di \LaTeX, anche degli ambienti. Il lettore si riferisca alla documentazione di \pack{etoolbox} per maggiori dettagli. Qui accenno solo al fatto che il comando di \pack{etoolbox} \cs{pretocmd} permette di aggiungere codice all'inizio del testo sostitutivo della definizione di una macro; \cs{addtocmd} permette di aggiungere codice in coda al testo sostitutivo; e \cs{patchcmd} permette di cercare una data stringa nel testo sostitutivo di un comando e di sostituirla con un'altra stringa. Ricordo che “testo sostitutivo” in questo contesto indica tutto quello che costituisce la definizione di una macro, quindi in generale non è “testo” nel senso stretto della parola, ma quasi sempre è solo codice in linguaggio \LaTeX o in linguaggio nativo \TeX. + +Non nascondo che questo secondo metodo è molto più elegante del primo, ma richiede conoscenze approfondito del linguaggio \LaTeX e \TeX, quindi lo segnalo solo per utenti esperti. + +\item {\tolerance=3000 Spesso le modifiche desiderate sono già previste da altri pacchetti; per essere sicuri che questi pacchetti siano caricati al momento giusto è meglio invocarli con \cs{usepackage}, inserendo il comando e il suo argomento dentro quello di \cs{AfterEndPreamble}.\par} + +\end{enumerate} + +Come si vede, dunque, non è impossibile modificare qualcosa di \TOPtesi senza violare la licenza LPPL. Ripeto che spesso e volentieri le modifiche che i laureandi vorrebbero apportare sono tentativi di rendere"/imitare lo stile \emph{non tipografico} dei vari word processor. Raccomando, quindi, di pensarci bene prima di apportare modifiche, perché molto probabilmente servono solo per peggiorare lo stile tipografico delle tesi e dei documenti composti con \TOPtesi. Non sto affermando che \TOPtesi sia privo di difetti tipografici, anzi: se questi difetti mi vengono segnalati, dopo attenta analisi, potrei anche inserire le opportune modifiche nelle versioni future. Dico solo che le modifiche a \TOPtesi, eseguite da persone che non hanno una anche minima conoscenza dell'arte tipografica, spesso ne peggiorano lo stile tipografico. Io sono solo un dilettante, ma uso \LaTeX da più di trent'anni e lungo questo lasso di tempo mi sono appassionato all'arte tipografica acquisendone qualche conoscenza. Questo è il motivo per il quale raccomando molta prudenza prima di eseguire qualsiasi personalizzazione. + \backmatter -\chapter*{Conclusioni} -\addcontentsline{toc}{chapter}{Conclusioni} +\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}, \emph{elaborato finale di laurea}, \emph{tesi di laurea}, \emph{tesi di laurea triennale}, \emph{tesi di laurea specialistica}, \emph{tesi di laurea magistrale}, \emph{dissertazione di dottorato} (con l'aggiunta anche della \emph{tesina} per l'esame di stato delle scuole secondarie superiori). @@ -4094,11 +4205,11 @@ Il modo di localizzare le stringhe fisse dovrebbe risultare semplificato rispett Il pacchetto \textsf{TOPtesi} carica di default sia \texttt{babel} o \texttt{polyglossia} 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 risparmio di memoria e un sia pur piccolo miglioramento nella velocità di esecuzione. Ritengo quindi che sia meglio che ognuno si carichi i pacchetti che intende davvero usare. -\goodpagebreak +%\goodpagebreak Consiglierei l'uso di \XeLaTeX o \LuaLaTeX solo per quelle tesi, specialmente di carattere umanistico, che hanno bisogno di maneggiare agevolmente font di diversi tipi per scrivere con alfabeti o sillabari o sistemi di ideogrammi per i quali \pdfLaTeX\ è, sì, attrezzato, ma rende molto più faticosa l'intera operazione. -Più interessante è il programma di composizione \LuaLaTeX, che incorpora una buona parte del linguaggio di scripting Lua; questo a sua volta permette di compiere diverse azioni esternamente al programma di tipocomposizione (mi risulta che sia usato per impostazione predefinita per comporre la musica gregoriana con il pacchetto \pack{GregorioTeX}); in certi casi esso si può considerare una estensione molto utile del programma \pdfLaTeX. Benché questo programma possa usare la microtipografia come \pdfLaTeX\ e i font OpenType come \XeLaTeX, vale la pena di usarlo al posto di quest'ultimo, se non altro perché ne è un superset che riesce a fare altre cose oltre quelle che \XeLaTeX\ è in grado di fare; in particolare può produrre file archiviabili secondo le norme ISO senza bisogno di nessun tipo di post"processing. +È molto interessante il programma di composizione \LuaLaTeX, che incorpora una buona parte del linguaggio di scripting Lua; questo a sua volta permette di compiere diverse azioni esternamente al programma di tipocomposizione (mi risulta che sia usato per impostazione predefinita per comporre la musica gregoriana con il pacchetto \pack{GregorioTeX}); in certi casi esso si può considerare una estensione molto utile del programma \pdfLaTeX. Benché questo programma possa usare la microtipografia come \pdfLaTeX\ e i font OpenType come \XeLaTeX, vale la pena di usarlo al posto di quest'ultimo, se non altro perché ne è un superset che riesce a fare altre cose oltre quelle che \XeLaTeX\ è in grado di fare; in particolare può produrre file archiviabili secondo le norme ISO senza bisogno di nessun tipo di post"processing. So per certo che le tesi di filologia classica possono essere composte molto bene con \pdfLaTeX\ e \textsf{TOPtesi}; se bisogna usare una buona dose di lingua greca classica è conveniente caricare il pacchetto \pack{teubner}\footnote{A tutt'oggi (\the\year) il pacchetto \pack{teubner} funziona correttamente solo con \pdfLaTeX.}; gli intenditori sanno perfettamente che i font greci 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. @@ -4116,9 +4227,13 @@ Buona composizione con \pdfLaTeX\ o \LuaLaTeX\ o~\XeLaTeX! Happy \TeX{ing} with \pdfLaTeX, or \LuaLaTeX, or~\XeLaTeX! \end{center} -\english -\appendix -\input{LPPL} +\english\newpage +%\appendix +%\input{LPPL} +\phantomsection +\addcontentsline{toc}{chapter}{The \LaTeX Project Public License} +\label{ch:LPPL} +\input{lppl} \italiano \printindex diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi-scudo-example.zip b/Master/texmf-dist/doc/latex/toptesi/toptesi-scudo-example.zip Binary files differindex 5728d4ef724..5d2c8446007 100644 --- a/Master/texmf-dist/doc/latex/toptesi/toptesi-scudo-example.zip +++ b/Master/texmf-dist/doc/latex/toptesi/toptesi-scudo-example.zip diff --git a/Master/texmf-dist/doc/latex/toptesi/toptesi.pdf b/Master/texmf-dist/doc/latex/toptesi/toptesi.pdf Binary files differindex d36c31dd0fa..185594c2190 100644 --- a/Master/texmf-dist/doc/latex/toptesi/toptesi.pdf +++ b/Master/texmf-dist/doc/latex/toptesi/toptesi.pdf diff --git a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx index 9ca4fb8afba..266f5a105b0 100644 --- a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx +++ b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx @@ -24,6 +24,9 @@ Distributable under the LaTeX Project Public License, version 1.3c or higher (your choice). The latest version of this license is at: http://www.latex-project.org/lppl.txt +For important further details see the English or the Italian +documentation. + This work is "author-maintained" This work consists of this file toptesi.dtx, a README file @@ -139,7 +142,7 @@ School of Turin. %<topmag>\ProvidesPackage{toptesi-magistrale}[% %<topdoc>\ProvidesPackage{toptesi-dottorale}[% %<*driver,class,topsty,topcmn,topfrn,topscu,topmon,topsss,topmag,topdoc> -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 %<class>Class for typesetting university theses] %<topsty>Extension for toptesi.cls] %<topcmn>Additional commands for the TOPtesi bundle] @@ -253,10 +256,10 @@ School of Turin. %</driver> % \fi % -% \CheckSum{7540} +% \CheckSum{7600} % % \begin{abstract} -% This file describes the TOPtesi bundle; it is a set of files +% This file describes the TOPtesi bundle; it consists of a set of files % designed to typeset a university final report that in Italian % is generally called “tesi”; it was originally developed at % the Technical University of Turin (Politecnico di Torino) but @@ -299,6 +302,12 @@ School of Turin. % author, and to other programmers and/or curious users. % The “normal” user should not spend his/her time to read % unnecessary information. +% +% \textcolor{red}{This bundle is distributed under the \LaTeX\ Project +% Public Licence (LPPL) which is appended to the Italian documentation +% file \texttt{toptesi-it.pdf} included in this bundle; personal +% customisation of parts of this bundle are discouraged but are +% permitted only in conformance with the LPPL. See also section~\ref{sec:LPPL}.} % \end{abstract} % % \section{History} @@ -2410,35 +2419,57 @@ School of Turin. % % \item % In the 2018 version of \TeXLive, with the upgrade of |pdfx| -% a glitch emerged due to licence questions; the |sRGB.icc| distributed with earlier versions was under a limited licence that is not compliant with the free nature of the \TeX\ system. The maintainers are aware of this problem ad while they are further upgrading the |pdfx| file, suggest a work-around (the will be described below); it is possible that when you read this documentations the work-around is not necessary any more. Nevertheless belod the work-around is described. +% a glitch emerged due to licence questions; the |sRGB.icc| distributed +% with earlier versions was under a limited licence that is not +% compliant with the free nature of the \TeX\ system. The maintainers +% are aware of this problem and, while they are further upgrading the +% |pdfx| file, they suggest a work-around (that will be described below); +% it is possible that when you read this documentations the work-around +% is not necessary any more. Nevertheless the work-around is +% described. % % \item % If your thesis main file, the one you run your typesetting % program on, is named, say, \texttt{JohnSmithMasterThesis.tex}, % prepare in the same directory another file named % \texttt{JohnSmithMasterThesis.xmpdata} that contains the -% \emph{metadata} relative to the thesis; pay attention -% to follow the stringent syntax described and exemplified -% in the \textsf{pdfx} documentation. A minimal example set of -% \emph{metadata} would be the following one: +% \emph{metadata} relative to the thesis. +% Pay attention to follow the stringent metadata syntax described +% and exemplified in the \textsf{pdfx} documentation. A minimal +% example set of \emph{metadata} would be the following one: % \begin{verbatim} % \Title{Experiments in Trichotetratomy} % \Author{John Smith} % \end{verbatim} % The keyword list requires a specific format that can be -% examined in the package documentation. The best way to +% examined in the |pdfx| package documentation. The best way to % be sure that this file accompanies the thesis main file, -% is to put its contents in a \env{filecontents*} environment -% before the |\documentclass| declaration. The details are -% in the documentation of the \pack{pdfx} package and examples -% are shown in the Italian documentation of |TOPtesi|. +% is to put its contents in a \env{filecontents*} environment. +% The details are in the documentation of the \pack{pdfx} package and +% examples are shown in the Italian documentation of |TOPtesi|. +% In order to override the constraints of the \LaTeX\ kernel +% |filecontents| environment, TOPtesi loads the package |filecontents| +% that% eliminates the mentioned constraints, but requires that the +% environment be used within the preamble, in any case before +% loading the |pdfx| package. Actually this does not forbid to use the +% environment before the |\documentclass| statement, as it was in the +% previous versions of TOPtesi. The new version is backwards compatible with the previous nes with this simple difference: when the environment +% is used before the |\documentclass| statement, any modification of +% its contents does not take place unless the previous |xmpdata| file +% is deleted, because the kernel environment does not overwrite existing +% files; on the opposite, if the environment is used after the +% |\documentclass| statement ,the |xmpdata| file is simply overwritten +% without the need to delete a previous version. % % The work-around mentioned above consists in adding another line -% at the very end of the metadata file that looks like this: +% at the very end of the metadata file; it looks like this: %\begin{verbatim} %\setRGBcolorprofile{sRGB.icc}{sRGB}{Argyll CMS, sRGB color profile}% %{https://www.argyllcms.com/} %\end{verbatim} +% Thanks to the |filecontents| functionalities there is no need +% to delete a previous |.xmpdata| file. +% % This work-around is required if you get an error message that % refers to line 1084 of the |pdfx.sty| file; if you don't patch % the metadata file and you do not get the above error, it means @@ -2525,6 +2556,85 @@ School of Turin. % or ttf fonts and use this version of the TOPtesi bundle % you should be able to avoid most problems. % +% \section{Customisation}\label{sec:LPPL} +% Customisation of parts of this bundle is discouraged, but is not +% forbidden, provided that it is done according to the \LaTeX\ Project +% Public Licence (LPPL). The full text of this licence is contained at the +% end of the Italian documentation file \texttt{toptesi-it.pdf}, +% besides being available from the \sigla{ctan} web site. +% +% The parts of this bundle already contain several customising +% commands and environments; other parts are not directly +% customisable; for example the geometry of the page; the various +% standard title pages (where the \texttt{tipotesi=custom} option +% already allows complete customisation of the title page); the +% super sectioning of the final document by means of |\frontmatter|, +% |\mainmatter|, and |\backmatter|; what appears in the table of +% contents; and so on. +% +% Nevertheless, in spite of being discouraged, some user might +% want to customise some details. There are several ways to do +% such customisation that conform the LPPL. +% +% \textcolor{red}{The main restriction set by the LPPL is that +% the bundle files may be modified, but their names must be changed, +% although the original author and licence are maintained in their +% initial comments, and that the file maintainer name is changed so +% that any user of the modified version knows to whom address +% him/herself in case of need; the original author is not responsible +% of any modified file.} +% +% \paragraph{Direct modification} +% In order to make a direct modification to any original file, first +% duplicate the original file and change name to the duplicated file; +% the modify this copy name and make the changes that are deemed +% necessary, without forgetting to delete my name as the maintainer +% while adding your name; it would be useful if some comments are +% added so as to describe what has benne modified, why and how. +% +% Remember to change accordingly the references to the modified +% file(s) in the other bundle files; this implies that all the +% bundle files get modified and that their names must be changed +% accordingly while modifying the initial comment lines so as to +% delete my name as the maintainer. +% +% \paragraph{Modification of single commands and/or environments} +% Another way to perform some customisation that does not infringe +% the LPPL licence is the following. +% +% In facts a simpler way to customise some commands and or +% environments is to copy their code from the original bundle +% files, and paste it into a personal \texttt{.sty} file to be +% input with a |\usepackage| command inside the argument of +% another |\AtBeginDocument| command; modify your personal file +% the way you like, and test the result. + +% If your modifications do not produce any difference in the +% output PDF file, then you have to load your modified file after +% the |\begin{document}| line. In this case you have to change +% your file extension from \texttt{.sty} to \texttt{.tex}, and +% you probably have to start your file with a |\makeatletter| and +% finish it with a |\makeatother| commands, since many macros +% used inside the original code are “protected” with an |@| sign +% with its category code changed to “letter”. Needless to say that +% in order to suse thei |.tex| file, the |\input| command must be +% used in place of the |\usepackage| one. +% +% \paragraph{Command patching} +% A third way to modify some commands and/or environments is to +% patch their definitions by means of the patching commands provided +% by the |etoolbox| package, that is already loaded by this bundle. +% Such |etoolbox| commands allow to add or to append some code to +% selected macros; other |etoolbox| commands allow to insert some code +% in the middle of a replacement text of selected macros or to replace +% some code in any position of its replacement text. +% +% The use of these patching commands requires some attention and +% is not recommended for \LaTeX\ beginners; nevertheless it is the +% best way to apply personal modifications to existing commands. +% The details of this procedure must be examined in the |etoolbox| +% documentation. +% % \StopEventually{} % % \newpage @@ -2542,7 +2652,7 @@ School of Turin. % \fi % % The class itself is very simple since it loads just the -% \texttt{report} document class and some packages with some +% \texttt{report} document class and some packages with a few % default options. All options specified to the \texttt{toptesi} % class are passed on to the \texttt{report} class; the % |a4paper| option is made the default, but the user can invoke @@ -2550,12 +2660,15 @@ School of Turin. % \LaTeX\ and |xkeyval| machinery of option passing, the |\ExecuteOptionX| % command assures that |a4paper| is the default size, but it % is not used if another paper size code is specified to the class. +% % The same holds true for the other class options, except for -% the encoding string because their passing machinery does +% the encoding string because their option passing machinery does % not hold true for the \pack{inputenc} package; therefore this % package is not loaded any more as it was in previous versions % of the class\footnote{Thanks to Enrico Gregorio who pointed -% out this feature.}. On the opposite, while typesetting with +% out this feature.}. +% +% On the opposite, while typesetting with % |pdfLaTeX|, if another language is specified in the list of % \pack{toptesi} class options this language is appended to the % \pack{babel} package default options and, beware!, it would @@ -2564,6 +2677,36 @@ School of Turin. % specifying languages; with these programs other languages must % be specified with their |\setotherlanguage| or |\setotherlanguages| % commands which do not change the preset main language. +% +% The |filecontents| package is loaded: it removes the constraints +% the original kernel environment |filecontents|, with or without +% the asterisk, sets up for its use. In particular that what is +% contained in the environment gets saved in the named file, only +% if the named file does not exist. This implies that if some +% changes are introduced in the environment contents, such changes +% do not get saved in the named file unless a pre\-existing file is +% deleted. +% +% Another piece of code follows in order to abort the job if the +% |toptesi| date, contained in it |\ProvidePacckage| argument is +% older than the class date. Should this happen, the job is aborted +% with a strong message on the console. In order to work properly +% the |toptesi| package is loaded and its date is fetched by means +% of the defined |\GetFileInfo|macro. This macro is almost identical +% to the one that is available when this documented file is processed; +% it simply differs in the sense that the |v.| prefix to the file +% version number is taken as a separator; should be necessary to +% compare also the version number, the |\fileversion| macro gets +% defined properly without any prefix. The |\@parse@version| macro +% is a \LaTeX\ kernel one; in spite spite of its name, it extracts +% from the first macro token the data in a form suitable for comparison +% with the second macro token, so that a numerical test can be performed +% without the intervention of non digit symbols. The prominent class +% error message is output only if the numerical value of the package +% date is strictly lower than the class date. This version control was +% necessary because apparently there are some vintage versions still +% on the web, and some newbie \TeX{}ies fetch them instead of using +% the most recent \TeX\ system complete and updated installation. % \begin{macrocode} \usepackage{trace} \RequirePackage{xkeyval} @@ -2587,7 +2730,37 @@ School of Turin. \expandafter\@firstoftwo\else \expandafter\@secondoftwo\fi} \fi +\RequirePackage{filecontents} +\providecommand\GetFileInfo[1]{% + \def\filename{#1}% + \def\@tempb##1 v.##2 ##3\relax##4\relax{% + \def\filedate{##1}% + \def\fileversion{##2}% + \def\fileinfo{##3}}% + \edef\@tempa{\csname ver@#1\endcsname}% + \expandafter\@tempb\@tempa\relax? ? \relax\relax} + \usepackage{toptesi} +\GetFileInfo{toptesi.sty}\let\stydate\filedate +\GetFileInfo{toptesi.cls}\let\classdate\filedate + + \ifnum\expandafter\@parse@version\stydate//00\@nil<% + \expandafter\@parse@version\classdate//00\@nil + \ClassError{toptesi}{\MessageBreak + ******************\MessageBreak + This class requires a sty file not older than the class\MessageBreak + This class has a date of \classdate\space while\MessageBreak + the sty file you are using has a date of \stydate\MessageBreak + \MessageBreak + This job is therefore aborted\MessageBreak\@gobble + ******************\MessageBreak + \MessageBreak + Update your TeX system installation and/or \MessageBreak + avoid using vintage toptesi.sty files% + }{% + } + \expandafter\stop + \fi % % \end{macrocode} % \iffalse @@ -8621,6 +8794,12 @@ Anno scolastico \@annoscolastico}} % to the report/book/article class can be used (this required a loto % of thought, because the xkeyval package documentations require % thoughtful interpretation. - - +%%%% (version 6.2.07 of 2018/11/12) Added checks in order to avoid loading +% an older toptesi.sty package compared to the toptesi.cls. It avoids +% any possible conflict with hacked toptesi.sty files, or even with +% such obsolete versions, still going around in Internet, that date back +% to the old times when the toptesi.cls file did not yet exist (versions +% 2.xxxx or older). +%%%% (version 6.2.09 of 2-18/11/20) Loaded the filecontents package in oder +% to allow overwriting of the metadata file needed for PDF/A compliance. diff --git a/Master/texmf-dist/tex/latex/toptesi/topcoman.sty b/Master/texmf-dist/tex/latex/toptesi/topcoman.sty index fe931d10cc7..bb176c0d09e 100644 --- a/Master/texmf-dist/tex/latex/toptesi/topcoman.sty +++ b/Master/texmf-dist/tex/latex/toptesi/topcoman.sty @@ -14,10 +14,11 @@ %% \NeedsTeXFormat{LaTeX2e}[2016/01/01] \ProvidesPackage{topcoman}[% -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 Additional commands for the TOPtesi bundle] + \RequirePackage{iftex} \ifPDFTeX \newcommand*\DeclareSlantedCapitalGreekLetters{% @@ -93,6 +94,9 @@ Additional commands for the TOPtesi bundle] %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file diff --git a/Master/texmf-dist/tex/latex/toptesi/topfront.sty b/Master/texmf-dist/tex/latex/toptesi/topfront.sty index 6668063c9fe..f34f61460db 100644 --- a/Master/texmf-dist/tex/latex/toptesi/topfront.sty +++ b/Master/texmf-dist/tex/latex/toptesi/topfront.sty @@ -14,10 +14,11 @@ %% \NeedsTeXFormat{LaTeX2e}[2016/01/01] \ProvidesPackage{topfront}[% -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 Title page for TOPtesi and other classes] + \@ifpackageloaded{etoolbox}{}{\RequirePackage{etoolbox}} \@ifpackageloaded{xspace}{}{\RequirePackage{xspace}} \@ifpackageloaded{xparse}{}{\RequirePackage{xparse}} @@ -561,6 +562,9 @@ Title page for TOPtesi and other classes] %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi-dottorale.sty b/Master/texmf-dist/tex/latex/toptesi/toptesi-dottorale.sty index 39fa9846c6b..f2e56e0cd3d 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi-dottorale.sty +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi-dottorale.sty @@ -13,10 +13,11 @@ %% License information appended %% \ProvidesPackage{toptesi-dottorale}[% -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 Ph.D. degree title page] + \@ifpackageloaded{etoolbox}{}{\RequirePackage{etoolbox}} \@ifpackageloaded{xspace}{}{\RequirePackage{xspace}} \@ifpackageloaded{xparse}{}{\RequirePackage{xparse}} @@ -547,6 +548,9 @@ Ph.D. degree title page] %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi-magistrale.sty b/Master/texmf-dist/tex/latex/toptesi/toptesi-magistrale.sty index f298cef6155..47b38d8dea1 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi-magistrale.sty +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi-magistrale.sty @@ -14,10 +14,11 @@ %% \NeedsTeXFormat{LaTeX2e}[2016/01/01] \ProvidesPackage{toptesi-magistrale}[% -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 Master degree title page] + \@ifpackageloaded{etoolbox}{}{\RequirePackage{etoolbox}} \@ifpackageloaded{xspace}{}{\RequirePackage{xspace}} \@ifpackageloaded{xparse}{}{\RequirePackage{xparse}} @@ -492,6 +493,9 @@ Master degree title page] %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi-monografia.sty b/Master/texmf-dist/tex/latex/toptesi/toptesi-monografia.sty index 5e25448ed4e..95861e95e77 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi-monografia.sty +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi-monografia.sty @@ -14,10 +14,11 @@ %% \NeedsTeXFormat{LaTeX2e}[2016/01/01] \ProvidesPackage{toptesi-monografia}[% -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 Bachelor degree title page] + \monografiatrue \@ifpackageloaded{etoolbox}{}{\RequirePackage{etoolbox}} \@ifpackageloaded{xparse}{}{\RequirePackage{xparse}} @@ -329,6 +330,9 @@ Bachelor degree title page] %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi-scudo.sty b/Master/texmf-dist/tex/latex/toptesi/toptesi-scudo.sty index f9570cbe690..4d116241e6b 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi-scudo.sty +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi-scudo.sty @@ -14,10 +14,11 @@ %% \NeedsTeXFormat{LaTeX2e}[2016/01/01] \ProvidesPackage{toptesi-scudo}[% -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 Extension for ScuDo theses] + \ScuDotrue \ifPDFTeX \RequirePackage{amsmath,amssymb,amsthm} @@ -262,6 +263,9 @@ This class is available in every up-to-date and complete %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi-sss.sty b/Master/texmf-dist/tex/latex/toptesi/toptesi-sss.sty index 78c9e6b2894..84489c4f322 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi-sss.sty +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi-sss.sty @@ -14,10 +14,11 @@ %% \NeedsTeXFormat{LaTeX2e}[2016/01/01] \ProvidesPackage{toptesi-sss}[% -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 High school title page] + %% %%%% Math fonts and AMS extensions (|fontspec| is already loaded) \secondariatrue @@ -148,6 +149,9 @@ Anno scolastico \@annoscolastico}} %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi.cfg b/Master/texmf-dist/tex/latex/toptesi/toptesi.cfg index 968255df2ba..b2dc7779bf0 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi.cfg +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi.cfg @@ -14,6 +14,7 @@ %% + %% %%================================================================ %% This file is the only file of the TOPtesi bundle that the user @@ -70,6 +71,9 @@ %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi.cls b/Master/texmf-dist/tex/latex/toptesi/toptesi.cls index 4dcaeda75d2..ae959a9ea19 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi.cls +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi.cls @@ -14,10 +14,11 @@ %% \NeedsTeXFormat{LaTeX2e}[2016/01/01] \ProvidesClass{toptesi}[% -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 Class for typesetting university theses] + \usepackage{trace} \RequirePackage{xkeyval} \DeclareOptionX{formato}[a4paper]{\PassOptionsToClass{#1}{report}} @@ -40,7 +41,37 @@ Class for typesetting university theses] \expandafter\@firstoftwo\else \expandafter\@secondoftwo\fi} \fi +\RequirePackage{filecontents} +\providecommand\GetFileInfo[1]{% + \def\filename{#1}% + \def\@tempb##1 v.##2 ##3\relax##4\relax{% + \def\filedate{##1}% + \def\fileversion{##2}% + \def\fileinfo{##3}}% + \edef\@tempa{\csname ver@#1\endcsname}% + \expandafter\@tempb\@tempa\relax? ? \relax\relax} + \usepackage{toptesi} +\GetFileInfo{toptesi.sty}\let\stydate\filedate +\GetFileInfo{toptesi.cls}\let\classdate\filedate + + \ifnum\expandafter\@parse@version\stydate//00\@nil<% + \expandafter\@parse@version\classdate//00\@nil + \ClassError{toptesi}{\MessageBreak + ******************\MessageBreak + This class requires a sty file not older than the class\MessageBreak + This class has a date of \classdate\space while\MessageBreak + the sty file you are using has a date of \stydate\MessageBreak + \MessageBreak + This job is therefore aborted\MessageBreak\@gobble + ******************\MessageBreak + \MessageBreak + Update your TeX system installation and/or \MessageBreak + avoid using vintage toptesi.sty files% + }{% + } + \expandafter\stop + \fi %% %% Copyright 2005-2018 Claudio Beccari %% @@ -48,6 +79,9 @@ Class for typesetting university theses] %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file diff --git a/Master/texmf-dist/tex/latex/toptesi/toptesi.sty b/Master/texmf-dist/tex/latex/toptesi/toptesi.sty index c39432078c3..d4d991aae30 100644 --- a/Master/texmf-dist/tex/latex/toptesi/toptesi.sty +++ b/Master/texmf-dist/tex/latex/toptesi/toptesi.sty @@ -14,10 +14,11 @@ %% \NeedsTeXFormat{LaTeX2e}[2016/01/01] \ProvidesPackage{toptesi}[% -2018/10/30 v.~6.2.05 +2018/11/20 v.6.2.09 Extension for toptesi.cls] + \def\TRON{\tracingcommands \tw@ \tracingmacros \tw@} \def\TROFF{\tracingcommands\z@ \tracingmacros \z@} \let\TROF\TROFF @@ -738,6 +739,9 @@ Skipping any redefinition\MessageBreak}% %% version 1.3c or higher (your choice). The latest version of %% this license is at: http://www.latex-project.org/lppl.txt %% +%% For important further details see the English or the Italian +%% documentation. +%% %% This work is "author-maintained" %% %% This work consists of this file toptesi.dtx, a README file |