summaryrefslogtreecommitdiff
path: root/support
diff options
context:
space:
mode:
authorMatthias Zenger <mzenger@gmail.com>2003-08-27 10:34:43 +0000
committerMatthias Zenger <mzenger@gmail.com>2003-08-27 10:34:43 +0000
commit2b4c3ffd81acecf99ca9a478f4b295f760feab54 (patch)
treeee66a46c9586cb15808061f46d41305732dd06a9 /support
parentd36d1e0e4c95a8082e5b6e8141d854ad98e79218 (diff)
downloadscala-2b4c3ffd81acecf99ca9a478f4b295f760feab54.tar.gz
scala-2b4c3ffd81acecf99ca9a478f4b295f760feab54.tar.bz2
scala-2b4c3ffd81acecf99ca9a478f4b295f760feab54.zip
Fixed scaladoc so that it can be used in conjun...
Fixed scaladoc so that it can be used in conjunction with non-book styles.
Diffstat (limited to 'support')
-rw-r--r--support/latex/scaladoc.sty93
-rw-r--r--support/latex/tweaklist.sty36
2 files changed, 91 insertions, 38 deletions
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}
+