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