summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/suftesi/suftesi.cls
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/suftesi/suftesi.cls')
-rw-r--r--Master/texmf-dist/tex/latex/suftesi/suftesi.cls242
1 files changed, 149 insertions, 93 deletions
diff --git a/Master/texmf-dist/tex/latex/suftesi/suftesi.cls b/Master/texmf-dist/tex/latex/suftesi/suftesi.cls
index 315c69f05d4..5c6989be77c 100644
--- a/Master/texmf-dist/tex/latex/suftesi/suftesi.cls
+++ b/Master/texmf-dist/tex/latex/suftesi/suftesi.cls
@@ -19,7 +19,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesClass{suftesi}
- [2016/03/30 v2.8 A class for typesetting theses, books and articles]
+ [2016/04/04 v2.9 A class for typesetting theses, books and articles]
\ClassWarningNoLine{suftesi}{%
******************************************\MessageBreak
@@ -54,7 +54,6 @@
\newif\ifsuftesi@compactaureo
\newif\ifsuftesi@supercompact
\newif\ifsuftesi@supercompactaureo
-\newif\ifsuftesi@nocrop
\newif\ifsuftesi@screen
\newif\ifsuftesi@screencentered
\newif\ifsuftesi@dottedtoc
@@ -110,13 +109,11 @@
'documentstructure' option is deprecated.\MessageBreak
Use 'structure' option instead}
\ifcase\nr\relax
-\disable@keys{}{secnumstyle}
+ \setkeys{}{structure=book}
\or
-\suftesi@articletrue
-\@titlepagefalse
+ \setkeys{}{structure=article}
\or
-\suftesi@collectiontrue
- \setkeys{}{headerstyle=authortitleinner}
+ \setkeys{}{structure=collection}
\fi}
\RequirePackage{geometry}
\define@choicekey{}{pagelayout}[\val\nr]
@@ -252,71 +249,95 @@
left,center,right,parleft,parcenter,parright}[left]{%
\ifcase\nr\relax
\def\SUF@lr@PARTSwitch{\filright}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakNL}
\or
\def\SUF@lr@PARTSwitch{\filcenter}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or
\def\SUF@lr@PARTSwitch{\filleft}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or%numpar
\def\SUF@lr@PARTSwitch{\filright}
\suftesi@numparparttrue
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakNL}
\or
\def\SUF@lr@PARTSwitch{\filcenter}
\suftesi@numparparttrue
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or
\def\SUF@lr@PARTSwitch{\filleft}
\suftesi@numparparttrue
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\fi}
\define@choicekey{}{chapstyle}[\val\nr]{%
left,center,right,parleft,parcenter,parright}[left]{%
\ifcase\nr\relax
\def\SUF@lr@CHAPSwitch{\filright}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakNL}
\or
\def\SUF@lr@CHAPSwitch{\filcenter}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or
\def\SUF@lr@CHAPSwitch{\filleft}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or%numparchap
\def\SUF@lr@CHAPSwitch{\filright}
\suftesi@numparchaptrue
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakNL}
\or
\def\SUF@lr@CHAPSwitch{\filcenter}
\suftesi@numparchaptrue
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or
\def\SUF@lr@CHAPSwitch{\filleft}
\suftesi@numparchaptrue
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\fi}
\define@choicekey{}{secstyle}[\val\nr]{%
left,center,right,parleft,parcenter,parright}[left]{%
\ifcase\nr\relax
\def\SUF@lr@SECSwitch{\filright}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakNL}
\or
\def\SUF@lr@SECSwitch{\filcenter}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or
\def\SUF@lr@SECSwitch{\filleft}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or%numparsec
\def\SUF@lr@SECSwitch{\filright}
\suftesi@numparsectrue
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakNL}
\or
\def\SUF@lr@SECSwitch{\filcenter}
\suftesi@numparsectrue
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or
\def\SUF@lr@SECSwitch{\filleft}
\suftesi@numparsectrue
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\fi}
\define@choicekey{}{subsecstyle}[\val\nr]{left,center,right}[left]{%
\ifcase\nr\relax
\def\SUF@lr@SUBSECSwitch{\filright}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakNL}
\or
\def\SUF@lr@SUBSECSwitch{\filcenter}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or
\def\SUF@lr@SUBSECSwitch{\filleft}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\fi}
\define@choicekey{}{subsubsecstyle}[\val\nr]{left,center,right}[left]{%
\ifcase\nr\relax
\def\SUF@lr@SUBSUBSECSwitch{\filright}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakNL}
\or
\def\SUF@lr@SUBSUBSECSwitch{\filcenter}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\or
\def\SUF@lr@SUBSUBSECSwitch{\filleft}
+ \DeclareRobustCommand{\xheadbreak}{\xheadbreakBB}
\fi}
\define@choicekey{}{partfont}[\val\nr]{roman,italic,smallcaps}[roman]{%
\ifcase\nr\relax
@@ -364,7 +385,7 @@
\or
\def\SUF@tocCHAP@font{\itshape}
\or
-\def\SUF@tocCHAP@font{\expandafter\SUF@titlesmallcaps}
+\def\SUF@tocCHAP@font{\expandafter\SUF@TOCtitlesmallcaps}
\fi}
\define@choicekey{}{tocsecfont}[\val\nr]{roman,italic,smallcaps}[italic]{%
\ifcase\nr\relax
@@ -372,7 +393,7 @@
\or
\def\SUF@tocSEC@font{\itshape}
\or
-\def\SUF@tocSEC@font{\expandafter\SUF@titlesmallcaps}
+\def\SUF@tocSEC@font{\expandafter\SUF@TOCtitlesmallcaps}
\fi}
\define@choicekey{}{tocsubsecfont}[\val\nr]{roman,italic,smallcaps}[roman]{%
\ifcase\nr\relax
@@ -380,7 +401,7 @@
\or
\def\SUF@tocSUBSEC@font{\itshape}
\or
-\def\SUF@tocSUBSEC@font{\expandafter\SUF@titlesmallcaps}
+\def\SUF@tocSUBSEC@font{\expandafter\SUF@TOCtitlesmallcaps}
\fi}
\define@choicekey{}{tocsubsubsecfont}[\val\nr]{roman,italic,smallcaps}[roman]{%
\ifcase\nr\relax
@@ -388,7 +409,23 @@
\or
\def\SUF@tocSUBSUBSEC@font{\itshape}
\or
-\def\SUF@tocSUBSUBSEC@font{\expandafter\SUF@titlesmallcaps}
+\def\SUF@tocSUBSUBSEC@font{\expandafter\SUF@TOCtitlesmallcaps}
+\fi}
+\define@choicekey{}{tocauthorfont}[\val\nr]{roman,italic,smallcaps}[roman]{%
+\ifcase\nr\relax
+\def\SUF@tocAUT@font{\relax}
+\or
+\def\SUF@tocAUT@font{\itshape}
+\or
+\def\SUF@tocAUT@font{\expandafter\SUF@TOCtitlesmallcaps}
+\fi}
+\define@choicekey{}{toctitlefont}[\val\nr]{roman,italic,smallcaps}[italic]{%
+\ifcase\nr\relax
+\def\SUF@tocTIT@font{\relax}
+\or
+\def\SUF@tocTIT@font{\itshape}
+\or
+\def\SUF@tocTIT@font{\expandafter\SUF@TOCtitlesmallcaps}
\fi}
\define@choicekey{}{partnumstyle}[\val\nr]
{arabic,roman,Roman,dotarabic,dotroman,dotRoman}[arabic]{%
@@ -474,9 +511,11 @@ dotarabic,dotroman,dotRoman}[arabic]{%
\define@choicekey{}{smallcapsstyle}[\val\nr]
{low,upper}[low]{%
\ifcase\nr\relax
- \def\suftesi@MakeTextLowercase{\lowercase}
+ \def\suftesi@MakeTextLowercase{\MakeLowercase}
+ \def\suftesi@MakeTextTOCLowercase{\lowercase}
\or
\def\suftesi@MakeTextLowercase{\relax}
+ \def\suftesi@MakeTextTOCLowercase{\relax}
\fi}
\define@choicekey{}{headerstyle}[\val\nr]
{inner,center,plain,authortitleinner,
@@ -708,11 +747,9 @@ dotarabic,dotroman,dotRoman}[arabic]{%
{screen,cscreen,draft,final}[draft]{%
\ifcase\nr\relax
\suftesi@screentrue
- \suftesi@nocroptrue
\or
\suftesi@screentrue
\suftesi@screencenteredtrue
- \suftesi@nocroptrue
\or
\or
\AtBeginDocument{\crop[off]}
@@ -723,11 +760,9 @@ dotarabic,dotroman,dotRoman}[arabic]{%
'crop' option is deprecated.\MessageBreak
Use 'version' option instead}
\ifcase\nr\relax
- \suftesi@screenfalse
+ \setkeys{}{version=draft}
\or
- \suftesi@nocroptrue
- \suftesi@screentrue
- \suftesi@screencenteredfalse
+ \setkeys{}{version=screen}
\fi}
\define@choicekey{}{titlepage}[\val\nr]
{true,false}[true]{%
@@ -1030,6 +1065,8 @@ quotesize,footnotestyle,liststyle,captionstyle,parindent}
smallcapsstyle=low,
titlefont=italic,
authorfont=roman,
+ toctitlefont=italic,
+ tocauthorfont=roman,
revauthortitle=false,
papertitlestyle=left,
authorfont=roman,
@@ -1061,6 +1098,15 @@ quotesize,footnotestyle,liststyle,captionstyle,parindent}
\RequirePackage{cclicenses}
\else
\fi
+\ifsuftesi@screen
+ \newcommand*\crop[1][]{}
+ \ifsuftesi@screencentered
+ \geometry{hmarginratio=1:1}
+ \else
+ \fi
+\else
+ \RequirePackage[a4,cam,center]{crop}
+\fi
\unless\ifPDFTeX%if xelatex or lualatex
\AtBeginDocument{%
\@ifpackageloaded{fontspec}
@@ -1306,33 +1352,23 @@ quotesize,footnotestyle,liststyle,captionstyle,parindent}
\else
\fi
\fi
-\ifsuftesi@screen
- \newcommand*\crop[1][]{}
- \ifsuftesi@screencentered
- \geometry{hmarginratio=1:1}
- \else
- \fi
-\else
- \RequirePackage[a4,cam,center]{crop}
-\fi
-\ifsuftesi@nocrop
- \relax
- \else
- \RequirePackage[a4,cam,center]{crop}
-\fi
\RequirePackage{titlesec}
\newlength{\sectionsep}
\setlength{\sectionsep}{\dimexpr(\baselineskip) plus 1pt minus 1pt}
\unless\ifPDFTeX% if xetex or luatex
+ \DeclareRobustCommand{\SUF@TOCtitlesmallcaps}[1]{%
+ \addfontfeature{LetterSpace=10}\scshape\suftesi@MakeTextTOCLowercase{#1}}
\DeclareRobustCommand{\SUF@titlesmallcaps}[1]{%
- \addfontfeature{LetterSpace=6}\scshape\suftesi@MakeTextLowercase{#1}}
+ \addfontfeature{LetterSpace=10}\scshape\suftesi@MakeTextLowercase{#1}}
\DeclareRobustCommand{\SUF@headingsmallcaps}[1]{%
- \addfontfeature{LetterSpace=6}\scshape\suftesi@MakeTextLowercase{#1}}
+ \addfontfeature{LetterSpace=10}\scshape\suftesi@MakeTextLowercase{#1}}
\else% if pdftex
+ \DeclareRobustCommand{\SUF@TOCtitlesmallcaps}[1]{%
+ \scshape\suftesi@MakeTextTOCLowercase{\textls*{#1}}}%
\DeclareRobustCommand{\SUF@titlesmallcaps}[1]{%
- \scshape\suftesi@MakeTextLowercase{\kern-0.1em\lsstyle#1}}%
+ \scshape\suftesi@MakeTextLowercase{\textls*{#1}}}%
\DeclareRobustCommand{\SUF@headingsmallcaps}[1]{%
- \scshape\suftesi@MakeTextLowercase{\kern-0.1em\lsstyle#1}}%
+ \scshape\suftesi@MakeTextLowercase{\textls*{#1}}}%
\fi
\newlength\SUF@ADJnumparchap
\def\SUF@default@CHAPTER{
@@ -1405,28 +1441,38 @@ quotesize,footnotestyle,liststyle,captionstyle,parindent}
}
\SUF@default@CHAPTER
\SUF@default@SECTIONS
-\ifsuftesi@periodicalaureo
+\ifsuftesi@periodical
\titlespacing*{\chapter}{0em}{0\SUF@ADJnumparchap}{18ex}
\titlespacing*{name=\chapter,numberless}{0em}{0pt}{18ex}
\else
-\ifsuftesi@periodical
+\ifsuftesi@periodicalaureo
\titlespacing*{\chapter}{0em}{\SUF@ADJnumparchap}{18ex}
\titlespacing*{name=\chapter,numberless}{0em}{0pt}{18ex}
- \else
- \ifsuftesi@compact
- \titlespacing*{\chapter}{0em}{\SUF@ADJnumparchap}{18ex}
- \titlespacing*{name=\chapter,numberless}{0em}{0pt}{18ex}
- \else
- \ifsuftesi@supercompact
- \titlespacing*{\chapter}{0em}{\SUF@ADJnumparchap}{18ex}
- \titlespacing*{name=\chapter,numberless}{0em}{0pt}{18ex}
- \else
- \titlespacing*{\chapter}{0em}{%
+\else
+\ifsuftesi@compact
+ \titlespacing*{\chapter}{0em}{\SUF@ADJnumparchap}{18ex}
+ \titlespacing*{name=\chapter,numberless}{0em}{0pt}{18ex}
+\else
+\ifsuftesi@compactaureo
+ \titlespacing*{\chapter}{0em}{\SUF@ADJnumparchap}{18ex}
+ \titlespacing*{name=\chapter,numberless}{0em}{0pt}{18ex}
+\else
+\ifsuftesi@supercompact
+ \titlespacing*{\chapter}{0em}{\SUF@ADJnumparchap}{18ex}
+ \titlespacing*{name=\chapter,numberless}{0em}{0pt}{18ex}
+\else
+\ifsuftesi@supercompactaureo
+ \titlespacing*{\chapter}{0em}{\SUF@ADJnumparchap}{18ex}
+ \titlespacing*{name=\chapter,numberless}{0em}{0pt}{18ex}
+\else%standard/standardaureo
+ \titlespacing*{\chapter}{0em}{%
\dimexpr(6ex+\SUF@ADJnumparchap)}{18ex}
- \titlespacing*{name=\chapter,numberless}{0em}{6ex}{18ex}
+ \titlespacing*{name=\chapter,numberless}{0em}{6ex}{18ex}
+ \fi
\fi
\fi
- \fi
+ \fi
+ \fi
\fi
\ifsuftesi@article
\def\chapter#1{\ClassError{suftesi}
@@ -1958,8 +2004,8 @@ quotesize,footnotestyle,liststyle,captionstyle,parindent}
\begingroup%
\let\thanks\@gobble
\addcontentsline{toc}{title}{%
- \normalfont{\@author}\texorpdfstring{\newline}{, }%
- \itshape\@headtitle}
+ {\SUF@tocAUT@font{\@author}}\texorpdfstring{\newline}{, }%
+ {\SUF@tocTIT@font{\@headtitle}}}
\endgroup%
\par\nobreak\vspace{2ex}
{\ifsuftesi@reverseauthortitle
@@ -2006,42 +2052,52 @@ quotesize,footnotestyle,liststyle,captionstyle,parindent}
\else
\fi
\AtBeginDocument{%
-\@ifpackagewith{frontespizio}{suftesi}
- {\ifsuftesi@periodical
- \Margini {5.5cm}{7cm}{4.5cm}{0cm}
- \else
- \ifsuftesi@compact
- \Margini {4.5cm}{7cm}{4.5cm}{0cm}
- \else
- \ifsuftesi@supercompact
- \Margini {4.5cm}{10cm}{6cm}{1cm}
- \else
- \ifsuftesi@periodicalaureo
- \Margini {5.5cm}{7cm}{4.5cm}{0cm}
- \fi
- \fi
- \fi
-\fi}
-{\@ifpackageloaded{frontespizio}
- {\ifsuftesi@periodical
- \Margini {1cm}{7cm}{5cm}{1cm}
- \Rientro{1cm}
- \else
- \ifsuftesi@compact
- \Margini {1cm}{7cm}{6cm}{1cm}
- \Rientro{1cm}
- \else
- \ifsuftesi@supercompact
- \Margini {1cm}{10cm}{8cm}{1cm}
- \Rientro{1cm}
- \else
- \ifsuftesi@periodicalaureo
- \Margini {1cm}{7cm}{5cm}{1cm}
- \Rientro{1cm}
- \fi
- \fi
- \fi
-\fi}
+\@ifpackagewith{frontespizio}{suftesi}{%
+\ifsuftesi@periodical
+ \Margini {5.5cm}{7cm}{4.5cm}{0cm}
+ \else
+\ifsuftesi@compact
+ \Margini {4.5cm}{7cm}{4.5cm}{0cm}
+ \else
+\ifsuftesi@supercompact
+ \Margini {4.5cm}{10cm}{6cm}{1cm}
+ \else
+\ifsuftesi@compactaureo
+ \Margini {4.5cm}{7cm}{4.5cm}{0cm}
+ \else
+\ifsuftesi@supercompactaureo
+ \Margini {4.5cm}{10cm}{6cm}{1cm}
+ \else
+\ifsuftesi@periodicalaureo
+ \Margini {5.5cm}{7cm}{4.5cm}{0cm}
+ \else
+\fi\fi\fi\fi\fi\fi}
+{\@ifpackageloaded{frontespizio}{%
+\ifsuftesi@periodical
+ \Margini {1cm}{7cm}{5cm}{1cm}
+ \Rientro{1cm}
+ \else
+\ifsuftesi@compact
+ \Margini {1cm}{7cm}{6cm}{1cm}
+ \Rientro{1cm}
+ \else
+\ifsuftesi@supercompact
+ \Margini {1cm}{10cm}{8cm}{1cm}
+ \Rientro{1cm}
+ \else
+\ifsuftesi@compactaureo
+ \Margini {1cm}{7cm}{6cm}{1cm}
+ \Rientro{1cm}
+ \else
+\ifsuftesi@supercompactaureo
+ \Margini {1cm}{10cm}{8cm}{1cm}
+ \Rientro{1cm}
+ \else
+\ifsuftesi@periodicalaureo
+ \Margini {1cm}{7cm}{5cm}{1cm}
+ \Rientro{1cm}
+ \else
+\fi\fi\fi\fi\fi\fi}
{\relax}}}
\renewenvironment{theindex}
{\if@twocolumn
@@ -2756,8 +2812,8 @@ Janusz M. Nowacki.
{Command \noexpand\chapterintro is undefined\MessageBreak
using 'structure=article'}}
\else
-\def\chapterintro{
- \@ifstar{\@tempswafalse\@chapterintro}{\@tempswatrue\@chapterintro}}
+\def\chapterintro{\@ifstar{%
+ \@tempswafalse\@chapterintro}{\@tempswatrue\@chapterintro}}
\def\@chapterintro{\phantomsection
\if@tempswa\section*{\SUF@fchapterintroname}\fi
\addcontentsline{toc}{section}{\SUF@fchapterintroname}}
@@ -2766,10 +2822,10 @@ Janusz M. Nowacki.
\fi
\newif\ifheadbreak\headbreakfalse
\DeclareRobustCommand{\headbreak}
- {\ifheadbreak\newline\else\fi}
+ {\ifheadbreak\\\else\fi}
\newif\ifxheadbreak\xheadbreaktrue
- \DeclareRobustCommand{\xheadbreak}
- {\ifxheadbreak\newline\else\fi}
+ \def\xheadbreakNL{\ifxheadbreak\newline\else\fi}
+ \def\xheadbreakBB{\ifxheadbreak\\\else\fi}
\let\origtableofcontents\tableofcontents
\renewcommand{\tableofcontents}{%
\begingroup\headbreaktrue\xheadbreakfalse%