/[dtapublic]/pubs/books/ucbka/trunk/custbook.cls
ViewVC logotype

Contents of /pubs/books/ucbka/trunk/custbook.cls

Parent Directory Parent Directory | Revision Log Revision Log


Revision 140 - (show annotations) (download)
Mon Jul 3 01:59:16 2017 UTC (7 years, 5 months ago) by dashley
File size: 26218 byte(s)
Change SVN properties for EOL and keyword expansion.
1 %%$Header$
2 %%
3 %% This is file `book.cls',
4 %% generated with the docstrip utility.
5 %%
6 %% The original source files were:
7 %%
8 %% classes.dtx (with options: `book')
9 %%
10 %% This is a generated file.
11 %%
12 %% Copyright 1993 1994 1995 1996 1997 1998 1999
13 %% The LaTeX3 Project and any individual authors listed elsewhere
14 %% in this file.
15 %%
16 %% This file is part of the LaTeX2e system.
17 %% ----------------------------------------
18 %%
19 %% It may be distributed under the terms of the LaTeX Project Public
20 %% License, as described in lppl.txt in the base LaTeX distribution.
21 %% Either version 1.0 or, at your option, any later version.
22 %% \CharacterTable
23 %% {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
24 %% 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
25 %% Digits \0\1\2\3\4\5\6\7\8\9
26 %% Exclamation \! Double quote \" Hash (number) \#
27 %% Dollar \$ Percent \% Ampersand \&
28 %% Acute accent \' Left paren \( Right paren \)
29 %% Asterisk \* Plus \+ Comma \,
30 %% Minus \- Point \. Solidus \/
31 %% Colon \: Semicolon \; Less than \<
32 %% Equals \= Greater than \> Question mark \?
33 %% Commercial at \@ Left bracket \[ Backslash \\
34 %% Right bracket \] Circumflex \^ Underscore \_
35 %% Grave accent \` Left brace \{ Vertical bar \|
36 %% Right brace \} Tilde \~}
37 \NeedsTeXFormat{LaTeX2e}[1995/12/01]
38 \ProvidesClass{custbook}
39 [1999/01/07 v1.4a
40 Standard LaTeX document class]
41 \newcommand\@ptsize{}
42 \newif\if@restonecol
43 \newif\if@titlepage
44 \@titlepagetrue
45 \newif\if@openright
46 \newif\if@mainmatter \@mainmattertrue
47 \if@compatibility\else
48 \DeclareOption{a4paper}
49 {\setlength\paperheight {297mm}%
50 \setlength\paperwidth {210mm}}
51 \DeclareOption{a5paper}
52 {\setlength\paperheight {210mm}%
53 \setlength\paperwidth {148mm}}
54 \DeclareOption{b5paper}
55 {\setlength\paperheight {250mm}%
56 \setlength\paperwidth {176mm}}
57 \DeclareOption{letterpaper}
58 {\setlength\paperheight {11in}%
59 \setlength\paperwidth {8.5in}}
60 \DeclareOption{legalpaper}
61 {\setlength\paperheight {14in}%
62 \setlength\paperwidth {8.5in}}
63 \DeclareOption{executivepaper}
64 {\setlength\paperheight {10.5in}%
65 \setlength\paperwidth {7.25in}}
66 \DeclareOption{landscape}
67 {\setlength\@tempdima {\paperheight}%
68 \setlength\paperheight {\paperwidth}%
69 \setlength\paperwidth {\@tempdima}}
70 \fi
71 \if@compatibility
72 \renewcommand\@ptsize{0}
73 \else
74 \DeclareOption{10pt}{\renewcommand\@ptsize{0}}
75 \fi
76 \DeclareOption{11pt}{\renewcommand\@ptsize{1}}
77 \DeclareOption{12pt}{\renewcommand\@ptsize{2}}
78 \if@compatibility\else
79 \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
80 \fi
81 \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
82 \DeclareOption{draft}{\setlength\overfullrule{5pt}}
83 \if@compatibility\else
84 \DeclareOption{final}{\setlength\overfullrule{0pt}}
85 \fi
86 \DeclareOption{titlepage}{\@titlepagetrue}
87 \if@compatibility\else
88 \DeclareOption{notitlepage}{\@titlepagefalse}
89 \fi
90 \if@compatibility
91 \@openrighttrue
92 \else
93 \DeclareOption{openright}{\@openrighttrue}
94 \DeclareOption{openany}{\@openrightfalse}
95 \fi
96 \if@compatibility\else
97 \DeclareOption{onecolumn}{\@twocolumnfalse}
98 \fi
99 \DeclareOption{twocolumn}{\@twocolumntrue}
100 \DeclareOption{leqno}{\input{leqno.clo}}
101 \DeclareOption{fleqn}{\input{fleqn.clo}}
102 \DeclareOption{openbib}{%
103 \AtEndOfPackage{%
104 \renewcommand\@openbib@code{%
105 \advance\leftmargin\bibindent
106 \itemindent -\bibindent
107 \listparindent \itemindent
108 \parsep \z@
109 }%
110 \renewcommand\newblock{\par}}%
111 }
112 \ExecuteOptions{letterpaper,10pt,twoside,onecolumn,final,openright}
113 \ProcessOptions
114 \input{bk1\@ptsize.clo}
115 \setlength\lineskip{1\p@}
116 \setlength\normallineskip{1\p@}
117 \renewcommand\baselinestretch{}
118 \setlength\parskip{0\p@ \@plus \p@}
119 \@lowpenalty 51
120 \@medpenalty 151
121 \@highpenalty 301
122 \setcounter{topnumber}{2}
123 \renewcommand\topfraction{.7}
124 \setcounter{bottomnumber}{1}
125 \renewcommand\bottomfraction{.3}
126 \setcounter{totalnumber}{3}
127 \renewcommand\textfraction{.2}
128 \renewcommand\floatpagefraction{.5}
129 \setcounter{dbltopnumber}{2}
130 \renewcommand\dbltopfraction{.7}
131 \renewcommand\dblfloatpagefraction{.5}
132 \if@twoside
133 \def\ps@headings{%
134 \let\@oddfoot\@empty\let\@evenfoot\@empty
135 \def\@evenhead{\thepage\hfil\slshape\leftmark}%
136 \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
137 \let\@mkboth\markboth
138 \def\chaptermark##1{%
139 \markboth {\MakeUppercase{%
140 \ifnum \c@secnumdepth >\m@ne
141 \if@mainmatter
142 \@chapapp\ \thechapter. \ %
143 \fi
144 \fi
145 ##1}}{}}%
146 \def\sectionmark##1{%
147 \markright {\MakeUppercase{%
148 \ifnum \c@secnumdepth >\z@
149 \thesection. \ %
150 \fi
151 ##1}}}}
152 \else
153 \def\ps@headings{%
154 \let\@oddfoot\@empty
155 \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
156 \let\@mkboth\markboth
157 \def\chaptermark##1{%
158 \markright {\MakeUppercase{%
159 \ifnum \c@secnumdepth >\m@ne
160 \if@mainmatter
161 \@chapapp\ \thechapter. \ %
162 \fi
163 \fi
164 ##1}}}}
165 \fi
166 \def\ps@myheadings{%
167 \let\@oddfoot\@empty\let\@evenfoot\@empty
168 \def\@evenhead{\thepage\hfil\slshape\leftmark}%
169 \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
170 \let\@mkboth\@gobbletwo
171 \let\chaptermark\@gobble
172 \let\sectionmark\@gobble
173 }
174 \if@titlepage
175 \newcommand\maketitle{\begin{titlepage}%
176 \let\footnotesize\small
177 \let\footnoterule\relax
178 \let \footnote \thanks
179 \null\vfil
180 \vskip 60\p@
181 \begin{center}%
182 {\LARGE \@title \par}%
183 \vskip 3em%
184 {\large
185 \lineskip .75em%
186 \begin{tabular}[t]{c}%
187 \@author
188 \end{tabular}\par}%
189 \vskip 1.5em%
190 {\large \@date \par}% % Set date in \large size.
191 \end{center}\par
192 \@thanks
193 \vfil\null
194 \end{titlepage}%
195 \setcounter{footnote}{0}%
196 \global\let\thanks\relax
197 \global\let\maketitle\relax
198 \global\let\@thanks\@empty
199 \global\let\@author\@empty
200 \global\let\@date\@empty
201 \global\let\@title\@empty
202 \global\let\title\relax
203 \global\let\author\relax
204 \global\let\date\relax
205 \global\let\and\relax
206 }
207 \else
208 \newcommand\maketitle{\par
209 \begingroup
210 \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
211 \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
212 \long\def\@makefntext##1{\parindent 1em\noindent
213 \hb@xt@1.8em{%
214 \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
215 \if@twocolumn
216 \ifnum \col@number=\@ne
217 \@maketitle
218 \else
219 \twocolumn[\@maketitle]%
220 \fi
221 \else
222 \newpage
223 \global\@topnum\z@ % Prevents figures from going at top of page.
224 \@maketitle
225 \fi
226 \thispagestyle{plain}\@thanks
227 \endgroup
228 \setcounter{footnote}{0}%
229 \global\let\thanks\relax
230 \global\let\maketitle\relax
231 \global\let\@maketitle\relax
232 \global\let\@thanks\@empty
233 \global\let\@author\@empty
234 \global\let\@date\@empty
235 \global\let\@title\@empty
236 \global\let\title\relax
237 \global\let\author\relax
238 \global\let\date\relax
239 \global\let\and\relax
240 }
241 \def\@maketitle{%
242 \newpage
243 \null
244 \vskip 2em%
245 \begin{center}%
246 \let \footnote \thanks
247 {\LARGE \@title \par}%
248 \vskip 1.5em%
249 {\large
250 \lineskip .5em%
251 \begin{tabular}[t]{c}%
252 \@author
253 \end{tabular}\par}%
254 \vskip 1em%
255 {\large \@date}%
256 \end{center}%
257 \par
258 \vskip 1.5em}
259 \fi
260 \newcommand*\chaptermark[1]{}
261 \setcounter{secnumdepth}{2}
262 \newcounter {part}
263 \newcounter {chapter}
264 \newcounter {section}[chapter]
265 \newcounter {subsection}[section]
266 \newcounter {subsubsection}[subsection]
267 \newcounter {paragraph}[subsubsection]
268 \newcounter {subparagraph}[paragraph]
269 \renewcommand \thepart {\@Roman\c@part}
270 \renewcommand \thechapter {\@arabic\c@chapter}
271 \renewcommand \thesection {\thechapter.\@arabic\c@section}
272 \renewcommand\thesubsection {\thesection.\@arabic\c@subsection}
273 \renewcommand\thesubsubsection{\thesubsection .\@arabic\c@subsubsection}
274 \renewcommand\theparagraph {\thesubsubsection.\@arabic\c@paragraph}
275 \renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph}
276 \newcommand\@chapapp{\chaptername}
277 \newcommand\frontmatter{%
278 \cleardoublepage
279 \@mainmatterfalse
280 \pagenumbering{roman}}
281 \newcommand\mainmatter{%
282 \cleardoublepage
283 \@mainmattertrue
284 \pagenumbering{arabic}}
285 \newcommand\backmatter{%
286 \if@openright
287 \cleardoublepage
288 \else
289 \clearpage
290 \fi
291 \@mainmatterfalse}
292 \newcommand\part{%
293 \if@openright
294 \cleardoublepage
295 \else
296 \clearpage
297 \fi
298 \thispagestyle{plain}%
299 \if@twocolumn
300 \onecolumn
301 \@tempswatrue
302 \else
303 \@tempswafalse
304 \fi
305 \null\vfil
306 \secdef\@part\@spart}
307
308 \def\@part[#1]#2{%
309 \ifnum \c@secnumdepth >-2\relax
310 \refstepcounter{part}%
311 \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
312 \else
313 \addcontentsline{toc}{part}{#1}%
314 \fi
315 \markboth{}{}%
316 {\centering
317 \interlinepenalty \@M
318 \normalfont
319 \ifnum \c@secnumdepth >-2\relax
320 \huge\bfseries \partname~\thepart
321 \par
322 \vskip 20\p@
323 \fi
324 \Huge \bfseries #2\par}%
325 \@endpart}
326 \def\@spart#1{%
327 {\centering
328 \interlinepenalty \@M
329 \normalfont
330 \Huge \bfseries #1\par}%
331 \@endpart}
332 \def\@endpart{\vfil\newpage
333 \if@twoside
334 \null
335 \thispagestyle{empty}%
336 \newpage
337 \fi
338 \if@tempswa
339 \twocolumn
340 \fi}
341 \newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
342 \thispagestyle{plain}%
343 \global\@topnum\z@
344 \@afterindentfalse
345 \secdef\@chapter\@schapter}
346 \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
347 \if@mainmatter
348 \refstepcounter{chapter}%
349 \typeout{\@chapapp\space\thechapter.}%
350 \addcontentsline{toc}{chapter}%
351 {\protect\numberline{\thechapter}#1}%
352 \else
353 \addcontentsline{toc}{chapter}{#1}%
354 \fi
355 \else
356 \addcontentsline{toc}{chapter}{#1}%
357 \fi
358 \chaptermark{#1}%
359 \addtocontents{lof}{\protect\addvspace{10\p@}}%
360 \addtocontents{lot}{\protect\addvspace{10\p@}}%
361 \if@twocolumn
362 \@topnewpage[\@makechapterhead{#2}]%
363 \else
364 \@makechapterhead{#2}%
365 \@afterheading
366 \fi}
367 \def\@makechapterhead#1{%
368 \vspace*{50\p@}%
369 {\parindent \z@ \raggedright \normalfont
370 \ifnum \c@secnumdepth >\m@ne
371 \if@mainmatter
372 \huge\bfseries \@chapapp\space \thechapter
373 \par\nobreak
374 \vskip 20\p@
375 \fi
376 \fi
377 \interlinepenalty\@M
378 \Huge \bfseries #1\par\nobreak
379 \vskip 40\p@
380 }}
381 \def\@schapter#1{\if@twocolumn
382 \@topnewpage[\@makeschapterhead{#1}]%
383 \else
384 \@makeschapterhead{#1}%
385 \@afterheading
386 \fi}
387 \def\@makeschapterhead#1{%
388 \vspace*{50\p@}%
389 {\parindent \z@ \raggedright
390 \normalfont
391 \interlinepenalty\@M
392 \Huge \bfseries #1\par\nobreak
393 \vskip 40\p@
394 }}
395 \newcommand\section{\@startsection {section}{1}{\z@}%
396 {-3.5ex \@plus -1ex \@minus -.2ex}%
397 {2.3ex \@plus.2ex}%
398 {\normalfont\Large\bfseries}}
399 \newcommand\subsection{\@startsection{subsection}{2}{\z@}%
400 {-3.25ex\@plus -1ex \@minus -.2ex}%
401 {1.5ex \@plus .2ex}%
402 {\normalfont\large\bfseries}}
403 \newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
404 {-3.25ex\@plus -1ex \@minus -.2ex}%
405 {1.5ex \@plus .2ex}%
406 {\normalfont\normalsize\bfseries}}
407 \newcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
408 {3.25ex \@plus1ex \@minus.2ex}%
409 {-1em}%
410 {\normalfont\normalsize\bfseries}}
411 \newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
412 {3.25ex \@plus1ex \@minus .2ex}%
413 {-1em}%
414 {\normalfont\normalsize\bfseries}}
415 \if@twocolumn
416 \setlength\leftmargini {2em}
417 \else
418 \setlength\leftmargini {2.5em}
419 \fi
420 \leftmargin \leftmargini
421 \setlength\leftmarginii {2.2em}
422 \setlength\leftmarginiii {1.87em}
423 \setlength\leftmarginiv {1.7em}
424 \if@twocolumn
425 \setlength\leftmarginv {.5em}
426 \setlength\leftmarginvi {.5em}
427 \else
428 \setlength\leftmarginv {1em}
429 \setlength\leftmarginvi {1em}
430 \fi
431 \setlength \labelsep {.5em}
432 \setlength \labelwidth{\leftmargini}
433 \addtolength\labelwidth{-\labelsep}
434 \@beginparpenalty -\@lowpenalty
435 \@endparpenalty -\@lowpenalty
436 \@itempenalty -\@lowpenalty
437 \renewcommand\theenumi{\@arabic\c@enumi}
438 \renewcommand\theenumii{\@alph\c@enumii}
439 \renewcommand\theenumiii{\@roman\c@enumiii}
440 \renewcommand\theenumiv{\@Alph\c@enumiv}
441 \newcommand\labelenumi{\theenumi.}
442 \newcommand\labelenumii{(\theenumii)}
443 \newcommand\labelenumiii{\theenumiii.}
444 \newcommand\labelenumiv{\theenumiv.}
445 \renewcommand\p@enumii{\theenumi}
446 \renewcommand\p@enumiii{\theenumi(\theenumii)}
447 \renewcommand\p@enumiv{\p@enumiii\theenumiii}
448 \newcommand\labelitemi{\textbullet}
449 \newcommand\labelitemii{\normalfont\bfseries \textendash}
450 \newcommand\labelitemiii{\textasteriskcentered}
451 \newcommand\labelitemiv{\textperiodcentered}
452 \newenvironment{description}
453 {\list{}{\labelwidth\z@ \itemindent-\leftmargin
454 \let\makelabel\descriptionlabel}}
455 {\endlist}
456 \newcommand*\descriptionlabel[1]{\hspace\labelsep
457 \normalfont\bfseries #1}
458 \newenvironment{verse}
459 {\let\\\@centercr
460 \list{}{\itemsep \z@
461 \itemindent -1.5em%
462 \listparindent\itemindent
463 \rightmargin \leftmargin
464 \advance\leftmargin 1.5em}%
465 \item\relax}
466 {\endlist}
467 \newenvironment{quotation}
468 {\list{}{\listparindent 1.5em%
469 \itemindent \listparindent
470 \rightmargin \leftmargin
471 \parsep \z@ \@plus\p@}%
472 \item\relax}
473 {\endlist}
474 \newenvironment{quote}
475 {\list{}{\rightmargin\leftmargin}%
476 \item\relax}
477 {\endlist}
478 \if@compatibility
479 \newenvironment{titlepage}
480 {%
481 \cleardoublepage
482 \if@twocolumn
483 \@restonecoltrue\onecolumn
484 \else
485 \@restonecolfalse\newpage
486 \fi
487 \thispagestyle{empty}%
488 \setcounter{page}\z@
489 }%
490 {\if@restonecol\twocolumn \else \newpage \fi
491 }
492 \else
493 \newenvironment{titlepage}
494 {%
495 \cleardoublepage
496 \if@twocolumn
497 \@restonecoltrue\onecolumn
498 \else
499 \@restonecolfalse\newpage
500 \fi
501 \thispagestyle{empty}%
502 \setcounter{page}\@ne
503 }%
504 {\if@restonecol\twocolumn \else \newpage \fi
505 \if@twoside\else
506 \setcounter{page}\@ne
507 \fi
508 }
509 \fi
510 \newcommand\appendix{\par
511 \setcounter{chapter}{0}%
512 \setcounter{section}{0}%
513 \gdef\@chapapp{\appendixname}%
514 \gdef\thechapter{\@Alph\c@chapter}}
515 \setlength\arraycolsep{5\p@}
516 \setlength\tabcolsep{6\p@}
517 \setlength\arrayrulewidth{.4\p@}
518 \setlength\doublerulesep{2\p@}
519 \setlength\tabbingsep{\labelsep}
520 \skip\@mpfootins = \skip\footins
521 \setlength\fboxsep{3\p@}
522 \setlength\fboxrule{.4\p@}
523 \@addtoreset {equation}{chapter}
524 \renewcommand\theequation
525 {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@equation}
526 \newcounter{figure}[chapter]
527 \renewcommand \thefigure
528 {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@figure}
529 \def\fps@figure{tbp}
530 \def\ftype@figure{1}
531 \def\ext@figure{lof}
532 \def\fnum@figure{\figurename~\thefigure}
533 \newenvironment{figure}
534 {\@float{figure}}
535 {\end@float}
536 \newenvironment{figure*}
537 {\@dblfloat{figure}}
538 {\end@dblfloat}
539 \newcounter{table}[chapter]
540 \renewcommand \thetable
541 {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@table}
542 \def\fps@table{tbp}
543 \def\ftype@table{2}
544 \def\ext@table{lot}
545 \def\fnum@table{\tablename~\thetable}
546 \newenvironment{table}
547 {\@float{table}}
548 {\end@float}
549 \newenvironment{table*}
550 {\@dblfloat{table}}
551 {\end@dblfloat}
552 \newcounter{algorithm}[chapter]
553 \renewcommand \thealgorithm
554 {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@algorithm}
555 \def\fps@algorithm{tbp}
556 \def\ftype@algorithm{4}
557 \def\ext@algorithm{loa}
558 \def\fnum@algorithm{\algorithmname~\thealgorithm}
559 \newenvironment{algorithm}
560 {\@float{algorithm}}
561 {\end@float}
562 \newenvironment{algorithm*}
563 {\@dblfloat{algorithm}}
564 {\end@dblfloat}
565 \newlength\abovecaptionskip
566 \newlength\belowcaptionskip
567 \setlength\abovecaptionskip{10\p@}
568 \setlength\belowcaptionskip{0\p@}
569 \long\def\@makecaption#1#2{%
570 \vskip\abovecaptionskip
571 \sbox\@tempboxa{#1: #2}%
572 \ifdim \wd\@tempboxa >\hsize
573 #1: #2\par
574 \else
575 \global \@minipagefalse
576 \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
577 \fi
578 \vskip\belowcaptionskip}
579 \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
580 \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
581 \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
582 \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
583 \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
584 \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
585 \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
586 \DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
587 \DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
588 \newcommand\@pnumwidth{1.55em}
589 \newcommand\@tocrmarg{2.55em}
590 \newcommand\@dotsep{4.5}
591 \setcounter{tocdepth}{2}
592 \newcommand\tableofcontents{%
593 \if@twocolumn
594 \@restonecoltrue\onecolumn
595 \else
596 \@restonecolfalse
597 \fi
598 \chapter*{\contentsname
599 \@mkboth{%
600 \MakeUppercase\contentsname}{\MakeUppercase\contentsname}}%
601 \@starttoc{toc}%
602 \if@restonecol\twocolumn\fi
603 }
604 \newcommand*\l@part[2]{%
605 \ifnum \c@tocdepth >-2\relax
606 \addpenalty{-\@highpenalty}%
607 \addvspace{2.25em \@plus\p@}%
608 \begingroup
609 \parindent \z@ \rightskip \@pnumwidth
610 \parfillskip -\@pnumwidth
611 {\leavevmode
612 \large \bfseries #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par
613 \nobreak
614 \global\@nobreaktrue
615 \everypar{\global\@nobreakfalse\everypar{}}%
616 \endgroup
617 \fi}
618 \newcommand*\l@chapter[2]{%
619 \ifnum \c@tocdepth >\m@ne
620 \addpenalty{-\@highpenalty}%
621 \vskip 1.0em \@plus\p@
622 \setlength\@tempdima{1.5em}%
623 \begingroup
624 \parindent \z@ \rightskip \@pnumwidth
625 \parfillskip -\@pnumwidth
626 \leavevmode \bfseries
627 \advance\leftskip\@tempdima
628 \hskip -\leftskip
629 #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
630 \penalty\@highpenalty
631 \endgroup
632 \fi}
633 \newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
634 \newcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}}
635 \newcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}}
636 \newcommand*\l@paragraph{\@dottedtocline{4}{10em}{5em}}
637 \newcommand*\l@subparagraph{\@dottedtocline{5}{12em}{6em}}
638 \newcommand\listoffigures{%
639 \if@twocolumn
640 \@restonecoltrue\onecolumn
641 \else
642 \@restonecolfalse
643 \fi
644 \chapter*{\listfigurename
645 \@mkboth{\MakeUppercase\listfigurename}%
646 {\MakeUppercase\listfigurename}}%
647 \@starttoc{lof}%
648 \if@restonecol\twocolumn\fi
649 }
650 \newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
651 \newcommand\listoftables{%
652 \if@twocolumn
653 \@restonecoltrue\onecolumn
654 \else
655 \@restonecolfalse
656 \fi
657 \chapter*{\listtablename
658 \@mkboth{%
659 \MakeUppercase\listtablename}{\MakeUppercase\listtablename}}%
660 \@starttoc{lot}%
661 \if@restonecol\twocolumn\fi
662 }
663 \let\l@table\l@figure
664 \newcommand\listofalgorithms{%
665 \if@twocolumn
666 \@restonecoltrue\onecolumn
667 \else
668 \@restonecolfalse
669 \fi
670 \chapter*{\listalgorithmname
671 \@mkboth{%
672 \MakeUppercase\listalgorithmname}{\MakeUppercase\listalgorithmname}}%
673 \@starttoc{loa}%
674 \if@restonecol\twocolumn\fi
675 }
676 \let\l@algorithm\l@figure
677 \newdimen\bibindent
678 \setlength\bibindent{1.5em}
679 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
680 %The custom bibliography hacked in to allow the bibliography
681 %to be split up. Only diff is that chapter commands
682 %removed so can be used multiple times. Also hacked
683 %to use a different counter, "custombibcounter", to
684 %hold the "enumiv" counter so that on next environment
685 %old value can be restored. Before using this environment,
686 %the counter "custombibcounter" must be created.
687 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
688 \newenvironment{thecustombibliography}[1]
689 {\list{\@biblabel{\@arabic\c@enumiv}}%
690 {\settowidth\labelwidth{\@biblabel{#1}}%
691 \leftmargin\labelwidth
692 \advance\leftmargin\labelsep
693 \@openbib@code
694 \usecounter{enumiv}%
695 \setcounter{enumiv}{\value{custombibcounter}}%
696 \let\p@enumiv\@empty
697 \renewcommand\theenumiv{\@arabic\c@enumiv}}%
698 \sloppy
699 \clubpenalty4000
700 \@clubpenalty \clubpenalty
701 \widowpenalty4000%
702 \sfcode`\.\@m}
703 {\setcounter{custombibcounter}{\value{enumiv}}\def\@noitemerr
704 {\@latex@warning{Empty `thebibliography' environment}}%
705 \endlist}
706 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
707 %This is the original "thebibliography" environment,
708 %which has not been modified.
709 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
710 \newenvironment{thebibliography}[1]
711 {\chapter*{\bibname
712 \@mkboth{\MakeUppercase\bibname}{\MakeUppercase\bibname}}%
713 \list{\@biblabel{\@arabic\c@enumiv}}%
714 {\settowidth\labelwidth{\@biblabel{#1}}%
715 \leftmargin\labelwidth
716 \advance\leftmargin\labelsep
717 \@openbib@code
718 \usecounter{enumiv}%
719 \let\p@enumiv\@empty
720 \renewcommand\theenumiv{\@arabic\c@enumiv}}%
721 \sloppy
722 \clubpenalty4000
723 \@clubpenalty \clubpenalty
724 \widowpenalty4000%
725 \sfcode`\.\@m}
726 {\def\@noitemerr
727 {\@latex@warning{Empty `thebibliography' environment}}%
728 \endlist}
729 \newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em}
730 \let\@openbib@code\@empty
731 \newenvironment{theindex}
732 {\if@twocolumn
733 \@restonecolfalse
734 \else
735 \@restonecoltrue
736 \fi
737 \columnseprule \z@
738 \columnsep 35\p@
739 \twocolumn[\@makeschapterhead{\indexname}]%
740 \@mkboth{\MakeUppercase\indexname}%
741 {\MakeUppercase\indexname}%
742 \thispagestyle{plain}\parindent\z@
743 \parskip\z@ \@plus .3\p@\relax
744 \let\item\@idxitem}
745 {\if@restonecol\onecolumn\else\clearpage\fi}
746 \newcommand\@idxitem{\par\hangindent 40\p@}
747 \newcommand\subitem{\@idxitem \hspace*{20\p@}}
748 \newcommand\subsubitem{\@idxitem \hspace*{30\p@}}
749 \newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
750 \renewcommand\footnoterule{%
751 \kern-3\p@
752 \hrule\@width.4\columnwidth
753 \kern2.6\p@}
754 \@addtoreset{footnote}{chapter}
755 \newcommand\@makefntext[1]{%
756 \parindent 1em%
757 \noindent
758 \hb@xt@1.8em{\hss\@makefnmark}#1}
759 \newcommand\contentsname{Contents}
760 \newcommand\listfigurename{List of Figures}
761 \newcommand\listtablename{List of Tables}
762 \newcommand\listalgorithmname{List of Algorithms}
763 \newcommand\bibname{Bibliography}
764 \newcommand\indexname{Index}
765 \newcommand\figurename{Figure}
766 \newcommand\tablename{Table}
767 \newcommand\algorithmname{Algorithm}
768 \newcommand\partname{Part}
769 \newcommand\chaptername{Chapter}
770 \newcommand\appendixname{Appendix}
771 \def\today{\ifcase\month\or
772 January\or February\or March\or April\or May\or June\or
773 July\or August\or September\or October\or November\or December\fi
774 \space\number\day, \number\year}
775 \setlength\columnsep{10\p@}
776 \setlength\columnseprule{0\p@}
777 \pagestyle{headings}
778 \pagenumbering{arabic}
779 \if@twoside
780 \else
781 \raggedbottom
782 \fi
783 \if@twocolumn
784 \twocolumn
785 \sloppy
786 \flushbottom
787 \else
788 \onecolumn
789 \fi
790 \endinput
791 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
792 % $Log: custbook.cls,v $
793 % Revision 1.8 2004/03/12 11:08:39 dtashley
794 % Modified to provide class CUSTBOOK rather than BOOK to eliminate LaTeX
795 % warning.
796 %
797 % Revision 1.7 2003/04/17 06:04:14 dtashley
798 % Some advice from Donald Arseneau that should change the "ftype" to 4 for
799 % algorithms. Apparently this is a bit-masked thing, and the value should
800 % not interfere with tables and figures. It was 3 in my initial hack and
801 % there seemed not to be any ill effects, but safer is better.
802 %
803 % Revision 1.6 2003/04/07 07:09:33 dtashley
804 % Keyword expansion finally corrected. Change to file was the addition of
805 % an "algorithm" environment that behaves like figures and tables, including
806 % the capability to generate a list of algorithms.
807 %
808 % Revision 1.5 2003/04/07 07:00:52 dtashley
809 % Additional attempt at keyword expansion.
810 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
811 %$History: custbook.cls $
812 % ***************** Version 1 *****************
813 % User: David T. Ashley Date: 7/16/00 Time: 2:04p
814 % Created in $/uC Software Multi-Volume Book (A)/LaTeX Classes And Style Files
815 % Initial check-in.
816 %
817 % End of file `custbook.cls'.

Properties

Name Value
svn:eol-style native
svn:keywords Header

dashley@gmail.com
ViewVC Help
Powered by ViewVC 1.1.25