summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-12-13 23:42:13 +0000
committerKarl Berry <karl@freefriends.org>2015-12-13 23:42:13 +0000
commit3807f54388c3f5abc707c05be526c6c9c0c04623 (patch)
treea91021a51d94f8120ac394394e912f1572f5f605 /Master/texmf-dist/source
parente2bc38f38458aaa4ba4279985cd65ded257e5eb7 (diff)
toptesi (13dec15)
git-svn-id: svn://tug.org/texlive/trunk@39092 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source')
-rw-r--r--Master/texmf-dist/source/latex/toptesi/toptesi.dtx459
1 files changed, 229 insertions, 230 deletions
diff --git a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx
index cd1653a9182..956b0a358be 100644
--- a/Master/texmf-dist/source/latex/toptesi/toptesi.dtx
+++ b/Master/texmf-dist/source/latex/toptesi/toptesi.dtx
@@ -8,7 +8,7 @@
\preamble
______________________________________________________
The TOPtesi package
- Copyright (C) 2014 Claudio Beccari
+ Copyright (C) 2015 Claudio Beccari
All rights reserved
License information appended
@@ -16,7 +16,7 @@
\endpreamble
\postamble
-Copyright 2005-2014 Claudio Beccari
+Copyright 2005-2015 Claudio Beccari
Distributable under the LaTeX Project Public License,
version 1.3c or higher (your choice). The latest version of
@@ -31,8 +31,8 @@ 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-it-xetex.tex and the derived file
-toptesi-it-xetex.pdf.
+file toptesi-it-pdftex.tex and the derived file
+toptesi-it-pdftex.pdf.
The toptesi-example.tex source file is just an example
that shows how to use the various commands; by commenting
@@ -40,18 +40,22 @@ or uncommenting certain source lines it is possible to
typeset different kind of theses and their front pages.
The topfront-example.tex source file is an example of how
-to produce just the title page with toptesi and the external
+to produce just the title page with TOPtesi and the external
package frontespizio.
The toptesi.cfg file is a sample of a local configuration
-file that can be freely edited and modified.
+file that can be copied to another file and its copy freely
+edited and customized.
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-it-xetex.pdf is in Italian;
-its source file is another example of how to use toptesi.
+The source file of the Italian documentation file
+toptesi-it-pdftex.pdf is another example of how to use TOPtesi.
+In spite of its name, toptesi-it-pdftex.tex may be typeset
+with pdfLaTeX, XeLaTeX, and LuaLateX; see the first comment
+lines of the file for how-to information.
\endpostamble
\askforoverwritefalse
@@ -68,7 +72,7 @@ its source file is another example of how to use toptesi.
\endgroup
%</internal>
%
-% Copyright 1989--2014 Claudio Beccari
+% Copyright 1989--2015 Claudio Beccari
%
% This file is part of the TOPtesi bundle
% -------------------------------------------
@@ -93,14 +97,31 @@ its source file is another example of how to use toptesi.
% \fi
%
% \iffalse
+%^^A The following trick uses the same date for every file header.
+%<class,topsty,topcmn,topfrn>\NeedsTeXFormat{LaTeX2e}[2015/01/01]
+%<*driver>
+\ProvidesFile{toptesi.dtx}[%
+%</driver>
+%<class>\ProvidesClass{toptesi}[%
+%<topsty>\ProvidesPackage{toptesi}[%
+%<topcmn>\ProvidesPackage{topcoman}[%
+%<topfrn>\ProvidesPackage{topfront}[%
+%<*driver,class,topsty,topcmn,topfrn>
+2015/12/06 v.5.90
+%<class>Class for typesetting university theses]
+%<topsty>Extension for toptesi.cls]
+%<topcmn>Additional commands for the TOPtesi bundle]
+%<topfrn>Title page for TOPtesi and other classes]
+%</driver,class,topsty,topcmn,topfrn>
+%<*driver>
+]
+%</driver>
%<*driver>
\documentclass{ltxdoc}
-\ProvidesFile{toptesi.dtx}[2015/11/03 v.5.86g Documented TeX file for
-the TOPtesi bundle]
\GetFileInfo{toptesi.dtx}
\title{The TOPtesi bundle}
\date{\fileversion\space--- \filedate}
- \author{Claudio Beccari}
+ \author{Claudio Beccari\thanks{E-mail: \texttt{claudio dot beccari at gmail dot com}}}
\usepackage{metalogo,multicol}
\def\prog#1{\textsf{#1}}
@@ -116,23 +137,7 @@ the TOPtesi bundle]
%</driver>
% \fi
%
-% \CheckSum{2792}
-%
-%% \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
-%% Lower-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
-%% Digits \0\1\2\3\4\5\6\7\8\9
-%% Exclamation \! Double quote \" Hash (number) \#
-%% Dollar \$ Percent \% Ampersand \&
-%% Acute accent \' Left paren \( Right paren \)
-%% Asterisk \* Plus \+ Comma \,
-%% Minus \- Point \. Solidus \/
-%% Colon \: Semicolon \; Less than \<
-%% Equals \= Greater than \> Question mark \?
-%% Commercial at \@ Left bracket \[ Backslash \\
-%% Right bracket \] Circumflex \^ Underscore \_
-%% Grave accent \` Left brace \{ Vertical bar \|
-%% Right brace \} Tilde \~}
+% \CheckSum{2763}
%
% \begin{abstract}
% This file describes the TOPtesi bundle; it is a set of files designed to
@@ -661,13 +666,17 @@ the TOPtesi bundle]
% All these commands are defined into the separate package \texttt{topcoman.sty}
% that might be used as an independent extension package with any document class.
%
-% \section{PDF format suitable for archiving}
+% \section{PDF/A archivable format}
% This section in general does not apply if the thesis is typeset by means
% of \XeLaTeX, because the typesetting engine in this case cannot directly
-% produce a PDF formatted output file. For this reason the option |pdfa|, that
-% shall be described shortly, should not specified to the class |toptesi|;
-% at the same time if this option is specified, but the thesis is typeset by
-% means of \XeLaTeX, the effects of this options are disabled.
+% produce a PDF formatted output file. Nevertheless even a PDF produced with
+% \XeLaTeX\ can be made PDF/A compliant; even better, \LuaLaTeX, whose source
+% file is practically the same as that of \XeLaTeX, may produce a PDF/A
+% compliant output file if the user forces a little bit the compilation.
+%
+% More details are give in the Italian documentation contained in files
+% \texttt{toptesi\discretionary{-}{}{-}it-pdftex}, |toptesi-it-xetex|, and
+% |toptesi-it-luatex|.
%
% Politecnico di Torino as well as many other Italian and foreign universities
% are moving towards archiving theses in electronic format, specifically in the
@@ -679,120 +688,138 @@ the TOPtesi bundle]
% regulation defines a PDF variant suitable for archiving, named PDF/A, that
% has two sub-formats distinguished as PDF/A-1a, and PDF/A-1b. The `a'
% sub-format is more exacting, while the `b' one is less stringent. Recently
-% ISO has published an upgrade to these regulations, but here we stick to the
+% ISO has published upgrades to these regulations, but here we stick to the
% older ones, that are a sub set of the newer ones, and for which suitable
% software is available.
%
-% The requirements for the `a' sub-format imply not only those imposed on the `b' one,
-% but also that all characters are conforming to UNICODE and that the logical structure
-% of the document be maintained. The requirements for the `b' sub-format are that the
-% document must be reproducible without modifications exactly as it was at the moment
-% of archiving. Both sub-formats must contain \emph{metadata} that are searchable even
-% without decompressing the normally compressed PDF file, and that contain information
-% useful for archive maintenance; among these informations, of course, the PDF/A
-% category the document belongs to, the document title, the authors, and few other
-% optional information, such as the keywords that ease up library searches.
-%
-% Since version 1.40, the program \texttt{pdflatex} is capable of producing PDF/A-1b
-% conforming files, provided that some attention is put into the manipulation of the
-% source file of the thesis. With the distribution of the 2008 version of the \TeX\
-% system, the executable \texttt{pdflatex} has version number 1.40.9 (or higher)
-% and is capable of producing PDF/A-1b files.
-%
-% The particular attention needed to avoid problems with the PDF/A certification is
-% summarised as follows:
+% The requirements for the `a' sub-format imply not only those imposed on
+% the `b' one, but also that all characters are conforming to UNICODE and
+% that the logical structure of the document be accessible from outside
+% (Tagged PDF). The requirements for the `b' sub-format are that the
+% document must be reproducible without modifications exactly as it was at
+% the moment of archiving. Both sub-formats must contain \emph{metadata}
+% that are searchable even without decompressing the normally compressed
+% PDF file, and that contain information useful for archive maintenance;
+% among these informations, of course, the PDF/A category the document belongs
+% to, the document title, the authors, and few other optional pieces of
+% information, such as the keywords that ease up library searches.
+%
+% Since version 1.40, the program \texttt{pdflatex} is capable of producing
+% PDF/A-1b conforming files, provided that some attention is put into the
+% manipulation of the source file of the thesis. With the distribution of
+% the 2008 version of the \TeX\ system, the executable \texttt{pdflatex} has
+% version number 1.40.9 (or higher) and is capable of producing PDF/A-1b files.
+%
+% The particular attention needed to avoid problems with the PDF/A certification
+% is summarised as follows:
% \begin{enumerate}
-% \item The preliminary essential requirement is that the \texttt{pdflatex} engine used
-% to typeset the thesis be sufficiently recent to support the PDF/A requirements. It's
-% better to have the most recent distribution of the \TeX\ system installed on your PC.
-% Do not try to typeset the thesis with the `old' \LaTeX; you \emph{must} process the
-% input thesis file(s) with \texttt{pdflatex} or with \prog{xelatex} or with
-% \prog{lualatex}; in the following,
-% no specific check will be made in order to verify if you are actually using
-% \texttt{pdflatex}. If you really need to use the `old' \LaTeX, you get a DVI
-% file and you need to transform it with |dvips| into a PS file; at this point you
-% have lost the possibility of exploiting the internal commands of |pdflatex| version
-% 1.40.9 or later. You can still produce a PDF/A final document, but you have to
-% transform it by means of |ghostscript|; read the |ghostscript| (version 8.61 or later)
-% documentation file |ps2pdf.html| in order to find out how to produce the correct PS
-% to PDF/A transformation. A procedure similar to this one is available when the
-% thesis is typeset by means of \XeLaTeX, and produces valid results provided some
-% caution is exercised when using fonts.
+% \item The preliminary essential requirement is that the \texttt{pdflatex}
+% engine used to typeset the thesis be sufficiently recent to support the
+% PDF/A requirements. It's better to have the most recent distribution of
+% the \TeX\ system installed on your PC. Do not try to typeset the thesis
+% with the `old' \LaTeX; you \emph{must} process the input thesis file(s)
+% with \texttt{pdflatex} or with \prog{xelatex} or with \prog{lualatex};
+% in the following, no specific check will be made in order to verify if
+% you are actually using \texttt{pdflatex}. If you really need to use the
+% `old' \LaTeX, you get a DVI file and you need to transform it with |dvips|
+% into a PS file; at this point you have lost the possibility of exploiting
+% the internal commands of |pdflatex| version 1.40.9 or later. You can still
+% produce a PDF/A final document, but you have to transform it by means of
+% |ghostscript|; read the |ghostscript| (version 8.61 or later) documentation
+% file |ps2pdf.html| in order to find out how to produce the correct PS to
+% PDF/A transformation. A procedure similar to this one is available when
+% the thesis is typeset by means of \XeLaTeX, and produces valid results
+% provided some caution is exercised when using fonts. The documentation in
+% Italian describes several methods to transform a non compliant PDF/A file
+% into a compliant one, and how to correct the ``imperfections'' that forbid
+% any valid transformation.
%
% \item Your up-to-date complete \TeX\ distribution should contain the package
-% \textsf{pdfx}; if it does not, upgrade your \TeX\ system complete distribution.
+% \textsf{pdfx}; if it does not, upgrade your \TeX\ system complete
+% distribution.
%
-% \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 the download
-% page of the 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} documentation. A minimal set of \emph{metadata}
-% example would be the following one:
+% \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}
+% documentation. A minimal set of \emph{metadata} example would be the
+% following one:
% \begin{verbatim}
% \Title{Experiments in Trichotetratomy}
% \Author{John Smith}
% \end{verbatim}
-% Keywords require a specific XML style format that can be examined in the package
-% documentation.
+% Keywords require a specific XML style format that can be examined in the
+% package documentation.
%
-% \item Some mathematical symbol commands obtained from the standard \LaTeX\ set-up
-% 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. The UNICODE math fonts used by \XeLaTeX\ do not require any
-% patch, but unfortunately its PDF byproduct is not PDF/A compliant (it must be converted
-% by means of \prog{ghostscript}).
+% \item Some mathematical symbol commands obtained from the standard \LaTeX\
+% set-up 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. The UNICODE
+% math fonts used by \XeLaTeX\ do not require any patch, but unfortunately
+% its PDF byproduct is not PDF/A compliant (it must be converted by means
+% of \prog{ghostscript}).
%
% \item Use only PNG and JPEG images with RGB color profiles.
%
-% \item If you include PDF images that contain some text, be sure that the fonts for
-% this text are 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
-% all the fonts used in the image. If you don't succeed, open the PDF file with
-% the free program \texttt{inkscape} and save it back in PDF format; the missing fonts
-% will be replaced with their traced outlines and this will not disturb the PDF/A
-% 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
-% 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.
-%
-% \item If you use \prog{xelatex} for typesetting your thesis, you have to accompany your
-% master file with another one that contains the metadata and other necessary
-% information.
-% Be sure to call this auxiliary file has the masterfile name glued with |-def.ps|; so if
-% your mastefile is named \texttt{JohnSmithMasterThesis.tex}, name this auxiliary file as
-% \texttt{JohnSmithMasterThesis-def.ps} and fill in the necessary metadata and other
-% technical information into this file in the lines marked with |% Customize|. Then run
-% the \prog{ghostscript} program with the proper name (different for Windows or UNIX-like
-% platforms) with the proper input parameters and options as the |PS2PD.hhtml| file explains. There are strong chances that
-% if you follow the general recommendations shown here and in this document
-% |toptesi-it-xetex.pdf| file, the output file will be PDF/A compliant.
+% \item If you include PDF images that contain some text, be sure that the
+% fonts for this text are 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 all the fonts used in the image. If you
+% don't succeed, open the PDF file with the free program \texttt{inkscape}
+% and save it back in PDF format; the missing fonts will be replaced with
+% their traced outlines and this will not disturb the PDF/A conformity. Pay
+% attention, because Inkscape might save your file with some specifications
+% for transparency; Transparency specification destroy the PDF/A compliance.
+%
+% \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 that this or that is not conforming to the PDF/A
+% specification. A suitable program is the Preflight module of Adobe Acrobat
+% Pro~XI, but this, although the most authoritative, is a commercial program;
+% probably your university has special facilities for this task.
+%
+% \item If you use \prog{xelatex} and you want to convert it by means of
+% |ghostscript|for typesetting your thesis, you have to accompany your
+% master file with another one that contains the metadata and other necessary
+% information. Be sure to call this auxiliary file has the masterfile name
+% glued with |-def.ps|; so if your masterfile is named
+% \texttt{JohnSmithMasterThesis.tex}, name this auxiliary file as
+% \texttt{JohnSmithMasterThesis-def.ps} and fill in the necessary metadata
+% and other technical information into this file in the lines marked with
+% |% Customize|. Then run the \prog{ghostscript} program with the proper
+% name (different for Windows or UNIX-like platforms) with the proper input
+% parameters and options as the |PS2PD.hhtml| file explains. There are
+% strong chances that if you follow the general recommendations shown here
+% and in the document |toptesi-it-xetex.pdf| file, the output file will be
+% PDF/A compliant.
+% \item If you really have to typeset your document with \prog{xelatex} because
+% you have to use Opentype fonts or you have to manage languages in a
+% different way from what you can di with |babel|, then prefer using
+% \prog{lualatex}, even if you have to force the compilation; formally
+% \LuaLaTeX\ and package \pack{pdfx} are incompatible (by the end of 2015),
+% but if at the first error you force the continuation of the compilation
+% you may end up with a compliant PDF/A file.
%\end{enumerate}
%
% Warning: if you are using Adobe Reader X (or later), this program will open
-% a PDF file beginning with an information header stating that the file is
+% a PDF file beginning with an information header stating that the file
% PDF/A claims to be compliant; maybe it's true, but do not trust this
% information too much, at least don't believe that this information is a
% ``certification'' of the PDF/A compliance. I have seen files with this
% comforting information that did not pass the Preflight test!
%
-% Up to today the realisation of PDF/A conforming files sets forth several problems
-% that are of great concern for the large Institutions that have thousands of documents
-% a year to archive; it is not a question implied in the free nature of the
-% \prog{pdflatex} and \prog{xelatex} programs, that, on the opposite, according to my
-% experience have a very high rate of success in producing PDF/A compliant documents.
-% If you stick to the default \TeX\ system Type~1 256-glyph, or to the UNICODE encoded
-% otf or ttf fonts and use this patched version of \texttt{TOPtesi} you should be able
+% Up to today the realisation of PDF/A conforming files sets forth several
+% problems that are of great concern for the large Institutions that have
+% thousands of documents a year to archive; it is not a question implied
+% in the free nature of the \prog{pdflatex}, \prog{xelatex}, and \prog{lualatex}
+% programs, that, on the opposite, according to my experience have a very high
+% rate of success in producing PDF/A compliant documents. If you stick to the
+% default \TeX\ system Type~1 256-glyph, or to the UNICODE encoded otf or ttf
+% fonts and use this patched version of \texttt{TOPtesi} you should be able
% to avoid most problems.
%
-% \StopEventually{} ^^A qui si puo' mettere una bibliografia
+% \StopEventually{} ^^A Bibliography?
%
% \section{Documented code}
% \subsection{The class code}
@@ -803,26 +830,22 @@ the TOPtesi bundle]
% \iffalse
%<*class>
% \fi
-% \begin{macrocode}
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{toptesi}%
-[2015/11/03 v.5.86g Class for typesetting university theses]
-% \end{macrocode}
-%
-% The class itself is very simple since it requires just the \texttt{report} document
-% class and some packages with some default options. All options specified for the
-% \texttt{toptesi} class are passed on to the \texttt{report} class; the |a4paper|
-% option is made the default, but the user can call the class with any valid
-% \LaTeX\ paper size. According to the \LaTeX\ machinery of option passing,
-% the |\ExecuteOption| command assures that |a4paper| is the default size,
-% but it is not being used if another paper size code is specified to the class.
-% The same holds true for the other class options, except for the encoding code
-% string because their passing machinery does not hold true for the \pack{inputenc}
-% package; therefore this package is not loaded any more as it was in previous
-% versions\footnote{Thanks to Enrico Gregorio who pointed out this feature.}
-% of the class. On the opposite if another language is specified in the list of
-% \pack{toptesi} class options, this language would be appended to the \pack{babel}
-% package default options and, beware!, it would become the default language.
+%
+% The class itself is very simple since it requires just the \texttt{report}
+% document class and some packages with some default options. All options
+% specified for the \texttt{toptesi} class are passed on to the \texttt{report}
+% class; the |a4paper| option is made the default, but the user can call the
+% class with any valid \LaTeX\ paper size. According to the \LaTeX\ machinery
+% of option passing, the |\ExecuteOption| command assures that |a4paper|
+% is the default size, but it is not being used if another paper size code is
+% specified to the class. The same holds true for the other class options,
+% except for the encoding code string because their passing machinery does
+% not hold true for the \pack{inputenc} package; therefore this package is
+% not loaded any more as it was in previous versions of the class\footnote{Thanks
+% to Enrico Gregorio who pointed out this feature.}. On the opposite if another
+% language is specified in the list of \pack{toptesi} class options, this
+% language would be appended to the \pack{babel} package default options and,
+% beware!, it would become the default language.
% \begin{macrocode}
\DeclareOption{a4paper}{\PassOptionsToClass{\CurrentOption}{report}}
\DeclareOption{titlepage}{\PassOptionsToClass{\CurrentOption}{report}}
@@ -830,16 +853,16 @@ the TOPtesi bundle]
\ExecuteOptions{a4paper,titlepage}
\ProcessOptions\relax
\LoadClass{report}
-\RequirePackage{ifxetex}
-\ifxetex
- \RequirePackage{fontspec}
+\RequirePackage{iftex}
+\ifPDFTeX
+ \RequirePackage[english,italian]{babel}
+\else
\RequirePackage{polyglossia}
\setmainlanguage{italian}
\setotherlanguage{english}
\renewcommand*{\iflanguage}[1]{\ifnum\the\language=\csname l@#1\endcsname
- \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi}
-\else
- \RequirePackage[english,italian]{babel}
+ \expandafter\@firstoftwo\else
+ \expandafter\@secondoftwo\fi}
\fi
\RequirePackage{toptesi}
%
@@ -862,11 +885,6 @@ the TOPtesi bundle]
% \iffalse
%<*topsty>
% \fi
-% \begin{macrocode}
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{toptesi}%
-[2015/11/03 v.5.86g Extension for toptesi.cls]%
-% \end{macrocode}
%
% We start with defining the debugging macros; these trace commands and macros
% are the usual ones I use for debugging. I know the \texttt{trace} package is supposed
@@ -913,7 +931,6 @@ the TOPtesi bundle]
\newlength\T@Pbinding\setlength\T@Pbinding{7mm}
\def\setbindingcorrection#1{\T@Pbinding=#1}
\newif\if@binding \@bindingfalse
-\newif\ifT@Ppdfa \T@Ppdfafalse
\newif\ifchapterbibliography \chapterbibliographyfalse
\newif\ifclassica \classicafalse
\DeclareOption{cucitura}{\@bindingtrue}
@@ -923,7 +940,8 @@ the TOPtesi bundle]
\DeclareOption{classica}{\classicatrue}
\DeclareOption{autoretitolo}{\ifclassica\@utoretitolotrue\fi}
\DeclareOption{oldstyle}{\ifclassica\@ldstyletrue\fi}
-\DeclareOption{pdfa}{\T@Ppdfatrue}
+\DeclareOption{pdfa}{\PackageWarning{toptesi}{Option pdfa ignored.\MessageBreak
+Read documentation toptesi-it-*.pdf, because package pdfx has changed}}
\DeclareOption{usefrontespizio}{\T@Pfrontespiziotrue\TOPfrontfalse}
\DeclareOption{noTOPfront}{\T@Pfrontespiziotrue\TOPfrontfalse}
%
@@ -1068,7 +1086,7 @@ the TOPtesi bundle]
\advance\leftskip\@tempdima
\hskip -\leftskip
#1\nobreak\hfil \nobreak
- \hb@xt@\@pnumwidth{\hss\unless\ifxetex\normalfont\fi\scshape{#2}}\par
+ \hb@xt@\@pnumwidth{\hss\ifPDFTeX\normalfont\fi\scshape{#2}}\par
\penalty\@highpenalty
\endgroup
\fi}
@@ -1594,16 +1612,18 @@ Skipping any redefinition\MessageBreak}%
}
% \end{macrocode}
%
-% Last but not least, here come the specifications for the PDF/A-1b format. First of
-% 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 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:
+% Last but not least, here come the specifications for the PDF/A-1b format.
+% First of 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 commands must be replaced by equivalent ones that do not use
+% zero-width glyphs. For |\not|, another slash can be used, but in order to
+% have it the right size in all math typesetting modes it is necessary to have
+% a different command for every mode; this is achieved with the |\mathchoice|
+% primitive as such:
% \begin{macrocode}
-\ifxetex\else
+\ifPDFTeX
\renewcommand*\not{\mathrel{\mathchoice%
{\rlap{$\displaystyle\mkern2.5mu\mathnormal{/}$}}%
{\rlap{$\textstyle\mkern2.5mu\mathnormal{/}$}}%
@@ -1611,13 +1631,13 @@ Skipping any redefinition\MessageBreak}%
{\rlap{$\scriptscriptstyle\mkern2.5mu\mathnormal{/}$}}%
}}
% \end{macrocode}
-% Actually the zero-width property of the slash must be simulated with a zero-width box
-% but within this box it is necessary to specify the typesetting style of the math
-% mode material.
+% Actually the zero-width property of the slash must be simulated with a
+% zero-width box but within this box it is necessary to specify the typesetting
+% style of the math mode material.
%
-% A similar trick is used to patch the |\mapstochar| command but no other glyph was
-% found suitable for substituting the original one; therefore we had to make it up
-% with the |picture| environment:
+% A similar trick is used to patch the |\mapstochar| command but no other glyph
+% was found suitable for substituting the original one; therefore we had to make
+% it up with the |picture| environment:
% \begin{macrocode}
\renewcommand\mapstochar{\mathrel{\mathchoice
{\displaystyle\unitlength=0.0555\fontdimen6\font
@@ -1634,34 +1654,14 @@ Skipping any redefinition\MessageBreak}%
\line(0,1){4}}\endpicture}
}}\fi
% \end{macrocode}
-% The above patches are introduced irrespective of using \texttt{pdflatex} for producing
-% 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). The
-% patches are avoided if XeLaTeX is being used with the UNICODE math definitions.
-%
-% Finally, if the class option |pdfa| was specified, we load the |pdfx.sty| file
-% with the suitable option for typesetting a (hopefully) PDF/A compliant file.
-% We must remember that |pdfx.sty| on turn loads
-% the |hyperref.sty| file with the necessary |pdfa| option. The user, therefore does
-% not need to reload that package, but is free to configure it through the
-% |\hypersetup| command arguments right at the beginning of the thesis main file.
-%
-% Nevertheless if \XeLaTeX\ is being used to typeset the document, loading
-% of the package |pdfx| skipped; at the same time if the |pdfa| option was
-% specified, the |hyperref| package gets loaded anyhow. If with \XeLaTeX\ you
-% do not want to use hyperlinks, do not specifica the |pdfa| option to the
-% |toptesi| class.
-% \begin{macrocode}
-\ifT@Ppdfa
- \unless\ifxetex
- \RequirePackage[a-1b]{pdfx}
- \else
- \RequirePackage{hyperref}
- \fi
-\fi
-% \end{macrocode}
+% The above patches are introduced irrespective of using \texttt{pdflatex} for
+% producing 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).
+% The patches are avoided if XeLaTeX is being used with the UNICODE math
+% definitions.
%
% \subsection{The \texttt{classica} option}
% As mentioned above, the \texttt{classica} option was devised in order to cope with
@@ -1771,13 +1771,13 @@ Skipping any redefinition\MessageBreak}%
\def\@oddfoot{\null \hfill \textbf{\lapagina} \hfill \null}%
\let\@evenfoot\@oddfoot
\def\@evenhead{%
- \setbox\@intesta\hbox{\unless\ifxetex\latintext\fi
+ \setbox\@intesta\hbox{\ifPDFTeX\latintext\fi
\footnotesize\strut\textsc{%
\@author\ifx\@secondauthor\empty\else\ et al.\fi: \@stitle}%
}%
\ifdim\wd\@intesta>\textwidth\headwrn{\titolo}\fi
\underline{\makebox[\textwidth]{\box\@intesta}}}%
- \def\@oddhead{\unless\ifxetex\latintext\fi
+ \def\@oddhead{\ifPDFTeX\latintext\fi
\setbox\@intesta\hbox{%
\footnotesize\strut\textsl{\rightmark}}%
\ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi%
@@ -1788,19 +1788,19 @@ Skipping any redefinition\MessageBreak}%
\renewcommand*{\ps@headings}{\let\@mkboth\markboth
\def\@oddfoot{\null \hfill \textbf{\lapagina}\hfill \null}%
\let\@evenfoot\empty\let\@evenhead\empty
- \def\@oddhead{{\setbox\z@\hbox{\unless\ifxetex\latintext\fi\footnotesize
+ \def\@oddhead{{\setbox\z@\hbox{\ifPDFTeX\latintext\fi\footnotesize
\textsc{%
\@author\ifx\@secondauthor\empty\else\ et al.\fi: \@stitle}}%
- \setbox\tw@\hbox{\unless\ifxetex\latintext\fi\footnotesize\textsl{\rightmark}}%
+ \setbox\tw@\hbox{\ifPDFTeX\latintext\fi\footnotesize\textsl{\rightmark}}%
\dimen@=\dimexpr2em + \wd\z@ + \wd\tw@\relax
\ifdim\dimen@<\textwidth \relax
\else
\setbox\z@\vbox{\hsize.48\textwidth\parindent\z@\raggedright
- \unless\ifxetex\latintext\fi\footnotesize\textsc{%
+ \ifPDFTeX\latintext\fi\footnotesize\textsc{%
\@author\ifx\@secondauthor\empty\else\ et al.\fi: \@stitle
}}%
\setbox\tw@\vbox{\hsize.48\textwidth\parindent\z@\raggedleft
- \unless\ifxetex\latintext\fi\footnotesize\textsl{\rightmark}}%
+ \ifPDFTeX\latintext\fi\footnotesize\textsl{\rightmark}}%
\fi
\setbox\@intesta\vbox to\z@{%
\vss\hbox to\textwidth{\strut\box\z@\hfill\box\tw@}}%
@@ -1935,10 +1935,7 @@ Skipping any redefinition\MessageBreak}%
% \iffalse
%<*topfrn>
% \fi
-% \begin{macrocode}
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{topfront}[2015/11/03 v.5.86g Title page for TOPtesi and other classes]
-% \end{macrocode}
+%
% In oder to use |topfront| as a stand-alone extension package with other
% classes it is necessary to verify if the |classica| option corresponds
% to a valid setting of |\ifclassica|; since this test is defined in the
@@ -2988,11 +2985,7 @@ Skipping any redefinition\MessageBreak}%
% \iffalse
%<*topcmn>
% \fi
-% \begin{macrocode}
-\NeedsTeXFormat{LaTeX2e} % lavora solo con LaTeX 2e
-\ProvidesPackage{topcoman}%
- [2015/11/03 v.5.86g 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
% the math roman fonts, as it is by default; some authors prefer to use both symbols
@@ -3000,8 +2993,8 @@ Skipping any redefinition\MessageBreak}%
% the XeTeX typesetting engine is used; in facts the Unicode math defines specific
% commands for setting any Latin or Greek mathematical letter in any possible font shape and series.
% \begin{macrocode}
-\RequirePackage{ifxetex}
-\ifxetex\else
+\RequirePackage{iftex}
+\ifPDFTeX
\newcommand*\DeclareSlantedCapitalGreekLetters{%
\mathchardef\Gamma="7100
\mathchardef\Delta="7101
@@ -3024,23 +3017,24 @@ Skipping any redefinition\MessageBreak}%
% already loaded the |\RequirePackage| command performs the necessary tests and possibly
% does not load anything.
% \begin{macrocode}
-\providecommand{\ensuremath}[1]{\ifmmode#1\else$#1$\fi}%
-\providecommand\textormath{}
-\renewcommand{\textormath}{\ifmmode\expandafter\@secondoftwo\else
+\providecommand*\ensuremath[1]{\ifmmode#1\else$#1$\fi}%
+\providecommand*\textormath{}
+\renewcommand*\textormath{\ifmmode\expandafter\@secondoftwo\else
\expandafter\@firstoftwo\fi}
\providecommand*\textsubscript{\raisebox{-0.5ex}}
-\ifxetex\else
+\ifPDFTeX
\RequirePackage{textcomp}
\fi
% \end{macrocode}
-% The following commands may be already defined; should they be missing they are supplied
-% here. Most of them are already defined in the Italian option to the
-% \texttt{babel} language if the thesis is typeset with \textsf{pdflatex} that loads that
-% package; these commands are not predefined if the thesis is typeset with \XeLaTeX\
-% that does not load the \texttt{babel} package; but remember; this package may be used
-% as a stand alone one, without the initial call by the \texttt{toptesi} document class,
-% so that the language Italian might be undefined.
+% The following commands may be already defined; should they be missing they
+% are supplied here. Most of them are already defined in the Italian option
+% to the \texttt{babel} language if the thesis is typeset with \textsf{pdflatex}
+% that loads that package; these commands are not predefined if the thesis is
+% typeset with \XeLaTeX\ or \LuaLaTeX\ that do not load the \texttt{babel}
+% package; 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}{\textormath{\textohm}{\mathrm{\Omega}}}
\providecommand{\ped}[1]{\textormath{\textsubscript{#1}}{_{\mathrm{#1}}}}
@@ -3048,8 +3042,13 @@ 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{\mu}\else
- \ifx\muup\undefined\mu\else\muup\fi\fi}}
+\providecommand{\micro}{\textormath{\textmu}{%
+ \ifPDFTeX
+ \ifx\muup\undefined\mu\else\muup\fi
+ \else
+ \mathup{\mu}%
+ \fi
+}}
\providecommand{\gradi}{\textormath{\textdegree}{^\circ}}
% \end{macrocode}
%