From df7a192f3b37a90f139d5d692723f19a617e059d Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 9 Mar 2013 22:48:45 +0000 Subject: toptesi (9mar13) git-svn-id: svn://tug.org/texlive/trunk@29321 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/toptesi/toptesi.dtx | 168 +++++++++++++-------- 1 file changed, 101 insertions(+), 67 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 96286084513..8bf510aed60 100644 --- a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx +++ b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx @@ -28,22 +28,24 @@ and the derived files: 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-xetex.tex -and the derived file toptesi-doc-xetex.pdf. +Furthermore the bundle contains the documentation source +file toptesi-doc-xetex.tex and the derived file +toptesi-doc-xetex.pdf. -The toptesi-example.tex source file is just an example that shows how -to use the various commands; by commenting or uncommenting certain -source lines it is possible to typeset different kind of theses and their -frontpages. +The toptesi-example.tex source file is just an example +that shows how to use the various commands; by commenting +or uncommenting certain source lines it is possible to +typeset different kind of theses and their frontpages. -The toptesi.cfg file is a sample of a local configuration file that can be -freely edited and modified. +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 -and the English documentation file in pdf format. +By running pdflatex on toptesi.dtx the user gets the class, +sty and cfg files and the English documentation file in + pdf format. -The documentation file toptesi-doc-xetex.pdf is in Italian; its source file is -another example of how to use toptesi. +The documentation file toptesi-doc-xetex.pdf is in Italian; +its source file is another example of how to use toptesi. \endpostamble \askforoverwritefalse @@ -85,7 +87,7 @@ another example of how to use toptesi. % \iffalse %<*driver> \documentclass{ltxdoc} -\ProvidesFile{toptesi.dtx}[2013/01/29 v.5.62a Documented TeX file for +\ProvidesFile{toptesi.dtx}[2013/03/08 v.5.70 Documented TeX file for the TOPtesi bundle] \GetFileInfo{toptesi.dtx} \title{The TOPtesi bundle} @@ -102,7 +104,7 @@ the TOPtesi bundle] % % \fi % -% \CheckSum{2635} +% \CheckSum{2654} % %% \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 @@ -693,7 +695,7 @@ the TOPtesi bundle] % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{toptesi}% -[2013/01/29 v.5.62a Class for typesetting university theses] +[2013/03/08 v.5.70 Class for typesetting university theses] % \end{macrocode} % % The class itself is very simple since it requires just the \texttt{report} document @@ -747,7 +749,7 @@ the TOPtesi bundle] % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{toptesi}% -[2013/01/29 v.5.62a Extension for toptesi.cls]% +[2013/03/08 v.5.70 Extension for toptesi.cls]% % \end{macrocode} % % We start with defining the debugging macros; these trace commands and macros @@ -1393,22 +1395,26 @@ 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 +% \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. -% \item If XeLaTeX is being used for typesetting it suffixes 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 at -% the beginning of the document to declare the new language a the default one. +% \item If XeLaTeX is being used for typesetting it suffixes 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 at the beginning of the document to declare the new +% language a the default one. % \end{itemize} % \begin{macrocode} \AtBeginDocument{% @@ -1417,8 +1423,13 @@ Skipping any redefinition\MessageBreak}% } % \end{macrocode} % -% At last the subsidiary and independent packages \texttt{topcoman} and \texttt{topfront} -% are requested for input. For using XeLaTeX as the typesetting engine it's necessary to load such packages at the ``begin document'' step, so that all a the other settings, especially fonts are already established. May be it should be better done also when using pdf\/\LaTeX\ as the typesetting engine, but the past experience has not shown any inconvenience. +% At last the subsidiary and independent packages \texttt{topcoman} and +% \texttt{topfront} are requested for input. For using XeLaTeX as the +% typesetting engine it's necessary to load such packages at the ``begin +% document'' step, so that all a the other settings, especially fonts +% are already established. May be it should be better done also when +% using pdf\/\LaTeX\ as the typesetting engine, but the past experience +% has not shown any inconvenience. % \begin{macrocode} \ifxetex \AtBeginDocument{\RequirePackage{topfront} @@ -1527,18 +1538,21 @@ Skipping any redefinition\MessageBreak}% \fi % \end{macrocode} % -% Since theses in humanities may end up to occupy several volumes (classically ``tomo'' -% in Italian means ``volume'', although the latter spelling is valid also in Italian with -% the same meaning but appears to be neglected by the humanists; in English ``tome'' -% indicates a ``large book''; in Italian the meaning nuance of ``tomo'' is a little -% different because it is used to indicate the volumes into which a large typeset work is -% divided; the humanists, as usual, know well their words and use them properly!) -% a mechanism is set up to create a different title page for each volume; we need a volume -% counter and a command to start each volume; the |\frontespizio| macro typesets the real -% title page and we have already seen that it can print the volume ordinal. The localization -% allows to change the infix string that is going to be printed. When several tomes are -% involved, instead of using the |\frontespizio| macro, use the |\tomo| one, that provides -% to stepping up the volume counter before actually printing the new tome title page. +% Since theses in humanities may end up to occupy several volumes (classically +% ``tomo'' in Italian means ``volume'', although the latter spelling is valid +% also in Italian with the same meaning but appears to be neglected by the +% humanists; in English ``tome'' indicates a ``large book''; in Italian the +% meaning nuance of ``tomo'' is a little different because it is used to +% indicate the volumes into which a large typeset work is divided; the +% humanists, as usual, know well their words and use them properly!) a +% mechanism is set up to create a different title page for each volume; +% we need a volume counter and a command to start each volume; the +% |\frontespizio| macro typesets the real title page and we have already +% seen that it can print the volume ordinal. The localization allows to +% change the infix string that is going to be printed. When several tomes +% are involved, instead of using the |\frontespizio| macro, use the |\tomo| +% one, that provides to stepping up the volume counter before actually +% printing the new tome title page. % \begin{macrocode} \newcounter{tomo} \newcommand*{\tomo}{\clearpage\stepcounter{tomo}\frontespizio} @@ -1672,7 +1686,8 @@ Skipping any redefinition\MessageBreak}% % 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 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 +% 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. A final unusual request was to be able to put a blank @@ -1757,7 +1772,7 @@ Skipping any redefinition\MessageBreak}% % \fi % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{topfront}[2013/01/29 v.5.62a Title page for TOPtesi] +\ProvidesPackage{topfront}[2013/03/08 v.5.70 Title page for TOPtesi] % \end{macrocode} % % The title page information depends on the type of ``thesis' that is being typeset. @@ -1958,7 +1973,12 @@ Skipping any redefinition\MessageBreak}% % in place of ``Facolt\`a di~'', since with recent bills, the administrative structure of % all Italian universities has been changed and the activities formally assigned to the % Faculties may be now the responsibility of other structures that may have different -% names in different universities. +% names in different universities. If the internal command defined by |\FacoltaDi| +% is empty, no name is printed at all and the title page will not have any indication +% of a particular faculty or other educational structure. Therefore the Degree Course +% name, specified with |\corsodilaurea| should be always specified. The alias +% commands |\StrutturaDidattica| and |\struttura| are defined as equivalent +% commands to |\FacoltaDi| and |\facolta| respectively. % % Finally |\logosede| gets the name of the graphic file that contains the information % relative to the university logo; it may receive also a list of logo file names, as it @@ -2009,6 +2029,7 @@ Skipping any redefinition\MessageBreak}% \def\ateneo#1{\gdef\@ateneo{\expandafter\uppercase{\expandafter #1}}} \def\nomeateneo#1{\gdef\@nomeat{\expandafter\uppercase{\expandafter #1}}} \newcommand\facolta[2][]{\gdef\@facname{#2}\gdef\@facnumber{#1}} +\let\struttura\facolta \newlength{\TPT@logospace}\TPT@logospace=3em\relax \newsavebox{\TPT@logobox} @@ -2073,6 +2094,7 @@ Skipping any redefinition\MessageBreak}% % the adjectives. % \begin{macrocode} \newcommand\FacoltaDi[1]{\gdef\@faculty{#1}} +\let\StrutturaDidattica\FacoltaDi \newcommand\DottoratoIn[1]{\gdef\@PhDname{#1}} \newcommand\CorsoDiLaureaIn[1]{\gdef\@laureaname{#1}} \newcommand\TesiDiLaurea[1]{\gdef\@TesiDiLaurea{#1}} @@ -2143,9 +2165,9 @@ Skipping any redefinition\MessageBreak}% \@ifundefined{@ciclo}{\def\@ciclo{}}{} \@ifundefined{@ateneo}{\def\@ateneo{POLITECNICO DI TORINO}}{} \@ifundefined{@nomeat}{\def\@nomeat{}}{}% Nome proprio dell'ateneo -\@ifundefined{@facolta}{\def\@facname{Ingegneria}}{} +\@ifundefined{@facolta}{\def\@facname{}}{} \@ifundefined{@facnumber}{\def\@facnumber{}}{} -\@ifundefined{@faculty}{\def\@faculty{Facolt\`a di }}{} +\@ifundefined{@faculty}{\def\@faculty{}}{} % \@ifundefined{PrimoTomo}{\def\PrimoTomo{Tomo primo}}{} \@ifundefined{SecondoTomo}{\def\SecondoTomo{Tomo secondo}}{} @@ -2234,12 +2256,14 @@ Skipping any redefinition\MessageBreak}% \begin{center} {\rmfamily\mdseries \ifdottorato - \large \@phdschool + \large \@phdschool\par\medskip \else - \LARGE\ifx\@facnumber\empty\else\@facnumber\space\fi - \@faculty\@facname% + \unless\ifx\@faculty\empty + \LARGE\ifx\@facnumber\empty\else\@facnumber\space\fi + \@faculty\@facname\par\medskip + \fi% \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'' @@ -2539,8 +2563,8 @@ Skipping any redefinition\MessageBreak}% %%================================================================ %% \ateneo{Politecnico di Torino} -\facolta{Ingegneria} -\FacoltaDi{Facolt\`a di } +\facolta{}% nessun nome di default +\FacoltaDi{}% non viene scritta nessuna indicazione per la facoltà %%\DottoratoIn{Corso di dottorato in } \CorsoDiLaureaIn{Corso di Laurea in } \TesiDiLaurea{Tesi di Laurea Magistrale} @@ -2564,7 +2588,7 @@ Skipping any redefinition\MessageBreak}% % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} % lavora solo con LaTeX 2e \ProvidesPackage{topcoman}% - [2013/01/29 v.5.62a Additional commands for the TOPtesi bundle] + [2013/03/08 v.5.70 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 @@ -2625,16 +2649,25 @@ Skipping any redefinition\MessageBreak}% \providecommand{\gradi}{\textormath{\textdegree}{^\circ}} % \end{macrocode} % -% The next set of definitions are used to list a program file. There are better packages to -% perform this task in the CTAN archives. This set of macros has the advantage that is very -% short and light on the computer memory; nevertheless it performs its duty pretty well. The -% font face is the typewriter one; the font size is chosen so as to allow approximately 80 -% characters in the text width of the thesis. It respects the possible indentation tabs (ASCII -% code 9) by inserting the correct amount of typewriter spaces so as to align every line to -% the correct boundary which is ``zero modulo eight''. If the program file contains some form -% feed ASCII characters (ASCII code 12), this \TeX\ code inserts a new page command. The code -% may appear strange, and it does because it makes heavy use of the dirty tricks of appendix~D -% of the \TeX\-book. +% The next set of definitions are used to list a program file. There are better +% packages to perform this task in the CTAN archives. This set of macros has the +% advantage that is very short and light on the computer memory; nevertheless it +% performs its duty pretty well. The font face is the typewriter one; the font +% size is chosen so as to allow approximately 80 characters in the text width of +% the thesis. It respects the possible indentation tabs (ASCII code 9) by +% inserting the correct amount of typewriter spaces so as to align every line to +% the correct boundary which is ``zero modulo eight''. If the program file +% contains some form feed ASCII characters (ASCII code 12), this \TeX\ code +% inserts a new page command. The code may appear strange, and it does because +% it makes heavy use of the dirty tricks of appendix~D of the \TeX\-book. +% for Wahat concern the macro |\obeyspaces| (already defined in the \LaTeXe\ +% kernel) we had to change it in order to abolish a conflict with package |ABC| +% used to typeset music. The latter package is about 15 years younger than +% |topcoman|, so it should be this latter package duty to avoid conflicts with +% pre existing packages; on the opposite we accepted the suggestion of Enrico +% Gregorio, the author of |ABC| whom we thank very much, because his package +% is much more complicated than this one, so that the conflict is avoided +% more easily by correcting |topcoman|. % \begin{macrocode} \def\listing#1{\par\begingroup \programma \input #1 \endgroup} @@ -2643,6 +2676,7 @@ Skipping any redefinition\MessageBreak}% \def\par{\leavevmode\egroup\box0\endgraf} \catcode`\`=\active \catcode`\^^I=\active \catcode`\^^L=\active \obeylines \uncatcodespecials \obeyspaces +\begingroup\lccode`~=`\ \lowercase{\endgroup\global\let~}\ % \everypar{\startbox}} % \end{macrocode} % The above code does the whole work, but the alignment to the tab stops and the @@ -2653,7 +2687,7 @@ Skipping any redefinition\MessageBreak}% \setbox0=\hbox{\ttfamily\footnotesize\space} \tabwidth=8\wd0 \def\startbox{\setbox0=\hbox\bgroup} -{\obeyspaces\global\let =\ } +%{\obeyspaces\global\let =\space} {\catcode`\`=\active \gdef`{\relax\lq}} {\catcode`\^^I=\active \gdef^^I{\leavevmode\egroup \dimen0=\wd0 -- cgit v1.2.3