From 2b4c3ffd81acecf99ca9a478f4b295f760feab54 Mon Sep 17 00:00:00 2001 From: Matthias Zenger Date: Wed, 27 Aug 2003 10:34:43 +0000 Subject: Fixed scaladoc so that it can be used in conjun... Fixed scaladoc so that it can be used in conjunction with non-book styles. --- support/latex/scaladoc.sty | 93 +++++++++++++++++++++++++++------------------ support/latex/tweaklist.sty | 36 ++++++++++++++++++ 2 files changed, 91 insertions(+), 38 deletions(-) create mode 100644 support/latex/tweaklist.sty (limited to 'support/latex') diff --git a/support/latex/scaladoc.sty b/support/latex/scaladoc.sty index 27b1afcec0..4d5e1a27fc 100644 --- a/support/latex/scaladoc.sty +++ b/support/latex/scaladoc.sty @@ -1,14 +1,15 @@ %% $Id$ -\usepackage{fourier} -\usepackage[scaled=0.8]{luximono} -\usepackage{helvet} - -\usepackage{color} -\usepackage{colortbl} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{scaladoc}[2003/08/27 v0.1 Scala style customization] +\RequirePackage{fourier} +\RequirePackage[scaled=0.8]{luximono} +\RequirePackage{helvet} +\RequirePackage{color} +\RequirePackage{colortbl} % produce an acceptable typing area -\usepackage{a4} +\RequirePackage{a4} \setlength{\textheight}{22.5cm} % support for generating PDF files @@ -21,33 +22,36 @@ \fi % produce nice captions -\usepackage[hang,small,bf]{caption2} +\RequirePackage[hang,small,bf]{caption2} % include titlesec -\usepackage[clearempty]{titlesec} +\RequirePackage[clearempty]{titlesec} \newcommand{\mytitlerule}{\titlerule[.5pt]} \newcommand{\mychaptername}{Chapter} -\titleformat{name=\part} - [block] - {\thispagestyle{empty}\centering\scshape\huge} - {\Roman{part}} - {1ex} - {} - [\vspace*{0.5\textheight}] -\titleformat{name=\chapter} - [display] - {\sffamily\bfseries\huge} - {\textnormal{\sffamily\LARGE\mychaptername{} \thechapter}} - {0pt} - {\vspace*{2.5mm}} - [\vspace*{8mm}] -\titleformat{name=\chapter,numberless} - [display] - {\vspace*{-30mm}\sffamily\bfseries\huge} - {} - {0pt} - {} - [\vspace*{2mm}] +\newcommand{\setupBookStyle}{% + \titleformat{name=\part}% + [block]% + {\thispagestyle{empty}\centering\scshape\huge}% + {\Roman{part}}% + {1ex}% + {}% + [\vspace*{0.5\textheight}]% + \titleformat{name=\chapter}% + [display]% + {\sffamily\bfseries\huge}% + {\textnormal{\sffamily\LARGE\mychaptername{} \thechapter}}% + {0pt}% + {\vspace*{2.5mm}}% + [\vspace*{8mm}]% + \titleformat{name=\chapter,numberless}% + [display]% + {\vspace*{-30mm}\sffamily\bfseries\huge}% + {}% + {0pt}% + {}% + [\vspace*{2mm}]% +} +\@ifundefined{part}{}{\setupBookStyle} \titleformat{name=\section} {\sffamily\bfseries\large} {\thesection} @@ -82,10 +86,10 @@ \addtocounter{secnumdepth}{1} % produce nice footers -\usepackage[bottom,multiple,stable]{footmisc} % flushmargin,norule removed +\RequirePackage[bottom,multiple,stable]{footmisc} % flushmargin,norule removed % produce nice headings -\usepackage{fancyhdr} +\RequirePackage{fancyhdr} \pagestyle{fancy} \fancypagestyle{plain}{\fancyhf{}% \renewcommand{\headrulewidth}{0pt}% @@ -98,9 +102,20 @@ \fancyhead[LO]{\sffamily\footnotesize\rightmark} \renewcommand{\headrulewidth}{0.5pt} +% tweak list environments to customize the spacing between items +\RequirePackage{tweaklist} +\renewcommand{\enumhooki}{\addtolength{\itemsep}{-0.32\baselineskip}} +\renewcommand{\enumhookii}{\addtolength{\itemsep}{-0.13\baselineskip}} +\renewcommand{\enumhookiii}{\addtolength{\itemsep}{-0.1\baselineskip}} +\renewcommand{\enumhookiv}{\addtolength{\itemsep}{-0.08\baselineskip}} +\renewcommand{\itemhooki}{\addtolength{\itemsep}{-0.32\baselineskip}} +\renewcommand{\itemhookii}{\addtolength{\itemsep}{-0.13\baselineskip}} +\renewcommand{\itemhookiii}{\addtolength{\itemsep}{-0.1\baselineskip}} +\renewcommand{\itemhookiv}{\addtolength{\itemsep}{-0.08\baselineskip}} + %% set latex/pdflatex specific stuff \ifpdf - \usepackage[pdftex, + \RequirePackage[pdftex, hyperindex, plainpages=false, breaklinks, @@ -110,19 +125,19 @@ linkcolor=black, pagecolor=black, urlcolor=blue]{hyperref} - \usepackage[pdftex]{graphicx} + \RequirePackage[pdftex]{graphicx} \DeclareGraphicsExtensions{.jpg,.pdf} \pdfcatalog { /PageMode (/UseNone) } - \usepackage{thumbpdf} + \RequirePackage{thumbpdf} \else - \usepackage[ps2pdf]{hyperref} - \usepackage{graphicx} + \RequirePackage[ps2pdf]{hyperref} + \RequirePackage{graphicx} \DeclareGraphicsExtensions{.eps,.jpg} \fi -\usepackage{listings} +\RequirePackage{listings} % scala language description \lstdefinelanguage{Scala}{ @@ -221,3 +236,5 @@ \end{tabular}% \end{center}% \end{titlepage}} + +\endinput diff --git a/support/latex/tweaklist.sty b/support/latex/tweaklist.sty new file mode 100644 index 0000000000..337877b4f1 --- /dev/null +++ b/support/latex/tweaklist.sty @@ -0,0 +1,36 @@ +\def\enumhook{} +\def\enumhooki{} +\def\enumhookii{} +\def\enumhookiii{} +\def\enumhookiv{} +\def\itemhook{} +\def\itemhooki{} +\def\itemhookii{} +\def\itemhookiii{} +\def\itemhookiv{} +\def\descripthook{} +\def\enumerate{% + \ifnum \@enumdepth >\thr@@\@toodeep\else + \advance\@enumdepth\@ne + \edef\@enumctr{enum\romannumeral\the\@enumdepth}% + \expandafter + \list + \csname label\@enumctr\endcsname + {\usecounter\@enumctr\def\makelabel##1{\hss\llap{##1}}% + \enumhook \csname enumhook\romannumeral\the\@enumdepth\endcsname}% + \fi} +\def\itemize{% + \ifnum \@itemdepth >\thr@@\@toodeep\else + \advance\@itemdepth\@ne + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + \expandafter + \list + \csname\@itemitem\endcsname + {\def\makelabel##1{\hss\llap{##1}}% + \itemhook \csname itemhook\romannumeral\the\@itemdepth\endcsname}% + \fi} +\renewenvironment{description} + {\list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel\descripthook}} + {\endlist} + -- cgit v1.2.3