diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/toptesi/toptesi.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/toptesi/toptesi.dtx | 56 |
1 files changed, 37 insertions, 19 deletions
diff --git a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx index 3a9e62a9db5..0955243100a 100644 --- a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx +++ b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx @@ -95,7 +95,7 @@ its source file is another example of how to use toptesi. % \iffalse %<*driver> \documentclass{ltxdoc} -\ProvidesFile{toptesi.dtx}[2014/11/02 v.5.83 Documented TeX file for +\ProvidesFile{toptesi.dtx}[2014/11/07 v.5.84 Documented TeX file for the TOPtesi bundle] \GetFileInfo{toptesi.dtx} \title{The TOPtesi bundle} @@ -116,7 +116,7 @@ the TOPtesi bundle] %</driver> % \fi % -% \CheckSum{2870} +% \CheckSum{2882} % %% \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 @@ -776,7 +776,7 @@ the TOPtesi bundle] % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{toptesi}% -[2014/11/02 v.5.83 Class for typesetting university theses] +[2014/11/07 v.5.84 Class for typesetting university theses] % \end{macrocode} % % The class itself is very simple since it requires just the \texttt{report} document @@ -833,7 +833,7 @@ the TOPtesi bundle] % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{toptesi}% -[2014/11/02 v.5.83 Extension for toptesi.cls]% +[2014/11/07 v.5.84 Extension for toptesi.cls]% % \end{macrocode} % % We start with defining the debugging macros; these trace commands and macros @@ -1912,7 +1912,7 @@ Skipping any redefinition\MessageBreak}% % \fi % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{topfront}[2014/11/02 v.5.83 Title page for TOPtesi] +\ProvidesPackage{topfront}[2014/11/07 v.5.84 Title page for TOPtesi] % \end{macrocode} % Per l'uso di topfront come pacchetto autonomo bisogna verificare che l'opzione |classica| % corrisponda ad una impostazione corretta di |\ifclassica|; siccome questo |\if| è definito @@ -2444,28 +2444,46 @@ Skipping any redefinition\MessageBreak}% % be typeset on the title page is not crunched in too little a space and the overall % text bounding box assumes a shape similar to that of the page. % -% Everything is closed within a group so all definitions remain local. +% Everything is closed within a group so all definitions remain local. +% But in oder t to control if we are dealing with |\fontespizio| or +% |frontespizio*| we must properly check the presence of the asterisk in +% a robust way. The point is that with the |classica| option the university +% logos go in the lower half of the title page, while without this option +% the asterisk controls the logo position in the lower half page, while its +% absence pots it above everything else. The |\@ifstar| kernel macro behaves +% in a funny way if nested with other tests. There fore I need to do some +% acrobatics that have to be absolutely robust. +% I define a |\TPTcheckstarmacro| that absorbs the first token after it and +% defines a service macro for testing that it is really an asterisk. +% The testing will be done within the following macros, but if it is an +% asterisk the boolean |topTPTlogos| is set to true, otherwise to false; +% but since this token has been already swallowed by the macro, in case +% it is not an asterisk, it must be put back in the input stream. % \begin{macrocode} \newif\iftopTPTlogos +\newcommand\TPTcheckstar[1]{\def\TPTmaybestar{#1}\fr@ntespizio} \def\frontespizio{% - \ifbool{classica}{\topTPTlogosfalse}{% else - \@ifstar{\topTPTlogosfalse}{\topTPTlogostrue}}% - \fr@ntespizio} +\ifbool{classica}{\boolfalse{topTPTlogos}\fr@ntespizio}{\TPTcheckstar} +} + \def\fr@ntespizio{% \begingroup - \iftopTPTlogos - \thispagestyle{titlepage} - \else - \thispagestyle{classica} - \fi +\ifclassica + \thispagestyle{classica} +\else +\ifdefstring{\TPTmaybestar}{*}{\@firstoftwo}{\@secondoftwo}% + {\boolfalse{topTPTlogos}\thispagestyle{classica}\TPTmaybestar}% + {\booltrue{topTPTlogos}\thispagestyle{titlepage}} +\fi % \end{macrocode} % % We want also the title page to be set in the middle of the page irrespective of -% the binding correction; so we assign the average of the two side margins to each margin. +% the binding correction; so we assign the average of the two side margins to each +% margin. % \begin{macrocode} - \oddsidemargin=\dimexpr(\oddsidemargin+\evensidemargin)/2\relax - \evensidemargin \oddsidemargin + \oddsidemargin=\dimexpr(\oddsidemargin+\evensidemargin)/2\relax + \evensidemargin \oddsidemargin % \end{macrocode} % % The |\null| command inserts a void horizontal box into the vertical list; @@ -2866,7 +2884,7 @@ Skipping any redefinition\MessageBreak}% % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} % lavora solo con LaTeX 2e \ProvidesPackage{topcoman}% - [2014/11/02 v.5.83 Additional commands for the TOPtesi bundle] + [2014/11/07 v.5.84 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 @@ -2922,7 +2940,7 @@ Skipping any redefinition\MessageBreak}% \providecommand{\unit}[1]{\ensuremath{{\mathrm{\,#1}}}} \providecommand{\gei}{\ensuremath{{\mathop{\mathrm{j}}\nolimits}}} \providecommand{\eu}{\ensuremath{{\mathop{\mathrm{e}}\nolimits}}} -\providecommand{\micro}{\textormath{\textmu}{\ifxetex\mathup{μ}\else +\providecommand{\micro}{\textormath{\textmu}{\ifxetex\mathup{\mu}\else \ifx\muup\undefined\mu\else\muup\fi\fi}} \providecommand{\gradi}{\textormath{\textdegree}{^\circ}} % \end{macrocode} |