summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/toptesi/toptesi.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/toptesi/toptesi.dtx')
-rw-r--r--macros/latex/contrib/toptesi/toptesi.dtx1565
1 files changed, 902 insertions, 663 deletions
diff --git a/macros/latex/contrib/toptesi/toptesi.dtx b/macros/latex/contrib/toptesi/toptesi.dtx
index ef86c19b16..843f5659b1 100644
--- a/macros/latex/contrib/toptesi/toptesi.dtx
+++ b/macros/latex/contrib/toptesi/toptesi.dtx
@@ -142,7 +142,7 @@ School of Turin.
%<topmag>\ProvidesPackage{toptesi-magistrale}[%
%<topdoc>\ProvidesPackage{toptesi-dottorale}[%
%<*driver,class,topsty,topcmn,topfrn,topscu,topmon,topsss,topmag,topdoc>
-2019-07-26 v.6.3.06
+2020-05-12 v.6.4.02
%<class>Class for typesetting university theses]
%<topsty>Extension for toptesi.cls]
%<topcmn>Additional commands for the TOPtesi bundle]
@@ -168,10 +168,12 @@ School of Turin.
xparse,curve2e,etoolbox,textcomp}
\let\originalmeta\meta
\renewcommand\meta[1]{{\normalfont\originalmeta{#1}}}
+\providecommand\cs{}
+\def\cs#1{\textnormal{\ttfamily\char92 #1}}
\def\prog#1{\textsf{#1}}
\def\pack#1{\textsf{\slshape#1}}
\def\env#1{\textit{#1}}\let\amb\env
-\def\file#1{\texttt{#1}}
+\def\file#1{\texttt{#1}}\let\class\file
\def\marg#1{{\normalfont\texttt{\{}\meta{#1}\texttt{\}}}}
\def\Marg#1{{\texttt{\{#1\}}}}
\def\opz#1{{\normalfont\textsl{#1}}}
@@ -256,7 +258,7 @@ School of Turin.
%</driver>
% \fi
%
-% \CheckSum{7660}
+% \CheckSum{7981}
%
% \begin{abstract}
% This file describes the TOPtesi bundle; it consists of a set of files
@@ -272,7 +274,7 @@ School of Turin.
% files has the ambition to be suited for typesetting theses in
% any university in the world\dots\ This ambition can't be
% fulfilled, though, because of the complexity of the title
-% page (and possibly of the legal page) requirements. This
+% page (and possibly of the copyright page) requirements. This
% version is compliant with the \XeLaTeX\ and the \LuaLaTeX\
% programs. Up to now the few conflicts that have
% been spotted have been solved with suitable corrections or
@@ -307,7 +309,8 @@ School of Turin.
% 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}.}
+% permitted only in conformance with the LPPL. See also
+% section~\ref{sec:LPPL} in this document.}
% \end{abstract}
%
% \section{History}
@@ -472,7 +475,7 @@ School of Turin.
% the |pdfpages| package), or even create his/her personal
% title page by means of the standard |titlepage| environment.
%
-% All this implied the rewriting of both the English and
+% All this implied rewriting both the English and
% Italian documentation files; the user can find useful
% information in the English file |toptesi.pdf| included
% in the bundle; this file is pretty lengthy because it
@@ -709,9 +712,10 @@ School of Turin.
% specific options.
%
% \subsection{Class options}
-% The class honors all the options accepted by the |report|
+% The class accepts all the options valid for the |report|
% document class plus the ones defined here:
% \begin{description}[noitemsep]\def\Item[#1]{\item[\opz{#1}]}
+%
% \Item[chapterbib] Allows to typeset a list of references at the
% end of each chapter and the bibliography items are numbered with
% a \emph{chapter.item} indication. This implies a manual build
@@ -721,7 +725,7 @@ School of Turin.
% complete \TeX\ system distribution and the facilities offered
% by packages such as \pack{biblatex}, and on the sorting and formatting
% engines such as \prog{biber}. The use of this option, retained for
-% backwards compatibility, is strongly deprecated.
+% backwards compatibility, is \emph{strongly deprecated}.
%
% \Item[stile=classica] Specifies a general modification of certain
% details that are supposed to be more adequate for theses in
@@ -729,10 +733,11 @@ School of Turin.
% be used for some numerical pieces of information; some variations
% are also introduced in the title page. This option is active also
% when using some of the modules for specific theses, in particular
-% with the |dottorale| thesis option.
+% with the |dottorale| thesis option. Some of the following options
+% may be valid or may remain inactive when this thesis style is specified.
%
% \Item[cucitura=\meta{displacement}] In two sided printing
-% it is better to move the typesetting grid towards the outer
+% it might be necessary to move the typesetting grid towards the outer
% edge so as to cope with the thesis binding that is generally
% not made up by sewing together a number of signatures; the
% default outer displacement is fixed to~7mm, but it can be
@@ -788,12 +793,33 @@ School of Turin.
% the like, only when the main matter was complete, corrected
% and stable. Nowadays with electronic typesetting there is no
% need to to use this artifice, but in some disciplines it is
-% still considered an elegant touch.
+% still considered a touch of elegance.
+% \Item[folioinhead] Folios by default are typeset at the center
+% of the footer. With thei options they are placed in the margin,
+% aligned with the header; thei feature has been requested in some
+% universities, but admittedly is not particularly elegant; may be
+% it can be used only when the header is centred in the measure,
+% certainly not when is is moved to the outer side of the header.
+% No particular functionality is provided to avoid this particular
+% choice; it is up to the user to avoid this error. Ineffective is
+% the |stile=classica| option is specified.
+%
+% \Item[nocenterhead] The header text is normally centred in the
+% measure. If this option is specified, the header text is moved
+% to the outer side. No option has been requested to move the header
+% text towards the inner side; therefore do not look for any such
+% keyword. Ineffective is the |stile=classica| option is specified.
+%
+% \Item[nocenterfolio] Normally the folio is typeset centred in the
+% footer; by specifying the option the folio is flushed to the outer
+% side of the footer. Ineffective is the |stile=classica| option is
+% specified. These last three options comply with the |oneside| or
+% |twoside| global class options.
%\end{description}
%
% Since version 6.xx.yy options to the TOPtesi class follow the
% syntax \emph{key${}={}$value}; depending on the kind of thesis
-% there there are some values that are particularly significant;
+% there are some values that are particularly significant;
% the key for all of them is |tipotesi| (\emph{thesis kind});
% the values are indicated hereafter.
%
@@ -844,6 +870,21 @@ School of Turin.
% case, except for few additional packages, the body of the
% TOPtesi functionality is maintained intact.
%
+%\Item[topotesi=frontespizio] By specifying this option the default
+% module |topfront| to typeset the title page is not loaded; in its
+% place the \pack{frontespizio} package is loaded, and the user can
+% directly use this latter package commands. Of course the user must
+% know pretty well ho this particular package works; if not s/he
+% should reat its documentation. Notice: the documentation is written
+% in Italian; probably its author assumed that it would be used only
+% by Italian students; actually the author provided commands to
+% customise the infix words in other languages. Again the author
+% assumed that some Italian students had to typeset their theses in
+% various languages; this is generally true for doctoral theses that
+% are requested in English; but this is true also for Erasmus student
+% who might need to write their theses in the language of the host
+% universities.
+%
% \Item[tipotesi=custom]
% is a very simple option: sets the various internal switches
% so as not to load any internal module or external file.
@@ -865,11 +906,11 @@ School of Turin.
% di Torino, the user is free to follow his/her University
% prescriptions without any constraint by the TOPtesi bundle.
%
-% \item[Attention!] It goes by itself that each one of the last
+% \item[Warning!] It goes without saying that each one of the last
% options does not load the generic module |topfront|, therefore
-% the commands provided by this standard module are not available
+% some commands provided by this standard module are not available
% any more. Every effort has been made in the various modules to
-% maintain the same commands, but in certain thesis kinds they
+% maintain the same commands, but in certain thesis types they
% might behave differently than expected.
%
% The user therefore is strongly urged to consult the documentation
@@ -880,10 +921,10 @@ School of Turin.
% \end{description}
%
% \subsection{Title page commands}
-% Note: Skip this section if you decide to load an external
-% package, such as, for example, |frontespizio|, for typesetting the
-% title~page. Notice also that if you want to load an external
-% package for this task, you should load it \emph{after}
+% Note: Skip this section if you decide to use external package
+% |frontespizio|, or you selected the |tipotesi=custom| option for
+% typesetting the title~page. Notice also that if you want to load
+% an external package for this task, you should load it \emph{after}
% specifying the input encoding you use for your text files.\bigskip
%
% \noindent The user must specify a certain number of commands
@@ -896,14 +937,14 @@ School of Turin.
% repeat his/her name, the name of the institution, and so on?
%
% Many user commands for the title page redefine default
-% values or strings; they are particularly usefull when the thesis is
+% values or strings; they are particularly useful when the thesis is
% typeset in a different language; if none of the required information
% is given, the default values and strings are typeset, possibly
% with hilarious results\dots
%
% Except for the self made customised module for the title-page,
% all the modules accept the same commands as those available in
-% the |TOPfront| module. Pay attention, though, that some commands are
+% the |topfront| module. Pay attention, though, that some commands are
% meaningless in certain theses, therefore do not reverse the
% statement: for example the doctoral cycle command (|\cycle|)
% is meaningless in a bachelor degree final-work title-page.
@@ -930,8 +971,8 @@ School of Turin.
% other ones use mostly the same commands for the same purposes.
%
% \begin{description}[noitemsep]
-% \def\cs#1{\texttt{\char92#1}}
-% \def\Item[#1]{\item[\normalfont\cs{#1}]}
+%^^A \def\cs#1{\texttt{\char92#1}}
+% \def\Item[#1]{\item[\cs{#1}]}
%^^A
% \item[\textnormal{\ttfamily frontespizio}] and
% \texttt{frontespizio*} are two environments that typeset the
@@ -948,29 +989,31 @@ School of Turin.
% according to the actual status of the boolean |\topTPTlogos|;
% the user, before issuing the |\frontespizio| command, may set
% this boolean by means of the |\topTPTlogostrue|
-% or |\topTPTlogosfalse|, or with either one of the commands
+% or |\topTPTlogosfalse|, or with either one of the equivalent commands
% |\booltrue{topTPTlogos}| and |\boolfalse{topTPTlogos}|.\par}
%
-% \Item[monografia] sets the bachelor's report style and retrieves
-% its title; the command\cs{titolo} that is not available for this
-% purpose with the standard module |TOPfront|, is available when
+% \Item[monografia\marg{title}] sets the bachelor's report style and
+% retrieves its title; the command\cs{titolo} that is not available for
+% this purpose with the standard module |TOPfront|, is available when
% the specific module has been loaded by means of the
% \opz{monografia} or \opz{triennale} options.
%
-% \Item[titolo] gets the master or PhD thesis title and an
-% optional thesis short title.
-%
-% \Item[sottotitolo] gets the thesis subtitle if any.
+% \Item[titolo\oarg{shorttitle}\marg{title}] gets the master
+% or PhD thesis title and an optional thesis short title.
%
-% \Item[materia] gets the name of the discipline the thesis deals with.
+% \Item[sottotitolo\marg{subtitle}] gets the thesis subtitle if any.
%
-% \Item[Materia] alias for \cs{materia}.
+% \Item[materia\marg{discipline}] or the alias
+% \cs{Materia}\marg{discipline} get the name of the discipline the
+% thesis deals with.
%
-% \Item[direttore] gets the name of the Doctoral School Director.
+% \Item[direttore\marg{director's name}] gets the name of the
+% Doctoral School Director.
%
-% \Item[coordinatore] gets the name of the Doctoral School
-% Coordinator
-% \Item[QualificaDirettore] gets the phrase that describes the
+% \Item[coordinatore\marg{coordinator's name}] gets the name
+% of the Doctoral School Coordinator
+% \Item[QualificaDirettore\marg{director's function}]
+% gets the phrase that describes the
% director or coordinator official position; by
% using the command \cs{direttore} the default phrase
% “Direttore della Scuola di Dottorato” is printed
@@ -981,30 +1024,36 @@ School of Turin.
% in another language is required, this macro is
% available for specifying such position.
%
-% \Item[relatore] gets the name of the thesis principal supervisor.
+% \Item[relatore\marg{supervisor name}] gets the name of the
+% thesis principal supervisor.
%
-% \Item[secondorelatore] gets the name of the second supervisor,
-% if any.
-% \Item[terzorelatore] gets the name of the third supervisor,
+% \Item[secondorelatore\marg{second supervisor's name}] gets the name
+% of the second supervisor if any.
+% \Item[terzorelatore\marg{third supervisor's name}]
+% gets the name of the third supervisor,
% if any; it is assumed that the number of
% supervisors never exceeds three; in case follow
% one of the tricks exemplified
% in the example file \file{toptesi-example.tex} in
% order to manage such situation.
-% \Item[tutore] gets the name of the doctorate tutor; there is no
+% \Item[tutore\marg{tutor's name}]
+% gets the name of the doctorate tutor; there is no
% difference with regards to the \cs{relatore}, but
% the default phrase “Tutore” is printed above this
% person's name.
-% \Item[TutorName] gets the phrase that describes the tutor
+% \Item[TutorName\marg{tutor's position}]
+% gets the phrase that describes the tutor
% position, possibly in a different language.
-% \Item[AdvisorName] gets the string that qualifies the
+% \Item[AdvisorName\marg{supervisors' formal title}]
+% gets the string that qualifies the
% supervisor(s); the default string
% is “Relatore:” or “Relatori:” for the plural;
% in another language this command is used to
% define the string, say, “Supervisors:” if the
% thesis has been supervised by more than one
% person.
-% \Item[CoAdvisorName] gets the string that qualifies the
+% \Item[CoAdvisorName\marg{co-supervisors' formal title}]
+% gets the string that qualifies the
% co-supervisor(s); the default string is
% “Correlatore:” or “Correlatori:” in the
% plural; this command may be used to define the
@@ -1013,12 +1062,18 @@ School of Turin.
% for setting an Italian singular name when the
% tricks exemplified in file
% \file{toptesi-example.tex} are used.
-% \Item[candidato] gets the name and surname of a male author (M).
-% \Item[candidata] gets the name and surname name of a female author (F).
-% \Item[secondocandidato] gets the name and surname of the second M author.
-% \Item[secondacandidata] gets the name and surname of the second F author.
-% \Item[terzocandidato] gets the name and surname of the third M author.
-% \Item[terzacandidata] gets the name and surname of the third F author;
+% \Item[candidato\marg{candidate' name (man)}]
+% gets the name and surname of an author (M).
+% \Item[candidata\marg{candate's name (woman))}]
+% gets the name and surname name of an author (W).
+% \Item[secondocandidato\marg{second candidate's name (man)}]
+% gets the name and surname of the second M author.
+% \Item[secondacandidata\meta{second candidate's name (woman)}]
+% gets the name and surname of the second W author.
+% \Item[terzocandidato\marg{third candidate's name (man)}]
+% gets the name and surname of the third M author.
+% \Item[terzacandidata\marg{third candidate's name ()woman}]
+% gets the name and surname of the third W author;
% most often the thesis author is just one person;
% but there are some institutions where group final
% works are accepted; it is assumed that the group
@@ -1029,7 +1084,8 @@ School of Turin.
% For different languages there might be no
% difference in gender but there is a difference
% in plural.
-% \Item[CandidateName] gets the string that describes the student
+% \Item[CandidateName\marg{candate's status}]
+% gets the string that describes the student
% status in a foreign
% language or even in Italian; the default string
% is `Candidato:” (with colons) adjusted to
@@ -1038,51 +1094,63 @@ School of Turin.
% “Laureando:”; in other languages it is
% necessary to specify this string in the proper
% gender and number.
-% \Item[sedutadilaurea] gets the date of the final exam, or
+% \Item[sedutadilaurea\marg{thsis defense date}]
+% gets the date of the final exam, or
% presentation, or defence of the thesis; if this
% date is omitted the default date is the current
% month and year in the current language (generally
-% Itallian).
-% \Item[esamedidottorato] an alias for \cs{sedutadilaurea} to be used
+% Italian).
+% \Item[esamedidottorato\marg{Ph.D. defense date}]
+% an alias for \cs{sedutadilaurea} to be used
% for doctoral dissertations.
-% \Item[ciclodidottorato] gets the roman numeral that specifies
+% \Item[ciclodidottorato\marg{cycle}]
+% gets the ordinal numeral that specifies
% the doctoral cycle.
-% \Item[CycleName] redefines the string that expresses the name of
+% \Item[CycleName\marg{cycle name}]
+% redefines the string that expresses the name of
% the doctoral cycle; by default this is “ciclo”
% but this command is useful to set the name in a
% different language.
-% \Item[corsodilaurea] gets the proper name of the degree course;
+% \Item[corsodilaurea\marg{degree course proper name}]
+% gets the proper name of the degree course;
% the phrase that describes the degree course is
% specified, if necessary, with the next command;
% with this one you specify just, say,
-% “Electrical Engineering”.
-% \Item[CorsoDiLaureaIn] gets the generic name of the degree course,
+% “Electrical Engineering”.
+% \Item[CorsoDiLaureaIn\marg{degree course generic name}]
+% gets the generic name of the degree course,
% for example “Bachelor Degree in”.
-% \Item[TesiDiLaurea] gets the generic phrase that describes the
+% \Item[TesiDiLaurea\marg{thesis generic name}]
+% gets the generic phrase that describes the
% thesis; by default it is “Tesi di Laurea”; in
% English one might set it to “Master Thesis”.
-% \Item[NomeMonografia] gets the phrase that describes the
-% bachelor's report; by default it is “Monografia
-% di Laurea”. In some Italian universities
-% it might be called
+% \Item[NomeMonografia\marg{bachelor's report name}]
+% gets the phrase that describes the
+% bachelor's final report; by default this
+% package sets it tois “Monografia di Laurea”.
+% In some Italian universities it might be called
% “Tesi di Laurea”, so that the master thesis
% should be given another qualification, for
% example “Tesi di Laurea Magistrale”.
-% \Item[NomeDissertazione] gets the phrase that describes the
-% doctoral thesis; by default it is “Tesi di
-% Dottorato”.
-% \Item[InName] infix strings often require adjusting of the
-% prepositions; this macro gets the preposition
+% \Item[NomeDissertazione\marg{Ph.D. thesis name}]
+% gets the phrase that describes the
+% doctoral thesis; by default this package sets it to
+% “Tesi di Dottorato”.
+% \Item[InName\marg{‘in’ name}]
+% infix strings often require that their prepositions
+% are adjusted the; this macro gets the preposition
% that stands for “in” (the default). In German
% it might become “auf”.
-% \Item[NomeAnnoAccademico] defines the infix string that stands for
+% \Item[NomeAnnoAccademico\marg{academic year name}]
+% defines the infix string that stands for
% “Academic year”. This macro is defined only if
% the option \opz{classica} is in force;
% after all the command |\annoaccademico| is
% defined only with that option. In any case, even
% without the \opz{classica} option you can use
% any string in the field of \cs{sedutadilaurea}.
-% \Item[logosede] specifies the name of the file or the files that
+% \Item[logosede\marg{logo file name}]
+% specifies the name of the file or the files that
% contain the university logos; no default is
% defined; rather a warning message is issued if
% no name is given or the file is missing, but
@@ -1094,7 +1162,8 @@ School of Turin.
% Erasmus Mundus program. The “string” of
% logos is scaled properly so that they may fit
% in |\textwidth|.
-% \Item[setbindingcorrection] sets up the length to displace the text
+% \Item[setbindingcorrection\marg{binding correction}]
+% sets up the length to displace the text
% block to the external margin so as to have a
% wider internal margin to accommodate the binding
% correction. Its argument is not optional and is
@@ -1102,7 +1171,8 @@ School of Turin.
% Notice that 7\,mm is already a large
% displacement; most often than not the binding
% correction is unnecessary.
-% \Item[retrofrontespizio] with its argument, made up of one or more
+% \Item[retrofrontespizio\marg{copyright page text}]
+% with its argument, made up of one or more
% paragraphs, defines what should be printed on the
% verso of the title page, generally named
% “copyright page”; if this command is specified
@@ -1137,8 +1207,7 @@ School of Turin.
% use of a specific environment within which the following
% commands are available to set up the necessary information.
% \begin{description}[noitemsep]
-% \def\cs#1{\texttt{\char92#1}}
-% \def\Item[#1]{\item[\normalfont\cs{#1}]}
+% \def\Item[#1]{\item[\cs{#1}]}
%
% \item[\normalfont\ttfamily ThesisTitlePage] is the environment
% within which the title page data are specified; some data are
@@ -1152,11 +1221,10 @@ School of Turin.
% may be optional; but personal data are never preset because,
% obviously, they are mandatory.
%
-% \Item[PhDschoolLogo]\marg{logo file name} (preset: Logo-Scudo)
-% selects an image
-% specified by \meta{logo file name} to insert the school logo;
-% a file logo \file{Logo-Scudo.jpg} is available from the ScuDo
-% doctoral school; the students must ask such logo file from
+% \Item[PhDschoolLogo\meta{logo file name}] (preset: Logo-Scudo)
+% selects an image specified with \meta{logo file name} to insert the
+% school logo; a file logo \file{Logo-Scudo.jpg} is available from the
+% ScuDo doctoral school; the students must ask such logo file from
% the Student Office, because such file is a legal property of
% the School and can be used only with permission. In any case
% the logo file must be of one of the allowed formats: \sigla{PDF},
@@ -1164,48 +1232,48 @@ School of Turin.
% preferred, but they might not be available; raster files should
% be of a minimum definition of 150 pixels per inch.
%
-% \Item[Ndissertation]\marg{dissertation name} (preset: Doctoral
+% \Item[Ndissertation\marg{dissertation name}] (preset: Doctoral
% Dissertation) specifies the specific name of the document.
%
-% \Item[Ndoctoralprogram]\marg{doctoral program} (preset: Doctoral
+% \Item[Ndoctoralprogram\marg{doctoral program}] (preset: Doctoral
% Program in) specifies the degree course name prefix.
%
-% \Item[ProgramName]\marg{program name} (mandatory: preset empty)
+% \Item[ProgramName\marg{program name}] (mandatory: preset empty)
% specifies the degree course name.
%
-% \Item[CycleNumber]\meta{ordinal number} (optional; preset
+% \Item[CycleNumber\oarg{ordinal number}] (optional; preset
% empty) specifies the ordinal number of the program cycle; at
% ScuDo it is a mandatory information. In other doctoral schools
% it might be useless.
%
-% \Item[title]\marg{dissertation title} (preset empty) sets the
+% \Item[title\marg{dissertation title}] (preset empty) sets the
% specific title of the dissertation; it is better to keep it
% short, and use the sub title to add further titling information.
%
-% \Item[subtitle]\marg{dissertation subtitle} (optional: preset
-% empty) adds a possible subtitle.
+% \Item[subtitle\marg{dissertation subtitle}] (the whole command with its
+% argument is optional) if used, it adds a subtitle.
%
-% \Item[author]\marg{author's name} (mandatory: preset
+% \Item[author\marg{author's name}] (mandatory: preset
% empty); it is recommended to pay attention to insert proper
% name(s) first and surname(s) second.
%
-% \Item[Nsupervisor]\meta{Supervisor(s) heading} (preset:
-% Supervisor:) specifies the short heading labelling the list
+% \Item[Nsupervisor\meta{Supervisor(s) heading}] (preset:
+% Supervisor:) specifies the short heading to the list
% of supervisors; the preset value is singular and followed by
% a colon. In case of more than one supervisor, it is necessary
% to specify a plural name; the colon sign is optional.
%
-% \Item[SupervisorList]\marg{list of supervisors} (mandatory:
+% \Item[SupervisorList\marg{list of supervisors}] (mandatory:
% preset empty) specifies the list of supervisors, one per line,
% with a |\\| at the end of each line; the name(s) and surname(s)
% are preceded by their academic title, and followed by their
% role as supervisor, or co-supervisor.
%
-% \Item[NExaminationCommittee]\marg{examination committee
-% heading} (preset: Doctoral Examination Committee:) specifies
-% the heading of the list of examiners.
+% \Item[NExaminationCommittee\marg{examination committee
+% heading}] (preset: Doctoral Examination Committee:) specifies
+% the list-of-examiners heading.
%
-% \Item[ExaminerList]\marg{list of examiners} (preset empty)
+% \Item[ExaminerList\marg{list of examiners}] (preset empty)
% specifies the list of examiners, one per line, each line
% terminated by |\\|; each line contains the academic title,
% the name(s) and surname(s), the role (referee for the
@@ -1213,19 +1281,19 @@ School of Turin.
% institution they belong to -- full official institution name,
% city and country.
%
-% \Item[Nlocation]\marg{examination location} (preset:
+% \Item[Nlocation\marg{examination location}] (preset:
% Politecnico di Torino) specifies the institution where the
% examination takes place.
%
-% \Item[ExaminationDate]\marg{examination date} (preset empty)
+% \Item[ExaminationDate\marg{examination date}] (preset empty)
% specifies the date when the examination is to take place.
%
-% \Item[Disclaimer]\marg{disclaimer statement} (preset: some long
-% sentences agreed upon by the ScuDo doctoral school) mandatory
+% \Item[Disclaimer\marg{disclaimer statement}] (preset: some long
+% sentences agreed upon with the ScuDo doctoral school) mandatory
% in most universities; the specific statement(s) may be different
% in different universities.
%
-% \Item[Signature]\marg{the author's signature} (preset: a few
+% \Item[Signature\marg{the author's signature field}] (preset: a few
% lines where the city is preset to “Turin”, and the date is
% assumed to be equal to the examination date; also the signer
% name is assumed equal to that of the dissertation author)
@@ -1244,8 +1312,8 @@ School of Turin.
% package. If the source thesis file is being typeset by means
% of \XeLaTeX\ or \LuaLaTeX\ the \texttt{babel} package is not
% loaded; in its place the \texttt{polyglossia} package gets
-% loaded that should implement in \XeLaTeX\ and \LuaLaTeX\ most of
-% the functionality provided by \texttt{babel} in \LaTeX.
+% loaded; it should implement in \XeLaTeX\ and \LuaLaTeX\ most of
+% the functionality provided by \texttt{babel} in \pdfLaTeX.
% “Most” means that not all the functionality is available,
% therefore it is better to consult the documentation of
% \texttt{polyglossia} before using its built-in commands.
@@ -1333,7 +1401,7 @@ School of Turin.
% \subsection{Bibliography}
% \textcolor{red}{The ScuDo module is the only one that preloads some
% suitable packages to typeset one or more bibliographies. None of the
-% other modules preload any bibliography management utility.} This is due
+% other modules preloads any bibliography management utility.} This is due
% to the fact that the module was originally developed for
% typesetting PhD theses in the scientific domains related to the
% Institute of Electrical and Electronics Engineers (IEEE); such
@@ -1368,7 +1436,7 @@ School of Turin.
%
% The following description specifies these particular commands.
% \begin{description}[noitemsep]
-% \def\Item[#1]{\item[\normalfont\texttt{\char92#1}]}
+% \def\Item[#1]{\item[\cs{#1}]}
%
% \Item[DeclareSlantedCapitalGreekLetters] does exactly what
% its name means: it changes the definitions of the mathematical
@@ -1376,13 +1444,12 @@ School of Turin.
% they are actually taken from the math italic alphabet,
% instead of the default roman one. This command is useful with
% \LaTeX, while with \XeLaTeX\ and \LuaLaTeX\ it is unnecessary
-% due to the larger set of math alphabets and math font commands
+% due to the larger set of glyphs and math font commands
% that are available with proper \sigla{UNICODE} math fonts and
% options.
%
% \Item[ensuremath] should be already defined in the \LaTeX\ kernel;
-% should one still be using an obsolete version, this command gets
-% available anyhow.
+%should you miss it for any reason, thei package provides it.
% %
% \Item[ohm] typesets an upright capital omega even if the
% capital Greek letters are in italics; another good point
@@ -1411,12 +1478,12 @@ School of Turin.
% while avoiding a form such as \verb*+35 \unit{km}+.
% This command, as it is defined, conflicts with the definition
% of the homonymous command |\unit| as defined by some packages such as
-% \texttt{unitx}, \texttt{siunitx}, etc., but since this latter package is
-% necessarily input in the preamble, while \texttt{topcomand.sty}
-% is read at the execution of |\begin{document}|, the latter file has
-% provisions to test if any of those packages has already been loaded,
-% so as not to overwrite the latter package definition and to avoid
-% every possible conflict.
+% \texttt{unitx}, \texttt{siunitx}, etc., but since one of these
+% packages is necessarily input in the preamble, while
+% \texttt{topcomand.sty} is read at the execution of |\begin{document}|,
+% the latter file has provisions to test if any of those packages has
+% already been loaded, so as not to overwrite the latter package
+% definition and to avoid every possible conflict.
% %
% \Item[micro] sets the decimal prefix $\mu$ (providing, if
% possible, the sign with serifs, \textmu, taken from the Text
@@ -1448,18 +1515,18 @@ School of Turin.
% type; since this entity is not a variable, but it is
% a mathematical constant, the \sigla{ISO} regulations require it to
% be typeset in upright type. The \sigla{ISO} regulations require the
-% upright type for “e” and any other mathematical constant,
-% but requires the electron charge $e$ is typeset in math italics because
-% this is a physical “constant”, not a mathematical one.
+% upright type for “e” and any other mathematical constant, but
+% requires that the electron charge $e$ is typeset in math italics
+% because this is a physical “constant”, not a mathematical one.
% \XeTeX\ and \LuaLaTeX\ allow to typeset upright math Greek
% letters, so there is the facility to typeset an upright
% “{\usefont{LGR}{lmr}{m}{rs}p}” (the number) to be distinguished
% from a slanted “$\pi$” (the angle).
% %
-% \Item[goodpagebreak] inserts a conditional page break after
+% \Item[goodpagebreak\oarg{n}] inserts a conditional page break after
% the point where this command appears; it is not equivalent to
% the |\raggedbottom| declaration that does not vertically
-% justify \emph{any} page; this command tests the amount of space
+% justify \emph{any single} page; this command tests the amount of space
% remaining on the page, and if it is less than a given number
% of lines, it inserts a page break; the result is a ragged
% bottom \emph{single} page, that sometimes is better than excessive
@@ -1467,11 +1534,11 @@ School of Turin.
% before or after displayed material. It is handy also to use
% before starting a new section, because at least four
% lines are required by \LaTeX\ in order to avoid orphan lines.
-% \cs{goodpagebreak} accepts an optional argument that sets the
+% \cs{goodpagebreak} accepts an optional argument\meta{n} that sets the
% number of lines to test the necessary space for a break;
% by default this number is~4.
%
-% \Item[listing] requires for its argument the name of a file
+% \Item[listing\meta{filename}] requires for its argument the name of a file
% and typesets it in verbatim mode; this command is very useful
% for typesetting the listings of the programs that were written
% for the thesis; for best results it is recommended that the
@@ -1485,7 +1552,7 @@ School of Turin.
% specified in the |fancyvrb| documentation for the original
% command. The |fancyvrb| package was preferred to the |listings|
% one, because it typesets verbatim material even while
-% using font with multibyte encoding (therefore it works fine
+% using font with multibyte encoded characters (therefore it works fine
% with \XeLaTeX\ and \LuaLaTeX), while the fancier package
% |listings| performs correctly only with \sigla{ascii}
% characters and requires special settings to use selected characters
@@ -1523,7 +1590,7 @@ School of Turin.
% the due differences, this environment mimics the one defined
% in the |toptesi-scudo| module.
%
-% The commands contained in this module are divided in there sorts.
+% The commands contained in this module are divided in three sorts.
% \begin{enumerate}[noitemsep]
% \item
% The commands to define the infix words, so as to use them
@@ -1531,7 +1598,7 @@ School of Turin.
% within a configuration file either to change the default
% strings or to define them for languages different from
% Italian; no attempt was made to establish such strings
-% for English, because is is supposed the most often than
+% for English, because is is supposed that most often than
% not this module is used by Italian students to write their
% bachelor degree final works in Italian universities;
% nevertheless the possibility to change these strings is
@@ -1569,7 +1636,7 @@ School of Turin.
%
% If a configuration file was loaded, the commands it contains
% are overwritten by those that are specified within the
-% |ThesisTitlePage| environment. So the user should pay attention
+% |ThesisTitlePage| environment body. So the user should pay attention
% to what the configuration file contains and to what s/he writes
% within the |ThesisTilePage| environment, but if s/he uses again
% a command already used in the configuration file, it should be
@@ -1586,7 +1653,7 @@ School of Turin.
% \begin{description}[noitemsep]
%\def\Item[#1]{\item[\opz{#1}]}
%
-% \Item[evenboxes] The boxe containing the supervisor name(s)
+% \Item[evenboxes] The box containing the supervisor name(s)
% and that containing the candidate name(s) are typeset by
% aligning their first lines; if this option is not specified
% the boxes are skewed, so that there is enough place to set
@@ -1628,7 +1695,7 @@ School of Turin.
% command. In other words if this module is used, the user must
% use the |ThesisTitlePage| environment only and does not have
% available the various title page environments and commands
-% available with the |topfont| package.
+% available with the |topfront| package.
%
% This environment accepts an optional asterisk as an argument;
% the syntax is the following:
@@ -1649,62 +1716,68 @@ School of Turin.
% The commands available with this module, divided into the three
% groups described above, are the following.
% \begin{description}[noitemsep]
-% \def\Item[#1]{\item[\normalfont\cs{#1}]}
+% \def\Item[#1]{\item[\cs{#1}]}
% \item[String settings]
% \begin{description}[noitemsep]
-% \Item[NomeAnnoAccademico] Sets the default string for the
-% “Academic Year”; by default it is “Anno accademico”.
-% \Item[NomeCorso] sets the default string “Corso di laurea
-% in” followed by an intelligent space.
-% \Item[AnnoAccademico] sets a different string in place
-% of the default “Anno Accademico” one.
-% \Item[Struttura di] sets the default structure prefix;
-% for example this prefix might be “Department of”,
-% and the structure name entered with \cs{struttura}
+% \Item[NomeAnnoAccademico\marg{academicyear string}]
+% Sets the default string for the
+% “Academic Year”; by default it is “Anno accademico”.
+% \Item[NomeCorso\marg{Degree course name}] sets the default string
+% “Corso di laurea in” followed by an intelligent space |\xspace|.
+% \Item[AnnoAccademico\marg{substitute string for academic year}]
+% Sets a different string in place of the default “Anno Accademico”
+% one.
+% \Item[Struttura di\marg{structure prefix}] sets the default
+% structure prefix; for example, this prefix might be “Department of”,
+% while the structure name entered with \cs{struttura}
% might be “Electrical Engineering”; therefore the
% title page is typeset with the complete string
-% “Department of “Electrical Engineering”. The default
+% “Department of “Electrical Engineering”. The default
% string is in Italian, but by using this command,
% remember to enter the string you need terminated by
% the intelligent space macro \cs{xspace}.
-% \Item[CorsoDiStudi] sets the default string for the
-% degree course type; it might be “Laurea triennale”,
+% \Item[CorsoDiStudi\marg{degree course name}] sets the default
+% string for the degree course type; it might be “Laurea triennale”,
% or “Bachelor degree” or similar strings in other
-% languages. It replaces the obsolete following command:
-% \Item[CorsoDiLaureaIn] that remains available with the backwards
-% compatible |topfront| standard module.
-% \Item[NomeElaborato] Sets the name that qualifies the
+% languages. It replaces the \emph{obsolete} following command:
+% \Item[CorsoDiLaureaIn\marg{degree course name}]
+% Remains available to be backwards compatible with
+% |topfront| standard module command; its use is \emph{discouraged}.
+% \Item[NomeElaborato\marg{thesis name}]
+% Sets the name that qualifies the
% document; by default it is “Monografia”, but this
% user command may be used to set it, for example, to
% “Tesi di laurea triennale”, or anything else in
% Italian, in English, or the used main language.
% The |topfront| command |\NomeMonografia| is let to
% to |\NomeElaborato| for backwards compatibility and its
-% use is evidently discouraged.
-% \Item[CandidateNames] sets the labelling command for the
-% box that lists the candidate names; by default these names are the
+% use is evidently \emph{discouraged}.
+% \Item[CandidateNames\marg{candidate list headings}]
+% Sets the labelling command for the
+% list of the candidate names; by default these names are the
% masculine, feminine, singular and plural Italian names
% starting with “Candidato”; if the \opz{classica} option
% is in force they start with “Laureando”;
-% the user couldn use this command which it has a non standard syntax
+% the user could use this command which has a non standard syntax
% (delimited arguments); therefore it is suggested that
% end users refrain from using it, unless they know how to handle
% the delimited argument commands.
% This command sets the four strings to any desired value,
% if, as in English, there is no difference between masculine
-% and feminine, repeat the same name for the feminine positions,
+% and feminine, repeat the same names for the feminine positions,
% the last ones; the syntax in facts is the following:
%\begin{ttsintassi}
-%\cs{CandidateNames},\%
+%\cs{CandidateNames}\%
%\qquad\marg{masculine singular},\%
%\qquad\marg{masculine plural},\%
%\qquad\marg{feminine singular},\%
%\qquad\marg{feminine plural},!
%\end{ttsintassi}
-% \Item[TitoloListaCandidati] is a much simpler command the user
-% should prefer to the previous one; in facts it accepts a single
-% argument formed by a comma separated list of names; from zero
-% up to four names (in the same order as described above).
+% \Item[TitoloListaCandidati\marg{candidate list headings}]
+% is a much simpler command the user should prefer to the
+% previous one; in facts it accepts a single argument formed
+% by a comma separated list of names; from zero up to four names
+% (in the same order as described above).
% Therefore the following commands are all valid ones:
%\begin{ttsintassi}\small%
%\cs{TitoloListaCandidati}\Marg{}
@@ -1712,63 +1785,68 @@ School of Turin.
%\cs{TitoloListaCandidati}\Marg{Estudiante,Estudiantes}
%\cs{TitoloListaCandidati}\Marg{Kandidat,Kandidaten,Kandidatin,Kandidatinen}
%\end{ttsintassi}
-% \Item[CandidateName] this command used to be the default one
+% \Item[CandidateName\marg{candidate list heading}]
+% This command used to be the default one
% with the standard |topfront| module, and remains available
-% with this package; it sets just one name (disregarding
-% singular/plural and masculine/feminine variants) to substitute
+% with this package; it sets just one name to substitute
% the default ones. Please notice that this command is not
% available with the other thesis type options.
-% \Item[Relatore] Sets the string that labels
-% the supervisor box; by default it is the Italian
-% name “Relatore”; the command my be used to set
+% \Item[Relatore\marg{advisor list heading}]
+% Sets the string that labels the supervisor box; by default
+% it is the Italian name “Relatore”; the command may be used to set
% any different string.
-% \Item[Correlatore] sets the string that
-% labels the list of co-superpervisors when there is
-% just one “second” supervisor.
-% \Item[Correlatori] sets the string that
-% labels the list of co-supervisors when there are
-% three supervisors, a supervisor and two co-supervisors.
+% \Item[Correlatore\marg{co-advisor list heading}]
+% Sets the string that labels the list of co-superpervisor when
+% there is just one “second” supervisor; in facts, with just one
+% co-supervisor the heading it the singular name “Correlatore”.
+% \Item[Correlatori\marg{co-advisor list heading}]
+% Sets the heading of the list of co-supervisors when there are
+% a supervisor and two co-supervisors.
% \end{description}
% \item[Variable data settings]
% \begin{description}[noitemsep]
-% \Item[titolo] sets the bachelor degree final work title.
+% \Item[titolo\marg{title}]
+% Sets the bachelor degree final work title.
% The main module |topfront| uses in its place the command
% \cs{monografia}; the user can still use the old command,
% but |\titolo| is more descriptive.
-% \Item[sottotitolo] sets the optional subtitle.
+% \Item[sottotitolo\marg{subtitle}] Sets an optional subtitle.
% \Item[corsodistudi] and \cs{corsodilaurea} specify the actual
% name of the degree course; \cs{corsodistudi} should be
-% preferred; \cs{corsodilaurea} is deprecated, but is maintained
-% for backwards compatibility.
-% \Item[materia] and \cs{Materia} set the optional discipline
-% the thesis deals with.
-% \Item[relatore] sets the name of the only or the principal
-% supervisor.
-% \Item[secondorelatore] sets the name of a second supervisor,
-% if any.
-% \Item[terzorelatore] sets the name of a third supervisor,
-% if any.
-% \Item[candidato] sets the name of the first or only ‘M’
-% candidate; in general bachelor degree final works are
-% done by just one candidate but, in case, there are
+% preferred; \cs{corsodilaurea} is \emph{deprecated}, but is
+% maintained for backwards compatibility.
+% \Item[materia\marg{discipline}] and \cs{Materia}\marg{discipline}
+% set the optional discipline the thesis deals with.
+% \Item[relatore\marg{advisor's name}] sets the name of the only
+% or the principal supervisor.
+% \Item[secondorelatore\marg{second advisor's name}] sets the
+% name of a second supervisor, if any.
+% \Item[terzorelatore\marg{third advisor name}] sets the name of
+% a third supervisor, if any.
+% \Item[candidato\marg{candidate name (man)}] sets the name of the
+% first or only ‘M’ candidate; in general bachelor degree final
+% works are done by just one candidate but, in case, there are
% available also the commands for a second and a third
% candidate. Masculine and feminine commands are available
-% and the heading of the candidates box il labelled accordingly.
-% \Item[candidata] sets the name of the first or only ‘F’
-% candidate.
-% \item[\normalfont\cs{secondocandidato} or \cs{secondacanddata}]
-% set the names of a possible second ‘M’ or ‘F’ candidate.
-% \item[\normalfont\cs{terzocandidato} or \cs{terzacandidata}]
-% set the names of a possible ‘M’ or ‘F’ third candidate.
-% \Item[ID] to be used just after the candidate's name, but as
-% part of the setting command argument, establishes the
+% and the heading of the candidates list is labelled accordingly.
+% \Item[candidata\marg{candidate name (woman)}] sets the name of the
+% first or only ‘W’ candidate.
+% \Item[secondocandidato\marg{second M candidate}] or
+% \cs{secondacanddata}\marg{second W candidate}
+% set the name for a possible second ‘M’ or ‘W’ candidate.
+% \Item[terzocandidato\marg{third M candidate}] or
+% \cs{terzacandidata}\marg{third W can\-didate}
+% set the name for a possible ‘M’ or ‘W’ third candidate.
+% \Item[ID\marg{ID code}] to be used just after the candidate's name,
+% but as part of the setting command argument, establishes the
% candidate's ID label string |\IDlabel| that prefixes the
% candidate's ID number. The user should not worry about this string,
% unless s/he wants to modify it; by default it is set to
-% |\\\quad matricola\ |; in other words, the ID number is set
+% \verb+\\\quad matricola\ +; in other words, the ID number is set
% indented under the candidate's name and a space is put between
% the string and the number.
-% \Item[sedutadilaurea] sets the date of the final examination;
+% \Item[sedutadilaurea\marg{examination date}]
+% sets the date of the final examination;
% by default the current month and year are typeset if this
% command is not specified; but the user can specify anything;
% s/he can even prefix the year range with the
@@ -1777,22 +1855,25 @@ School of Turin.
% suitable command of group~1) a string equivalent to
% “Academic Year”; in any case the user can write down what
% s/he likes best in place of the predefined value.
-% \Item[NomeAteneo] sets the proper name of a specific
-% university; it will be typeset in suitable uppercase type
-% under the generic name of the university; if this command
-% is not used, no name gets typeset in the title page.
-% \Item[struttura] sets the name of the university entity
+% \Item[NomeAteneo\marg{University name}]
+% sets the proper name of a specific university; it will be
+% typeset in suitable uppercase type under the generic name of the
+% university; if this command is not used, no name gets typeset
+% in the title page.
+% \Item[struttura\oarg{ordinal number}\marg{Structure name}]
+% sets the name of the university entity
% that supervises the development of the degree course;
% it may be a “faculty”, a “department”, a “school”,
% it depends from the specific university. Some universities
% do not require this information on the title page. In any
% case if this command is used it accepts two arguments:
% the first one is optional, and, if used, is an uppercase
-% roman numeral that indicates the ordinal of the structure;
+% roman ordinal numeral that distinguishes the structure;
% the second argument is the complete structure name.
-% \Item[setlogodistance] sets the distance between adjacent
-% university logos, if more then one is used.
-% \Item[logosede] sets the name of a graphics file that
+% \Item[setlogodistance\marg{distance}] sets the distance between
+% adjacent university logos, if more than one are used.
+% \Item[logosede\oarg{height}\marg{logo file name}]
+% sets the name of a graphics file that
% contains the logo of the university; the default value of
% this command il \cs{empty}; this macro may be used several
% times, in case the bachelor degree final work is developed
@@ -1811,22 +1892,21 @@ School of Turin.
% it is suggested not to vary it too much. The \cs{logosede}
% accepts an optional value that is the common height of the
% logos; this possibility does exist but it is strongly
-% discouraged.
-% \Item[tutoreaziendale] set the name of a possible company
-% tutor, in case the final work is developed in a Company
-% external to the university
+% \emph{discouraged}.
+% \Item[tutoreaziendale\marg{company tutor name}]
+% set the name of a possible company tutor, in case the final
+% work is developed in a Company external to the university
% \end{description}
% \end{description}
%
% \section{The module for a master degree thesis}
%\label{sec:topmagistrale}
%
-% The module for the master degree thesis,
-% |toptesi-magistrale.sty| is almost identical to the generic
-% module |topfront|; the obvious differences are that it
-% lacks the latter module commands that refer to the bachelor
-% degree or the Ph.D.~theses. Evidently such specific commands
-% are useless in a master degree thesis.
+% The module for the master degree thesis, |toptesi-magistrale.sty|
+% is almost identical to the generic module |topfront|; the obvious
+% differences are that it lacks the latter module commands that refer
+% to the bachelor degree or the Ph.D.~theses. Evidently such specific
+% commands are useless in a master degree thesis.
%
% \begin{sloppypar}
% Such eliminated commands include |\manografia|,
@@ -1843,7 +1923,7 @@ School of Turin.
% of the |\tomo| command that requires a preliminary
% specification of all the necessary data before |\tomo|
% can play its role; it actually uses the |\frontespizio|
-% environmnet, but before the |tomo| counter is stepped up.
+% environment, but before the |tomo| counter is stepped up.
%
% This allows to typeset the various tomes in a single
% document, so that the user can cross-reference elements
@@ -1858,7 +1938,7 @@ School of Turin.
% the cross-linked navigation from one point to another.
%
% The draw back of this procedure is that splitting the
-% single \sigla{PDf} file in several files require another processing
+% single \sigla{PDf} file in several files requires another processing
% job, and any editing of the source thesis files may require
% repeating this splitting job because the number of pages
% may be modified and/or cross references do not point
@@ -1876,10 +1956,10 @@ School of Turin.
% files; when printed they are substantially identical to
% the split documents obtained with the previous approach
% but it simply avoids splitting the single document file
-% in several files. The drawback is thet if hyperlinked cross-referencing
+% in several files. The drawback is that if hyperlinked cross-referencing
% is used, each tome is correctly hyperlinked to its
-% internal targets, but no cross-referencing can be
-% automatically done to items in other tomes. I do not
+% internal targets, but no cross-referencing can
+% automatically be done to items in other tomes. I do not
% think this is a real draw back in practical situations,
% but of course it produces a limitation to reading the
% tomes on the screen.
@@ -1902,7 +1982,7 @@ School of Turin.
% definition of the |\tomo| command; adds the |ThesisTitlePage|
% environment within which the configuration file is read and where all
% commands for the title page data are to be inserted. The
-% peculiarity of thes environment is that the possible asterisk
+% peculiarity of this environment is that the possible asterisk
% necessary to switch from the the logos set in the title page
% lower half (no asterisk) to the logos at the page top
% (asterisk) must be inserted the same way as in the other
@@ -1910,6 +1990,7 @@ School of Turin.
% the environment.
%
% \section{The Ph.D.\ module for general use}
+%
% Except for the ScuDo theses, for which the University
% specified the necessary requirements for both contents
% and appearance of the title page, we provide a generic
@@ -1950,9 +2031,10 @@ School of Turin.
% his/her custom title page and would not use this module at all.
%
% \section{The custom module for the title-page}\label{sec:custom}
+%
% The construction of the customised title page module is the full
% responsibility of the user.
-% In facts the user, beyond specifying the |tipotesi=custom|
+% In facts the user, beyond specifying the |tipotesi=custom| option
% to the |toptesi| class class, at the beginning of the
% document explicitly inputs a personal package file, say
% |mycustomfile.sty| by means of the simple
@@ -1976,7 +2058,7 @@ School of Turin.
% a custom title page.
%
% We don't go further in describing the |tipotesi=custom| option,
-% except remembering the this option just inhibits loading both
+% except remembering that this option just inhibits loading both
% the standard default module, and any other predefined module, unless the
% user directly loads one with or without the specific module options.
%
@@ -1984,7 +2066,7 @@ School of Turin.
%
% The suffix |sss| is the acronym for the Italian name of
% “High School”, \emph{Scuola Secondaria Superiore}.
-% Elegance of bureaucratic language; the elementary school
+% Elegance of bureaucratic language: the elementary school
% now is `Scuola Primaria', and junior high school is `Scuola
% Secondaria Inferiore'. As well as it was in Germany and
% in some Swiss Cantons, the total number of school years
@@ -2047,7 +2129,7 @@ School of Turin.
%
% Of course their title page must be very different from those
% suitable for university theses, therefore a special module is
-% necessary, and I decided to to add such a module to this bundle.
+% necessary, and we decided to to add such a module to this bundle.
%
% Actually high school students require less information on the
% title page; the school generic and proper names, obviously the
@@ -2117,7 +2199,7 @@ School of Turin.
% Service packages such as |xparse|, |xspace|, and |xcolor|
% are already loaded for the benefit of this bundle and this
% module, but the user is free to use their functionalities,
-% mostly those of |xcolor|.
+% in particular those of |xcolor|.
%\item
% Packages |calc| and |ifthen| are functional for the module;
% supposedly the end users should not have any necessity to use
@@ -2163,135 +2245,90 @@ School of Turin.
% saved in the same folder.
%
% The title page commands are the following:
-%\begin{description}\def\Item[#1]{\item[\normalfont\cs{#1}]}
-%\Item[SSSLogo]
+%\begin{description}\def\Item[#1]{\item[\cs{#1}]}
+%\Item[SSSLogo\marg{school logo file name}]
% is used to define the name of the graphic file containing
% the high school logo; not necessarily the school allows to
% use its logo; in any case if such command is not used, the
-% logo information is ignored. The syntax is
-% \begin{ttsintassi}
-% \cs{SSSLogo}\marg{file name}
-% \end{ttsintassi}
+% logo information is ignored.
% Remember that the graphic file must have one of these
% extensions: |.pdf|, |.eps|, |.png|, or |.jpg|; the first
% two may contains vector images and give the best results;
% the second two are bitmapped, therefore their rendering
% depends very much on the pixel density of the file contents.
-%\Item[NomeTesina] sets the name of the document; the default value
-% is “Tesina di maturità”. Syntax:
-% \begin{ttsintassi}
-% \cs{NomeTesina}\marg{nome dell'elaborato}
-% \end{ttsintassi}
-%\Item[NomeCandidato]
-% is used to set the label to typeset over the author's name;
-% default “Studente” or “Studentessa” depending on the
-% state of the boolean switch |femminile|, but if this command
-% is used for the user tesina, s/he needs not to specify any
-% switch and uses the only name necessary for his/her document.
-% Syntax:
-% \begin{ttsintassi}
-% \cs{NomeCandidato}{examinand label}
-% \end{ttsintassi}
-% This command might be used to set the label with a different
+%\Item[NomeTesina\marg{document name}]
+% sets the name of the document; the default value
+% is “Tesina di maturità”.
+%\Item[NomeCandidato\marg{heading over the candidate name}]
+% is used to set the heading over the author's name; since
+% the “tesina” is individual, the default value is
+% “Studente” or “Studentessa” depending on his/her gender.
+% See below the \cs{studente} and \cs{studentessa} command descriptions.
+% This command might be used also to set the heading with a different
% name in the correct gender.
-%\Item[IndirizzoMiur]
+%\Item[IndirizzoMiur\marg{Ministry of Education special address}]
% sets the Ministry of Education special address. If this
% command is omitted, this address, considered optional,
-% is neglected. Syntax:
-% \begin{ttsintassi}
-% \cs{IndirizzoMiur}\marg{Ministry of Education special address}
-% \end{ttsintassi}
-%\Item[OpzioneMiur]
+% is neglected.
+%\Item[OpzioneMiur\marg{Ministry of Education option}]
% sets the specification that distinguishes the school
-% mission, if any. Syntax:
-% \begin{ttsintassi}
-% \cs{OpzioneMiur}\marg{Ministry of Education option}
-% \end{ttsintassi}
-%\Item[TipoScuola]
+% mission, if any.
+%\Item[TipoScuola\marg{generic school name}]
% sets the specific generic name of the school; default
% none; therefore use of this commands is mandatory;
% the user might specify “Liceo classico”, or “Istituto
% tecnico industriale di stato”, or whatever applies for
-% the students' specific school. Syntax:
-% \begin{ttsintassi}
-% \cs{TipoScuola}\marg{generic school name}
-% \end{ttsintassi}
-%\Item[NomeScuola]
+% the students' specific school.
+%\Item[NomeScuola\marg{specific school name}]
% sets the specific name of the school; generally schools
% are dedicated to famous scientists or heroes, or presidents,
% or kings/queens, or writers, et cetera; default “empty”.
-% Syntax:
-% \begin{ttsintassi}
-% \cs{NomeScuola}\marg{specific school name}
-% \end{ttsintassi}
-%\Item[SedeScuola]
+%\Item[SedeScuola\marg{school address}]
% sets the actual location of the school; it may be just the
% city or a full postal address; it may contain new line
% commands in order to format a full address of several lines;
-% no default. Syntax:
-% \begin{ttsintassi}
-% \cs{SedeScuola}\marg{the school basic or full address}
-% \end{ttsintassi}
-%\Item[AnnoScolastico]
+% no default.
+%\Item[AnnoScolastico\marg{school year}]
% sets the school year at the end of which the state
-% examination is undertaken; no default. Syntax:
-% \begin{ttsintassi}
-% \cs{AnnoScolastico}\marg{school year}
-% \end{ttsintassi}
-%\Item[titolo]
+% examination is undertaken; no default.
+%\Item[titolo\marg{document main title}]
% sets the title of the document; please don't use long titles;
% if a short sentence is not descriptive enough, use the
% |\sottotitolo| argument to add specifications to the title;
-% no default. Syntax:
-% \begin{ttsintassi}
-% \cs{titolo}\marg{main title}
-% \end{ttsintassi}
-%\Item[sottotitolo]
+% no default.
+%\Item[sottotitolo\marg{document substitle}]
% sets an optional subtitle; if this command is not used
-% the subtitle field is ignored; no default. Syntax:
-% \begin{ttsintassi}
-% \cs{sottotitolo}\marg{optional subtitle}
-% \end{ttsintassi}
+% the subtitle field is ignored; no default.
% The subtitle, if any, is typeset in a normal sized font,
% therefore it can be several lines long; nevertheless pay
% attention to use the tie command |~| to connect with an
% unbreakable space to the following ones such words as
% prepositions, articles, short adverbs, and such similar
% items.
-%\Item[studente] or \cs{studentessa}, depending on the gender
+%\Item[studente\marg{student name (Man)}] or
+% \cs{studentessa}\marg{student name {Woman}}, depending on the gender
% of the student, sets the name of the author of the
% document, i.e.\ the name of the student undergoing the
-% examination; no default. Syntax:
-% \begin{ttsintassi}
-% \cs{studente}\marg{proper name(s) followed by the surname(s)}
-% \cs{studentessa}\marg{proper name(s) followed by the surname(s)}
-% \end{ttsintassi}
-% Remember: \textbf{never ever use the surname(s) before
-% the name(s)}.
+% examination; no default.
+% Remember: \textbf{never ever use the surname(s) before the name(s)}.
% If the \cs{NomeCandidato} macro has not been used, these commands
% set the proper status to the |femminile| switch, so that the
-% proper default label is used.
-%\Item[Presidente]
+% proper default heading is used.
+%\Item[Presidente\marg{chairperson name}]
% sets the name of the chairperson of the examining committee;
-% no default. Syntax:
-% \begin{ttsintassi}
-% \cs{Presidente}\marg{examining committee chairperson full name}
-% \end{ttsintassi}
+% no default.
% Again remember to write the necessary academic titles
-% in lowercase, end the name(s) before the surname(s).
-%\Item[NumeroCommissione]
-% sets the examining committee ID number; no default.Syntax:
-% \begin{ttsintassi}
-% \cs{NumeroCommissione}\marg{Examing committee ID number}
-% \end{ttsintassi}
+% in lowercase, and the name(s) before the surname(s).
+%\Item[NumeroCommissione\marg{Examining committee ID number}]
+% sets the examining committee ID number; no default.
%\end{description}
%
% The actual title page is created within the environment
% |FrontespizioTesina|. This environment first reads a the
% configuration file if one exists, then it analyses the
-% commands possibly set within the environment by the author,
+% commands set within the environment by the author,
% possibly superseding the information read from the
-% configuration file; the closing commands actually typeset
+% configuration file; the environment closing command actually typesets
% the title page; the schematic working is the following:
%\begin{flushleft}\ttfamily\obeylines
%\Bambiente{FrontespizioTesina} \% reads the config.\ file if any
@@ -2304,7 +2341,7 @@ School of Turin.
% up the text grid in a sensible way. No doubt some users may
% complain that the title page does not allow to do this or
% that; that the spacings should be different from what they
-% actually are.
+% actually are; and so on.
%
% There are work-arounds to these complains.
%\begin{enumerate}[noitemsep]
@@ -2349,10 +2386,10 @@ School of Turin.
% this regulation have been published. This regulation defines
% a \sigla{PDF} variant suitable for archiving, named \sigla{PDF/A}, that
% has two sub-formats distinguished as \sigla{PDF/A}-1a, and
-% \sigla{PDF/A}-1b.
+% \sigla{PDF/A}-1b, \sigla{PDF/A-2a}, \sigla{PDF/A-2b}. and so on.
% The `a' sub-format is more exacting, while the `b' one is less
% stringent. In spite of the recently published upgrades,
-% here we stick to the older ones, that are a sub set of the
+% here we stick to the PFD/A-b and PDF/A-2b, that are a sub set of the
% newer ones, and for which suitable software is available.
%
% The requirements for the `a' sub-format imply not only those
@@ -2360,7 +2397,7 @@ School of Turin.
% of the document be accessible from outside (Tagged \sigla{PDF}).
% The requirements for the `b' sub-format are that the
% document must be reproducible without modifications exactly
-% as it was at the moment of archiving. Both sub-formats must
+% as it was at the moment of archiving. All sub-formats must
% contain \emph{metadata} that are searchable even without
% decompressing the normally compressed \sigla{PDF} file, and that
% contain information useful for archive maintenance; among
@@ -2373,16 +2410,18 @@ School of Turin.
% of producing \sigla{PDF/A}-1b compliant files, provided that some
% attention is put into editing of the thesis source file. Since the
% year 2008 the \TeX\ system, the executable \texttt{pdflatex} has
-% version number 1.40.9 (or higher); therefore today there should not
-% be any difficulty in producing \sigla{pdf/a} compliant documents.
+% version number 1.40.9 (or higher); therefore today there is no
+% difficulty in producing \sigla{pdf/a} compliant documents, even at
+% level~2.
%
% The particular attention needed to avoid problems with the
% \sigla{PDF/A} compliance is summarised as follows:
% \begin{enumerate}[noitemsep]
% \item
% The preliminary essential requirement is that the
-% \texttt{pdflatex} engine used to typeset the thesis be
-% sufficiently recent to support the \sigla{PDF/A} requirements.
+% \texttt{pdflatex} or \texttt{lualatex} engine used
+% to typeset the thesis be sufficiently recent to support
+% the \sigla{PDF/A} requirements.
% It's better to have the most recent distribution of
% the \TeX\ system installed on your PC. Do not try to
% typeset the thesis with the `old' \prog{latex}; you
@@ -2415,21 +2454,8 @@ School of Turin.
% contain the package \textsf{pdfx}; if it does not,
% upgrade your \TeX\ system complete distribution. Be sure
% that the version number of the \pack{pdfx} package has
-% version number~1.5.8 or higher.
+% version number~1.6.0 or higher.
%
-% \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 and, while they are further upgrading the
-% \pack{pdfx} file, they suggest a work-around (that will be described
-% below); it is possible that when you read this documentations the
-% work-around, described below, is not necessary any more.
-% With version 1.61 of \pack{pdfx} the problem is solved even if one uses
-% a \TeXLive\ installation prior to the one distributed in the year 2018.
-% In any case the most recent version 1.61 or higher of |pdfx| is
-% necessary.
%
% \item
% If your thesis main file, the one you run your typesetting
@@ -2447,40 +2473,31 @@ School of Turin.
% The keyword list requires a specific format that can be
% 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.
+% is to put its contents inside 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
+% The environment may 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 ones 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; it looks like this:
-%\begin{verbatim}
-%\setRGBcolorprofile{sRGB.icc}{sRGB}{Argyll CMS, sRGB color profile}%
-%{https://www.argyllcms.com/}
-%\end{verbatim}
-% Thanks to the new |filecontents| functionalities there is no need
-% to delete a previous |.xmpdata| file. But, as specified above, this
-% work-around is not necessary anymore if the most recent version 1.6.1
-% or later of \pack{pdfx} is used; this work-around information is
-% maintained in this documentation just for backwards compatibility.
-%
-% 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
-% that the |pdfx| package has already been corrected.
+% previous versions of TOPtesi. The new version of environment
+% \env{filecontents} is backwards compatible with the previous
+% ones with this “simple” difference: it accepts some options
+% the most important of which are \opz{overwrite} and \opz{noheader};
+% the latter avoids inserting header comment lines into the saved
+% file, while the former allows overwriting it at each
+% compilation. Omitting \opz{overwrite} the environment does not
+% overwrite an existing |.xmpdata| file; so that if some modification
+% has been made to the source lines within the environment, such
+% modifications do not get saved in the metadata file. \textcolor{red}{Such
+% behaviour of the |filecontents| environment was introduced by the
+% end of 2019; therefore if you are using the options but have a
+% vintage version of the \TeX system you get errors. You are warned:
+% never use vintage versions of the \TeX system, but be careful to
+% maintain your (complete) installation up to date}. To avoid this
+% situation and be totally transparent with respect to the date of
+% the \LaTeX kernel date, we introduce a new environment named
+% \env{pdfxmetadata} that performs the necessary controls and hides
+% such differences to the user.
%
% \item
% Some mathematical symbol commands obtained from the standard
@@ -2488,30 +2505,31 @@ School of Turin.
% some patching that is already included in this \texttt{TOPtesi}
% bundle; but it is not excluded that with other fonts similar
% patches might be requested. The \sigla{UNICODE} math fonts used
-% by \XeLaTeX\ and \LuaLaTeX\ do not require any patch.
+% by \XeLaTeX\ and \LuaLaTeX\ do not require any patch. If you seek
+% conformance with level~2, this patch is not needed.
%
% \item
% Use only \sigla{PNG} and \sigla{JPG} images with \sigla{RGB} color
% profiles. But if a \sigla{PNG} image file contains some transparencies,
% the document \sigla{PDF} cannot be validated as \sigla{PDF/A}-1b
-% compliant.
+% compliant, but it can with \sigla{pdf/a-2b}.
%
% \item
% If you include \sigla{PDF} images that contain some text, be sure
% that the fonts for this text are completely embedded in
-% the included files. Should the \sigla{PDF} files come from an external
-% drawing program be sure to configure that program so that
+% the included files. Should the \sigla{PDF} files come from external
+% drawing programs, be sure to configure that program so that
% it embeds all the fonts used in each image. If you don't
% succeed, open the \sigla{PDF} file with the free software
% \texttt{inkscape} and save it back in \sigla{PDF} format; the
% missing fonts will be replaced with their outlines and
% this will not disturb the \sigla{PDF/A} conformity. Pay attention,
% because Inkscape might save your file with some
-% specifications for transparency; but transparency
-% specifications destroy the \sigla{PDF/A} compliance.
+% specifications for transparency; but transparency specifications
+% destroy the \sigla{PDF/A-1b} compliance, not the \sigla{pdf/a-2b} one.
% Should this inconvenience take place, instead of asking
% \texttt{inkscape} to save in \sigla{PDF} format, ask to save in
-% \sigla{EPS} format; this one does not support transparencies,
+% \sigla{EPS} format; this format does not support transparencies,
% therefore they get abolished from the very beginning. This is useful
% also when \texttt{inkscape} is used to change the color
% profile of an image. Once this program is used to convert an
@@ -2520,9 +2538,9 @@ School of Turin.
% |\includegraphics|; all the suggested typesetting programs,
% \prog{pdflatex} included, can import \sigla{EPS} files, therefore
% these problems, thanks \texttt{inkscape} may be easily overridden.
-% Once you got the corrected EPS file, you might distill it to PDF,
-% so as to compress it in a compatible way; EPS files are generally
-% human readable so they are very large in terms of memory size.
+% Even better, once you got the corrected EPS file, you might distill
+% it to PDF, so as to compress it in a compatible way; EPS files are
+% generally human readable so they are very large in terms of memory size.
%
% \item
% Verify your final \sigla{PDF} file with a suitable program and
@@ -2530,12 +2548,12 @@ School of Turin.
% modifications while the verification program keeps saying
% that this or that is not compliant with the \sigla{PDF/A}
% specification. A suitable program is the Preflight module
-% of Adobe Acrobat Pro~XI (or later), but this, although the most
-% authoritative, is a commercial program; probably your
+% of Adobe Acrobat Pro~XI (or later); this is the most
+% authoritative, but it is a commercial program; probably your
% university has special facilities for this task. In any
-% case you can install the \prog{veraPDF} free software
+% case you can install the \prog{veraPDF} free and open software
% from the Internet, and use this handy verification program
-% (in 2017 the stable release was made available).
+% (since 2017 the program is stable).
%
%\end{enumerate}
%
@@ -2559,8 +2577,8 @@ School of Turin.
% programs, that, on the opposite, according to my experience,
% have a very high rate of success in producing \sigla{PDF/A}
% compliant documents. If you stick to the default \TeX\ system
-% Type~1, 256-glyph fonts, or to the \sigla{UNICODE} encoded otf
-% or ttf fonts and use this version of the TOPtesi bundle
+% Type~1, 256-glyph fonts, or to the \sigla{UNICODE} encoded OpenType
+% or TrueType fonts and use this version of the TOPtesi bundle
% you should be able to avoid most problems.
%
% \section{Customisation}\label{sec:LPPL}
@@ -2579,7 +2597,7 @@ School of Turin.
% |\mainmatter|, and |\backmatter|; what appears in the table of
% contents; and so on.
%
-% Nevertheless, in spite of being discouraged, some user might
+% 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.
%
@@ -2588,21 +2606,21 @@ School of Turin.
% 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
+% 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
+% then 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.
+% added so as to describe what has been 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
+% accordingly while modifying the initial comment lines so as to
% delete my name as the maintainer.
%
% \paragraph{Modification of single commands and/or environments}
@@ -2615,7 +2633,7 @@ School of Turin.
% 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
@@ -2624,8 +2642,9 @@ School of Turin.
% 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.
+% in order to use this |.tex| file after the |begin{document}|
+% statement, 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
@@ -2653,7 +2672,7 @@ School of Turin.
% \TeX\ format and for sharing some code between the driver
% and the class part of the code, since they are supposed to
% carry the same date and version number, besides their specific
-% description string.
+% description string.For these reasons such machinery has already been set at the very beginning of this \file{.dtx} file.
% \iffalse
%<*class>
% \fi
@@ -2685,27 +2704,33 @@ School of Turin.
% 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.
+% The |filecontents| package used to be loaded in the previous versions
+% of TOPtesi, in oder to create the |.xmpdata| file containing the
+% metadata necessary to produce PDF/A compliant files. Its
+% functionalities are now included in the \LaTeX kernel |filecontents|
+% environment; therefore it is no longer needed; in any case it is
+% easier to use environment defined in TOPtesi for this specific
+% task; it relies on some low level native \TeX code contained
+% in package |fancyvfb|; here we load it: the new environment
+% |pdfxmetadata| is defined further on.
+% \begin{macrocode}
+\RequirePackage{fancyvrb}
+% \end{macrocode}
+% Remember: this new environment must be loaded between the
+% |\documentclass| and the |usepackage[a-1b]{pdfx}| statements.
%
% 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
+% 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
+% is a \LaTeX\ kernel one; in 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
@@ -2737,7 +2762,6 @@ 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{%
@@ -2779,7 +2803,7 @@ School of Turin.
% reasons (before version 3.x \texttt{toptesi} was just an
% extension to the \texttt{report} class) and partly because
% it might be used as a stand alone package, but, take
-% notice, it might create some conflicts with with other
+% notice, it might create some conflicts with other
% classes internal code, although with the latest versions
% of |toptesi| we did not notice any conflict with the |book|
% class; it is certainly incompatible with the \texttt{article}
@@ -2817,7 +2841,7 @@ School of Turin.
% \opz{magistrale}, \opz{dottorale}, \opz{secondaria}, are
% described further on; options \opz{frontespizio} and
% \opz{custom} avoid loading the default module |topfront| or any
-% of the previous listed modules; the are used to create title pages
+% of the previous listed modules; they are used to create title pages
% different from the ones that are available with TOPtesi.
%
% The |corpo = value| option can receive “any” value; if this
@@ -2853,6 +2877,9 @@ School of Turin.
\newif\ifsecondaria\secondariafalse
\newif\ifcustom\customfalse
\newif\ifTOPnumerazioneromana\TOPnumerazioneromanafalse
+\newif\ifTOPnocenterfolio \TOPnocenterfoliofalse
+\newif\ifTOPnocenterhead \TOPnocenterheadfalse
+\newif\ifTOPfolioinhead \TOPfolioinheadfalse
% \end{macrocode}
%
% A binding correction is established; its default value is
@@ -2870,6 +2897,12 @@ School of Turin.
% In any case see further on a deeper explanation about margins
% and binding correction.
%
+% The options concerning the folio position and the header text
+% position have been requested after version 6.3.06. Beware! While
+% the folio position close to the outer edge is acceptable, it turns
+% to be quite bad looking if also the header text is moved to the
+% fore edge; therefore avoid this position pair.
+%
% The options |usefrontespizio| and |noTOPfront| are set by the
% specific “function” executed by the |tipotesi=|\meta{value} options.
% \begin{macrocode}
@@ -2904,6 +2937,11 @@ School of Turin.
\fi}
\DeclareOptionX{autoretitolo}[true]{\ifclassica\@utoretitolotrue\fi}
\DeclareOptionX{oldstyle}[true]{\ifclassica\@ldstyletrue\fi}
+\DeclareOptionX{nocenterfolio}[true]%
+ {\unless\ifclassica\TOPnocenterfoliotrue\fi}
+\DeclareOptionX{nocenterhead}[true]%
+ {\unless\ifclassica\TOPnocenterheadtrue\fi}
+\DeclareOptionX{folioinhead}[true]{\unless\ifclassica\TOPfolioinheadtrue\fi}
\DeclareOptionX{pdfa}{\PackageWarning{toptesi}{%
***********************************************\MessageBreak%
Option pdfa ignored.\MessageBreak%
@@ -3018,7 +3056,7 @@ School of Turin.
% Without binding correction the inner and outer margin
% are chosen equal, but the grid is moved outwards if the
% binding correction option is specified. With the |libro|
-% option in force, the outer, lower margin are larger than
+% option in force, the outer and the lower margin are larger than
% the corresponding inner and top margins. Without such
% option, the margins are initially set equal, unless the
% binding correction is specified.
@@ -3053,25 +3091,42 @@ School of Turin.
% We now establish the page style. We start by setting to
% “empty” the tokens that keep the left and the right
% marks; we define a box so as to set the headers inside
-% this box; we redefine also the plain page style; it is
-% actually a leftover from the previous versions when the
-% page number was set at the foot in bold face, but we leave
-% it here without the bold face specification, so that in
-% future versions folios may be redefined in a common way
-% with the other page styles. Notice that in all page styles
-% folios are always in the footers.
+% this box.
%
% By defining |\lapagina| to be equivalent to |\thepage|
% we can later on redefine |\lapagina| the way we like; we
-% actually do so with the option \texttt{classica}.
+% actually do so with option \texttt{classica}.
+% Since there are options for setting the head information in a
+% centred or lateral (external) position and similarly for the folios,
+% plus the possibility to have the folio in the head or in the foot,
+% we need to redefine the |plain| and |headings| page styles according
+% to the options chosen by the user through the available keys.
% \begin{macrocode}
\def\lapagina{\thepage}
\mark{{}{}}
\newbox\@intesta
%
\def\ps@plain{\let\@mkboth\@gobbletwo
-\def\@oddfoot{\null\hfill {\scshape\lapagina}\hfill \null}\def\@oddhead{}
-\def\@evenhead{}\let\@evenfoot\@oddfoot}
+\let\@oddhead\@empty\let\@evenhead\@empty%
+\if@twoside
+ \ifTOPnocenterfolio
+ \def\@oddfoot{\makebox[\textwidth][r]{\scshape\lapagina}}
+ \def\@evenfoot{\makebox[\textwidth][l]{\scshape\lapagina}}
+ \else
+ \def\@oddfoot{\makebox[\textwidth][c]{\scshape\lapagina}}%
+ \def\@evenfoot{\makebox[\textwidth][c]{\scshape\lapagina}}%
+ \fi
+\else
+ \ifTOPnocenterfolio
+ \def\@oddfoot{\makebox[\textwidth][r]{\scshape\lapagina}}%
+ \let\@evenfoot\@oddfoot
+ \else
+ \def\@oddfoot{\makebox[\textwidth][c]{\scshape\lapagina}}%
+ \let\@evenfoot\@oddfoot
+ \fi
+\fi
+}
+
% \end{macrocode}
% Other page styles are defined in a different way according
% to the choice of one side or two side printing. In any case
@@ -3082,35 +3137,102 @@ School of Turin.
% to invite the user to exploit the sectioning commands
% optional short argument.
% \begin{macrocode}
-\if@twoside
- \def\ps@headings{\let\@mkboth\markboth% autoretitolo
- \def\@oddfoot{\null\hfill {\scshape\lapagina} \hfill\null}
- \let\@evenfoot\@oddfoot
- %
- \def\@evenhead{\setbox\@intesta\hbox{\footnotesize\slshape
- \leftmark}%
+\if@twoside % two side
+ \def\ps@headings{%
+ \let\@mkboth\markboth\let\@oddhead\@empty\let\@evenhead\@empty
+ \unless\ifTOPfolioinhead % folio in head
+ \ifTOPnocenterfolio
+ \def\@oddfoot{\makebox[\textwidth][r]{\scshape\lapagina}}
+ \def\@evenfoot{\makebox[\textwidth][l]{\scshape\lapagina}}
+ \else
+ \def\@oddfoot{\makebox[\textwidth][c]{\scshape\lapagina}}
+ \def\@evenfoot{\makebox[\textwidth][c]{\scshape\lapagina}}
+ \fi
+ \def\@oddhead{\setbox\@intesta\hbox{\footnotesize\slshape
+ \rightmark}%
\ifdim\wd\@intesta>\textwidth \headWarn{\chapter}\fi%
- \underline{\makebox[\textwidth]{\footnotesize\slshape
- \strut\leftmark}}}%
+ \ifTOPnocenterhead
+ \underline{\makebox[\textwidth][r]{\footnotesize\slshape
+ \strut\rightmark}}%
+ \else
+ \underline{\makebox[\textwidth][c]{\footnotesize\slshape
+ \strut\rightmark}}%
+ \fi}%
+ \def\@evenhead{\setbox\@intesta\hbox{\footnotesize\slshape
+ \rightmark}%
+ \ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi%
+ \ifTOPnocenterhead
+ \underline{\makebox[\textwidth][r]{\footnotesize\slshape
+ \strut\leftmark}}%
+ \else
+ \underline{\makebox[\textwidth][c]{\footnotesize\slshape
+ \strut\leftmark}}%
+ \fi}%
+ \else % folio in foot
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
\def\@oddhead{\setbox\@intesta\hbox{\footnotesize\slshape
\rightmark}%
\ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi%
- \underline{\makebox[\textwidth]{\footnotesize\slshape
- \strut\rightmark}}}%
- \def\chaptermark##1{%
- \markboth{\thechapter\ -- ##1}{\thechapter\ -- ##1}}
- \def\sectionmark##1{\markright{\ifnum\c@secnumdepth>\z@
- \thesection\ -- \fi ##1}}}
-\else
- \def\ps@headings{\let\@mkboth\markboth
- \def\@oddfoot{\null\hfill {\scshape\lapagina} \hfill\null}
- \def\@evenfoot{}
+ \ifTOPnocenterhead
+ \underline{\makebox[\textwidth][r]{\footnotesize\slshape
+ \strut\rightmark}}\rlap{\quad\scshape\lapagina}%
+ \else
+ \underline{\makebox[\textwidth][c]{\footnotesize\slshape
+ \strut\rightmark}}\rlap{\quad\scshape\lapagina}%
+ \fi}
+ \def\@evenhead{\setbox\@intesta\hbox{\footnotesize\slshape
+ \rightmark}%
+ \ifdim\wd\@intesta>\textwidth \headWarn{\chapter}\fi%
+ \ifTOPnocenterhead
+ \underline{\llap{\scshape\lapagina\quad}%
+ \makebox[\textwidth][l]{\footnotesize\slshape\strut\rightmark}}%
+ \else
+ \underline{\llap{\scshape\lapagina\quad}%
+ \makebox[\textwidth][c]{\footnotesize\slshape\strut\rightmark}}%
+ \fi}
+ \fi
+ \def\chaptermark##1{\markboth{\thechapter\ -- ##1}{\thechapter\ -- ##1}}
+ \def\sectionmark##1{\markright{\ifnum\c@secnumdepth>\z@
+ \thesection\ -- \fi ##1}}%
+ }
+\else% oneside
+ \def\ps@headings{%
+ \let\@mkboth\markboth\let\@oddhead\@empty\let\@evenhead\@empty
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@evenfoot{}\def\@evenhead{}%
+ \unless\ifTOPfolioinhead % folio in head
+ \ifTOPnocenterfolio
+ \def\@oddfoot{\makebox[\textwidth][r]{\scshape\lapagina}}
+ \else
+ \def\@oddfoot{\makebox[\textwidth][c]{\scshape\lapagina}}
+ \fi
+ \def\@oddhead{%
+ \setbox\@intesta\hbox{\footnotesize\slshape
+ \rightmark}%
+ \ifdim\wd\@intesta>\textwidth \headWarn{\chapter}\fi%
+ \ifTOPnocenterhead
+ \underline{\makebox[\textwidth][r]{\footnotesize\slshape
+ \strut\rightmark}}%
+ \else
+ \underline{\makebox[\textwidth][c]{\footnotesize\slshape
+ \strut\rightmark}}%
+ \fi
+ }%
+ \else % folio in foot
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
\def\@oddhead{\setbox\@intesta\hbox{\footnotesize\slshape
\rightmark}%
\ifdim\wd\@intesta>\textwidth \headWarn{\chapter}\fi%
- \underline{\makebox[\textwidth]{\footnotesize\slshape
- \strut\rightmark}}}%
- \def\chaptermark##1{\markright{\thechapter\ -- ##1}}}
+ \ifTOPnocenterhead
+ \underline{\makebox[\textwidth][r]{\footnotesize\slshape
+ \strut\rightmark}}\makebox[\z@][l]{\enspace\scshape\lapagina}%
+ \else
+ \underline{\makebox[\textwidth][c]{\footnotesize\slshape
+ \strut\rightmark}}\makebox[\z@][l]{\enspace\scshape\lapagina}%
+ \fi}
+ \fi
+ \def\chaptermark##1{\markright{\thechapter\ -- ##1}}%
+ }
\fi
\def\headWarn#1{\PackageWarning{toptesi}{%
@@ -3148,7 +3270,7 @@ School of Turin.
% in Italy theses rarely contain these lists; the question is: “is a
% thesis a technical report?”. In Italy, in most cases, the answer is “no”.
% We require also some other boolean variables to handle the
-% difference between front matter and main matter; this
+% difference between front matter and main matter; these
% differences are already defined in the \texttt{book}
% document class, but not in the \texttt{report} one.
% \begin{macrocode}
@@ -3244,12 +3366,65 @@ School of Turin.
% names for localising the package in a language different
% from Italian and English.
%
+% When and if a PDF/A compliant file has to be produced, it is
+% necessary to load the \pack{pdfx} package in the document to
+% be typeset and to create a special metadata file. The Italian
+% documentation |toptesi-it| explains how to do these actions,
+% in particular how to generate the necessary metadata and how
+% to prepare the |\jobname.xmpdata| file; it was suggested
+% to use the |filecontents| environment as redefined by package
+% \pack{filecontents}. But the situation has become a little clumsy
+% by the end of 2019 because the functionalities of the package
+% have been introduced int the \LaTeX kernel. But the new upgraded
+% kernel definition of the |filecontents| environment as redefined
+% by the previous version of \pack{filecontents} becomes available
+% only trough suitable options. This makes previous versions of
+% theses typeset with the previous versions behave as if the
+% \pack{filecontents} package was not loaded. In other words what
+% was made in the examples accompanying this class and package does
+% not work anymore as it used to do, when they are typeset with an
+% updated version of the \TeX system; today with the 2020 \TeXLive
+% version, they do not perform as they used to do, since they do not
+% update the metadata without deleting the previous file that
+% contained the previous version. You get the previous functionality
+% if you edit the files and add the suitable options: \opz{noheader}
+% and \opz{overwrite} to the opening environment statement.
+% For new files we suggest to use a new environment in order to
+% create the proper metadata file, with the proper name and contents.
+% This new environment can be used in the thesis preamble anywhere
+% before using the \pack{pdfx} package.
+%
+% The new environment has a very descriptive name: \env{pdfxmetadata};
+% it does not require asterisks or options; its contents are the
+% metadata. Its use is a such:
+%\begin{flushleft}\obeylines
+%\cs{documentclass}\oarg{options}\Marg{toptesi}
+%\meta{special packages}
+%\Bambiente{pdfxmetatada}
+%\meta{metada}
+%\Eambiente{pdfxmetadata}
+%...
+%\cs{usepackage}\Oarg[a-1b]\Marg{pdfx}
+%\meta{other packages}
+%\meta{settings and definitions}
+%\Bambiente{document}
+%\end{flushleft}
+% Here is the very simple code thanks to the |VerbatimOut|
+% environment defined by the |fancyvrb| package, invoked
+% without the \cs{begin} and \cs{end} commands that may not perform
+% correctly within other environments.
+% \begin{macrocode}
+\newenvironment{pdfxmetadata}{%
+\VerbatimOut{\jobname.xmpdata}}{\endVerbatimOut}
+% \end{macrocode}
+%
% We have to modify the |\chapter| and |\part| commands so
% that as the user first uses one of these commands the
% typesetting style is switched to that of the main matter.
% But by exploiting certain facilities of the |xparse| package,
% some delicate tests could be developed by |xparse| itself; therefore
-% the whole command was redefined so that the new syntax is the following:
+% the whole commands were redefined so that the new syntax is the
+% following:
%\begin{flushleft}\obeylines
%\cs{chapter}\meta{$\star$}\oarg{toc entry}\oarg{headings entries}\marg{title}\oarg{pagestyle}
%\end{flushleft}
@@ -3302,22 +3477,25 @@ School of Turin.
%
%\item[\meta{title}] with no surprise is the chapter title that
% is printed in its opening page. It defines also the default
-% \meta{toc entry} and therefore the \meta{headings entry}.
+% \meta{toc entry} and therefore the \meta{headings entry} if these
+% optional arguments are not specified.
%
%
%\item[\meta{pagestyle}] solves a problem that arises more often
% than not: by default the chapter opening page is typeset with
% the |plain| page style; sometimes a different style is desired,
% for example the |empty| one. The use can specify this optional
-% argument with |empty| to have a headerless opening page without
-% a printed folio. Actually the user can specify any page style,
+% argument with |empty| to have a opening page without both a header
+% and a printed folio. Actually the user can specify any page style,
% provided it satisfies the typographical best practice.
%
%\end{description}
% Actually the commands to typeset the Summary and the
% Acknowledgements chapters, as defined above, are regularly
% typeset in the front matter style, opening on any page
-% (even or odd) and possibly numbered with small caps roman numerals.
+% (even or odd) and possibly with folios numbered with small
+% caps roman numerals. The |\chapter*| dos not switch from
+% front to main matter; while the starred one does.
% \begin{macrocode}
\RenewDocumentCommand{\chapter}
{s O{#4} O{#2} m O{plain}}{%
@@ -3365,9 +3543,14 @@ School of Turin.
}
% \end{macrocode}
% It would be possible to redefine in a similar manner also
-% the |\part| command, but it was deemed unnecessary, since
-% theses are seldom divided into parts.
-% \begin{macrocode}
+% the |\part| command, but originally it was deemed unnecessary,
+% since theses are seldom divided into parts; now with the
+% options on the folio position it is necessary to redefine
+% also the |part| command.
+% \begin{macrocode}
+\RenewDocumentCommand\part{s O{#3} m}{\iffrontmatter\mainmatter\fi
+\if@openright \cleardoublepage \else \clearpage \fi
+\thispagestyle{plain}\if@twocolumn \onecolumn \@tempswatrue \else \@tempswafalse \fi \null \vfil \IfBooleanTF{#1}{\@spart{#3}}{\@part[#2]{#3}}}
\def\@part[#1]#2{\iffrontmatter\mainmatter\fi
\ifnum \c@secnumdepth >-2\relax
\refstepcounter{part}%
@@ -3386,8 +3569,17 @@ School of Turin.
\fi
\Huge \bfseries #2\par}%
\@endpart}
-
% \end{macrocode}
+% The syntax is the following
+%\begin{ttsintassi}
+%\cs{part}\meta{*}\oarg{short title}{title}
+%\end{ttsintassi}
+% where the optional star implies no toc entry; in absence of the
+% star, the toc entry is the \meta{short title} which, in turn,
+% if not specified, assumes the same value as \meta{title}.
+% The starred version of |\part|, contrary to the starred version
+% of |\chapter|, switches from front to main matter.
+%
% At the same time we have to make sure that |\tableofcontents|,
% |\listoftables| and |\listoffigures| do not exit from the
% front matter style. We assume these commands are issued
@@ -3396,10 +3588,10 @@ School of Turin.
% toc entries with the native commands. We need not define the
% headers, because the default title is good for this purpose;
% but since such thesis elements are typeset with the front
-% matter page style (|plain|), no headers are used; With long
+% matter page style (|plain|), no headers are used; with long
% indices and/or lists of tables and/or figures, the user might
% desire to have headers, so that the declaration
-% |\pagestyle{headings}| should be specifies before using the
+% |\pagestyle{headings}| should be specified before using the
% |\indici| or |\allcontents| commands.
%
% The table of contents itself is not linked at all, but in order
@@ -3440,9 +3632,10 @@ School of Turin.
% We need to define |\indici| (alias |\allcontents|) that typesets
% the table of contents and, optionally, the lists of tables and/or
% figures while softly maintaining the front matter style for
-% typesetting. In facts, if the user wants a diffferent styl s/he can select it with a suitable argument the |\pagestyle| command.
+% typesetting. In facts, if the user wants a different style s/he
+% can select it with a suitable argument to the |\pagestyle| command.
% \begin{macrocode}
-\def\indici{% If headings are desired, the pagestyle must be set in advance
+\def\indici{% If headings are desired, the page style must be set in advance
\iffrontmatter\else\frontmattertrue\fi
\tableofcontents
\iftablespage
@@ -3566,7 +3759,7 @@ School of Turin.
%
% The issue is that I prefer a narrower justified caption
% rather than one where the last line is just a short word
-% or the right segment of an hyphenated last word. If one
+% or the right segment of a hyphenated last word. If one
% sets the |\finalhyphendemerits| parameter to an extremely
% high value, one might succeed in avoiding a hyphenated
% penultimate caption line, but this might lead to a very
@@ -3636,7 +3829,7 @@ School of Turin.
% By the way, if the package \pack{caption} has been loaded
% in the preamble, this specific recalculation must not be
% executed at all; it is necessary to delay this definition
-% at |\AtBeginDocument| so we know for sure if that the package
+% at |\AtBeginDocument| so we know for sure if that package
% has been actually loaded. Of course if the \pack{caption} package
% has not been loaded the |\captionsetup| macro is not
% defined and its use (for example, as a leftover of some
@@ -3725,8 +3918,8 @@ School of Turin.
% such as when it is set within a mini-page or another similar
% environment; in such situations it is not required to use
% |\captionof|; actually this command is simulated within this
-% very \amb{SD} environment
-%.
+% very \amb{SD} environment.
+%
% The actual commands for inserting
% the picture and its caption within the |figure| environment
% have names starting with |SD|, namely |\SDcaption| and
@@ -3765,7 +3958,7 @@ School of Turin.
% correct position within the dedicated space; any argument
% is substantially valid with the caution that this “anything”
% remains local to that particular “image”. In any case when
-% the “mage” is a real picture and has to be resized to a
+% the “image” is a real picture and has to be resized to a
% relative dimension, remember that both the picture and its
% caption are typeset within boxes narrower than the total text
% width or the total environment width; the best way to access
@@ -3782,7 +3975,7 @@ School of Turin.
% contains the usual short caption entry for the list of
% figures or tables or specific other floats.
%\item The \marg{caption} mandatory brace delimited argument
-% contains the image caption.
+% contains the image caption text.
%\item The \marg{label} mandatory brace delimited argument
% contains the string that is usually passed to the |\label|
% command; this string is mandatory in the sense that it
@@ -3873,7 +4066,7 @@ School of Turin.
{\SDlinewidth=\textwidth}%
% \end{macrocode}
% Then we fix our attention to the correct use of the optional third
-% argument, whose descriptor assigns it a default value of |0.5|:
+% argument, whose descriptor assigns it a default value of |0.5|:
% \begin{macrocode}
\SDcaptionwidth=#3\SDlinewidth
\ifdim\SDcaptionwidth<0.3\SDlinewidth
@@ -3887,13 +4080,13 @@ School of Turin.
\SDfigurewidth=\dimexpr\SDfigurewidth-\columnsep\relax
% \end{macrocode}
% We add some test to verify if the environment is used within
-% the |figure| floating environment, or it is used ad a fixed
+% the |figure| floating environment, or it is used as a fixed
% object; we first test if we are within a floating environment;
% if not we define |\@captype| to contain the string `figure';
-% if yes we have to test if we are really within the |figure|
+% if yes, we have to test if we are really within the |figure|
% environment: if not, we locally define |\@captype| else
% we relax. This means that we can insert the |SDfigure| even
-% within a |table| environment as sometimes a tabular and a
+% within a |table| environment as sometimes a tabular and a
% drawing should float together (may be because a drawing with
% its own caption represents the tabular entries).
%
@@ -3907,7 +4100,7 @@ School of Turin.
%
% The code tests if the saved \meta{label} string is empty;
% this should never take place, but it is better to perform
-% such task. If the string is empty, a fall back value equal
+% such task. If the string is empty, a fall back value equal
% to the page number of the page that is still open at
% processing time is used; may be a warning message would
% be helpful, but since this empty string should never be
@@ -3929,7 +4122,7 @@ School of Turin.
% |.aux| file |\label| saved data, we must access the
% string that contains these data but we have to expand
% several times the saved macros until we have the real
-% string in |\@temD|.
+% string in |\@tempD|.
% \begin{macrocode}
}{%---------------------------------------------------CLOSING
{\ifcsdef{r@\@tempSD}%
@@ -3979,7 +4172,7 @@ School of Turin.
% (optional) argument is intended to collect the “short
% caption” to be used, if specified, for the list of floats
% entry; if not specified ,as usual, the “long caption”
-% second argument is used for this entry. The (optional)
+% second argument is used for this entry. The third (optional)
% brace delimited argument, on the contrary, is the label
% string that usually is passed as the argument of the
% |\label| command. If specified it is this |\SDcaption|
@@ -4192,7 +4385,7 @@ School of Turin.
% \end{macrocode}
%
% {\tolerance=3000\relax
-% The TOPtesi bundle contains two new chapter like sections
+% The TOPtesi bundle contains two new chapter-like sections
% activated with the commands |\sommario| (alias |\summary|)
% and |\ringraziamenti| (alias |\acknowledgements|) respectively.
% The infix strings that start these sections depend on the
@@ -4296,11 +4489,11 @@ Skipping any redefinition\MessageBreak}%
% language as the default one \emph{after} the |\begin{document}|
% statement;
% \item
-% if XeLaTeX\ or LuaLaTeX\ is being used for typesetting, it
+% if \XeLaTeX\ or LuaLaTeX\ is being used for typesetting, it
% suffices to specify in the preamble the name of the other
% language to be used, by means of the |setotherlanguage|
% command, and to define the summary and acknowledgments names
-% in the same way as with pdf\/\LaTeX; the same must be done
+% in the same way as with \pdfLaTeX; the same must be done
% at the beginning of the document to declare the new language
% as the default one.
% \end{itemize}
@@ -4325,7 +4518,8 @@ Skipping any redefinition\MessageBreak}%
% option implies that the title page is typeset with its
% special commands and environments, therefore it sets the
% suitable switches so as to avoid loading the |topfront|
-% extension file. This applies also to the other modules particular to special thesis types.
+% module. This applies also to the other modules specific for
+% special thesis types.
% \begin{macrocode}
\AtBeginDocument{%
\unless\ifT@Pfrontespizio\ifTOPfront
@@ -4342,12 +4536,13 @@ Skipping any redefinition\MessageBreak}%
% |\mapstochar| that produce problems with that format,
% because they have a declared width of 0\,pt; this
% is no problem for \texttt{pdflatex}, but it is a problem
-% for the \sigla{PDF/A} format. Therefore these commands must be
-% replaced by equivalent ones that do not use zero-width
-% glyphs. For |\not|, another slash can be used, but in
-% order to have it the right size in all math typesetting
-% modes it is necessary to have a different command for
-% every mode; this is achieved with the |\mathchoice|
+% for the \sigla{PDF/A} format. Therefore, and only when
+% \texttt{pdflatex} is used for typesettiNg the document,
+% these commands must be replaced by equivalent ones that
+% do not use zero-width glyphs. For |\not|, another slash can
+% be used, but in order to have it the right size in all math
+% typesetting modes it is necessary to have a different
+% command for every mode; this is achieved with the |\mathchoice|
% primitive as such:
% \begin{macrocode}
\ifPDFTeX
@@ -4391,6 +4586,7 @@ Skipping any redefinition\MessageBreak}%
% of other useful packages, such as \pack{pdfpages}.
%
% \subsection{The \opz{classica} option}
+%
% As mentioned above, the \opz{classica} option was
% devised in order to cope with theses in humanities and
% the specifications came from Paolo Ciacchi, a student
@@ -4398,7 +4594,7 @@ Skipping any redefinition\MessageBreak}%
% thesis in classical Greek philology. The necessity
% of the large normal size derived from the necessity of
% having clear mark-up signs among the myriad signs
-% philologists use, that sometimes I believe that the
+% philologists use; sometimes I believe that the
% philological mark-up requires typesetting environments
% similar to the mathematical ones: in facts the material
% to be typeset does not form linear sequences, as in plain
@@ -4414,7 +4610,7 @@ Skipping any redefinition\MessageBreak}%
%
% The singular and plural masculine and feminine strings
% for “candidate” are redefined in the |topfront| module.
-% For other languages the configuration file is very handy.
+% For other languages using the configuration file is very handy.
%
% Since theses in humanities may end up to occupy several
% volumes\footnote{Classically “tomo” in Italian means “volume”,
@@ -4433,14 +4629,16 @@ Skipping any redefinition\MessageBreak}%
% is going to be printed in the title page. But when several
% tomes are involved, instead of using the |\frontespizio|
% macro or |frontespizio| environment, use the |\tomo| macro.
-% There is no equivalent to the |frontespizio| environment.
-% |\tomo| provides to stepping up the volume counter before
-% actually printing the new tome title page.
+% This |classica| thesis style does no allow to use a title page
+% environment; therefore all necessary data necessary for the
+% title pages of each tome must be specified before using the
+% \cs{tomo} macro. This macro provides to stepping up the volume
+% counter before actually printing the new tome title page.
% \begin{macrocode}
\newcounter{tomo}
\newcommand*{\tomo}{\clearpage\stepcounter{tomo}\boolfalse{topTPTlogos}%
\fr@ntespizio}
-% \end{macrocode}
+% \end{macrocode}^^A>>>>>>>>>>>
% Folios as well are to be redefined and also the page styles
% require a redefinition so as to being able to use old style
% numbers. The macro |\lapagina| (it's not a case that this
@@ -4469,10 +4667,13 @@ Skipping any redefinition\MessageBreak}%
% headings because the \texttt{classica} option changes
% completely the left and the right headers depending on the
% option \opz{autoretitolo}; in this case the left header
-% contains the candidate's name and a short version of the
+% contains the candidate's name and the (short) version of the
% thesis title, while the right heading contains the chapter
% (short) title; if this option is not in force, headings
-% appear as usual. The redefinition of the \texttt{headings}
+% appear as usual, but without using the settings relative to
+% the folio position and the header text position.
+%
+% The redefinition of the \texttt{headings}
% page style is made only if this option is in force. In case
% of two-sided printing where the left head and the right
% heads are different, the left heading contains the author
@@ -4501,7 +4702,7 @@ Skipping any redefinition\MessageBreak}%
% ragged margins, and eventually these boxes are set one
% next to the other with an intermediate glob of infinitely
% stretchable glue, and finally set in the header box with
-% a rule underneath the two of them. The result might be
+% a rule underneath both of them. The result might be
% barely acceptable if both vertical boxes do not exceed
% two lines and no words have to be hyphenated, but in
% general I believe it is an ugly layout; the user is warned!
@@ -4509,52 +4710,52 @@ Skipping any redefinition\MessageBreak}%
% without the ID number if any.
% \begin{macrocode}
\if@utoretitolo
- \if@twoside
-%
- \renewcommand*{\ps@headings}{\let\@mkboth\markboth%
- \def\@oddfoot{\null \hfill \textbf{\lapagina} \hfill \null}%
- \let\@evenfoot\@oddfoot
- \def\@evenhead{%
- \setbox\@intesta\hbox{\ifPDFTeX\latintext\fi
- \footnotesize\strut\textsc{%
- \@@author\ifcsvoid{@secondauthor}{\ et al.}: \@stitle}%
- }%
- \ifdim\wd\@intesta>\textwidth\headwrn{\titolo}\fi
- \underline{\makebox[\textwidth]{\box\@intesta}}}%
- \def\@oddhead{\ifPDFTeX\latintext\fi
- \setbox\@intesta\hbox{%
- \footnotesize\strut\textsl{\rightmark}}%
- \ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi%
- \underline{\makebox[\textwidth]{\box\@intesta}}}%
- \def\chaptermark##1{\markright{\thechapter\ -- ##1}}%
- \def\sectionmark##1{}}%
- \else
- \renewcommand*{\ps@headings}{\let\@mkboth\markboth
- \def\@oddfoot{\null \hfill \textbf{\lapagina}\hfill \null}%
- \let\@evenfoot\empty\let\@evenhead\empty
- \def\@oddhead{{\setbox\z@\hbox{\ifPDFTeX\latintext\fi
- \footnotesize\textsc{%
- \@@author\ifcsvoid{@secondauthor}{}{\ et al.}: \@stitle}}%
- \setbox\tw@\hbox{\ifPDFTeX\latintext\fi
- \footnotesize\textsl{\rightmark}}%
- \dimen@=\dimexpr2em + \wd\z@ + \wd\tw@\relax
- \ifdim\dimen@<\textwidth \relax
- \else
- \setbox\z@\vbox{\hsize.48\textwidth\parindent\z@
- \raggedright
- \ifPDFTeX\latintext\fi\footnotesize\textsc{%
- \@@author\ifcsvoid{@secondauthor}{}{\ et al.}: \@stitle
- }}%
- \setbox\tw@\vbox{\hsize.48\textwidth\parindent\z@
- \raggedleft
- \ifPDFTeX\latintext\fi\footnotesize
- \textsl{\rightmark}}%
- \fi
- \setbox\@intesta\vbox to\z@{%
- \vss\hbox to\textwidth{\strut\box\z@\hfill\box\tw@}}%
- \underline{\box\@intesta}}}%
- \def\chaptermark##1{\markright{\thechapter\ -- ##1}}}
+ \if@twoside
+%
+ \renewcommand*{\ps@headings}{\let\@mkboth\markboth%
+ \def\@oddfoot{\null \hfill \textbf{\lapagina} \hfill \null}%
+ \let\@evenfoot\@oddfoot
+ \def\@evenhead{%
+ \setbox\@intesta\hbox{\ifPDFTeX\latintext\fi
+ \footnotesize\strut\textsc{%
+ \@@author\ifcsvoid{@secondauthor}{\ et al.}: \@stitle}%
+ }%
+ \ifdim\wd\@intesta>\textwidth\headwrn{\titolo}\fi
+ \underline{\makebox[\textwidth]{\box\@intesta}}}%
+ \def\@oddhead{\ifPDFTeX\latintext\fi
+ \setbox\@intesta\hbox{%
+ \footnotesize\strut\textsl{\rightmark}}%
+ \ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi%
+ \underline{\makebox[\textwidth]{\box\@intesta}}}%
+ \def\chaptermark##1{\markright{\thechapter\ -- ##1}}%
+ \def\sectionmark##1{}}%
+ \else
+ \renewcommand*{\ps@headings}{\let\@mkboth\markboth
+ \def\@oddfoot{\null \hfill \textbf{\lapagina}\hfill \null}%
+ \let\@evenfoot\empty\let\@evenhead\empty
+ \def\@oddhead{{\setbox\z@\hbox{\ifPDFTeX\latintext\fi
+ \footnotesize\textsc{%
+ \@@author\ifcsvoid{@secondauthor}{}{\ et al.}: \@stitle}}%
+ \setbox\tw@\hbox{\ifPDFTeX\latintext\fi
+ \footnotesize\textsl{\rightmark}}%
+ \dimen@=\dimexpr2em + \wd\z@ + \wd\tw@\relax
+ \unless\ifdim\dimen@<\textwidth
+ \setbox\z@\vbox{\hsize.48\textwidth\parindent\z@
+ \raggedright
+ \ifPDFTeX\latintext\fi
+ \footnotesize\textsc{%
+ \@@author\ifcsvoid{@secondauthor}{}{\ et al.}: \@stitle
+ }}%
+ \setbox\tw@\vbox{\hsize.48\textwidth\parindent\z@
+ \raggedleft
+ \ifPDFTeX\latintext\fi\footnotesize
+ \textsl{\rightmark}}%
\fi
+ \setbox\@intesta\vbox to\z@{%
+ \vss\hbox to\textwidth{\strut\box\z@\hfill\box\tw@}}%
+ \underline{\box\@intesta}}}%
+ \def\chaptermark##1{\markright{\thechapter\ -- ##1}}}
+ \fi
\fi
% \end{macrocode}
%
@@ -4564,17 +4765,16 @@ Skipping any redefinition\MessageBreak}%
% like to have also unnumbered notes within numbered
% ones, as if they were two separate sets; of course
% specialised extension modules, such as, for example,
-% the |eledmac| or |reledmac| packages, are available on
-% CTAN, but as a poor man solution the command |\nota| was
-% introduced that inserts a note with a symbol as a note
-% mark; the symbol \emph{must} be a mathematical one as
-% the dagger or the double dagger; by default it is the
-% asterisk. At the same time the default definition of
-% the mathematical asterisk is that of a binary operator;
-% I have experienced that the note symbol gets a
+% the |eledmac|, |reledmac|, or |xreledmac| packages, are
+% available in \TeXLive and MiKTeX, but as a poor man
+% solution the command |\nota| was introduced that inserts
+% a note with a symbol as a note mark; the symbol \emph{must}
+% be a mathematical one as the dagger or the double dagger;
+% by default it is the asterisk. At the same time the default
+% definition of the mathematical asterisk is that of a binary
+% operator; I have experienced that the note symbol gets a
% better positioning if it is used as an ordinary symbol
-% through |\mathord|.
-% This is why its math code is redefined.
+% through |\mathord|. This is why its math code is redefined.
%
% A final unusual request was to be able to put a blank
% unnumbered note, as a (rather wide) note separator.
@@ -4599,7 +4799,7 @@ Skipping any redefinition\MessageBreak}%
% typesetting a page with one or more witty sentences.
% The first request has a trivial solution, but at least
% |\paginavuota| (alias |\emptypage|) is much shorter to
-% type in than its expansion.
+% type than its expansion.
%
% The environments \texttt{dedica} (alias \texttt{dedication})
% for the dedication, and \texttt{citazioni} (alias
@@ -4617,7 +4817,9 @@ Skipping any redefinition\MessageBreak}%
% The \texttt{citazioni}/\texttt{wittysentences}
% environment typesets its material with the default font
% shape series and size, so the author has to specify any
-% change s/he desires. These three commands, though, are
+% change s/he desires.
+%
+% These three commands and environments, though, are
% available irrespective of the \texttt{classica} option,
% so that they can be used also for theses outside the
% field of humanities.
@@ -4656,12 +4858,13 @@ Skipping any redefinition\MessageBreak}%
% \fi
%
% \subsection{The \texttt{topfront.sty} code}\label{sec:topfront}
+%
% This file is input by \texttt{toptesi}, version 6 and higher
% provided that no title page or thesis type options have been
% specified by the user; it can also be used as an independent
% extension module with (hopefully) any document class.
%
-% It contains all the definition for the composition of just
+% It contains all the definitions for the composition of just
% the title page of “standard” theses along the style
% requirements of \texttt{toptesi}, version 5.x or higher. It is not
% loaded by |toptesi| even when typesetting the title page
@@ -4670,9 +4873,9 @@ Skipping any redefinition\MessageBreak}%
% |toptesi| loading of |topfront| is inhibited and in its
% place another extension module, |toptesi-scudo|, is loaded.
% The same holds true with the other special thesis modules.
-% This latter files are described in a subsequent sections.
+% This latter files are described in subsequent sections.
%
-% It |topfront| makes use of an optional configuration file
+% The |topfront| package makes use of an optional configuration file
% where the user can define a lot of default information and
% all the infix language dependent strings that are peculiar
% to the title page. Among other things it can typeset
@@ -4720,8 +4923,8 @@ Skipping any redefinition\MessageBreak}%
\ifcsundef{ifsecondaria}{\newif\ifsecondaria\secondariafalse}{}
\ifcsundef{ifplurale}{\newif\ifplurale\pluralefalse}{}
-\ifcsundef{ifTOPfront}{\newif\ifTOPfront \TOPfronttrue
-\newif\ifevenboxes \evenboxesfalse}{}
+\ifcsundef{ifTOPfront}{\newif\ifTOPfront \TOPfronttrue}{}
+\ifcsundef{ifevenboxes}{\newif\ifevenboxes \evenboxesfalse}{}
\ifcsundef{c@tomo}{\newcounter{tomo}}{}
@@ -4877,15 +5080,13 @@ Skipping any redefinition\MessageBreak}%
\let\@stitle\empty
-\newcommand*{\titolo}[2][]{%
+\providecommand\titolo{}
+\RenewDocumentCommand\titolo{O{#2} m}{%
\ifbool{triennale}{%
\PackageWarning{topfront}{Il titolo deve essere impostato con
il comando \string\monografia}
}{%
-\def\@tempA{#1}\ifdefempty{\@tempA}%
- {\gdef\@stitle{#2}}{\gdef\@stitle{#1}}%
- \gdef\@titolo{#2}%
- }%
+ \gdef\@stitle{#1}}\gdef\@titolo{#2}%
}
\def\sottotitolo#1{\gdef\@subtitle{#1}}
% \end{macrocode}
@@ -4901,22 +5102,24 @@ Skipping any redefinition\MessageBreak}%
% of tetratricotomised blond hair}
%\end{verbatim}
% and the title page, for example, will contain something like this:\\[\bigskipamount]
-% \begin{minipage}{\textwidth}\centering
+% \fbox{\begin{minipage}{\textwidth}\centering
% {\Large Master Thesis\\ in\\ Applied Tetratricotomy\par}\bigskip
% {\huge Tetratricotomy of blond hair\par}\bigskip
% {\large Accurate measurements of the four fourths\\
% of tetratricotomised blond hair}
-% \end{minipage}\bigskip
+% \end{minipage}}\bigskip
+%
% \begin{macrocode}
\let\@materia\empty
\def\Materia#1{\def\@materia{#1}}\let\materia\Materia
% \end{macrocode}
%
% Things get more complicated for doctoral theses; in general
-% there is no supervisor; at most if a professor is assigned to supervise or control the PhD student's work this may be called
+% there is no supervisor; at most if a professor is assigned
+% to supervise or control the PhD student's work this may be called
% in whatever mode but here we assume his name is input
% with the command |\tutore| even if “tutor” does not appear
-% as the best choice; in any case in Italian “tutore” does
+% to be the best choice; in any case in Italian “tutore” does
% not have the same meaning as the English word “tutor”.
%
% Most Doctoral Schools require to name the School's director
@@ -4940,7 +5143,7 @@ Skipping any redefinition\MessageBreak}%
% this bundle accepts up to three names for each category.
% The |\second...| commands set the plural forms of the
% labels printed above the name lists. For the candidates
-% there are different commands to input ladies or gentlemen
+% there are different commands to input women or men
% names; according to the masculine (ending in `o')
% or feminine (ending in `a') commands, the appropriate
% true or false values are assigned to the boolean variable
@@ -4966,7 +5169,7 @@ Skipping any redefinition\MessageBreak}%
% specification so that different actions must be taken;
% if the option \texttt{classica} is in force, then the
% formatting of the “date” may be still different.
-% This command is aliased with |\esamendidottorato|
+% For PhD theses this command is aliased by |\esamendidottorato|
% which literally means “defence of the doctoral dissertation”;
% nevertheless both commands refer to a simple date
% in one of those formats.
@@ -5058,7 +5261,7 @@ Skipping any redefinition\MessageBreak}%
\def\annoaccademico#1{\ifclassica
\def\@submitdate{{\large\textsc{\AnnoAccademico}} {\Large\s@tanno#1!}}
\else
- \PackageWarning{toptesi}{\string\annoaccademico\space
+ \PackageWarning{topfront}{\string\annoaccademico\space
is usable only when the\MessageBreak
`classica' option is in force}%
\def\@submitdate{\AnnoAccademico\ #1 --- Needs the `classica' option}
@@ -5077,7 +5280,11 @@ Skipping any redefinition\MessageBreak}%
% literal information to be typeset in the title page.
% |\ciclodidottorato| requires an uppercase roman numeral
% (in Italy), but it can accept anything that can precede
-% the infix word “cycle”.
+% the infix word “cycle”. Notice: in many contries roman numerals
+% are generally used as ordinal adjectives; in other countries
+% roman numerals are just numbers; therefore the fortieth cycle
+% in Italy is marked as “XL ciclo”, while in France it is marked
+% as “XL\raise0.7ex\hbox{\scriptsize e} cycle”.
% Macros |\corsodilaurea| and |\corsodidottorato| specify
% the degree course qualification; you would specify just
% “Elettronica”, for example, and the module will write
@@ -5244,8 +5451,7 @@ Skipping any redefinition\MessageBreak}%
% override the configuration ones.
%
% \begin{description}[noitemsep]
-% \def\Item[#1]{\item[\normalfont\texttt{\char92#1}]
-% sets or changes the string}
+% \def\Item[#1]{\item[\cs{\char92#1}] sets or changes the string}
% \Item[FacoltaDi] “Facolt\`a di” in, say, “Faculty of”
% \Item[DottoratoIn] “Dottorato in” in, say, “PhD in”
% \Item[CorsoDiLaureaIn] “Corso di Laurea in” in, say,
@@ -5311,14 +5517,13 @@ Skipping any redefinition\MessageBreak}%
% the single |\CandidateName| that should be used in a
% language depended way and with the correct number and
% gender once for all.
-% The four endings in the Italian strings allow to
-% exercise the correct selection only for Italian;
-% a specific test is made inside the |\frontespizio|
-% command; because of this, the same machinery cannot
-% be used, say, for French but maybe in the future this
-% feature is resolved in a proper way. The same is true
-% for the supervisor and the co-supervisor strings that
-% may be changed once for all with |\AdvisorName| and
+% The four endings in the Italian strings used to allow
+% the correct selection only for Italian.
+% With the current of this TOPtesi bundle the tests work
+% in a different way, so as to perform correctly also in
+% other languages. The same is true for the supervisor
+% and the co-supervisor strings that may be changed once
+% for all with |\AdvisorName| and
% |\CoAdvisorName|.
% \begin{macrocode}
\IfFileExists{\jobname.cfg}{\input{\jobname.cfg}}%
@@ -5511,7 +5716,7 @@ Skipping any redefinition\MessageBreak}%
% environment, we have to behave as with the |\frontespizio|
% command, but we must test for a possible asterisk following
% the command; for this reason we defined the |\TPTmaybestar|
-% that% absorbs one following token: if the token is an
+% that absorbs one following token: if the token is an
% asterisk, we set the appropriate settings for the previous
% behaviour of the isolated command, but if it is
% not an asterisk we must set it back into the list after
@@ -5714,7 +5919,7 @@ Skipping any redefinition\MessageBreak}%
% Going down in the title page, now comes the optional
% insertion of the university logo(s); “optional” in both
% meanings: one or more university logos are not generally
-% required in a thesis, and in case it depends if the
+% required in a thesis, and, in case, it depends if the
% logo(s) have to be put in the header or here.
% This is a simple task since the |\logosede| already
% defined the contents to the box |\TPT@logobox|, and this
@@ -5722,7 +5927,7 @@ Skipping any redefinition\MessageBreak}%
% with its argument in a specific line of the configuration
% file or within the |frontespizio| environment.
% If such box |\TPT@logobox| is void, the already defined
-% |\printloghi| macro does not do anything.
+% |\printloghi| macro does not do anything.^^A >>>>>>
% \begin{macrocode}
\unless\iftopTPTlogos
{\vfill\centering \printloghi\par}\fi
@@ -5784,7 +5989,7 @@ Skipping any redefinition\MessageBreak}%
%
% For the supervisor(s) and the candidate(s) name(s)
% a different approach is used for each one of the three
-% categories of theses. If a bachelor degree
+% categories of theses persons. If a bachelor degree
% report is dealt with, the name of the \emph{single}
% candidate is centred and written in caps-and-small-caps.
% \begin{macrocode}
@@ -5800,7 +6005,7 @@ Skipping any redefinition\MessageBreak}%
% line with proper number and gender; in the second line
% the first name, and in the subsequent lines,
% if there are any, the other names. These virtual boxes
-% actually contain a tabular environment each; these
+% in reality contain a tabular environment each; these
% environments shall be actually typeset when these virtual
% box macros are executed. If the \texttt{classica} option
% is in force no label is set over the principal advisor
@@ -5824,7 +6029,7 @@ Skipping any redefinition\MessageBreak}%
% below the candidate's name.
% If the user wants it typeset on the same line and or with a
% different label s/he has to redefine the macro |\IDlabel| by
-% means of the \cs{ID} macro described in previous sections;
+% means of the \cs{ID} macro described in previous sections.
%
% Example redefinitions are shown in the sample files.
% Notice that with the new definition of the candidates' setting
@@ -5990,9 +6195,9 @@ Skipping any redefinition\MessageBreak}%
% words and labels, and the commands to introduce the
% specific thesis data; eventually it specifies the title
% page layout and provides for its generation and to a
-% copyright and disclaimer sentence on its verso page.
+% copyright and disclaimer sentence on its page verso.
%
-% It produces also a colophon where some data concerning
+% The module produces also a colophon where some data concerning
% the thesis typesetting details are given. This colophon
% is saved and used on the last even page of the complete thesis.
%
@@ -6049,27 +6254,29 @@ Skipping any redefinition\MessageBreak}%
% \begin{macrocode}
\AtBeginDocument{%
\providecommand\diff{}\renewcommand{\diff}{\mathop{}\!\mathrm{d}}
-\providecommand{\gei}{\ensuremath{\mathop{\mathrm{\mathstrut j}}\nolimits}}
+\providecommand{\iu}{\ensuremath{\mathop{\mathrm{\mathstrut i}}\nolimits}}
+\providecommand{\ju}{\ensuremath{\mathop{\mathrm{\mathstrut j}}\nolimits}}
\providecommand{\eu}{\ensuremath{\mathop{\mathrm{e}}\nolimits}}
-\let\iu\gei}
+\let\gei\ju}
% \end{macrocode}
% Such a definition allows to typeset math expression containing
% integrals with a small space between the integrand and the
% integrating differential; on the contrary the leading space does
% not disturb typesetting differential equations. The above
% definitions include also the \sigla{ISO} compliant ways of writing
-% the Napier number `e', and the imaginary unit |\iu| that
-% sets an operator-like roman `j' as it is customary in
-% most engineering disciplines. The alias |\iu| to the |\gei|
-% command may be redefined if the PhD student wants to use for
-% example ‘i’; the example file \texttt{toptesi-scudo-example.tex}
-% uses the Greek ‘iota’ and specifies that this use is \emph{wrong}!
+% the Napier number `e', and the two forms of imaginary unit |\iu|
+% and |\ju| that set an operator-like roman `i' or`j' as it is customary in
+% most engineering disciplines. The common alias |\gei| to the |\ju|
+% command may be redefined if the PhD student wants to use a common
+% phonetically transliterated name for the letter `j'; the example file
+% \texttt{toptesi-scudo-example.tex} uses the Greek ‘iota’ and specifies
+% that this use is \emph{wrong}!
%
% Next an option is defined, |mybibliostyle| which allows the user to
% establish his own style for the bibliography. By default the
% |toptesi-scudo| module loads |biblatex| with a set of options that
% allow numerical listing and numerical citation according to the IEEE
-% standards for its Transaction. PhD students doing their theses in
+% standards for its Transactions. PhD students doing their theses in
% other scientific domains may use different styles for bibliographics
% listings and citation methods. By setting this option |mybibliostyle|
% among the class ones, it is automatically treated as a global option
@@ -6115,12 +6322,11 @@ Skipping any redefinition\MessageBreak}%
% are preferred by many users who are not aware that
% computations are now native of modern typesetting
% programs\footnote{All the three typesetting programs we are dealing
-% with here. \LuaLaTeX\ can do also floating point computations
-% thanks to the language Lua; all programs may benefit from the
-% advances of the \LaTeX3 language, that has a special facilities
+% with here. All modern programs may benefit from the
+% advances of the \LaTeX3 language, that has special facilities
% to perform floating point calculations.}; also advanced
% tests are natively available with such programs, but
-% since this class loads the |etooolbox|, its powerful
+% since this class loads the |etoolbox|, its powerful
% and robust commands are already available; therefore
% these packages are loaded only for the user comfort,
% although they are not really required.
@@ -6162,7 +6368,7 @@ Skipping any redefinition\MessageBreak}%
\@ifpackageloaded{xparse}{}{%
\RequirePackage{xparse}}% Command and environment advanced definitions
\RequirePackage{lscape} % Supports landscape Layout
-\RequirePackage{setspace} % Define line spacing in paragraph. Don't use!
+\RequirePackage{setspace} % Define line spacing in paragraph. Don't use it!
\RequirePackage{calc} % Calculation macros
\RequirePackage{ifthen} % Conditional statements
\RequirePackage{caption} % Configure captions
@@ -6178,7 +6384,7 @@ Skipping any redefinition\MessageBreak}%
% groups is defined; they are mostly examples of “how to”;
% and in particular they are models to define other
% nomenclature groups. Notice that the string comparison
-% tests are made through the testing robust commands
+% tests are made through the robust testing commands
% provided by the |etoolbox| package.
% \begin{macrocode}
\usepackage[intoc]{nomencl}% Generate nomenclatures or glossaries
@@ -6198,10 +6404,10 @@ Skipping any redefinition\MessageBreak}%
% raw file must be processed by means of program
% \prog{makeindex} with special options. Assuming
% that your thesis main file is named |MyPhDthesis.tex|,
-% after compiling with pdfLaTeX, you have to open a
+% after compiling with pdfLaTeX, you should open a
% terminal, change the working directory into that
% where your main file is stored, and
-% issue and execute the line command
+% enter and execute the line command
%{\small
%\begin{verbatim}
%makeindex -s nomencl.ist -t MyPhDthesis.nlg -o MyPhDthesis.nls MyPhDthesis.nlo
@@ -6223,9 +6429,11 @@ Skipping any redefinition\MessageBreak}%
% procede by closing the auxiliary file that collect
% nomenclature entries, and run \prog{makeindex} with
% the proper options and file names directly through the
-% “magic command” |\write18|.
-%
-% We then define a new command
+% “magic command” |\write18|. Again all this is automatically
+% performed by the macros defined by the \file{toptesi-scudo}
+% module, therefore your nomenclature is up to date at each
+% run, without any need to explicitly use unusual undocumented
+% native \TeX\ commands. In facts we define a new command
% to process the nomenclature files and print them out.
%
% Again the test for an empty optional argument is made by
@@ -6277,7 +6485,7 @@ Skipping any redefinition\MessageBreak}%
% |resources.bib|, if it exists; since a generic name is not recommended,
% we suggest to name at least one of your databases with the same name
% as the user's thesis master file with extension |.bib|; the |\jobname|
-% macro, actually contains the thesis master file. If neither
+% macro, actually contains the thesis master file name. If neither
% |resources.bib| nor |\jobname.bib| exist or the typesetting engine
% cannot find them, it is the user's responsibility to create a |.bib|
% file and include it in his/her master file preamble as an argument to
@@ -6662,6 +6870,7 @@ This class is available in every up-to-date and complete
% \fi
%
% \subsection{The \texttt{topcoman.sty} code}
+%
% This file may be used as an independent extension package
% for the \texttt{report} document class, and possibly for
% other classes.
@@ -6705,7 +6914,7 @@ This class is available in every up-to-date and complete
% Greek letters taken from the math italic font; the
% upright ones are still available within the |\mathrm|
% command argument.
-% Attention: \cs{DeclareSlantedCapitalGreekLetters} is defined
+% Warning: \cs{DeclareSlantedCapitalGreekLetters} is defined
% only when using \prog{pdflatex}; with the other two engines
% it is disabled and produces a warning.
% \begin{macrocode}
@@ -6758,7 +6967,8 @@ This class is available in every up-to-date and complete
% \texttt{babel} language if the thesis is typeset with
% \textsf{pdflatex} that loads that package; these commands
% are not predefined if the thesis is typeset with \XeLaTeX\
-% or \LuaLaTeX\ that do not load the \texttt{babel} package;
+% or \LuaLaTeX\ that often load \pack{polyglossia} instead
+% of the \pack{babel} package;
% but remember; this package may be used as a stand alone
% one, without the initial call by the \texttt{toptesi}
% document class, so that the language Italian might be
@@ -6768,60 +6978,69 @@ This class is available in every up-to-date and complete
% \begin{macrocode}
\providecommand{\ohm}{\textormath{\textohm}{\mathrm{\Omega}}}
\@ifpackageloaded{toptesi}{%
-\providecommand\ped{}\providecommand\ap{}%
-\renewcommand*{\ped}[1]{\textormath{\textsubscript{#1}}{_{\mathrm{#1}}}}%
-\renewcommand*{\ap}[1]{\textormath{\textsuperscript{#1}}{^{\mathrm{#1}}}}}%
-{\providecommand*{\ped}[1]{\textormath{\textsubscript{#1}}%
- {_{\mathrm{#1}}}}%
-\providecommand*{\ap}[1]{\textormath{\textsuperscript{#1}}%
- {^{\mathrm{#1}}}}}
-%
-\@ifpackageloaded{siunitx}{\def\unit#1{\si{\,#1}}}%
- {\providecommand\unit{}%
- \renewcommand\unit[1]{\ensuremath{{\mathrm{\,#1}}}}%
- }
-\providecommand{\gei}{\ensuremath{\mathop{\mathrm{\mathstrut j}\nolimits}}}
+ \providecommand\ped{}\providecommand\ap{}%
+ \renewcommand*{\ped}[1]{\textormath{\textsubscript{#1}}{_{\mathrm{#1}}}}%
+ \renewcommand*{\ap}[1]{\textormath{\textsuperscript{#1}}{^{\mathrm{#1}}}}%
+ \providecommand\diff{}\renewcommand{\diff}{\mathop{}\!\mathrm{d}}
+%
+}{%
+ \providecommand*{\ped}[1]{\textormath{\textsubscript{#1}}%
+ {_{\mathrm{#1}}}}%
+ \providecommand*{\ap}[1]{\textormath{\textsuperscript{#1}}%
+ {^{\mathrm{#1}}}}%
+}
+%
+\@ifpackageloaded{siunitx}{%
+ \def\unit#1{\si{\,#1}}
+}{%
+ \providecommand\unit{}%
+ \renewcommand\unit[1]{\ensuremath{{\mathrm{\,#1}}}}%
+}
+\providecommand{\gei}{\ensuremath{\mathop{\mathrm{\mathstrut j}}\nolimits}}
\providecommand{\eu}{\ensuremath{\mathop{\mathrm{e}}\nolimits}}
-\providecommand{\micro}{\textormath{\textmu}{%
- \ifPDFTeX
- \ifdefined\muup\muup\else\mbox{\textmu}\fi
- \else
- \mathup{\mu}%
- \fi
-}}
+\providecommand{\micro}{%
+ \textormath{\textmu}{%
+ \ifPDFTeX
+ \ifdefined\muup\muup\else\mbox{\textmu}\fi
+ \else
+ \mathup{\mu}%
+ \fi
+ }%
+}
\providecommand{\gradi}{\textormath{\textdegree}{^\circ}}
% \end{macrocode}
%
-% Before this version 6.xx.yy this package used to define
+% Before this major version 6, this package used to define
% the command |\listing| for listing program sources; those
-% definitions got very obsolete in front of several packages
-% already available for this task. For example the package
-% |listings|, very elegant also for the various configurations
+% definitions became obsolete compared to several packages
+% available for this task. For example the package
+% |listings|,that is very elegant also for the various configurations
% it can use; un fortunately it works fine only for verbatim
% sources that contain only \textsc{ascii} characters; yes,
% it is possible the definition of special commands to typeset
% isolated characters not belonging to the \textsc{ascii}
% table, but it is an error prone process. Giving up the
-% niceties of |listings|, the |fancyvrb| works very fine
+% niceties of |listings|, the |fancyvrb| works very well
% with \sigla{UNICODE} and UTF-8 encoded characters.
%
% For backwards compatibility we maintain the command
% |\listing| as a user interface to the |VerbatimInput|
% of package |fancyvrb| with an initial setting of a
-%|\small| font size.
+% |\small| font size.
% \begin{macrocode}
\RequirePackage{fancyvrb}
\fvset{fontsize=\small}
\let\listing\VerbatimInput
% \end{macrocode}
+%
% Of course before using |\listing| the user can set any other
% special configuration s/he desires among those usable with
-% package |fancyvrb|; the default set up shown above is good
-% for \LaTeX\ code input, as well as for any programming language, whose
-% source lines are shorter than 75--80 characters, depending
+% package |fancyvrb|; the default set-up shown above is good
+% for \LaTeX\ code input, as well as for any programming language,
+% whose source lines are shorter than 75--80 characters, depending
% on the normal font size and the document text width; the user
-% can edit the source file as well as setting a smaller font
-% size than |\small|. In certain circumstances the user
+% can edit the source file as well as setting a font
+% size smaller than |\small|. In certain circumstances the user
% should accept protruding lines as well as a compromise
% between editing the source file and selecting a smaller
% font size. This is not a bug of the package, nor a fault
@@ -6834,7 +7053,7 @@ This class is available in every up-to-date and complete
% Remember that the comma as a decimal separator is
% required for all languages except English. If you
% use this module outside TOPtesi, but as an extension
-% of other classes or modules, it's up to you to define
+% to other classes or modules, it's up to you to define
% an “intelligent comma” macro or to load either the
% |icomma.sty| or the |ncccomma.sty| modules that define
% such a macro: the |icomma| package defines the comma
@@ -6858,10 +7077,10 @@ This class is available in every up-to-date and complete
% on and off by using the commands |\IntelligentComma|
% and |\NoIntelligentComma|.
%
-% The solution of the solutions would be using the |siunitx|
-% package, whose command |\num| handles any fractional
-% decimal number in the proper way adding also the digit
-% triplets separation of digits when they exceed the number
+% The best solution would be using the |siunitx|
+% package; its |\num| command handles any fractional
+% decimal number in the proper way and also adds the
+% triplet digit separation when they exceed the number
% of four before and/or after the decimal separator. In
% many cases this might be a heavy burden to load a whole
% complex package just for this task, but |siunitx|
@@ -6897,11 +7116,11 @@ This class is available in every up-to-date and complete
%\textsf{B\simulatedSC{ib}\TeX}
%\end{verbatim}
% in order to get a decent approximation of small caps; this
-% poor man solution should not be necessary when using OpenType
+% poor man solution is not necessary when using OpenType
% fonts that have their facilities to use fake small caps in case
-% this shape was missing from the collection. This is why the
-% \cs{simulatedSC} macro is defined only if |pdfLaTeX| is being
-% used for typesetting.
+% this shape was missing from the selected font collection.
+% This is why the \cs{simulatedSC} macro is defined only if
+% |pdfLaTeX| is being used for typesetting.
%
% A user, Antonio Mele, suggested and requested the
% possibility of having the figure and table names
@@ -6943,10 +7162,16 @@ This class is available in every up-to-date and complete
%\iffalse
%<*topmon>^^A MONOGRAFIA -- TRIENNALE
%\fi
-%\subsection{The \texttt{monografia} module code}
+%\subsection{The \texttt{toptesi-monografia} module code}
+%
% We start by checking if certain files have ben loaded and in
% case we load then. We check if certain switches are defined,
% and in case we define such switches.
+% Notice that by loading this module for bachelor theses the facilities
+% for selecting the folio and/or the header text position are not
+% available if this module is used with any class different from
+% \class{toptesi}; after all this module defines mainly the way
+% of typesetting the title page.
% \begin{macrocode}
\monografiatrue
\@ifpackageloaded{etoolbox}{}{\RequirePackage{etoolbox}}
@@ -7092,6 +7317,7 @@ This class is available in every up-to-date and complete
\newcommand\StrutturaDi[1]{\gdef\@strutturadi{#1\unskip\xspace}}
\newcommand\struttura[2][]{\gdef\@struttura{\ifempty{#1}{}{#1 }%
\@strutturadi #2}}
+\let\FacoltaDi\StrutturaDi \let\facolta\struttura
% \end{macrocode}
% Generally bachelor degree courses are not developed within
% international agreements such as Erasmus, but it may not be
@@ -7154,9 +7380,9 @@ This class is available in every up-to-date and complete
% two more commands are optionally used: |\luogo| to establish
% the location of the signature, and |\giorno| to establish a
% signature date different from the current date. If the |\giorno|
-% is not specified, its value maintains a meaningless default
+% is not specified, its value is a meaningless default
% string, and upon testing for such a string, no location,
-% date and signature is typeset in the legal page; if the
+% date and signature is typeset in the copyright page; if the
% current date should be used, the user should specify
% |\giorno{}|, with a really empty argument.
% \begin{macrocode}
@@ -7183,7 +7409,7 @@ This class is available in every up-to-date and complete
% The label for the candidate list requires a list of comma
% separated names, to a maximum of four names; in order they
% should be the singular masculine, the plural masculine, the
-% singular feminine, and the plural feminine names. No one is
+% singular feminine, and the plural feminine names. No one is
% mandatory, and the list may be completely empty if the label
% should remain blank. The list is scanned and the names are
% assigned to some internal variables that will be used according
@@ -7200,13 +7426,13 @@ This class is available in every up-to-date and complete
%\end{ttsintassi}
% This command, as it may be seen, may be used also to set the
% name list in languages different from Italian.
-% It goes by itself that if the user typesets the thesis in a
+% It goes without saying that if the user typesets the thesis in a
% language where names are gender indifferent (as English,
% Spanish, and other ones) s/he has two choices: ether s/he
% uses the command with just two arguments, as shown above,
% and uses only the masculine commands |\candidato|,
% |\secondocandidato|, and |\terzocoandidato| even with names
-% of female students, or s/he specifies the same names in the
+% of student women, or s/he specifies the same names in the
% arguments~3 and~4, as in arguments ~1 and~2. Lacking this
% action, the corresponding titling names are blank.
% \begin{macrocode}
@@ -7238,7 +7464,7 @@ This class is available in every up-to-date and complete
% from the \LaTeX\ kernel environments that accepts an optional
% asterisk that becomes part of the environment name, and must
% be repeated in the closing environment statement, with the
-% |xparse| facilities the asterisk is just an argument to the
+% |xparse| facilities the asterisk is just an argument among the
% argument list of the opening command: therefore the source
% file contains an opening statement of the form
% |\begin{environment}*|, not |\begin{environment*}|. The user
@@ -7394,7 +7620,8 @@ This class is available in every up-to-date and complete
%\iffalse
%<*topmag>^^A MAGISTRALE
%\fi
-% \subsection{Code for \texttt{master} thesis}
+% \subsection{The \texttt{toptesi-magistrale} module code}
+
% Here we document the code for the \opz{magistrale} option.
% It is a little more complicated than the code for other
% thesis types, because the title page may be typeset in different
@@ -7409,6 +7636,9 @@ This class is available in every up-to-date and complete
% In facts if this module does not receive the suitable
% settings from package |toptesi|,it is possible to call it
% with the suitable options as explained below.
+% In any case if the module is loaded by a class different
+% from \class{toptesi} the facilities for chosing the folio and/or
+% the header text positions are not available.
% \begin{macrocode}
\@ifpackageloaded{etoolbox}{}{\RequirePackage{etoolbox}}
\@ifpackageloaded{xspace}{}{\RequirePackage{xspace}}
@@ -7449,8 +7679,7 @@ This class is available in every up-to-date and complete
% in the counter remains available anyhow; therefore it is
% not excluded that multiple tomes might be typeset in one
% output \sigla{PDF} file to be split in separate files as described
-% in section~\ref{sec:topmagistrale}; I did not test this
-% functionality but I do not exclude it.^^A CONTROLLARE
+% in section~\ref{sec:topmagistrale}.
% \begin{macrocode}
\ifcsundef{c@tomo}{\newcounter{tomo}{\setcounter{tomo}{0}}}{}
\providecommand\tomo{}
@@ -7560,10 +7789,9 @@ This class is available in every up-to-date and complete
% \begin{macrocode}
\let\@stitle\empty % default short title string
-\newcommand*{\titolo}[2][]{%
-\ifstrequal{#1}{}%
- {\gdef\@stitle{#2}}{\gdef\@stitle{#1}}%
- \gdef\@titolo{#2}%
+\providecommand\titolo{}
+\RenewDocumentCommand{\titolo}{O{#2} m}{%
+ \gdef\@stitle{#1}\gdef\@titolo{#2}%
}%
\def\sottotitolo#1{\gdef\@subtitle{#1}}
@@ -7640,7 +7868,7 @@ This class is available in every up-to-date and complete
% Here we define the necessary commands to fill up a comma
% separated list of logo graphic-file names; we define
% everything up to the |\printlogos| command that provides
-% to printing a list of images, duly separated by adequate
+% printing a list of images, duly separated by adequate
% space, all scaled to the same height, and, possibly, even
% the whole logo string duly scaled to fit in the title page
% width. The |\logosede| command, that can be used several
@@ -7648,12 +7876,12 @@ This class is available in every up-to-date and complete
% argument consisting in a dimension; it is used to scale the
% height of the logo image to the desired value, so that the
% whole string of images does not have unusual different
-% logo heights. This dimension is preset to one seventh of
-% the |\textwidth| and on the average it is well suited. With
-% the standard |toptesi| class printed on A4 paper, such height
-% equals 25\,mm; of course on smaller paper it is proportionally
-% smaller; on American sized sheets it may be a little larger,
-% but in general it is adequate to the page size.
+% logo heights. This dimension is preset to 80\% the mean
+% width of the page margins, and on the average it is well suited.
+% With the standard |toptesi| class printed on A4 paper, such
+% height equals about 25\,mm; of course on smaller paper it is
+% proportionally smaller; on American sized papers it may be
+% a little larger, but in general it is adequate to the page size.
% \begin{macrocode}
\newlength{\TPT@logospace}\TPT@logospace=3em\relax
\newsavebox{\TPT@logobox}
@@ -7706,7 +7934,7 @@ This class is available in every up-to-date and complete
%
% Here we define the preset strings; most of them are empty
% strings, but some are real words; the setting commands
-% listed before can easily be used to localise such string
+% listed before can easily be used to localise such strings
% in different languages.
% \begin{macrocode}
\@ifundefined{@titolo}{\def\@titolo{}}{}
@@ -7817,7 +8045,7 @@ This class is available in every up-to-date and complete
% is wrong.
%
% This choice was made because its programming is simpler,
-% but in view of the end user it is simpler to use: for
+% but also, in view of the end user, it is simpler to use: for
% example, if the user does not use the asterisk for typesetting
% the logos at the top of the page, and in a second time
% s/he decides that the title page should be typeset with
@@ -8024,7 +8252,7 @@ This class is available in every up-to-date and complete
\par\clearpage
% \end{macrocode}
%
-% It is useful to remind that the legal page in general is not
+% It is useful to remind that the copyright page in general is not
% compulsory, but it is becoming frequently requested by more
% and more universities. The user can fill up the
% |\retrofrontespizio| argument with as many paragraphs as are
@@ -8054,7 +8282,7 @@ This class is available in every up-to-date and complete
%\iffalse
%<*topdoc>^^A DOTTORALE
%\fi
-% \subsection{The \texttt{toptesi-dottorale} module}
+% \subsection{The \texttt{toptesi-dottorale} module code}
% What follows is mainly a replica of the |topfront| module
% where useless commands have been eliminated; “useless”
% in view of creating a title page for a Ph.D.~thesis.
@@ -8306,7 +8534,7 @@ This class is available in every up-to-date and complete
\let\struttura\facolta
% \end{macrocode}
%
-% next we define how to handle one or more logos; even in
+% Next we define how to handle one or more logos; even in
% PH.D. schools there might be situations where the Ph.D.~program
% has been carried on in several universities; it might be
% required to set the logos of the universities where the research
@@ -8452,10 +8680,10 @@ This class is available in every up-to-date and complete
% We now start setting the |ThesisTitlePage| environment;
% we use the |xparse| functionality to define it; the
% environment accepts an optional asterisk as its first
-% and only argument, that is a single token may be entered
-% without brackets as the very first token after the
-% environment opening statement. If the user wants to use
-% this optional argument, s/he must enter
+% and only (boolean type) argument, that is a single token
+% is entered without brackets as the very first token after
+% the environment opening statement. If the user wants to
+% use this optional argument, s/he must enter
% |\begin{ThesisTitlePage}*| with the asterisk after the
% closing brace. The presence of the asterisk sets the
% logo position to the title page lower half, while its
@@ -8705,7 +8933,10 @@ This class is available in every up-to-date and complete
%</topdoc>
%\fi
%
+%^^A SCUOLA SECONDARIA SUPERIORE
+%
% \subsection{The \texttt{toptesi-sss} module code}
+%
% The module for typesetting the high-school final-work
% title-page starts here. We avoid using a |.def| file and put
% all necessary commands in one file.
@@ -8738,7 +8969,6 @@ This class is available in every up-to-date and complete
\RequirePackage{ifthen} % Conditional statements
\RequirePackage{booktabs} % professional rules in tables
\RequirePackage{multirow} % Multirow table cells are not professional
-\RequirePackage[autostyle]{csquotes} % necessary for biblatex
\ifPDFTeX \RequirePackage{indentfirst}\fi
\raggedbottom
% \end{macrocode}
@@ -8978,4 +9208,13 @@ Anno scolastico \@annoscolastico}}
% package xparse new (may be not that new, but new for me) syntax
% that allows to declare the optional argument descriptors so as to
% inherit the values of other arguments.Such syntax avoids a lot of
-% fragile tests, and is very handy. \ No newline at end of file
+% fragile tests, and is very handy.
+%%%% (version 6.3.07) corrected "Attention!" and "It goes by itself"
+% by "Warning!" and "It goes without saying" respectively.
+%%%% (version 6.4.02) Besides correcting some typos, some options were
+% added in order to set page headers and folios on specific positions;
+% by default headers are centred, and folios are centred in footers;
+% options allow to shift them towards the external margins and
+% sometimes to set footers in headers. Moreover the PDF/A-2b is now
+% described and suggested to set it as the preferred PDF/A conformance
+% level. Documentation has been modified accordingly.