From d1eeaae011ac8b28bbf550e24bc737dfba489a9d Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 20 May 2020 21:39:30 +0000 Subject: toptesi (20may20) git-svn-id: svn://tug.org/texlive/trunk@55220 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/toptesi/toptesi.dtx | 1565 +++++++++++--------- 1 file changed, 902 insertions(+), 663 deletions(-) (limited to 'Master/texmf-dist/source/latex/toptesi') diff --git a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx index ef86c19b163..843f5659b19 100644 --- a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx +++ b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx @@ -142,7 +142,7 @@ School of Turin. %\ProvidesPackage{toptesi-magistrale}[% %\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 for typesetting university theses] %Extension for toptesi.cls] %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. % % \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 % %\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. -- cgit v1.2.3