From dee12fed9b38e71b80bf0125d45b3c68d50e0662 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 22 Jun 2007 17:46:38 +0000 Subject: classicthesis update (5jun07) git-svn-id: svn://tug.org/texlive/trunk@4494 c570f23f-e606-0410-a88d-b1316a301751 --- .../latex/classicthesis/classicthesis-ldpkg.sty | 194 +++++++++++---------- .../tex/latex/classicthesis/classicthesis.sty | 146 ++++++++++++---- 2 files changed, 213 insertions(+), 127 deletions(-) (limited to 'Master/texmf-dist/tex/latex/classicthesis') diff --git a/Master/texmf-dist/tex/latex/classicthesis/classicthesis-ldpkg.sty b/Master/texmf-dist/tex/latex/classicthesis/classicthesis-ldpkg.sty index 9dcd592fdea..7871445d401 100644 --- a/Master/texmf-dist/tex/latex/classicthesis/classicthesis-ldpkg.sty +++ b/Master/texmf-dist/tex/latex/classicthesis/classicthesis-ldpkg.sty @@ -26,28 +26,32 @@ % % ******************************************************************** \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{classicthesis-ldpkg}[2007/03/21 v1.4.2 Package Loader for Classic Thesis Style] - +\ProvidesPackage{classicthesis-ldpkg}[2007/06/01 v2.0 Package Loader for Classic Thesis Style] + +% ******************************************************************** +% Options +% ******************************************************************** +\RequirePackage{ifthen} + \newboolean{@nochapters} % disable all chapter-specific commands +\DeclareOption{nochapters}{\setboolean{@nochapters}{true}} +\ProcessOptions\relax + % ******************************************************************** % Packages % ******************************************************************** \RequirePackage[T1]{fontenc} \RequirePackage{textcomp} -\RequirePackage[latin1]{inputenc} % latin1 utf8 -\RequirePackage[usenames,dvipsnames]{xcolor} -\RequirePackage[ngerman,american]{babel} +\RequirePackage[dvipsnames]{xcolor} \RequirePackage{xspace} % to get the spacing after macros right \RequirePackage{tabularx} % better tables -\RequirePackage{remreset} \RequirePackage{mparhack} % get marginpar right \RequirePackage{fixltx2e} % fixes some LaTeX stuff -\RequirePackage{ellipsis} % ... ;-) -\RequirePackage[square,numbers]{natbib} % quite good bib style +%\RequirePackage{ellipsis} % ... ;-) \RequirePackage[fleqn]{amsmath} % math environments and more by the AMS \RequirePackage{relsize} % scale font up or down \RequirePackage[smaller]{acronym} % nice macros for handling all acronyms in the thesis -\renewcommand{\textsf}[1]{\textrm{#1}} % to get the acronyms list right (we don't use sans-serif or bold anyway) -\renewcommand{\textbf}[1]{\textsmaller{#1}} +\renewcommand{\bflabel}[1]{{#1}\hfill} % fix the list of acronyms +\RequirePackage{natbib} % ******************************************************************** % Commands @@ -80,105 +84,44 @@ \newcommand{\Ologn}{\ensuremath{O(\log n)}\xspace} \newcommand{\Oone}{\ensuremath{O(1)}\xspace} - -% ******************************************************************** -% Using PDFLaTeX: -% ******************************************************************** -\RequirePackage[pdftex,hyperfootnotes=false,pdfpagelabels]{hyperref} % backref linktocpage pagebackref -\pdfcompresslevel=9 -\pdfadjustspacing=1 -\RequirePackage[pdftex]{graphicx} % PDFTeX driver for graphicx -\DeclareGraphicsRule{*}{mps}{*}{} % enables use of MetaPost graphics with pdflatex - -%******************************************************* -% new colors for better readability -\definecolor{webgreen}{rgb}{0,.5,0} -\definecolor{webbrown}{rgb}{.6,0,0} - -%******************************************************* -% for German texts to get \autoref macros right -\renewcommand{\figureautorefname}{Figure} -\renewcommand{\tableautorefname}{Table} -\renewcommand{\partautorefname}{Part} -\renewcommand{\chapterautorefname}{Chapter} -\renewcommand{\sectionautorefname}{Section} -\renewcommand{\subsectionautorefname}{Section} -\renewcommand{\subsubsectionautorefname}{Section} -%\renewcommand{\paragraphautorefname}{Absatz} -%\renewcommand{\subparagraphautorefname}{Unterabsatz} -%\renewcommand{\footnoteautorefname}{Fu\"snote} -%\renewcommand{\FancyVerbLineautorefname}{Zeile} -%\renewcommand{\theoremautorefname}{Theorem} -%\renewcommand{\appendixautorefname}{Anhang} -%\renewcommand{\equationautorefname}{Gleichung} -%\renewcommand{\itemautorefname}{Punkt} -%\newcommand*{\subfigureautorefname}{Abbildung} - -% ******************************************************************** -% get the links to the figures and tables right -\RequirePackage[all]{hypcap} % to be loaded after hyperref package - -% ******************************************************************** -% setup the style of the backrefs from the bibliography -\RequirePackage[hyperpageref]{backref} % to be loaded after hyperref package - \renewcommand*{\backref}[1]{} % Disable standard - \renewcommand*{\backrefalt}[4]{% Detailed backref - \ifcase #1 % - \relax%(Not cited.)% - \or - (Cited on page~#2.)% - \else - (Cited on pages~#2.) - \fi} -% \hspace*{\fill}{\scriptsize\itshape\mbox{% -% \ifnum#1=1 % -% (Cited on page~% -% \else -% (Cited on pages~% -% \fi -% #2)} -%} - % ******************************************************************** % take care of the caption fonts and sizes (tables and figures) -\RequirePackage[subfigure]{ccaption} - \hangcaption - \captionnamefont{\small\normalfont} - \captiontitlefont{\small} - \captiondelim{.\ } - \setlength{\abovecaptionskip}{\baselineskip} - \setlength{\belowcaptionskip}{\baselineskip} +\RequirePackage{caption} % ******************************************************************** % caption numbering now w/o chapter number \RequirePackage{remreset} \makeatletter - \@removefromreset{table}{chapter} % requires remreset package + \ifthenelse{\boolean{@nochapters}}% + {\relax}{% + \@removefromreset{table}{chapter} % requires remreset package + } \renewcommand{\thetable}{\arabic{table}} \makeatother \makeatletter - \@removefromreset{figure}{chapter} % requires remreset package + \ifthenelse{\boolean{@nochapters}}% + {\relax}{% + \@removefromreset{figure}{chapter} % requires remreset package + } \renewcommand{\thefigure}{\arabic{figure}} \makeatother % ******************************************************************** % enable subfigures in figures -\RequirePackage[hang]{subfigure} - \makeatletter - \@removefromreset{subfigure}{chapter} % requires remreset package - \renewcommand{\thesubfigure}{(\alph{subfigure})} - \renewcommand{\p@subfigure}{} - \makeatother - +\RequirePackage{subfig} + % ******************************************************************** % fine typesetting of code listings \RequirePackage{listings} % ******************************************************************** % caption numbering now w/o chapter number -\makeatletter - \@removefromreset{lstlisting}{chapter} % requires remreset package - \renewcommand{\thelstlisting}{\arabic{lstlisting}} -\makeatother +%\makeatletter +% \ifthenelse{\boolean{@nochapters}}% +% {\relax}{% +% \@removefromreset{lstlisting}{chapter}% requires remreset package +% } +% \renewcommand{\thelstlisting}{\arabic{lstlisting}} % <-- might cause an error with some TeX distributions +%\makeatother % ******************************************************************** % ...and get the layout of the list of listings right (dirty workaround) %\makeatletter @@ -206,20 +149,83 @@ % ******************************************************************** %\lstset{emph={trueIndex,root},emphstyle=\color{BlueViolet}}%\underbar} % for special keywords % ******************************************************************** -\lstset{language=C++, +\lstset{language=[LaTeX]Tex,%C++, keywordstyle=\color{RoyalBlue},%\bfseries, basicstyle=\small\ttfamily, %identifierstyle=\color{NavyBlue}, commentstyle=\color{Green}\ttfamily, stringstyle=\rmfamily, - numbers=left,%none + numbers=none,%left,% numberstyle=\scriptsize,%\tiny - stepnumber=2, + stepnumber=5, numbersep=8pt, showstringspaces=false, breaklines=true, frameround=ftff, frame=single %frame=L -} - \ No newline at end of file +} + +% ******************************************************************** +% Using PDFLaTeX: +% ******************************************************************** +\RequirePackage[pdftex,hyperfootnotes=false,pdfpagelabels,pagebackref]{hyperref} % backref linktocpage pagebackref +\pdfcompresslevel=9 +\pdfadjustspacing=1 +\RequirePackage[pdftex]{graphicx} % PDFTeX driver for graphicx +\DeclareGraphicsRule{*}{mps}{*}{} % enables use of MetaPost graphics with pdflatex + +%******************************************************* +% new colors for better readability +\definecolor{webgreen}{rgb}{0,.5,0} +\definecolor{webbrown}{rgb}{.6,0,0} + +%******************************************************* +% for German texts to get \autoref macros right +\renewcommand{\figureautorefname}{Figure} +\renewcommand{\tableautorefname}{Table} +\renewcommand{\partautorefname}{Part} +\renewcommand{\chapterautorefname}{Chapter} +\renewcommand{\sectionautorefname}{Section} +\renewcommand{\subsectionautorefname}{Section} +\renewcommand{\subsubsectionautorefname}{Section} +%\renewcommand{\paragraphautorefname}{Absatz} +%\renewcommand{\subparagraphautorefname}{Unterabsatz} +%\renewcommand{\footnoteautorefname}{Fu\"snote} +%\renewcommand{\FancyVerbLineautorefname}{Zeile} +%\renewcommand{\theoremautorefname}{Theorem} +%\renewcommand{\appendixautorefname}{Anhang} +%\renewcommand{\equationautorefname}{Gleichung} +%\renewcommand{\itemautorefname}{Punkt} +%\newcommand*{\subfigureautorefname}{Abbildung} + +% ******************************************************************** +% get the links to the figures and tables right +\RequirePackage[all]{hypcap} % to be loaded after hyperref package + +% ******************************************************************** +% setup the style of the backrefs from the bibliography +\newcommand{\backrefnotcitedstring}{\relax}%(Not cited.) +\newcommand{\backrefcitedsinglestring}[1]{(Cited on page~#1.)} +\newcommand{\backrefcitedmultistring}[1]{(Cited on pages~#1.)} + +\RequirePackage[hyperpageref]{backref} % to be loaded after hyperref package + \renewcommand{\backreftwosep}{ and~} % seperate 2 pages + \renewcommand{\backreflastsep}{, and~} % seperate last of longer list + \renewcommand*{\backref}[1]{} % Disable standard + \renewcommand*{\backrefalt}[4]{% Detailed backref + \ifcase #1 % + \backrefnotcitedstring% + \or + \backrefcitedsinglestring{#2}% + \else + \backrefcitedmultistring{#2}% + \fi} +% \hspace*{\fill}{\scriptsize\itshape\mbox{% +% \ifnum#1=1 % +% (Cited on page~% +% \else +% (Cited on pages~% +% \fi +% #2)} +%} \ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/classicthesis/classicthesis.sty b/Master/texmf-dist/tex/latex/classicthesis/classicthesis.sty index 800173daa98..22f8b8938af 100644 --- a/Master/texmf-dist/tex/latex/classicthesis/classicthesis.sty +++ b/Master/texmf-dist/tex/latex/classicthesis/classicthesis.sty @@ -36,12 +36,13 @@ % (sorry for the inconvenience at this point) % * For margin notes: \graffito{} % * There is a problem with the case of math text in part-, -% chapter-, and section titles and I have got no clue on how to fix this -% (either the case or the spacing breaks). So far, I chose the case. :-( +% chapter-, and section titles (either the case or the spacing breaks). +% => this can be fixed by using pdftex 1.40 or later and enabling the +% option pdfspacing of this package % % ******************************************************************** \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{classicthesis}[2007/03/21 v1.4.2 Typographic Style for a classic-looking thesis] +\ProvidesPackage{classicthesis}[2007/06/01 v2.0 Typographic Style for a classic-looking thesis] \RequirePackage{ifthen} \newboolean{tocaligned} % the left column of the toc will be aligned (no indention) \newboolean{eulerchapternumbers} % use AMS Euler for chapter font (otherwise Palatino) @@ -53,6 +54,13 @@ \newboolean{eulermath} % use awesome Euler fonts for math \newboolean{parts} % use part division for the text \newboolean{a5paper} % use those tiny DIN A5 pages + \newboolean{minionpro} % setup for minion pro font + \newboolean{minionprospacing} % use minion pro's textssc for letter spacing + \newboolean{pdfspacing} % use pdftex for letterspacing (via microtype) + +% ******************************************************************** +% Options +% ******************************************************************** \DeclareOption{tocaligned}{\setboolean{tocaligned}{true}} \DeclareOption{eulerchapternumbers}{\setboolean{eulerchapternumbers}{true}} \DeclareOption{drafting}{\setboolean{drafting}{true}} @@ -64,17 +72,45 @@ \DeclareOption{eulermath}{\setboolean{eulermath}{true}} \DeclareOption{parts}{\setboolean{parts}{true}} \DeclareOption{a5paper}{\setboolean{a5paper}{true}} +\DeclareOption{minionpro}{\setboolean{minionpro}{true}} +\DeclareOption{minionprospacing}{\setboolean{minionprospacing}{true}} +\DeclareOption{pdfspacing}{\setboolean{pdfspacing}{true}} \ProcessOptions\relax -% turn off some things if we do not use chapters +% fine-tuning if we use minionprospacing +\ifthenelse{\boolean{minionprospacing}}% + {% + \PackageInfo{classicthesis}{Using option "minionprospacing". % + This activates "minionpro" in general and turns off % + the option "pdfspacing".}% + % is the user trying to use pdfspacing at the same time? + \ifthenelse{\boolean{pdfspacing}}% + {% both minionprospacing and pdfspacing are active + \PackageWarningNoLine{classicthesis}{You cannot use "pdfspacing" at the same time % + as "minionprospacing"!}% + }{\relax}% + \setboolean{minionpro}{true}% + \setboolean{pdfspacing}{false}% + }{\relax} + +% fine-tuning if we do not use chapters \ifthenelse{\boolean{nochapters}}% {% + % is the user trying to use parts at the same time? + \ifthenelse{\boolean{parts}}% + {% both parts and nochapters are active + \PackageWarningNoLine{classicthesis}{You cannot use "parts" at the same time % + as "nochapters"!}% + }{\relax}% + % turn off some things if we do not use chapters + \PackageInfo{classicthesis}{Using option "nochapters" (probably for an article). % + This turns off the options "linedheaders",% + "listsseparated", "eulerchapternumbers", and "parts". Please be aware of that.} \setboolean{linedheaders}{false}% \setboolean{listsseparated}{false}% \setboolean{eulerchapternumbers}{false}% \setboolean{parts}{false} - }% - {\relax}% + }{\relax}% % ******************************************************************** % PDF Stuff @@ -90,13 +126,20 @@ % ******************************************************************** % Font Stuff % ******************************************************************** -\RequirePackage[osf,sc]{mathpazo} % Palatino with real small caps and old style figures\\ -% just some font experiments (ignore) -%\RequirePackage[opticals,osf]{MinionPro} % opticals, fullfamily, -%\RequirePackage{lmodern} -%\RequirePackage[urw-garamond]{mathdesign} -%\RequirePackage[light,condensed,math]{iwona} -%\renewcommand{\sfdefault}{iwona} +\ifthenelse{\boolean{minionpro}}% + {% + % specialists: MinionPro + \RequirePackage[opticals,osf]{MinionPro} % opticals, fullfamily, + }{% + % default: Palatino + \RequirePackage[osf,sc]{mathpazo} % Palatino with real small caps and old style figures\\ + % just some font experiments (ignore) + %\RequirePackage{lmodern} + %\RequirePackage[urw-garamond]{mathdesign} + %\RequirePackage[light,condensed,math]{iwona} + %\renewcommand{\sfdefault}{iwona} + } + \ifthenelse{\boolean{beramono}}% {\RequirePackage[scaled=0.85]{beramono}}% {\renewcommand{\ttdefault}{\rmdefault}} % put your own suitable typewriter font here @@ -110,21 +153,35 @@ % Latin Modern cork-lmr10 \definecolor{halfgray}{gray}{0.55} % chapter numbers will be semi transparent .5 .55 .6 .0 -%\RequirePackage[expansion=false]{microtype} % character protruding and other micro-typography stuff \RequirePackage{microtype} % character protruding and other micro-typography stuff +% [expansion=false] % ******************************************************************** % Textblock size %******************************************************* \ifthenelse{\boolean{a5paper}}% {% A5 - \areaset[5mm]{288pt}{555pt} - \setlength{\marginparwidth}{4em}% - \setlength{\marginparsep}{1.25em}% + \ifthenelse{\boolean{minionpro}}% + {% Minion gets some extra sizes + \areaset[5mm]{278pt}{556pt}% + \setlength{\marginparwidth}{5em}% + \setlength{\marginparsep}{1.25em}% + }{% Palatino or else + \areaset[5mm]{288pt}{555pt}% + \setlength{\marginparwidth}{4em}% + \setlength{\marginparsep}{1.25em}% + }% }{% A4 - \areaset[5mm]{312pt}{657pt} % 624 + 33 head % 5mm for binding - \setlength{\marginparwidth}{7em}% - \setlength{\marginparsep}{2em}% + \ifthenelse{\boolean{minionpro}}% + {% Minion gets some extra sizes + \areaset[5mm]{288pt}{684pt}% 609 + 33 + 42 head \the\footskip + \setlength{\marginparwidth}{7.5em}% + \setlength{\marginparsep}{2em}% + }{% Palatino or else + \areaset[5mm]{312pt}{699pt} % 624 + 33 head + 42 head \the\footskip + \setlength{\marginparwidth}{7em}% + \setlength{\marginparsep}{2em}% + }% } % Here some suggestions for the text widths and heights: % Palatino 10pt: 288--312pt | 609--657pt @@ -154,16 +211,28 @@ % ******************************************************************** \RequirePackage{booktabs} % for better rules in tables \RequirePackage{textcase} % for \MakeTextUppercase -\RequirePackage{soul} % for letterspacing - \sodef\allcapsspacing{\upshape}{0.15em}{0.65em}{0.6em} - \sodef\lowsmallcapsspacing{\scshape}{0.075em}{0.5em}{0.6em} - %\DeclareRobustCommand{\spacedallcaps}[1]{% - % \protected@edef\@myXtemp{\MakeTextUppercase{\allcapsspacing{#1}}}\@myXtemp} - \DeclareRobustCommand{\spacedallcaps}[1]{\MakeTextUppercase{\allcapsspacing{#1}}} - %\DeclareRobustCommand{\spacedlowsmallcaps}[1]{% - % %\protected@edef\@myYtemp{\textsc{\lowsmallcapsspacing{\MakeTextLowercase{#1}}}}\@myYtemp} - % \protected@edef\@myYtemp{\MakeTextLowercase{\textsc{\lowsmallcapsspacing{#1}}}}\@myYtemp} - \DeclareRobustCommand{\spacedlowsmallcaps}[1]{\MakeTextLowercase{\textsc{\lowsmallcapsspacing{#1}}}} + +\ifthenelse{\boolean{minionprospacing}}% + {% + \PackageInfo{classicthesis}{Using MinionPro's textssc for character spacing.}% + \DeclareRobustCommand{\spacedallcaps}[1]{\textssc{\MakeTextUppercase{#1}}}% + \DeclareRobustCommand{\spacedlowsmallcaps}[1]{\textssc{\MakeTextLowercase{#1}}}% + }{% + \ifthenelse{\boolean{pdfspacing}}% + {% + \PackageInfo{classicthesis}{Using pdftex/microtype for character spacing.% + Make sure your pdftex is version 1.40 or higher.}% + \microtypesetup{expansion=false}% + \DeclareRobustCommand{\spacedallcaps}[1]{\textls[160]{\MakeTextUppercase{#1}}}% + \DeclareRobustCommand{\spacedlowsmallcaps}[1]{\textls[80]{\scshape\MakeTextLowercase{#1}}}% + }{% + \RequirePackage{soul} % for letterspacing + \sodef\allcapsspacing{\upshape}{0.15em}{0.65em}{0.6em}% + \sodef\lowsmallcapsspacing{\scshape}{0.075em}{0.5em}{0.6em}% + \DeclareRobustCommand{\spacedallcaps}[1]{\MakeTextUppercase{\allcapsspacing{#1}}}% + \DeclareRobustCommand{\spacedlowsmallcaps}[1]{\MakeTextLowercase{\textsc{\lowsmallcapsspacing{#1}}}}% + }% + } % ******************************************************************** % figures are placed only within section they were declared in @@ -257,7 +326,7 @@ \renewcommand{\cftpartafterpnum}{\cftparfillskip}% \setlength{\cftbeforepartskip}{1em}% \setlength{\cftbeforechapskip}{.1em}% - \setlength{\beforebibskip}{\cftbeforepartskip} + \setlength{\beforebibskip}{\cftbeforepartskip}% }{\relax} % chapters \ifthenelse{\boolean{nochapters}}% @@ -271,17 +340,27 @@ %\setlength{\cftbeforechapskip}{.1em}% } % sections + \ifthenelse{\boolean{nochapters}}% + {% + \setlength{\cftbeforesecskip}{.1em}% + \setlength{\beforebibskip}{1em}% + }% + {\relax} \renewcommand{\cftsecpresnum}{\scshape\MakeTextLowercase}% + \renewcommand{\cftsecfont}{\normalfont}% + \renewcommand{\cftsecpagefont}{\normalfont}% \renewcommand{\cftsecleader}{\hspace{1.5em}} \renewcommand{\cftsecafterpnum}{\cftparfillskip} \ifthenelse{\boolean{tocaligned}}{\renewcommand{\cftsecindent}{0em}}{\relax} % subsections \renewcommand{\cftsubsecpresnum}{\scshape\MakeTextLowercase}% + \renewcommand{\cftsubsecfont}{\normalfont}% \renewcommand{\cftsubsecleader}{\hspace{1.5em}} \renewcommand{\cftsubsecafterpnum}{\cftparfillskip} \ifthenelse{\boolean{tocaligned}}{\renewcommand{\cftsubsecindent}{0em}}{\relax} % figures - \renewcommand{\cftfigpresnum}{\scshape\MakeTextLowercase}% + \renewcommand{\cftfigpresnum}{\scshape\MakeTextLowercase}% + \renewcommand{\cftfigfont}{\normalfont}% \renewcommand{\cftfigleader}{\hspace{1.5em}} \renewcommand{\cftfigpresnum}{\figurename~}%Fig.~} \renewcommand{\cftfigafterpnum}{\cftparfillskip} @@ -291,6 +370,7 @@ \cftsetindents{figure}{0em}{\figurelabelwidth} % tables \renewcommand{\cfttabpresnum}{\scshape\MakeTextLowercase}% + \renewcommand{\cfttabfont}{\normalfont}% \renewcommand{\cfttableader}{\hspace{1.5em}} \renewcommand{\cfttabpresnum}{\tablename~}%Tab.~} \renewcommand{\cfttabafterpnum}{\cftparfillskip} @@ -356,7 +436,7 @@ % ******************************************************************** % footnotes setup % ******************************************************************** -\RequirePackage[bottom]{footmisc} % norule para symbol* marginal perpage +%\RequirePackage{footmisc} % [bottom] norule para symbol* marginal perpage % KOMA-command, footnotemark not superscripted at the bottom \deffootnote{0em}{0em}{\thefootnotemark\hspace*{.5em}} %\setfnsymbol{bringhurst} % use symbols recommended by guru Robert Bringhurst -- cgit v1.2.3