Better reflection of comment style conventions.
[clqr.git] / clqr.tex
blobb67c1ba71b117f97ccb48285d6b43040593faef4
1 % Copyright (C) 2008, 2009, 2010, 2011 Bert Burgemeister
3 % Permission is granted to copy, distribute and/or modify this
4 % document under the terms of the GNU Free Documentation License,
5 % Version 1.2 or any later version published by the Free Software
6 % Foundation; with no Invariant Sections, no Front-Cover Texts and
7 % no Back-Cover Texts. For details see file COPYING.
10 \newcommand{\maintitle}{Common\ Lisp\ Quick\ Reference}
11 \newcommand{\AUTHOR}{Bert\ Burgemeister}
13 %%%%%%%%%%%%%%%%%%
14 % pdf info
15 \newcommand{\SUBJECT}{Common\ Lisp}
16 \newcommand{\KEYWORDS}{{clqr cheatsheet lisp reference booklet}}
18 %%%%%%%%%%%%%%%%%%
19 % To be reset in paper-*.tex if there is plenty of room
20 \newcommand{\clearpagebeforeindex}{}
23 \documentclass[8pt,pagesize,twoside,footexclude,headexclude]{scrartcl}
26 %%%%%%%%%%%%%%%%%%
27 % outsourced page dimensions
28 \input{paper-current}
29 %\setlength{\paperwidth}{10.5cm}
30 %\setlength{\paperheight}{29.7cm}
31 %%\areaset[3mm]{9cm}{28.3cm}
32 %\typearea[2mm]{20}
33 %\renewcommand{\clearpagebeforeindex}{\clearpage}
34 %%%%%%%%%%%%%%%%%%
36 %%%%%%%%%%%%%%%%%%
37 % outsourced hypertext colors
38 \input{color-current}
39 %\newcommand{\linkcolor}{Fuchsia}
40 %\newcommand{\urlcolor}{MidnightBlue}
41 %\newcommand{\bookmarks}{true}
42 %\newcommand{\pdfpagelayout}{TwoColumnLeft}
43 %%%%%%%%%%%%%%%%%%
45 \input{clqr.packages}
46 % should remain last usepackage:
47 \usepackage%
48 [breaklinks,linktocpage,colorlinks,%
49 bookmarksnumbered,bookmarks=\bookmarks,%
50 linkcolor=\linkcolor,urlcolor=\urlcolor,%
51 pdfpagelayout=\pdfpagelayout,%
52 pdftitle=\maintitle,pdfauthor=\AUTHOR,%
53 pdfsubject=\SUBJECT,pdfkeywords=\KEYWORDS]%
54 {hyperref}
56 \makeindex
57 \titleformat{\section}{\sffamily\mdseries\slshape}
58 {\huge\thesection}{.7em}{\huge}[{\titlerule[0.25pt]}]
60 \titleformat{\subsection}{\sffamily\mdseries\slshape}
61 {\Large\thesubsection}{.7em}{\Large}[{\titlerule[0.25pt]}]
63 % Kill toc header as we want it to span columns
64 \makeatletter
65 \renewcommand{\toc@heading}{}
66 \makeatother
68 \titlecontents{section}%
69 [1.5em]%
70 {\vspace{.5em plus 1em minus .2em}\sffamily\bfseries\upshape\filright}%
71 {\contentslabel{1.5em}}%
72 {\hspace*{3em}}%
73 {\hfill\contentspage\vspace{.1em}}%
75 \titlecontents{subsection}%
76 [4em]%
77 {\sffamily\mdseries\upshape\filright}%
78 {\contentslabel{2.5em}}%
79 {\hspace*{5.5em}}%
80 {\hspace{.5ex plus .5ex minus .3ex}\titlerule*[1em]{.}\contentspage}%
82 \input{clqr.macros}
84 \begin{document}
86 \newlength{\titlepagewidth}
87 \setlength{\titlepagewidth}{8cm}
88 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
89 %% Front Cover
90 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
91 \begin{titlepage}
92 \renewcommand{\rmdefault}{ptm} %% Always times fonts on title
93 \advance\oddsidemargin by 1.5mm
94 \vspace*{15mm}
95 \begin{center}
96 \begin{minipage}{\titlepagewidth}
97 \begin{center}
98 \rmfamily\mdseries\itshape\fontsize{20}{0}\selectfont
99 Quick Reference\index{CLQR}\\
100 \end{center}
101 \end{minipage}
102 \vfill
103 \begin{minipage}{\titlepagewidth}
104 \begin{center}
105 \rmfamily\mdseries\itshape%
106 \fontsize{300}{0}\selectfont{\color{frontcovergray}cl\/}\\
107 \end{center}
108 \end{minipage}
109 \vfill
110 \begin{minipage}{\titlepagewidth}
111 \rmfamily\mdseries\itshape\fontsize{36}{0}\selectfont
112 \hfill Common\/\\[2mm]
113 \rmfamily\mdseries\upshape\fontsize{157}{0}\selectfont
114 \rule[3mm]{\textwidth}{1.5mm}\\
115 lisp\\[-10mm]
116 \rule[15mm]{5.5cm}{1.5mm}\hfill\rule[15mm]{1.77cm}{1.5mm}
117 \end{minipage}\\
118 \begin{minipage}{\titlepagewidth}
119 \rmfamily\mdseries\upshape\fontsize{14}{0}\selectfont
120 \AUTHOR
121 \vspace*{4mm}
122 \end{minipage}
123 \end{center}
125 \end{titlepage}
127 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
128 % TOC
129 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
130 \section*{\contentsname}
131 \vspace{-3ex}
133 \setlength{\columnsep}{1.5em}%
134 \begin{multicols}{2}
135 \tableofcontents
136 \end{multicols}%
138 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
139 \vfill
140 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
141 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
142 %%% CONTENT STARTS HERE %%%%%%%%%%%%%%%%%%%%%%%%
143 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
145 \input{clqr-typographic-conventions}
146 \clearpage
147 \input{clqr-numbers}
148 \input{clqr-characters}
149 \input{clqr-strings}
150 \input{clqr-conses}
151 \input{clqr-arrays}
152 \input{clqr-sequences}
153 \input{clqr-hash-tables}
154 \input{clqr-structures}
155 \input{clqr-control-structure}
156 \input{clqr-clos}
157 \input{clqr-conditions-and-errors}
158 \input{clqr-types-and-classes}
159 \input{clqr-input-output}
160 \input{clqr-packages-and-symbols}
161 \input{clqr-compiler}
162 \input{clqr-external-environment}
164 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
165 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
166 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
168 \clearpagebeforeindex % \clearpage dependent on paper size
170 \renewcommand{\indexpagestyle}{lispref}
171 \renewenvironment{theindex}%
172 {\begin{list}{}%
173 {\setlength{\itemindent}{-1em}\setlength{\leftmargin}{1em}}%
174 \parskip0pt plus .1pt \itemsep0pt%
175 \raggedright\looseness=-1%
177 {\end{list}}
178 \begin{multicols}{4}
179 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
180 [\section*{Index}\vspace{-5ex}]
181 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
182 % Stock \printindex won't do as we want more than two columns.
183 \tiny\sffamily\input{clqr.ind}
184 \end{multicols}
187 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
188 % Make (total) page count a multiple of four.
189 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
190 \clearpage
191 \pagestyle{empty}
192 \newcount\currentpage
193 \currentpage=\value{page}
194 \divide\currentpage by 4
195 \multiply\currentpage by 4
196 \advance\currentpage by -\value{page}
198 \ifnum\the\currentpage=-3
199 \rule{0pt}{0pt}\clearpage
200 \else\ifnum\the\currentpage=-2
201 \rule{0pt}{0pt}\clearpage\rule{0pt}{0pt}\clearpage
202 \else\ifnum\the\currentpage=-1
203 \rule{0pt}{0pt}\clearpage\rule{0pt}{0pt}\clearpage\rule{0pt}{0pt}\clearpage
204 \fi\fi\fi
206 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
207 %% Back Cover
208 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
209 \begin{titlepage}
210 \advance\evensidemargin by -1.5mm
211 \begin{center}
212 \renewcommand{\rmdefault}{ptm} %% Always times fonts on title
213 \vspace*{20pt}
214 \vfill
215 \begin{minipage}{\titlepagewidth}
216 \begin{center}
217 \rmfamily\mdseries\itshape\fontsize{300}{0}\selectfont
218 \reflectbox{{\color{backcovergray}cl\/}}\\
219 \end{center}
220 \end{minipage}
221 \vfill
222 \vspace*{40.5mm}% Adjust here if text below changes
223 \begin{minipage}{\titlepagewidth}
224 \hrule
225 \vspace{1.5mm}
226 \rmfamily\small
227 \makebox[\textwidth][l]{\maintitle\
228 \hfill
229 Revision \input{REVISION}
230 [\input{DATE}\hspace{-.65ex}]}
231 \makebox[\textwidth][l]{Copyright \copyright\ 2008, 2009, 2010, 2011
232 \AUTHOR\hfill}
233 \makebox[\textwidth][l]{\LaTeX\ source:
234 \href{http://clqr.berlios.de}{http://clqr.berlios.de}
235 \hfill
236 \raisebox{-1mm}[0mm][0mm]{\includegraphics[origin=c,height=5mm,keepaspectratio,angle=-40]{housefly.eps}}
237 }\\[1mm]
238 Permission is granted to copy, distribute and/or modify this
239 document under the terms of the GNU Free Documentation License,
240 Version 1.2 or any later version published by the Free Software
241 Foundation; with no Invariant Sections, no Front-Cover Texts and
242 no Back-Cover Texts.\hfill
243 \href{http://www.gnu.org/licenses/fdl.html}{http://www.gnu.org/licenses/fdl.html}\\
244 \vspace{-1mm}
245 \hrule
246 \end{minipage}
247 \end{center}
248 \end{titlepage}
250 \end{document}
251 % -*-latex-*-
253 % LocalWords: ptm lightgray cl lispref theindex pt
255 %%% Local Variables:
256 %%% mode: latex
257 %%% TeX-master: t
258 %%% End: