From 287951704565bf8d0b2aaab9c64ba3e7a4ef6a65 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 28 May 2011 17:33:15 +0000 Subject: toptesi uni* removal, etc. (27may11) git-svn-id: svn://tug.org/texlive/trunk@22647 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/toptesi/toptesi.dtx | 790 ++++++++------------- 1 file changed, 310 insertions(+), 480 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 0e006e96844..2bf9d7ef74f 100644 --- a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx +++ b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx @@ -25,7 +25,7 @@ This work is "author-maintained" This work consists of this file toptesi.dtx, a README file and the derived files: -toptesi.cls, toptesi.sty, topfront.sty, topcommand.sty, topsize14, +toptesi.cls, toptesi.sty, topfront.sty, topcommand.sty, toptesi.cfg, and the English documentation toptesi.pdf; Furthermore the bundle contains the documentation source file toptesi-doc.tex @@ -39,7 +39,7 @@ frontpages. The toptesi.cfg file is a sample of a local configuration file that can be freely edited and modified. -By running pdflatex on toptesi.dtx the user gets the class, sty and cfg files +By running pdflatex on toptesi.dtx the user gets the cls, sty and cfg files and the English documentation file in pdf format. The documentation file toptesi-doc.pdf is in Italian; its source file is @@ -51,7 +51,6 @@ another example of how to use toptesi. \generateFile{toptesi.sty}{t}{\from{toptesi.dtx}{topsty}} \generateFile{topcoman.sty}{t}{\from{toptesi.dtx}{topcmn}} \generateFile{topfront.sty}{t}{\from{toptesi.dtx}{topfrn}} -\generateFile{topsiz14.clo}{t}{\from{toptesi.dtx}{top14}} \generateFile{toptesi.cfg}{t}{\from{toptesi.dtx}{topcfg}} \def\tmpa{plain} @@ -59,7 +58,7 @@ another example of how to use toptesi. \endgroup % % -% Copyright 1989--2006 Claudio Beccari +% Copyright 2005--2011 Claudio Beccari % % This file is part of the TOPtesi bundle % ------------------------------------------- @@ -86,7 +85,7 @@ another example of how to use toptesi. % \iffalse %<*driver> \documentclass{ltxdoc} -\ProvidesFile{toptesi.dtx}[2011/05/11 v.5.05 Documented TeX file for +\ProvidesFile{toptesi.dtx}[2011/05/25 v.5.50 Documented TeX file for the TOPtesi bundle] \GetFileInfo{toptesi.dtx} \title{The TOPtesi bundle} @@ -101,7 +100,7 @@ the TOPtesi bundle] % % \fi % -% \CheckSum{2933} +% \CheckSum{2441} % %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -134,7 +133,7 @@ the TOPtesi bundle] % \end{abstract} % % \section{Introduction} -% The TOPtesi bundle collects a certain number of files, specifically +% The TOPtesi bundle collects a certain number of files, specifically: % \begin{itemize} % \item a class file \texttt{toptesi.cls} to be used as the main document class; the main % document may be any of a certain number of reports that in Italy @@ -143,8 +142,8 @@ the TOPtesi bundle] % magistrale'', ``tesi di dottorato'', ``dissertazione di dottorato'', and so on. % All these documents have in common the fact that they all conclude a period of university % education. Moreover since they may conclude a double degree university program, they may -% receive foreign names such as, for example, ``Projet de fin d'\'etudes'', ``Master thesis'', -% and the like. +% receive foreign names such as, for example, ``Projet de fin d'\'etudes'', ``Master +% thesis'', and the like. % \item An extension package \texttt{toptesi.sty} that contains most of the code % for the real typesetting; it might be used as an extension to the report class file, % although this use is discouraged. @@ -155,19 +154,14 @@ the TOPtesi bundle] % title page fixed information in languages different from Italian. % \item A third extension package \texttt{topcoman.sty} that defines a certain number % of user commands suitable for typesetting technical matters. -% \item A fourth extension package \texttt{trieste.sty} and its accompanying package option -% \texttt{topsiz14.clo} that is used as an option by -% \texttt{toptesi.cls} in order to define a certain number of variations required -% for theses in humanities at the university of Trieste; these variations are not that -% important, but they may be preferred also in other faculties so that the suitable option -% comes handy also in other situations. -% \item The logos of a certain number of Italian universities in \texttt{.eps}, -% \texttt{.jpg}, and \texttt{.pdf} formats; such logos are included for the user sake, but -% the user should pay attention to use them according to the rules and limitations of -% each university and it is strongly advised to look up such regulations in each -% university Web site. +% \item Previous version of this bundle contianed also the logos of a certain number of +% universities; These logos are not distributed anymore because of legal constraints. Every +% one who is working on his/her degree course final report must retrieve the logo of his/her +% university, but s/he should pay attention to use it according to the rules and limitations +% of the university. % \item A documentation file \texttt{toptesi-doc.pdf} written in Italian where every feature -% is explained in detail; essential information is given in this English documentation. +% is explained in detail; this English documentation gives a summary of the necessary +% information and contains the code description. % \end{itemize} % % The above files are complemented with a configuration file that any user may @@ -193,7 +187,7 @@ the TOPtesi bundle] % texts written in non latin alphabets, special symbols for philological mark-up, and % the like; a common typewriter would not be suitable and the quality of the contents % requires professional typesetting; this is why I strongly believe that instructions -% on typesetting styles that refer to the good old times of mechanical typewriters +% on typesetting styles that refer to the ``good old times'' of mechanical typewriters % should be banned. % % Most new commands refer themselves to the information that should be typeset in the @@ -210,7 +204,7 @@ the TOPtesi bundle] % indication. % % \Item[classica] Specifies a general modification of certain details that are -% supposed to be more adequate in the humanities; specifically this option +% supposed to be more adequate in the humanities fields; specifically this option % lets old style numbers to be used for certain numerical pieces of information; % some variations are also introduced in the title page. % @@ -223,18 +217,14 @@ the TOPtesi bundle] % \Item[14pt] Extends the normal size choice to 14 points; it is appreciated % in various fields of humanities, but I would discourage this use in a technical % thesis, where 10 point perhaps is too small, but 11 point or 12 point typesetting -% may be adequate. It is worth mentioning that this option implements the font -% settings in a different way from what is being done with the \texttt{extsizes} package -% bundle; this is why the original \texttt{size14.clo} class option file has been renamed -% \texttt{topsiz14.clo} so as to avoid conflicts with the \texttt{size14.clo} file belonging -% to that bundle. +% may be adequate. % % \Item[autoretitolo] This option modifies the left hand (even numbered) pages % in two side typesetting; normally the even numbered page headings contain % the chapter title, while the odd numbered ones contain the current section title. -% If the \texttt{classica} option has been specified, then with this option it is possible to -% have even numbered headings contain the author's name and the thesis title, while the odd -% numbered ones contain the chapter title. Since the thesis title might be too +% If the \texttt{classica} option has been specified, then with this option it is possible +% to have even numbered headings contain the author's name and the thesis title, while the +% odd numbered ones contain the chapter title. Since the thesis title might be too % long to fit in the header together with the author's name, the |\title| macro % as been modified so as to accept an optional short title, similarly to the % sectioning commands. @@ -293,8 +283,8 @@ the TOPtesi bundle] % \Item[tutore] gets the name of the doctorate tutor; there is no difference with regards % to the \cs{relatore}, but the default phrase ``Tutore'' is printed above % this person's name. -% \Item[TutorName] gets the phrase that describes the tutor position, possibly in a different -% language. +% \Item[TutorName] gets the phrase that describes the tutor position, possibly in a +% different language. % \Item[AdvisorName] gets the string that qualifies the supervisor(s); the default string % is ``Relatore:'' or ``Relatori:'' for the plural; in another language % this command is used to define the string, say, ``Supervisors:'' if the @@ -310,13 +300,13 @@ the TOPtesi bundle] % \Item[terzocandidato] gets the name of the third male author % \Item[terzacandidata] gets the name of the third female author; most often the thesis % author is just one person; but there are some institutions where group -% final works are accepted; it is assumed that the group does not contain more -% than three authors. The specification of the gender allows the software -% to determine the correct labeling phrase in the proper gender and proper -% number. +% final works are accepted; it is assumed that the group does not contain +% more than three authors. The specification of the gender allows the +% software to determine the correct labeling phrase in the proper gender +% and proper number. % For different languages there might be no difference in gender but % there is a difference in the plural ending. -% \Item[CandidateName] gets the string that describes the student status in a foreign +% \Item[CandidateName] gets the string that describes the student status in a foreign % language or even in Italian; the default string is ``Candidato:'' (with % colons) adjusted to masculine or feminine, singular or plural; with the % option \texttt{classica} the string becomes ``Laureando:''; in other @@ -352,12 +342,12 @@ the TOPtesi bundle] % after all the command |\annoaccademico| is defined only with that option. % \Item[logosede] specifies the name of the file that contains the university logo; % no default is defined; rather a warning message is issued if no name is -% given or the file is missing, but typesetting goes on without the inclusion -% of any logo. +% given or the file is missing, but typesetting goes on without the +% inclusion of any logo. % \Item[setbindingcorrection] sets up the length to displace the text block to the external -% margin so as to have a wider internal margin to accommodate for the binding -% correction. Its argument is not optional and is used to modify the default -% correction of 7\,mm. +% margin so as to have a wider internal margin to accommodate for the +% binding correction. Its argument is not optional and is used to modify +% the default correction of 7\,mm. % \end{description} % % Since the infix strings are all memorized into control sequences and for each of them it @@ -409,17 +399,16 @@ the TOPtesi bundle] % not. % % Should the required language(s) be missing, the user is forced to read his/her -% distribution -% instructions, so as to find out how to configure his/her system so as to consider the -% languages s/he wants to work with, and finally s/he must recreate the format files and put -% them in the proper places of the standard or the local folder tree. The user is invited to -% carefully investigate on these fine points and to configure the system properly; it would -% be very upsetting using fine software for producing a perfectly typeset thesis that, -% unfortunately, has wrong hyphenation points! Luckily enough, recent distributions of the -% \TeX\ system have all the known hyphenation rules preloaded; in any case even older -% distributions have available command line commands or graphical user interfaces that make -% it easy to perform the tasks of changing the list of preloaded hyphenation rules and -% rebuilding all the format files, moving them to the proper places. +% distribution instructions, so as to find out how to configure his/her system so as to +% consider the languages s/he wants to work with, and finally s/he must recreate the format +% files and put them in the proper places of the standard or the local folder tree. The user +% is invited to carefully investigate on these fine points and to configure the system +% properly; it would be very upsetting using fine software for producing a perfectly typeset +% thesis that, unfortunately, has wrong hyphenation points! Luckily enough, recent +% distributions of the \TeX\ system have all the known hyphenation rules preloaded; in any +% case even older distributions have available command line commands or graphical user +% interfaces that make it easy to perform the tasks of changing the list of preloaded +% hyphenation rules and rebuilding all the format files, moving them to the proper places. % \end{itemize} % % The TOPtesi bundle adds very little to the user commands; nevertheless the package @@ -487,7 +476,7 @@ the TOPtesi bundle] % nowadays the letter ``j'' in Italian is called with the English name % (much shorter than the traditional Italian name ``i~lunga'') and the % indicated spelling ``gei'' is the phonetic Italian rendering of the -% English word. The imaginary unit is not a variable, it is a vector operator, +% English word. The imaginary unit is not a variable, it may be viewed as a vector operator, % so that the ISO regulations require for this symbol an upright type. % % % \Item[eu] inserts the Euler number symbol ``e'' in upright type; since @@ -502,13 +491,13 @@ the TOPtesi bundle] % written for the thesis; for best results it is recommended that the source program has % lines not longer than 80 characters. There exists an external package \texttt{listings}, % that the user might want to load, that does a similar work in a more professional and -% configurable way; our package simpler command might be preferable for its simplicity. +% configurable way; this package simpler command might be preferable for its simplicity. % \end{description} % % All these commands are defined into the separate package \texttt{topcoman.sty} % that can be used as an independent extension package with (possibly) any document class. % -% \section{Format PDF suitable for archiving} +% \section{PDF format suitable for archiving} % Politecnico di Torino as well as many other Italian and foreign universities are % moving towards archiving theses in electronic format, specifically in the PDF one. The % problem of course is: ``Will it be possible to read the archived documents, say, fifty @@ -559,12 +548,12 @@ the TOPtesi bundle] % not already part of your \TeX\ system installation. % \item Install in the main \texttt{pdfx} directory a good version of a color model % profile file, such as, for example, \texttt{ECI-RGB-V1.0.icc} (see in the download -% page of the site \texttt{www.eci.org}). +% page of the web site \texttt{www.eci.org}). % \item If your thesis main file, the one you run your \texttt{pdflatex} on, is named, % say, \texttt{JohnSmithMasterThesis.tex}, prepare in the same directory another file % named \texttt{JohnSmithMasterThesis.xmpdata} that contains the \emph{metadata} % relative to the thesis; pay attention to follow the stringent syntax described and -% exemplified in the \textsf{pdfx} documetation. A minimal set of \emph{metadata} +% exemplified in the \textsf{pdfx} documentation. A minimal set of \emph{metadata} % example would be the following one: % \begin{verbatim} % \Title{Experiments in Trichotetratomy} @@ -576,7 +565,7 @@ the TOPtesi bundle] % and the standard mathematical fonts require some patching that is already included % in this \texttt{ToPtesi} bundle; but it is not excluded that with other fonts similar % patches might be requested. -% \item Use only PNG and JPEG images with RGB color profiles. +% \item Use only PNG and JPEG or PDF images with RGB color profiles. % \item If you include PDF images that contain some text, be sure that the font for % this text is completely embedded in the included file. Should the PDF file come % from an external drawing program be sure to configure that program so that it embeds @@ -586,7 +575,7 @@ the TOPtesi bundle] % conformity. % \item Verify your final PDF file with a suitable program and do not give up doing the % necessary corrections or modifications while the verification program keeps saying -% the this or that is not conforming to the PDF/A specification. A suitable program +% that this or that is not conforming to the PDF/A specification. A suitable program % is the Preflight plug-in of Adobe Acrobat Professional version 8 or later, but this, % although the most authoritative, is a commercial program; probably your university % has special facilities for this task. @@ -595,7 +584,7 @@ the TOPtesi bundle] % Up to day the realization of a PDF/A conforming file sets forth several problems % that are of great concern for the large Institutions that have thousands of document % a year to archive; it is not a question implied in the free nature of the -% \texttt{pdflatex} program, that, on the opposite, according to our experience has +% \texttt{pdflatex} program, that, on the opposite, according to my experience has % a very high rate of success in producing PDF/A conforming documents. If you stick to % the default \TeX\ system fonts and use this patched version of \texttt{ToPtesi} you % should be able to avoid most problems. @@ -605,14 +594,14 @@ the TOPtesi bundle] % \section{Documented code} % \subsection{The class code} % -% Here begins the usual machinery for stating the required \TeX\ format -% and for sharing some code between the driver and the class part of the code, since they are +% Here begins the usual machinery for stating the required \TeX\ format and for sharing some +% code between the driver and the class part of the code, since they are % supposed to carry the same date and version number, besides the description string. % \begin{macrocode} %<*class> \NeedsTeXFormat{LaTeX2e} \ProvidesClass{toptesi}% -[2011/05/11 v.5.05 Class for typesetting university theses] +[2011/05/25 v.5.50 Class for typesetting university theses] % \end{macrocode} % % The class itself is very simple since it requires just the \texttt{report} @@ -620,12 +609,14 @@ the TOPtesi bundle] % specified for the \texttt{toptesi} class are passed on to the \texttt{report} % class; the latter, on turn, is called with the \texttt{a4paper} option. % According to the \LaTeX\ machinery of option passing the options passed on to -% the loaded class should be appended to the existing options, so that if \texttt{letterpaper} +% the loaded class should be appended to the existing options, so that if +% \texttt{letterpaper} % was specified in the calling statement of \texttt{toptesi}, this last option would % override the default \texttt{a4paper} option. The same holds true for the other package -% options except for the encoding name used as an option for the \texttt{inputenc} package; this % simply does not work and the package is not loaded any more as it was in the previous % versions\footnote{Thanks to Enrico Gregorio who pointed out this feature.}. +% options except for the encoding name used as an option for the \texttt{inputenc} package; +% this simply does not work and the package is not loaded any more as it was in the previous % versions\footnote{Thanks to Enrico Gregorio who pointed out this feature.}. % Similarly if another language was specified in the list of \texttt{toptesi} -% options, this language would be appended yo the \texttt{babel} package default options +% options, this language would be appended to the \texttt{babel} package default options % and would become the default language. % \begin{macrocode} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}} @@ -640,17 +631,18 @@ the TOPtesi bundle] % \subsection{The \texttt{toptesi.sty} code} % The greatest part of the \texttt{toptesi} class code is saved into a separate file % partly for backward compatibility reasons (before version 3.x \texttt{toptesi} was just -% an extension to the \texttt{report} class) and partly because it might be used as a standaolone -% package, although, take notice, it might conflict with the \texttt{book} class code and certainly -% it is incompatible with the \texttt{article} class. This package must contain its own \TeX\ -% format declaration and might have different version and subversion numbers compared to the -% class file and the other invoked packages that are part of the same bundle. +% an extension to the \texttt{report} class) and partly because it might be used as a +% standalone package, although, take notice, it might conflict with the \texttt{book} class +% code and certainly it is incompatible with the \texttt{article} class. This package must +% contain its own \TeX\ format declaration and might have different version and subversion +% numbers compared to the class file and the other invoked packages that are part of the +% same bundle. % % \begin{macrocode} %<*topsty> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{toptesi}% -[2011/05/11 v.5.05 Extension for toptesi.cls]% +[2011/05/25 v.5.50 Extension for toptesi.cls]% % \end{macrocode} % % We start by defining the debugging macros; these trace commands and macros @@ -664,16 +656,21 @@ the TOPtesi bundle] % Now we define the specific package options: \texttt{classica} and \texttt{trieste} % are identical; \texttt{trieste} is maintained for backward compatibility. % The option \texttt{14pt} is for choosing a normal size of 14pt; the class option -% file \texttt{topsiz14.clo} has a name that should not conflict with other -% similar class option packages and is in line with the other standard \texttt{size??.clo} -% files. \texttt{chapterbib} allows to set a list of references at the end of each chapter. +% file \texttt{size14.clo} is distributed with the \texttt{extsizes} pacckage and is already +% included in any complete distribution of the major \TeX\ system ones; in previous versions +% of this bundle there was a specific option class file for this large size, but with the +% latest complete distributions available, there is no chance that the existing option file +% is missing. +% +% \texttt{chapterbib} allows to set a list of references at the end of each chapter. % For the options specific to the \texttt{classica} style a couple of boolean variables are % defined and the option definitions set them to the value ``true''. % \begin{macrocode} \newif\if@utoretitolo \@utoretitolofalse \newif\if@ldstyle \@ldstylefalse +\newif\if@xivpt \@xivptfalse % \end{macrocode} - +% % \begin{macrocode} \newlength\T@Pbinding\setlength\T@Pbinding{7mm}\def\setbindingcorrection#1{\T@Pbinding=#1} \newif\if@binding \@bindingfalse @@ -681,9 +678,9 @@ the TOPtesi bundle] \newif\ifchapterbibliography \chapterbibliographyfalse \newif\ifclassica \classicafalse \DeclareOption{cucitura}{\@bindingtrue} -\DeclareOption{14pt}{\input{topsiz14.clo}} +\DeclareOption{14pt}{\@xivpttrue} \DeclareOption{chapterbib}{\chapterbibliographytrue} -\DeclareOption{trieste}{\classicatrue} +\DeclareOption{trieste}{\classicatrue}% Just for backwards compatibility \DeclareOption{classica}{\classicatrue} \DeclareOption{autoretitolo}{\ifclassica\@utoretitolotrue\fi} \DeclareOption{oldstyle}{\ifclassica\@ldstyletrue\fi} @@ -691,14 +688,14 @@ the TOPtesi bundle] % \ProcessOptions\relax % \end{macrocode} -% The \texttt{graphicx} package is loaded by default; it is required for -% inserting the university logo; if the user forgets that this package has already -% been loaded +% The \texttt{graphicx} package is loaded by default; it is required for inserting the +% university logo; if the user forgets that this package has already been loaded % nothing dramatic happens, because the |\usepackage| and |\RequirePackage| macros % perform the necessary tests in order to avoid reloading the same packages again % and again. % \begin{macrocode} \RequirePackage{graphicx} +\if@xivpt\input{size14.clo}\fi % \end{macrocode} % % The text height gets set so as to cope with the standard UNI A4 size; in @@ -808,12 +805,12 @@ the TOPtesi bundle] Use the optional argument of command \string#1\MessageBreak See the LaTeX Handbook (1994) on section C.4.1\MessageBreak}} % \end{macrocode} -% The various tables of contents or figures or tables require some boolean variables to -% be defined; in facts, although the ISO regulations require that every technical report contains -% the list of figures and/or tables, in Italy theses rarely contain these lists; after all: is -% a thesis a technical report? We require also some other boolean variables to handle -% the difference between front matter and main matter; this differences are already defined -% in the \texttt{book} document class, but not in the \texttt{report} one. +% The various tables of contents or figures or tables require some boolean variables to be +% defined; in facts, although the ISO regulations require that every technical report +% contains the list of figures and/or tables, in Italy theses rarely contain these lists; +% after all: is a thesis a technical report? We require also some other boolean variables to +% handle the difference between front matter and main matter; this differences are already +% defined in the \texttt{book} document class, but not in the \texttt{report} one. % \begin{macrocode} \newif\iffigurespage \newif\iftablespage @@ -831,8 +828,8 @@ the TOPtesi bundle] \AtBeginDocument{\frontmatter} % \end{macrocode} % The main matter is automatically established with the first |\chapter| command issued by -% the user; this means that every command that starts a section at the ``chapter'' level within -% the front matter must be executed without an explicit call to |\chapter|. +% the user; this means that every command that starts a section at the ``chapter'' level +% within the front matter must be executed without an explicit call to |\chapter|. % % By default we set to false the boolean variables that control the typesetting of the % list of figures and the list of tables. @@ -970,15 +967,15 @@ the TOPtesi bundle] \brokenpenalty=10000 % \end{macrocode} % -% Here comes a questionable command and/or environment; good typesetting -% requires the baseline skip to be proportioned to the font size, generally it is some 10--20\% -% larger than the font size. In some reasonable instances a wider or a narrower baseline skip +% Here comes a questionable command and/or environment; good typesetting requires the +% baseline skip to be proportioned to the font size, generally it is some 10--20\% larger +% than the font size. In some reasonable instances a wider or a narrower baseline skip % might be required; the \LaTeX\ kernel allows to use the |\linespread| command; % in the previous versions of this bundle a command |\interlinea| and an environment % \texttt{interlinea} were defined so as to allow to set the line spread factor. % The experience has shown that students tend to use this command so as to typeset a poor -% and thin thesis on more pages. Well, every instrument can be judiciously or maliciously used; -% this is one of those double sided instruments. +% and thin thesis on more pages. Well, every instrument can be judiciously or maliciously +% used; this is one of those double sided instruments. % \begin{macrocode} \def\interlinea#1{\linespread{#1}\selectfont} \def\endinterlinea{\par} @@ -994,17 +991,18 @@ the TOPtesi bundle] \@setminipage } % \end{macrocode} -% Since we are at it we define the floating bodies placing parameters; not only the -% values ``here'', ``top of the page'' and ``bottom of the page'', that we set as default ones -% leaving to the user to explicitly specify the ``page of floats'', but also the numerical and -% geometrical parameters that control the float placements. -% These geometrical parameters are critical and everybody has his/her own ideas of -% what are the best values for them. According to my experience these parameters work quite well +% Since we are at it we define the floating bodies placing parameters; not only the values +% ``here'', ``top of the page'' and ``bottom of the page'', that we set as default ones +% leaving to the user to explicitly specify the ``page of floats'', but also the numerical +% and geometrical parameters that control the float placements. +% These geometrical parameters are critical and everybody has his/her own ideas of what are +% the best values for them. According to my experience these parameters work quite well % but I would not suggest them for every kind of typewritten document. % In particular the zero value for the text fraction appears strange, but students have -% the tendency to create large figures (more than large tables) and these tend to clog the figure queue. -% A 100\% space for the top of page figures and a requirement of 0\% text allows large floats -% to exit the queue provided they do not exceed the text height. +% the tendency to create large figures (more than large tables) and these tend to clog the +% figure queue. +% A 100\% space for the top of page figures and a requirement of 0\% text allows large +% floats to exit the queue provided they do not exceed the text height. % \begin{macrocode} \def\fps@figure{htb} \def\fps@table{htb} % @@ -1019,24 +1017,24 @@ the TOPtesi bundle] \def\dbltopfraction{1} \def\dblfloatpagefraction{0} % \end{macrocode} -% One command that the default definition does not satisfy me very much is the caption command; -% actually it is the internal |\@makecaption| macro that performs the job. The point is that -% I prefer a narrower justified caption rather than a caption where the last line is just a short word -% or the right segment of an hyphenated word. If one sets the +%I don't like too much the default definition of the |\caption| command; actually +% it is the internal |\@makecaption| macro that performs the job i don't like. The +% point is that I prefer a narrower justified caption rather than a caption where the last +% line is just a short word or the right segment of an hyphenated word. If one sets the % |\finalhyphendemerits| counter to an incredibly high value, one might succeed % in avoiding hyphenation in the last word of a caption; but this might lead % to a very loose typesetting of the caption paragraph, especially -% if the horizontal box that contains it hardly exceeds the caption width. -% I initially set the caption width (a new length) to the overall text width diminished by 3em; +% if the horizontal box that contains it hardly exceeds the caption width. I initially set +% the caption width (a new length) to the overall text width diminished by 3em; % then if the caption text, inclusive of the caption type string and number, is shorter than -% the text width it is typeset as centered text; if it exceeds the text width -% it is set as a justified paragraph whose line width equals the established caption width; -% but in any case the last line of the paragraph is measured and if it is shorter than one third -% of the caption width, this width is shortened a little bit and the paragraph is set again +% the text width it is typeset as centered text; if it exceeds the text width it is set as a +% justified paragraph whose line width equals the established caption width; but in any case +% the last line of the paragraph is measured and if it is shorter than one third of the +% caption width, this latter width is shortened a little bit and the paragraph is set again % with this shortened caption width; in order to be sure that one iteration is % sufficient, the shrinking of the caption width must be computed according to % the number of lines the paragraph occupies. -% In order to count the number of lines the caption paragraph occupies it is +% In order to count the number of lines the caption paragraph occupies, it is % necessary to recall that the first line occupies a vertical space that equals % |\topskip| while the other lines occupy a vertical space equal to % |\baselineskip|; the latter one is generally larger than |\topskip| therefore @@ -1051,7 +1049,7 @@ the TOPtesi bundle] % and we must remember the presence of this line in our arithmetics. % If the length of the stripped last line is longer that one third of the % caption width, then the vertical box is recomposed by restacking the -% individual lines, but if this last line is shorter than one third of the +% individual lines; on the opposite, if this last line is shorter than one third of the % caption width, this width is recomputed in this way: let $N-1$ be the number % of lines obtained with the integer division, i.e.\ one line less than those % actually contained in the vertical box. Let $x$ be the initial caption @@ -1064,7 +1062,7 @@ the TOPtesi bundle] % space, some words might have been hyphenated in a different way, and so on. % Moreover we do not want a caption that barely exceeds the length of % |\captionwidth| to be retyped into a two line caption width that is about one half -% of the width of the other captions. Therefore we allow for some white space in +% the width of the other captions. Therefore we allow for some white space in % the last line by computing the new caption width with the following formula % \[ y=\frac{(N+0.5)x + x_2}{N+1} \] % \begin{macrocode} @@ -1158,14 +1156,28 @@ the TOPtesi bundle] % old time files might still be around. % % The cryptic code that redefines the comma in math mode establishes that this -% character is a normal math character, instead of a math punctuation mark; -% this should not be necessary with the Italian option for the \texttt{babel} -% package and it is possible that in a future version it will be eliminated. +% character is a normal math character, instead of a math punctuation mark. Actually the +% code that defines the mathematical active comma is a new addition that lets the comma +% perform correctly in its double function (decimal separator and punctuation mark). The +% only point where this code fails is when a list of numbers is typeset: When a numeric list +% must be typeset, such as, for example, $\forall i=0,\,1,\,2,\,3, n$, in the source code +% a space \emph{must} be inserted after every punctuating comma while no space follows a +% decimal comma: for example \verb*+$\forall i=0, 1, 2, 3,n$+. The space before the |n| is +% not necessary (but it wouldn't hurt) beecause |n| is not recognized as a digit, therefore +% the ``intelligent'' comma inserts the necessary space by itself. % % |\topmargin| set to 0pt simply means that the real top margin is 25.4mm, i.e.\ one % inch, since the output offset is one inch by default. % \begin{macrocode} -\mathcode`\,="013B + \DeclareMathSymbol{\virgola}{\mathpunct}{letters}{"3B} + \DeclareMathSymbol{\virgoladecimale}{\mathord}{letters}{"3B} + \AtBeginDocument{\mathcode`\,=\string"8000} + {\catcode `,=\active \gdef,{\futurelet\let@token\m@thcomma}} +\def\m@thcomma{\let\@tempB\virgola +\@tfor\@tempA:=0123456789\do{% +\expandafter\ifx\@tempA\let@token\let\@tempB\virgoladecimale +\@break@tfor\fi}\@tempB} +% \catcode`\^^Z=10 \topmargin 0pt % \end{macrocode} @@ -1175,14 +1187,14 @@ the TOPtesi bundle] % that start these sections depend on the used language. % % Because of this it is necessary to extend the list of infix string definitions provided -% the |\captions|$\langle$\texttt{language}$\rangle$ macros defined by the -% language description files of \texttt{babel}; for this purpose we define a macro for -% adding new items for these two new sectioning commands. This macro receives three arguments: -% the first is the babel language name, the second is the string for the summary name, and finally -% the third is the string for the acknowledgements name; everything is contained within a group -% and only the relevant captions macro is globally redefined. The token register `0' is normally -% for scratch usage, but the fact that its value is restored upon exiting the -% group provides the necessary protection against an involuntary reassignment +% the |\captions|$\langle$\texttt{language}$\rangle$ macros defined by the language +% description files of \texttt{babel}; for this purpose we define a macro for adding new +% items for these two new sectioning commands. This macro receives three arguments: the +% first is the babel language name, the second is the string for the summary name, and +% finally the third is the string for the acknowledgements name; everything is contained +% within a group and only the relevant captions macro is globally redefined. The token +% register `0' is normally for scratch usage, but the fact that its value is restored upon +% exiting the group provides the necessary protection against an involuntary reassignment % to this register. At the same time if a specific language option was not % specified, a warning message is issued, but compilations goes on any way % without the sectioning string names. For being sure no other undefined error @@ -1204,7 +1216,7 @@ Skipping any redefinition\MessageBreak}% }}}% % \end{macrocode} % For Italian and English there are no problems; we provide immediately these extensions -% by means of the newly available macro: +% by means of the newly available macros: % \begin{macrocode} \ExtendCaptions{italian}{Sommario}{Ringraziamenti} \ExtendCaptions{english}{Summary}{Acknowledgements} @@ -1213,8 +1225,8 @@ Skipping any redefinition\MessageBreak}% % default; therefore both caption macros |\captionsitalian| and |\captionsenglish| are % already defined and can be freely extended. For any other language the corresponding % language option must be entered in the class opening statement, otherwise a warning -% is issued but compilation is not stopped. Therefore if, for example, the user wants to write the -% thesis in Spanish, the thesis main file shall start like this: +% is issued but compilation is not stopped. Therefore if, for example, the user wants to +% write the thesis in Spanish, the thesis main file shall start like this: % \begin{verbatim} % \documentclass[...,spanish]{toptesi} % \ExtendCaptions{spanish}{Resumen}{Agradecimientos} @@ -1239,16 +1251,18 @@ Skipping any redefinition\MessageBreak}% \def\english{\selectlanguage{english}}% \let\inglese\english % \end{macrocode} -% At the beginning of the document the following commands are executed; the general macro |\italiano| sets the -% summary and the acknowledgements names in Italian, as the default language; and the |\@chapapp| -% macro is redefined so as to agree with the default language. If a different default language is desired, -% we recall it again, it is necessary to do the following: +% At the beginning of the document the following commands are executed; the general macro +% |\italiano| sets the summary and the acknowledgements names in Italian, as the default +% language; and the |\@chapapp| macro is redefined so as to agree with the default language. +% If a different default language is desired, we recall it again, it is necessary to do the +% following: % \begin{itemize} % \item specify |\english| \emph{after} the |\begin{document}| statement, if English is -% supposed to be the default language, or -% \item specify the language name, other than Italian or English, among the class options; use -% the |\ExtendCaptions| macro for extending the list of sectioning commands infix strings as explained above; -% specify with |\selectlanguage| the new language as the default one \emph{after} the |\begin{document}| statement. +% supposed to be the default language, or +% \item specify the language name, other than Italian or English, among the class options; +% use the |\ExtendCaptions| macro for extending the list of sectioning commands infix +% strings as explained above; specify with |\selectlanguage| the new language as the default +% one \emph{after} the |\begin{document}| statement. % \end{itemize} % \begin{macrocode} \AtBeginDocument{% @@ -1262,7 +1276,6 @@ Skipping any redefinition\MessageBreak}% % \begin{macrocode} \RequirePackage{topfront} \RequirePackage{topcoman} -\def\sf@size{7} % \end{macrocode} % % \subsection{The \texttt{classica} option} @@ -1270,10 +1283,10 @@ Skipping any redefinition\MessageBreak}% % in humanities and the specifications came from Paolo Ciacchi, a student of the University % of Trieste, who was preparing a master thesis in classical Greek philology. The necessity % of the large normal size derived from the necessity of having clear mark-up signs among -% the myriad philologists use, that sometimes let me believe that the philological mark-up -% requires typesetting environments similar to the mathematical ones, since the material to -% be typeset does not form a linear sequence, as in plain text, but a bi-dimensional -% structure as in mathematics. +% the myriad signs philologists use, that sometimes let me believe that the philological +% mark-up requires typesetting environments similar to the mathematical ones, since the +% material to be typeset does not form a linear sequence, as in plain text, but a +% bi-dimensional structure as in mathematics. % % The other requirements involve the title page and I agreed to implement them, since they % are likely to be useful for other universities as well; the effort for localizing this @@ -1405,7 +1418,7 @@ Skipping any redefinition\MessageBreak}% % \end{macrocode} % Here |\annoaccademico| is defined that typesets the infix string corresponding to % ``Anno accademico'' followed by the year range in old style numbers (irrespective -% of the \texttt{oldstyle} option); Commands for the localization are provided so as +% of the \texttt{oldstyle} option); localization commands are provided so as % to set a different string, possibly through the configuration file. In order to set % an adequate en-dash between the old style numbers a new definition is given that % takes care to set the dash at a height above the base line that copes the specific @@ -1432,14 +1445,14 @@ Skipping any redefinition\MessageBreak}% \vrule\@width\dimen@\@height\dimen4\@depth-\dimen\tw@}}} % \end{macrocode} % The footnote rule separator is also longer that the default one. Dealing with notes -% the footnote separator is also changes as well as the footnote skip. But the humanists +% the footnote separator is also changed as well as the footnote skip. But the humanists % like to have also unnumbered notes within numbered ones, as if they were two separate % sets; of course specialized extensions 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 mathematica symbol as the dagger or the double dagger; +% the symbol \emph{must} be a mathematical symbol 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 if is declared an ordinary symbol, treated as, say, a letter. This +% better positioning if it is used as an ordinary symbol 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. The command |\NoteWhiteLine| has to % be used at the end of the text of the preceding note. @@ -1450,8 +1463,7 @@ Skipping any redefinition\MessageBreak}% \kern5.6\p@} \setlength\footnotesep{12\p@} \setlength{\skip\footins}{24\p@ \@plus 4\p@ \@minus 2\p@} -\DeclareMathSymbol{*}{\mathalpha}{symbols}{"03} -\newcommand*\nota[1][*]{% +\newcommand*\nota[1][\mathord{*}]{% \xdef\@thefnmark{\ensuremath{\m@th#1}}\@footnotemark\@footnotetext } \newcommand*{\NoteWhiteLine}{\par\vspace*{-.3\baselineskip}} @@ -1506,7 +1518,7 @@ Skipping any redefinition\MessageBreak}% % all the patches to the macros |\not| and |\mapstochar| that produce problems with % the format, because they have a declared width of 0\,pt; this is no problem for % \texttt{latex} or \texttt{pdflatex}, but it is a problem for the PDF/A format. -% Therefore these command must be replaced by equivalent ones that do not use zero-width +% Therefore these commands must be replaced by equivalent ones that do not use zero-width % glyps. For |\not|, another slash can be used, but in order to have it the right size % in all math typesetting modes it is necessary to have a different command for % every mode; this is achieved with the |\mathchoice| primitive as such: @@ -1545,7 +1557,7 @@ Skipping any redefinition\MessageBreak}% % a PDF/A compliant file; one might need to produce a traditional PDF file, or even a % DVI file, to be converted to the PS format, in order to possibly further transform % it to PDF/A by means of \texttt{ghostscript} (see the details in the -% \texttt{ps2pdf.html} file belonging to the \texttt{ghostscript} documentationx). +% \texttt{ps2pdf.html} file belonging to the \texttt{ghostscript} documentation). % % Finally, if the class option |pdfa| was specified, we load the |pdfx.sty| file % with the suitable option for typesetting a (hopefully) PDF/A conforming file. @@ -1557,40 +1569,42 @@ Skipping any redefinition\MessageBreak}% \ifT@Ppdfa\RequirePackage[a-1b]{pdfx}\fi % % \end{macrocode} +% % \subsection{The package file \texttt{topfront.sty}} -% This file is input by \texttt{toptesi}, version 5.x, but it can be used as an -% independent extension package. +% This file is input by \texttt{toptesi}, but it can be used as an +% independent extension package also with other classes. % -% It contains all the definition for the composition of just the title page -% along the style requirements of \texttt{toptesi}, version 5.x. -% It makes use of an optional configuration file where the user can define +% It contains all the definitions for the composition of just the title page +% along the style requirements of \texttt{toptesi}. Since version 5.x +% it makes use of an optional configuration file where the user can define % a lot of default information and all the infix language dependent strings % that are peculiar to this title page. % % This file specifies that it requires the \LaTeXe\ format and identifies itself. Since the % package might be used to extend the performances of other classes, this package does not -% specify any input encoding, assuming that the calling class already provided this information. +% specify any input encoding, assuming that the calling class already provided this +% information. % \begin{macrocode} %<*topfrn> \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{topfront}[2011/04/11 v.5.04 Title page for TOPtesi] +\ProvidesPackage{topfront}[2011/05/25 v.5.50 Title page for TOPtesi] % \end{macrocode} % % The title page information depends on the type of ``thesis' that is being typeset. % The following commands specify the kind of information that is going to be typeset. % Some boolean variables are automatically set by the commands in order to change some -% formatting depending on the kind of thesis. For languages that distinguish -% feminine from masculine adjectives or qualifications some automatic machinery is -% set up in order to format some infix strings in a way that copes with the singular or plural -% forms; in particular when there is a multitude of authors (maximum three) of different gender -% the adjectives or qualifications are set masculine plurals, while when there is just one author -% or the authors are of the same gender the adjectives or qualifications are set according to -% number and gender. Al this is done by setting or resetting the truth value associated to -% the boolean variable \texttt{femminile}. The boolean variable \texttt{dottorato} -% controls the PhD thesis format, while the other variable \texttt{laureatriennale} -% controls the formatting of the bachelor's degree report. All other theses are treated -% as master theses, and in all cases the appropiate infix string is typeset in the title -% page +% formatting depending on the kind of thesis. For languages that distinguish feminine from +% masculine adjectives or qualifications some automatic machinery is set up in order to +% format some infix strings in a way that copes with the singular or plural forms; in +% particular when there is a multitude of authors (maximum three) of different gender the +% adjectives or qualifications are set masculine plurals, while when there is just one +% author or the authors are of the same gender the adjectives or qualifications are set +% according to number and gender. Al this is done by setting or resetting the truth value +% associated to the boolean variable \texttt{femminile}. The boolean variable +% \texttt{dottorato} controls the PhD thesis format, while the other variable +% \texttt{laureatriennale} controls the formatting of the bachelor's degree report. All +% other theses are treated as master theses, and in all cases the appropriate infix string +% is typeset in the title page % \begin{macrocode} \newif\iffemminile \newif\ifdottorato \dottoratofalse @@ -1690,36 +1704,33 @@ Skipping any redefinition\MessageBreak}% \def\terzacandidata#1{\gdef\@thirdauthor{#1}} % \end{macrocode} % -% The next set of macros is used to typeset the ``date'' of the -% thesis defense or presentation or whatever is done for the final -% exam. The macro si sort of complicated because the input format for this -% ``date'' may vary from a single year, to a year range, to a month and year specification -% so that different actions must be taken; if the option \texttt{classica} is in -% force\footnote{This option cannot be active if this extension package is used to extend -% a document class other than \texttt{toptesi}; nevertheless if the package \texttt{trieste.sty} -% is loaded before this package, the relevant information equivalent to \texttt{classica} -% is fully defined and this package works as it should.} then the formatting of the ``date'' -% may be still different. This command is aliased with |\esamendidottorato| which literally means -% ``defense of the doctoral dissertation''; nevertheless both commands refer to a simple date in -% one of those formats. -% -% |\getseduta| splits the date in its two components, month and year; -% if the argument is a single string without intervening spaces, the first one is the string -% itself and the second is empty; this emptiness may be tested and in case the date formatting -% is modified accordingly. -% In particular if the string is a single spaceless one, this string is -% assigned to |\@submitdate|; otherwise a different treatment is made according to the fact that -% \texttt{classica} is in force; if \texttt{classica} is not in force the total string, +% The next set of macros is used to typeset the ``date'' of the thesis defense or +% presentation or whatever is done for the final exam. The macro is sort of complicated +% because the input format for this ``date'' may vary from a single year, to a year range, +% to a month and year specification so that different actions must be taken; if the option +% \texttt{classica} is in force\footnote{This option cannot be active if this extension +% package is used to extend a document class other than \texttt{toptesi}.} then the +% formatting of the ``date'' may be still different. This command is aliased with +% |\esamendidottorato| which literally means ``defense of the doctoral dissertation''; +% nevertheless both commands refer to a simple date in one of those formats. +% +% |\getseduta| splits the date in its two components, month and year; if the argument is a +% single string without intervening spaces, the first one is the string itself and the +% second is empty; this emptiness may be tested and in case the date formatting is modified +% accordingly. In particular if the string is a single spaceless one, this string is +% assigned to |\@submitdate|; otherwise a different treatment is made according to the fact +% that \texttt{classica} is in force; if \texttt{classica} is not in force the total string, % including spaces is assigned to |\@submitade|. If \texttt{classica} is in force, % |\s@dutaTrieste| is called with the whole string. On turn |\s@dutaTrieste| verifies -% if the date should be typeset with old style numbers or in the usual way; in the latter case -% the whole string is assigned to |\@submitdate|; in the former one the year part may be a -% single year or a year range; This separation is tested by splitting the year part across -% one dash; If the dash is present the extremes of the year range are assigned to |\1| and |\2|, -% otherwise the year part is a single year;. If a single year is given this is simply typeset -% with old style numbers and the appropriate commands are assigned to the |\@submitdate| -% control sequence.. If a year range is given, this year range is also typeset with old style -% numbers, and the dash is executed with a regular en-dash surrounded with white space. +% if the date should be typeset with old style numbers or in the usual way; in the latter +% case the whole string is assigned to |\@submitdate|; in the former one the year part may +% be a single year or a year range; This separation is tested by splitting the year part +% across one dash; if the dash is present the extremes of the year range are assigned to +% |\1| and |\2|, otherwise the year part is a single year;. If a single year is given this +% is simply typeset with old style numbers and the appropriate commands are assigned to the +% |\@submitdate| control sequence.. If a year range is given, this year range is also +% typeset with old style numbers, and the dash is executed with a regular en-dash surrounded +% with white space. % % \begin{macrocode} \def\sedutadilaurea#1{\getseduta#1 !} @@ -1765,29 +1776,26 @@ Skipping any redefinition\MessageBreak}% % depending on the default language and the configuration file. % % |\scuoladidottorato| gets the name of the PhD School; |\ateneo| gets the the generic name -% of the university; |\nomeateneo| gets the proper name of the university. In Italy Universities -% are generally named after the city they are in; in large cities where there are several -% universities, each one of them has a proper name. For example the generic name might be -% ``Universit\`a di Roma'' and the proper name might be ``La Sapienza''. -% |\facolta| receives an optional argument that is the uppercase roman numeral -% specific of the faculty and a compulsory argument that corresponds to the -% type of faculty; for example, -% with |\facolta[II]{Ingegneria}| the package typesets in the title page -% ``II Facolt\`a di Ingengeria''; if the optional argument is not specified non -% roman numeral is typeset; the infix string \verb*+Facolt\`a di + may be -% changed with the configuration file depending on the default language. -% Finally |\logosede| gets the name of the graphic file that contains -% the information relative to the university logo. If such logo is not -% available, the user does not specify this command; if the user uses this -% command to insert the university logo but the file is not available the usual -% \texttt{graphicx} package warning is issued but compilation goes on -% without the logo. -% The |\tutoreaziendale| macro is the last addition; several students who work -% on their thesis or final project in a company want to have the company -% supervisor name printed in the -% title page; this does not preclude expressing the student's deepest thanks in -% the acknowledgements -% section, but it does not harm ro name this person also in the title page. +% of the university; |\nomeateneo| gets the proper name of the university. +% In Italy Universities are generally named after the city they are in; in large cities +% where there are several universities, each one of them has a proper name. For example the +% generic name might be ``Universit\`a di Roma'' and the proper name might be ``La +% Sapienza''. +% |\facolta| receives an optional argument that is the uppercase roman numeral specific of +% the faculty and a compulsory argument that corresponds to the type of faculty; for +% example, with |\facolta[II]{Ingegneria}| the package typesets in the title page +% ``II Facolt\`a di Ingengeria''; if the optional argument is not specified non roman +% numeral is typeset; the infix string \verb*+Facolt\`a di + may be changed with the +% configuration file depending on the default language. +% Finally |\logosede| gets the name of the graphic file that contains the information +% relative to the university logo. If such logo is not available, the user does not specify +% this command; if the user uses this command to insert the university logo but the file is +% not available the usual \texttt{graphicx} package warning is issued but compilation goes +% on without the logo. +% The |\tutoreaziendale| macro is the last addition; several students who work on their +% thesis or final project in a company want to have the company supervisor name printed in +% the title page; this does not preclude expressing the student's deepest thanks in the +% acknowledgements section, but it does not harm ro name this person also in the title page. % \begin{macrocode} \def\ciclodidottorato#1{\gdef\@ciclo{#1 \@cyclename}}% \def\corsodilaurea#1{\global\dottoratofalse\gdef\@corso{#1}} @@ -1856,18 +1864,19 @@ Skipping any redefinition\MessageBreak}% \newcommand\NomeQuartoTomo[1]{\gdef\QuartoTomo{#1}} % \end{macrocode} % -% Now we can read the configuration file if it exists; in any case what is possibly -% defined or redefined in the configuration file must not be redefined in the following -% Lines and this is why everything is subject to the test |\@ifundefined|. Most default -% definitions are simply ``blank''; the others are in Italian. All of them, except the -% supervisor and candidate strings may be individually be redefined in the configuration file -% or in the preamble. Those that cannot be redefined such as the four ``candidate'' strings -% may be actually redefined through the only |\CandidateName| that should be used in a language depended -% way and with the correct number and gender once for all. The four endings in the Italian -% strings allow to exercise the correct selection only for Italian; a specific test is made -% inside the |\frontespizio| command; because of this the same machinery cannot be used, say, for French -% but may be in the future this feature is resolved in a proper way. The same is true for the supervisor -% and the co-supervisor strings that may be changed once for all with |\AdvisorName| and |\CoAdvisorName|. +% Now we can read the configuration file if it exists; in any case what is possibly defined +% or redefined in the configuration file must not be redefined in the following lines and +% this is why everything is subject to the test |\@ifundefined|. Most default definitions +% are simply ``blank''; the others are in Italian. All of them, except the supervisor and +% candidate strings may be individually be redefined in the configuration file or in the +% preamble. Those that cannot be redefined such as the four ``candidate'' strings may be +% actually redefined through the only |\CandidateName| that should be used in a language +% dependent way and with the correct number and gender once for all. The four endings in the +% Italian strings allow to exercise the correct selection only for Italian; a specific test +% is made inside the |\frontespizio| command; because of this the same machinery cannot be +% used, say, for French but may be in the future this feature is resolved in a proper way. +% The same is true for the supervisor and the co-supervisor strings that may be changed once +% for all with |\AdvisorName| and |\CoAdvisorName|. % \begin{macrocode} \IfFileExists{toptesi.cfg}{\input{toptesi.cfg}}{} % @@ -1977,11 +1986,11 @@ Skipping any redefinition\MessageBreak}% \evensidemargin \oddsidemargin % \end{macrocode} % -% We select the \texttt{myheadings} page style; setting the page counter to zero -% is a remain of old settings, but it does not hurt; the |\null| command inserts a void horizontal box -% into the vertical list; it is useful to act as a block against which the vertical glue pushes -% for setting the subsequent material. The normal font is chosen in case preceding commands did change -% the font characteristics. +% We select the \texttt{myheadings} page style; setting the page counter to zero is a remain +% of old settings, but it does not hurt; the |\null| command inserts a void horizontal box +% into the vertical list; it is useful to act as a block against which the vertical glue +% pushes for setting the subsequent material. The normal font is chosen in case preceding +% commands did change the font characteristics. % \begin{macrocode} \thispagestyle{myheadings}% \null\setcounter{page}{1}% @@ -2011,9 +2020,9 @@ Skipping any redefinition\MessageBreak}% \fi \par\medskip}% % \end{macrocode} -% Further specification: it inserts the field of the PhD research or the degree course name; for example -% it inserts the line ``Philosophy Degree in Applied Tetratricotomy~--~XVI~cycle'' or -% ``Master of Science in Applied Tetratricotomy''. +% Further specification: it inserts the field of the PhD research or the degree course name; +% for example it inserts the line ``Philosophy Degree in Applied Tetratricotomy~--VI~cycle'' +% or ``Master of Science in Applied Tetratricotomy''. % \begin{macrocode} \ifx\@corso\empty \else{\large \ifdottorato @@ -2025,8 +2034,9 @@ Skipping any redefinition\MessageBreak}% \fi \end{center} % \end{macrocode} -% It now centers the name of the report, be it ``Doctoral Dissertation'' or ``Master Thesis'' or whatever; in case -% the command |\materia| was used, it then centers the area which the thesis deals with. +% It now centers the name of the report, be it ``Doctoral Dissertation'' or ``Master +% Thesis'' or whatever; in case the command |\materia| was used, it then centers the area +% which the thesis deals with. % \begin{macrocode} \vfill \begin{center} @@ -2045,7 +2055,8 @@ Skipping any redefinition\MessageBreak}% \fi \end{center} % \end{macrocode} -% Next comes the real title entered with |\titolo| or |\monografia| and the possible subtitle. +% Next comes the real title entered with |\titolo| or |\monografia| and the possible +% subtitle. % \begin{macrocode} \vfill \begin{center} @@ -2059,11 +2070,11 @@ Skipping any redefinition\MessageBreak}% \end{center}% \fi % \end{macrocode} -% If the option \texttt{classica} is in force the thesis might be divided in several volumes; -% apparently these in humanities are often oversized. In this case the |\frontespizio| -% command may be given at the beginning of every volume and the counter \texttt{tomo} is -% stepped up; the volume number is therefore printed in each title page; the infix string -% may be redefined as it was shown above. +% If the option \texttt{classica} is in force the thesis might be divided in several +% volumes; apparently these in humanities are often oversized. In this case the +% |\frontespizio| command may be given at the beginning of every volume and the counter +% \texttt{tomo} is stepped up; the volume number is therefore printed in each title page; +% the infix string may be redefined as it was shown above. % \begin{macrocode} \expandafter \ifx\csname StileTrieste\endcsname\relax @@ -2087,21 +2098,22 @@ Skipping any redefinition\MessageBreak}% \fi \par % \end{macrocode} -% Going down in the title page now comes the optional insertion of the university logo; this is a simple task -% once |\@logosede| has been defined, and this was done either with an explicit command |\logosede| with its argument -% in the preamble, or a specific line in the configuration file. +% Going down in the title page now comes the optional insertion of the university logo; +% this is a simple task once |\@logosede| has been defined, and this was done either with +% an explicit command |\logosede| with its argument in the preamble, or a specific line in +% the configuration file. % \begin{macrocode} \ifx\@logosede\@empty\else \vspace*{\bigskipamount} {\centering \@logosede\par}\fi % \end{macrocode} % -% the final task is to typeset the possible supervisors' names, the candidates' names and all the rest -% of the bureaucratical terms. We have to distinguish between a bachelor degree report that is not -% supposed to have a supervisor, from the doctoral dissertation where we do not indicate the supervisor, but -% the School Director, and the master thesis where there might be one or more supervisors; with the -% \texttt{classica} option in force no label is printed over the supervisor's name, unless there is -% a plurality od supervisors. +% The final task is to typeset the possible supervisors' names, the candidates' names and +% all the rest of the bureaucratical terms. We have to distinguish between a bachelor degree +% report that is not supposed to have a supervisor, from the doctoral dissertation where we +% do not indicate the supervisor, but the School Director, and the master thesis where there +% might be one or more supervisors; with the \texttt{classica} option in force no label is +% printed over the supervisor's name, unless there is a plurality od supervisors. % \begin{macrocode} \vfill \iflaureatriennale @@ -2120,10 +2132,11 @@ Skipping any redefinition\MessageBreak}% \fi \fi % \end{macrocode} -% Similarly the label names for the exam candidates are chosen; in Italian the names are infix strings -% that are selected according the gender and the number; if these labels have to be set in a different language -% it is necessary to define one string that has to be selected by the user according to number and gender. -% The label for the doctorship is left empty. +% Similarly the label names for the exam candidates are chosen; in Italian the names are +% infix strings that are selected according the gender and the number; if these labels have +% to be set in a different language it is necessary to define one string that has to be +% selected by the user according to number and gender. The label for the doctorship is left +% empty. % \begin{macrocode} \ifdottorato \let\@nomecandidato\empty @@ -2144,23 +2157,25 @@ Skipping any redefinition\MessageBreak}% \fi % \end{macrocode} % -% For the names of the supervisor(s) and of the candidate(s) a different approach is used for each one -% of the three categories of theses. If a bachelor degree report is dealt with, the name of the \emph{only} -% candidate is centerd and written in caps-and-small-caps. +% For the names of the supervisor(s) and of the candidate(s) a different approach is used +% for each one of the three categories of theses. If a bachelor degree report is dealt with, +% the name of the \emph{only} candidate is centerd and written in caps-and-small-caps. % \begin{macrocode} \iflaureatriennale \begin{center}% \large\mdseries\textsc{\@author} \end{center}% % \end{macrocode} -% For doctoral and master theses two virtual boxes (actually macros) are filled up so as to align -% the supervisor name(s) and, in second virtual box, the candidate name(s). The label is set in the -% first line with proper number and gender; in the second line the first name, and in the subsequent lines, -% if there are any, the other names. These virtual boxes actually contain a tabular environment each; these -% environments shall be actually typeset when these virtual box macros are executed. If the \texttt{classica} -% option is in force no label is set over the principal advisor name, but a label is set over the co-advisor -% name(s). The type size is also e little different for the \texttt{classica} option. The |\protect| command -% is used to protect the names in case they contain accent macros that might be expanded at the wrong moment. +% For doctoral and master theses two virtual boxes (actually macros) are filled up so as to +% align the supervisor name(s) and, in second virtual box, the candidate name(s). The label +% is set in the first line with proper number and gender; in the second line the first name, +% and in the subsequent lines, if there are any, the other names. These virtual boxes +% actually contain a tabular environment each; these environments shall be actually typeset +% when these virtual box macros are executed. If the \texttt{classica} option is in force no +% label is set over the principal advisor name, but a label is set over the co-advisor +% name(s). The type size is also e little different for the \texttt{classica} option. The +% |\protect| command is used to protect the names in case they contain accent macros that +% might be expanded at the wrong moment. % \begin{macrocode} \else % Per laurea e dottorato con relatori e correlatori... @@ -2205,12 +2220,12 @@ Skipping any redefinition\MessageBreak}% }% % \end{macrocode} % The real typesetting of these name lists takes place now; if the thesis is referred to the -% PhD school one type of layout is used, otherwise the default master thesis layout is used; remember -% that the bachelor degree case has already taken place. For the doctoral dissertation the doctoring -% person name is typeset centered in one line by itself and everything else is set 3em below -% into a three column table extended to the |\hsize|, the first line containing the person labels -% and the second line containing the true names. The central column is used just for spacing, but it does -% not contain anything. +% PhD school one type of layout is used, otherwise the default master thesis layout is used; +% remember that the bachelor degree case has already taken place. For the doctoral +% dissertation the doctoring person name is typeset centered in one line by itself and +% everything else is set 3em below into a three column table extended to the |\hsize|, the +% first line containing the person's qualifiers and the second line containing the true +% names. The central column is used just for spacing, but it does not contain anything. % \begin{macrocode} \ifdottorato \begin{center}\large @@ -2237,9 +2252,10 @@ Skipping any redefinition\MessageBreak}% \end{center} \else % \end{macrocode} -% For the master thesis the two virtual boxes are set one besides the other but skewed -% so that to the right or, respectively, to the left of every name there is enough space for the signatures. -% With the \texttt{classica} option in force the two boxes are simply aligned. +% For the master thesis the two virtual boxes are set one besides the other but skewed so +% that to the right or, respectively, to the left of every name there is enough space for +% the signatures. With the \texttt{classica} option in force the two boxes are simply +% aligned. % \begin{macrocode} \@ifundefined{StileTrieste}{% \begin{flushleft}% @@ -2262,8 +2278,8 @@ Skipping any redefinition\MessageBreak}% \@tutoreaziendale\par} \fi % \end{macrocode} -% All the material now is on the page; we put some more vertical glue and we close -% the page sending it to the output file; the final |\endgroup| closes the |\begingroup| that was +% All the material now is on the page; we put some more vertical glue and we close the page +% sending it to the output file; the final |\endgroup| closes the |\begingroup| that was % set at the beginning of this long macro. % \begin{macrocode} \vfill\par\null @@ -2307,7 +2323,7 @@ Skipping any redefinition\MessageBreak}% %<*topcmn> \NeedsTeXFormat{LaTeX2e} % lavora solo con LaTeX 2e \ProvidesPackage{topcoman}% - [2008/12/15 v.5.00 Additional commands for the TOPtesi bundle] + [2011/05/25 v.5.50 Additional commands for the TOPtesi bundle] % \end{macrocode} % The new command |\DeclareSlantedCapitalGreekLetters| optionally sets the capital % Greek letters in math mode with the glyphs taken from the math italic fonts, not from @@ -2334,11 +2350,11 @@ Skipping any redefinition\MessageBreak}% % \begin{macrocode} \providecommand{\ensuremath}[1]{\ifmmode#1\else$#1$\fi}% % \end{macrocode} -% The following commands may be already defined; should they be missing they are supplied here. -% The greatest part of them is already defined in the Italian option to the -% \texttt{babel} language; but remember; this package may be used as a stand alone one, without -% the initial call by the \texttt{toptesi} document class, so that the language Italian might -% be undefined. +% The following commands may be already defined; should they be missing they are supplied +% here. The greatest part of them is already defined in the Italian option to the +% \texttt{babel} language; but remember; this package may be used as a stand alone one, +% without the initial call by the \texttt{toptesi} document class, so that the language +% Italian might be undefined. % \begin{macrocode} \providecommand{\ohm}{\ensuremath{{\mathrm{\Omega}}}} \providecommand{\ped}[1]{\ensuremath{_{\mathrm{#1}}}} @@ -2433,192 +2449,6 @@ Skipping any redefinition\MessageBreak}% \DisableFigTabNames % % \end{macrocode} -% \subsection{The class option file \texttt{topsiz14.clo}} -% Among the options available there is the possibility of typesetting the thesis with -% a large normal font size, specifically 14pt. The following file is just a copy of the -% other size??.clo class option files where the font dimensions have been modified so -% as to be coherent whit a normal size of 14pt. There is nothing unusual except that -% the font sizes are taken from the kernel macros where the magic numbers of non -% integer sizes are specified. The baseline skips are substantially the ones taken -% from the 10pt default size and multiplied by 1.44, or those of the 12pt option -% multiplied by 12; in both cases they were rounded to integers most of the times. -% Since the whole bundle works only under \LaTeXe, we deleted all the tests for -% compatibility with \LaTeX\,209 and the corresponding test branches. -% \begin{macrocode} -%<*top14> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{topsiz14.clo}% - [2008/12/15 v.5.00 TopTesi 14pt size-option file] -\renewcommand\normalsize{% - \@setfontsize\normalsize\@xivpt{18}% - \abovedisplayskip 14\p@ \@plus3\p@ \@minus7\p@ - \abovedisplayshortskip \z@ \@plus3\p@ - \belowdisplayshortskip 8.5\p@ \@plus3.5\p@ \@minus3\p@ - \belowdisplayskip \abovedisplayskip - \let\@listi\@listI} -\normalsize -\renewcommand\small{% - \@setfontsize\small\@xiipt{14}% - \abovedisplayskip 13\p@ \@plus3\p@ \@minus6\p@ - \abovedisplayshortskip \z@ \@plus3\p@ - \belowdisplayshortskip 7.5\p@ \@plus3.5\p@ \@minus3\p@ - \def\@listi{\leftmargin\leftmargini - \topsep 9\p@ \@plus3\p@ \@minus5\p@ - \parsep 4.5\p@ \@plus2\p@ \@minus\p@ - \itemsep \parsep}% - \belowdisplayskip \abovedisplayskip -} -\renewcommand\footnotesize{% - \@setfontsize\footnotesize\@xipt{13} - \abovedisplayskip 12\p@ \@plus2\p@ \@minus5\p@ - \abovedisplayshortskip \z@ \@plus3\p@ - \belowdisplayshortskip 7\p@ \@plus3\p@ \@minus3\p@ - \def\@listi{\leftmargin\leftmargini - \topsep 6\p@ \@plus2\p@ \@minus2\p@ - \parsep 3\p@ \@plus2\p@ \@minus\p@ - \itemsep \parsep}% - \belowdisplayskip \abovedisplayskip -} -\renewcommand\scriptsize{\@setfontsize\scriptsize\@xpt{12}} -\renewcommand\tiny{\@setfontsize\tiny\@viiipt\@xpt} -\renewcommand\large{\@setfontsize\large\@xviipt{22}} -\renewcommand\Large{\@setfontsize\Large\@xxpt{25}} -\renewcommand\LARGE{\@setfontsize\LARGE\@xxvpt{30}} -\renewcommand\huge{\@setfontsize\huge\@xxvpt{30}} -\let\Huge=\huge -\if@twocolumn - \setlength\parindent{1em} -\else - \setlength\parindent{1.5em} -\fi -\setlength\smallskipamount{3.5\p@ \@plus 1\p@ \@minus 1\p@} -\setlength\medskipamount{7\p@ \@plus 2\p@ \@minus 2\p@} -\setlength\bigskipamount{14\p@ \@plus 4\p@ \@minus 4\p@} -\setlength\headheight{14\p@} -\setlength\headsep {36\p@} -\setlength\topskip {14\p@} -\setlength\footskip{30\p@} -\if@compatibility \setlength\maxdepth{4\p@} \else -\setlength\maxdepth{.5\topskip} \fi - \setlength\@tempdima{\paperwidth} - \addtolength\@tempdima{-2in} - \setlength\@tempdimb{390\p@} - \if@twocolumn - \ifdim\@tempdima>2\@tempdimb\relax - \setlength\textwidth{2\@tempdimb} - \else - \setlength\textwidth{\@tempdima} - \fi - \else - \ifdim\@tempdima>\@tempdimb\relax - \setlength\textwidth{\@tempdimb} - \else - \setlength\textwidth{\@tempdima} - \fi - \fi - \@settopoint\textwidth - \setlength\@tempdima{\paperheight} - \addtolength\@tempdima{-2in} - \addtolength\@tempdima{-1.5in} - \divide\@tempdima\baselineskip - \@tempcnta=\@tempdima - \setlength\textheight{\@tempcnta\baselineskip} -\addtolength\textheight{\topskip} -\if@twocolumn - \setlength\marginparsep{10\p@} -\else - \setlength\marginparsep{10\p@} -\fi -\setlength\marginparpush{7\p@} - \if@twoside - \setlength\@tempdima {\paperwidth} - \addtolength\@tempdima {-\textwidth} - \setlength\oddsidemargin {.4\@tempdima} - \addtolength\oddsidemargin {-1in} - \setlength\marginparwidth {.6\@tempdima} - \addtolength\marginparwidth {-\marginparsep} - \addtolength\marginparwidth {-0.4in} - \else - \setlength\@tempdima {\paperwidth} - \addtolength\@tempdima {-\textwidth} - \setlength\oddsidemargin {.5\@tempdima} - \addtolength\oddsidemargin {-1in} - \setlength\marginparwidth {.5\@tempdima} - \addtolength\marginparwidth {-\marginparsep} - \addtolength\marginparwidth {-0.4in} - \addtolength\marginparwidth {-.4in} - \fi - \ifdim \marginparwidth >2in - \setlength\marginparwidth{2in} - \fi - \@settopoint\oddsidemargin - \@settopoint\marginparwidth - \setlength\evensidemargin {\paperwidth} - \addtolength\evensidemargin{-2in} - \addtolength\evensidemargin{-\textwidth} - \addtolength\evensidemargin{-\oddsidemargin} - \@settopoint\evensidemargin - \setlength\topmargin{\paperheight} - \addtolength\topmargin{-2in} - \addtolength\topmargin{-\headheight} - \addtolength\topmargin{-\headsep} - \addtolength\topmargin{-\textheight} - \addtolength\topmargin{-\footskip} - \addtolength\topmargin{-.5\topmargin} - \@settopoint\topmargin -\setlength\footnotesep{10.4\p@} -\setlength{\skip\footins}{13\p@ \@plus 4\p@ \@minus 2\p@} -\setlength\floatsep {14\p@ \@plus 2\p@ \@minus 4\p@} -\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} -\setlength\intextsep {16\p@ \@plus 4\p@ \@minus 4\p@} -\setlength\dblfloatsep {16\p@ \@plus 2\p@ \@minus 4\p@} -\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} -\setlength\@fptop{0\p@ \@plus 1fil} -\setlength\@fpsep{10\p@ \@plus 2fil} -\setlength\@fpbot{0\p@ \@plus 1fil} -\setlength\@dblfptop{0\p@ \@plus 1fil} -\setlength\@dblfpsep{10\p@ \@plus 2fil} -\setlength\@dblfpbot{0\p@ \@plus 1fil} -\setlength\partopsep{3\p@ \@plus 2\p@ \@minus 2\p@} -\def\@listi{\leftmargin\leftmargini - \parsep 5\p@ \@plus2.5\p@ \@minus\p@ - \topsep 10\p@ \@plus4\p@ \@minus6\p@ - \itemsep5\p@ \@plus2.5\p@ \@minus\p@} -\let\@listI\@listi -\@listi -\def\@listii {\leftmargin\leftmarginii - \labelwidth\leftmarginii - \advance\labelwidth-\labelsep - \topsep 5\p@ \@plus2.5\p@ \@minus\p@ - \parsep 2.5\p@ \@plus\p@ \@minus\p@ - \itemsep \parsep} -\def\@listiii{\leftmargin\leftmarginiii - \labelwidth\leftmarginiii - \advance\labelwidth-\labelsep - \topsep 2.5\p@\@plus\p@\@minus\p@ - \parsep \z@ - \partopsep \p@ \@plus\z@ \@minus\p@ - \itemsep \topsep} -\def\@listiv {\leftmargin\leftmarginiv - \labelwidth\leftmarginiv - \advance\labelwidth-\labelsep} -\def\@listv {\leftmargin\leftmarginv - \labelwidth\leftmarginv - \advance\labelwidth-\labelsep} -\def\@listvi {\leftmargin\leftmarginvi - \labelwidth\leftmarginvi - \advance\labelwidth-\labelsep} -% -% \end{macrocode} % \Finale % \endinput -% -%@OldClaudio: se ci leggi, ricordati di correggere nel file toptesi.cfg fornito di default la riga -%Codice: -%\FacoltaDi{Facolt\`a di }% fatto 2010/05/09 -% -%che è sbagliata: con l'impostazione data, tra "Facoltà di" e il nome della facoltà ci sono due spazi. Probabilmente è meglio che quelle righe siano commentate. La riga 222 di topfront.sty dovrebbe essere -%Codice: -%\@faculty\space\@facname -% -%Ci sono altri \expandafter inutili alle righe 214, 253, 257, 263, 346 e 384. +% \ No newline at end of file -- cgit v1.2.3