]> git.lyx.org Git - lyx.git/blob - lib/tex/hollywood.cls
Update my email and status.
[lyx.git] / lib / tex / hollywood.cls
1 %% Author: Garst R. Reese  reese@isn.net
2 %% This is file `hollywood.cls', which provides the current
3 %% preferred format for submission of "spec" scripts
4 %% It is a pretty dull and uninteresting format, but it sells
5 %% Derived from report.cls. There is probably still a lot of stuff
6 %% that could be deleted.
7 \NeedsTeXFormat{LaTeX2e}
8 \ProvidesClass{hollywood} [2001/9/10 v1.2 uses hollywood.layout]
9 \usepackage{fancyhdr}
10 %%\usepackage{extramarks}
11 \usepackage{ifthen}
12 %%\usepackage{lastpage}
13 %%\usepackage{geometry}
14 \usepackage{calc}
15 %%\usepackage{setspace}
16 \RequirePackage{ulem}
17 \input{ot1pcr.fd}
18 \input{t1pcr.fd}
19 \renewcommand{\ref}[1]{#1}
20 \newcommand\@ptsize{}
21 \newif\if@restonecol
22 \newif\if@titlepage
23 \@titlepagetrue
24 \newif\if@openright
25 \DeclareOption{letterpaper}
26    {\setlength\paperheight {11in}%
27     \setlength\paperwidth  {8.5in}%
28 }
29 \DeclareFontFamily{OT1}{pcr}{\hyphenchar\font=-1}
30 \DeclareFontShape{OT1}{pcr}{m}{n}{<12>  pcrr7t}{}
31 \DeclareFontFamily{T1}{pcr}{\hyphenchar\font=-1}
32 \DeclareFontShape{T1}{pcr}{m}{n}{<12> pcrr8t}{}
33 \DeclareOption{12pt}{\renewcommand\@ptsize{0}}
34 \DeclareOption{12pt}{\renewcommand\@ptsize{1}}
35 \DeclareOption{12pt}{\renewcommand\@ptsize{2}}
36 \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
37 \DeclareOption{twoside}{\@twosidetrue  \@mparswitchtrue}
38 \DeclareOption{draft}{\setlength\overfullrule{5pt}}
39 \DeclareOption{final}{\setlength\overfullrule{0pt}}
40 \DeclareOption{titlepage}{\@titlepagetrue}
41 \DeclareOption{notitlepage}{\@titlepagefalse}
42 \DeclareOption{openright}{\@openrighttrue}
43 \DeclareOption{openany}{\@openrightfalse}
44 \DeclareOption{onecolumn}{\@twocolumnfalse}
45 \ExecuteOptions{letterpaper,12pt,oneside,onecolumn,final,openany}
46 \ProcessOptions
47 \input{size1\@ptsize.clo}
48 \setlength\lineskip{1\p@}
49 \setlength\normallineskip{1\p@}
50 \renewcommand\baselinestretch{}
51 \setlength\parskip{0\p@ \@plus \p@}
52 \@lowpenalty   51
53 \@medpenalty  151
54 \@highpenalty 301
55 \setcounter{topnumber}{2}
56 \renewcommand{\headrulewidth}{0pt}
57 \renewcommand\topfraction{.7}
58 \setcounter{bottomnumber}{1}
59 \renewcommand\bottomfraction{.3}
60 \setcounter{totalnumber}{3}
61 \renewcommand\textfraction{.2}
62 \renewcommand\floatpagefraction{.5}
63 \setcounter{dbltopnumber}{2}
64 \renewcommand\dbltopfraction{.7}
65 \renewcommand\dblfloatpagefraction{.5}
66   \def\ps@headings{%
67     \let\@oddfoot\@empty
68     \def\@oddhead{{\slshape\rightmark}\hfil\thepage.}%
69     \let\@mkboth\markboth
70 }
71 \def\ps@myheadings{%
72     \let\@oddfoot\@empty\let\@evenfoot\@empty
73     \def\@evenhead{\thepage.\hfil\slshape\leftmark}%
74     \def\@oddhead{{\slshape\rightmark}\hfil\thepage.}%
75     \let\@mkboth\@gobbletwo
76     }
77   \if@titlepage
78 \newcommand{\address}{\renewcommand{\@address}}
79 \newcommand{\@address}{}
80   \newcommand\maketitle{\begin{titlepage}%
81   \let\footnotesize\small
82   \let\footnoterule\relax
83   \let \footnote \thanks
84   \null\vfil
85   \vskip 60\p@
86   \begin{center}%
87 %%    { \underline{\@title} \par}%
88     { \@title \par}%
89     \vskip 3em%
90     {\lineskip .75em%
91       \begin{tabular}[t]{c}%
92         \@author
93       \end{tabular}\par}%
94       \vskip 1.5em%
95   \end{center}\par
96 \raggedleft
97 \vfill
98 \begin{tabular}{l}%
99 \ignorespaces
100 \@address
101 \end{tabular}\par%
102   \@thanks
103 %  \vfil\null
104   \end{titlepage}%
105   \setcounter{footnote}{0}%
106   \global\let\thanks\relax
107   \global\let\maketitle\relax
108 % \global\let\@address\@empty
109   \global\let\@thanks\@empty
110   \global\let\@author\@empty
111   \global\let\@date\@empty
112   \global\let\@title\@empty
113 % \global\let\address\relax
114   \global\let\title\relax
115   \global\let\author\relax
116   \global\let\date\relax
117   \global\let\and\relax
118 }
119 \fi
120   \setlength\leftmargini  {2.5em}
121 \leftmargin  \leftmargini
122 \setlength  \labelsep  {.5em}
123 \setlength  \labelwidth{\leftmargini}
124 \addtolength\labelwidth{-\labelsep}
125 \@beginparpenalty -\@lowpenalty
126 \@endparpenalty   -\@lowpenalty
127 \@itempenalty     -\@lowpenalty
128 \renewcommand\theenumi{\@arabic\c@enumi}
129 \newcommand\labelenumi{\theenumi.}
130 \renewcommand\p@enumii{\theenumi}
131 \newcommand\labelitemi{\textbullet}
132 \newenvironment{titlepage}
133     {%
134       \if@twocolumn
135         \@restonecoltrue\onecolumn
136       \else
137         \@restonecolfalse\newpage
138       \fi
139       \thispagestyle{empty}%
140       \setcounter{page}\@ne
141 %%      \addtocounter{page}{1}
142     }%
143     {\if@restonecol\twocolumn \else \newpage \fi
144      \if@twoside\else
145         \setcounter{page}\@ne
146 %%      \addtocounter{page}{1}
147      \fi
148     }
149 \setlength\tabbingsep{\labelsep}
150 \skip\@mpfootins = \skip\footins
151 \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
152 \DeclareOldFontCommand{\sl}{\normalfont\ttfamily}{\mathtt}
153 \newcommand\@pnumwidth{1.55em}
154 \newcommand\@tocrmarg{2.55em}
155 \newcommand\@dotsep{4.5}
156 \setcounter{tocdepth}{2}
157 \setlength\columnsep{10\p@}
158 \setlength\columnseprule{0\p@}
159 \pagestyle{fancy}
160 \pagenumbering{arabic}
161   \raggedbottom
162   \onecolumn
163 %%\rfoot{\pageref{LastPage}[]{}}
164
165 % This is what we want for a spec script
166 %% set l & rt margin
167  \setlength{\rightmargin}{.75in}
168    \setlength{\leftmargin}{1.5in}%
169    \setlength{\textwidth}%
170      {\paperwidth -\leftmargin -\rightmargin}%
171 %% Set vertical spacing
172    \setlength\topmargin {48bp}%
173    \setlength\headheight {12bp}%
174    \setlength\headsep {24bp}%
175    \setlength\footskip {0bp}% there are no footnotes
176 %% set page length
177 \newlength{\bmargin}%
178 \setlength{\bmargin}{.75in}%
179 \setlength{\textheight}%
180 {\paperheight -\bmargin -\topmargin -\headheight -\headsep }%
181
182
183 %%\pagestyle{fancy}
184 \rhead{\thepage.}
185 \cfoot{}
186 \rfoot{}
187 \lhead{}
188 \lfoot{}
189
190   % This one is needed to get real adobe courier, but you can use
191   % cmtt which is also correct
192   \renewcommand{\familydefault}{pcr}
193   % This is to negate the effect of the ~ that LyX adds everywhere
194  \let~=\space
195   % this protects you against the fact that TeX does not want to
196   % hyphenate in typewriter font. It is possible to enable
197   % hyphenation, but I do not remember how.
198   % That's good because we -do not- want any hyphenation.
199   \sloppy
200 \newlength{\lnspace}
201 \setlength{\lnspace}{6bp plus 3bp minus 3bp}
202
203 \newcommand{\fadein}[1]{\filbreak\raggedright\par FADE IN:
204 \uppercase{#1}\par\vspace{2bp}}%
205 \newcommand{\fadeout}{\filbreak\raggedright\par FADE OUT }%
206 \newcommand{\intercut}{\filbreak\par INTERCUT WITH: }%
207 \newcommand{\interiorshot}[1]%
208 {\filbreak
209 \vspace{\lnspace}
210 \raggedright
211 \par INT.
212 \uppercase{#1}
213 }%
214
215 \newcommand{\exteriorshot}[1]%
216 {\filbreak
217 \vspace{\lnspace}
218 \raggedright
219 \par EXT.
220 \uppercase{#1}
221 \vspace{\lnspace}
222 }%
223 %% Generalized Scene command in case INT. EXT. etc is not sufficient.
224 \newcommand{\scene}[1]%
225 {\filbreak
226 \vspace{4bp}
227 \raggedright
228 \par
229 \uppercase{#1}
230 }%
231 \newlength{\dialogLength}
232 \setlength{\dialogLength}{4in minus 1in}
233 \newlength{\parenLength}
234 \setlength{\parenLength}{2.2in plus .5in minus .7in}
235 \newlength{\dialogindent}
236 \setlength{\dialogindent}{1in plus .5in}
237
238 \newcommand{\dialogue}[1]%
239 {\raggedright
240 \hspace{\dialogindent}
241 \parbox{\dialogLength}{#1}
242 \vspace{4bp}
243 }
244
245 \newcommand{\narrative}[1]%
246 {\filbreak
247 \vspace{4bp}
248 \raggedright{#1}
249 \vspace{4bp}
250 }
251 \newcommand{\description}[1]%
252 {
253 \vspace{\lnspace}
254 \raggedright{#1}
255 \vspace{\lnspace}
256 }
257
258 \newsavebox{\currentspeaker}
259 \newlength{\speakeroffset}
260 \setlength{\speakeroffset}{1in plus .25in}
261 \newlength{\speakerindent}
262 \setlength{\speakerindent}{\dialogindent +\speakeroffset}
263
264 \newcommand{\speaker}[1]%
265 {\filbreak
266 \vspace{4bp}
267 \hspace{\speakerindent}
268 \sbox{\currentspeaker}{\uppercase{#1}}
269 \usebox{\currentspeaker}
270 \vspace{4bp}
271 }
272
273 \newcommand{\contd}%
274 {\filbreak
275 \vspace{4bp}
276 \hspace{\speakerindent}\usebox{\currentspeaker} (CONT'D)
277 \vspace{4bp}
278 }
279
280 \newcommand{\more}%
281 {
282 \vspace{0bp}
283 \hspace{\speakerindent}\uppercase{(MORE)}
284 \pagebreak\contd%
285 }
286
287 \newlength{\parenindent}
288 \newlength{\parenoffset}
289 \setlength{\parenoffset}{.5in}
290 \setlength{\parenindent}{\speakerindent -\parenoffset}
291
292 \newcommand{\parenthetical}[1]%
293 {
294 \hspace{\parenindent}
295 \vspace{-2bp}
296 \parbox{\parenLength}{(#1)}
297 \vspace{4bp}}
298
299 \newcommand{\titleover}[1]%
300 {\filbreak
301 \par TITLE OVER:
302 \par\hspace{\parenindent}{#1}\par\raggedright}
303
304 \newcommand{\continuing}[0]%
305 {\filbreak
306 \vspace{4bp}
307 \hspace{\speakerindent}
308 \usebox{\currentspeaker}{ (continuing})\par
309 \vspace{2bp}
310 }
311
312
313 \endinput
314 %%
315 %% End of file `hollywood.cls'