home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 8 / FreshFishVol8-CD1.bin / useful / text / tex / pastex / macros / script / script.sty (.txt) < prev    next >
Texinfo Document  |  1992-09-07  |  20KB  |  560 lines

  1. % script.sty -- by Frank Neukam  (06 Jun 1992)
  2. % based on Leslie Lamport's report and book styles.
  3. \typeout{Document Style `script' V1.0 by Frank Neukam <06 Jun 1992>}
  4. \font\tensfb  =cmssbx10 scaled \magstep0
  5. \font\elvsfb  =cmssbx10 scaled \magstephalf
  6. \font\twlsfb  =cmssbx10 scaled \magstep1
  7. \font\frtnsfb =cmssbx10 scaled \magstep2
  8. \font\svtnsfb =cmssbx10 scaled \magstep3
  9. \font\twtysfb =cmssbx10 scaled \magstep4
  10. \font\twfvsfb =cmssbx10 scaled \magstep5
  11. \def\@ptsize{1}
  12. \@namedef{ds@10pt}{\def\@ptsize{0}}
  13. \@namedef{ds@11pt}{\def\@ptsize{1}}
  14. \@namedef{ds@12pt}{\def\@ptsize{2}}
  15. \def\ds@draft{\overfullrule 5pt}
  16. \def\ds@twoside{\@twosidetrue \@mparswitchtrue}
  17. \@options
  18. \input script1\@ptsize.sty\relax
  19. \normalsize
  20. \newif\if@hincl
  21. \def\headincludeon{\@hincltrue}
  22. \def\headincludeoff{\@hinclfalse}
  23. \newif\if@hsl
  24. \def\headseplineon{\@hsltrue \@hincltrue}
  25. \def\headseplineoff{\@hslfalse \@hinclfalse}
  26. \headseplineoff
  27. \newdimen\sc@pw
  28. \newdimen\sc@ph
  29. \newdimen\sc@bcor
  30. \newcount\sc@div
  31. \newdimen\sc@hblk
  32. \newdimen\sc@vblk
  33. \newdimen\sc@temp
  34. \sc@pw 210mm
  35. \sc@ph 297mm
  36. \def\typearea{\@ifnextchar [{\@typearea}{\@typearea[0mm]}}
  37. \def\@typearea[#1]#2{
  38.  \sc@bcor #1
  39.  \sc@div=#2
  40.  \sc@hblk \sc@pw
  41.  \advance \sc@hblk by -\sc@bcor
  42.  \divide\sc@hblk by \sc@div
  43.  \oddsidemargin -1in
  44.  \evensidemargin -1in
  45.  \if@twoside
  46.   \advance\oddsidemargin by \sc@hblk
  47.   \advance\oddsidemargin by \sc@bcor
  48.   \advance\evensidemargin by 2\sc@hblk
  49.  \else
  50.   \advance\oddsidemargin by 1.5\sc@hblk
  51.   \advance\oddsidemargin by \sc@bcor
  52.   \evensidemargin\oddsidemargin
  53.  \textwidth \sc@pw
  54.  \advance\textwidth by -\sc@bcor
  55.  \advance\textwidth by -3\sc@hblk
  56.  \headheight 15pt
  57.  \headsep 1.5\baselineskip
  58.  \sc@vblk \sc@ph
  59.  \divide\sc@vblk by \sc@div
  60.  \sc@temp \sc@ph
  61.  \advance\sc@temp by -3\sc@vblk
  62.  \if@hincl
  63.   \advance\sc@temp by -\headheight
  64.   \advance\sc@temp by -\headsep
  65.  \textheight \topskip
  66.  \@whiledim\textheight<\sc@temp
  67.   \do{\advance\textheight by \baselineskip}
  68.  \topmargin \sc@vblk
  69.  \advance\topmargin by -1in
  70.  \if@hincl \else
  71.   \advance\topmargin by -\headheight
  72.   \advance\topmargin by -\headsep
  73.  \footskip 3.5\baselineskip
  74.  \if@twoside
  75.   \marginparwidth 1.5\sc@hblk
  76.  \else
  77.   \marginparwidth \sc@hblk
  78.  \marginparsep 1cc
  79.  \marginparpush 0.45\baselineskip}
  80. \def\areaset{\@ifnextchar [{\@areaset}{\@areaset[0mm]}}
  81. \def\@areaset[#1]#2#3{
  82.  \sc@bcor #1
  83.  \textwidth #2
  84.  \textheight #3
  85.  \sc@hblk \sc@pw
  86.  \advance\sc@hblk by -\sc@bcor
  87.  \advance\sc@hblk by -\textwidth
  88.  \divide\sc@hblk by 3
  89.  \oddsidemargin -1in
  90.  \evensidemargin -1in
  91.  \if@twoside
  92.   \advance\oddsidemargin by \sc@hblk
  93.   \advance\oddsidemargin by \sc@bcor
  94.   \advance\evensidemargin by 2\sc@hblk
  95.  \else
  96.   \advance\oddsidemargin by 1.5\sc@hblk
  97.   \advance\oddsidemargin by \sc@bcor
  98.   \evensidemargin\oddsidemargin
  99.  \headheight 15pt
  100.  \headsep 1.5\baselineskip
  101.  \sc@vblk \sc@ph
  102.  \advance\sc@vblk by -\textheight
  103.  \divide\sc@vblk by 3
  104.  \if@hincl
  105.   \advance\textheight by -\headheight
  106.   \advance\textheight by -\headsep
  107.  \topmargin \sc@vblk
  108.  \advance\topmargin by -1in
  109.  \if@hincl \else
  110.   \advance\topmargin by -\headheight
  111.   \advance\topmargin by -\headsep
  112.  \footskip 3.5\baselineskip
  113.  \if@twoside
  114.   \marginparwidth 1.5\sc@hblk
  115.  \else
  116.   \marginparwidth \sc@hblk
  117.  \marginparsep 1cc
  118.  \marginparpush 0.45\baselineskip}
  119. \ifcase \@ptsize\relax \typearea{8} \or \typearea{10} \or \typearea{12} \fi
  120. \parskip 0pt plus 1pt
  121. \parindent 1em
  122. \partopsep 3pt plus 2pt minus 2pt
  123. \footnotesep 0.6\baselineskip
  124. \skip\footins 0.75\baselineskip plus 4pt minus 2pt
  125. \skip\@mpfootins = \skip\footins
  126. \columnsep 1cc
  127. \columnseprule 0pt
  128. \floatsep 1\baselineskip plus 2pt minus 2pt
  129. \textfloatsep 20pt plus 2pt minus 4pt
  130. \intextsep 1\baselineskip plus 2pt minus 2pt
  131. \@maxsep 20pt
  132. \dblfloatsep 1\baselineskip plus 2pt minus 2pt
  133. \dbltextfloatsep 20pt plus 2pt minus 4pt
  134. \@dblmaxsep 20pt
  135. \@fptop 0pt plus 1fil
  136. \@fpsep 0.7\baselineskip plus 2fil
  137. \@fpbot 0pt plus 1fil
  138. \@dblfptop 0pt plus 1fil
  139. \@dblfpsep 0.7\baselineskip plus 2fil
  140. \@dblfpbot 0pt plus 1fil
  141. \arraycolsep 5pt
  142. \tabcolsep 6pt
  143. \arrayrulewidth 0.4pt
  144. \doublerulesep 2pt
  145. \fboxsep 3pt
  146. \fboxrule 0.4pt
  147. \tabbingsep \labelsep
  148. \labelsep .5em
  149. \leftmargini 2.5em
  150. \leftmarginii 2.2em
  151. \leftmarginiii 1.87em
  152. \leftmarginiv 1.7em
  153. \leftmarginv 1em
  154. \leftmarginvi 1em
  155. \leftmargin\leftmargini
  156. \labelwidth\leftmargini
  157. \advance\labelwidth-\labelsep
  158. \def\@listI{\leftmargin\leftmargini
  159.  \topsep 0.8em plus 0.2em minus 0.4em
  160.  \parsep 0.4em plus 2pt minus 1pt
  161.  \itemsep \parsep}
  162. \let\@listi\@listI
  163. \@listi
  164. \def\@listii{\leftmargin\leftmarginii
  165.  \labelwidth\leftmarginii\advance\labelwidth-\labelsep
  166.  \topsep 0.4em plus 2pt minus 1pt
  167.  \parsep 0.2em plus 1pt minus 1pt
  168.  \itemsep \parsep}
  169. \def\@listiii{\leftmargin\leftmarginiii
  170.  \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
  171.  \topsep 0.2em plus 1pt minus 1pt
  172.  \parsep \z@
  173.  \partopsep 1pt plus 0pt minus 1pt
  174.  \itemsep \topsep}
  175. \def\@listiv{\leftmargin\leftmarginiv
  176.  \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
  177. \def\@listv{\leftmargin\leftmarginv
  178.  \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
  179. \def\@listvi{\leftmargin\leftmarginvi
  180.  \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
  181. \@lowpenalty 51
  182. \@medpenalty 151
  183. \@highpenalty 301
  184. \@beginparpenalty -\@lowpenalty
  185. \@endparpenalty -\@lowpenalty
  186. \@itempenalty -\@lowpenalty
  187. \def\theenumi{\arabic{enumi}}
  188. \def\theenumii{\alph{enumii}}
  189. \def\theenumiii{\roman{enumiii}}
  190. \def\theenumiv{\Alph{enumiv}}
  191. \def\labelenumi{\theenumi.}
  192. \def\labelenumii{\theenumii)}
  193. \def\labelenumiii{\theenumiii.}
  194. \def\labelenumiv{\theenumiv.}
  195. \def\p@enumii{\theenumi}
  196. \def\p@enumiii{\theenumi\theenumii)}
  197. \def\p@enumiv{\p@enumiii\theenumiii}
  198. \def\labelitemi{$\bullet$}
  199. \def\labelitemii{\bf --}
  200. \def\labelitemiii{$\triangleright$}
  201. \def\labelitemiv{$\cdot$}
  202. \newcounter{part}
  203. \newcounter {chapter}
  204. \newcounter {section}[chapter]
  205. \newcounter {subsection}[section]
  206. \newcounter {subsubsection}[subsection]
  207. \newcounter {paragraph}[subsubsection]
  208. \newcounter {subparagraph}[paragraph]
  209. \def\thepart {\Roman{part}}
  210. \def\thechapter {\arabic{chapter}}
  211. \def\thesection {\thechapter.\arabic{section}}
  212. \def\thesubsection {\thesection.\arabic{subsection}}
  213. \def\thesubsubsection {\thesubsection .\arabic{subsubsection}}
  214. \def\theparagraph {\thesubsubsection.\arabic{paragraph}}
  215. \def\thesubparagraph {\theparagraph.\arabic{subparagraph}}
  216. \setcounter{secnumdepth}{2}
  217. \setcounter{tocdepth}{2}
  218. \def\verse{\let\\=\@centercr
  219.  \list{}{\itemsep\z@ \itemindent -1.5em\listparindent \itemindent
  220.  \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}
  221. \let\endverse\endlist
  222. \def\quotation{\list{}{\listparindent 1em
  223.  \itemindent\listparindent
  224.  \rightmargin\leftmargin\parsep 0pt plus 1pt}\item[]}
  225. \let\endquotation=\endlist
  226. \def\quote{\list{}{\rightmargin\leftmargin}\item[]}
  227. \let\endquote=\endlist
  228. \def\descriptionlabel#1{\hspace\labelsep \sfb #1}
  229. \def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin
  230.  \let\makelabel\descriptionlabel}}
  231. \let\enddescription\endlist
  232. \newdimen\descriptionmargin
  233. \descriptionmargin=3em
  234. \def\labelinglabel#1{#1\hfil\sc@septext}
  235. \def\labeling{\@ifnextchar [{\@labeling}{\@labeling[]}}
  236. \def\@labeling[#1]#2{\def\sc@septext{#1}
  237.  \list{}{\settowidth{\labelwidth}{#2#1}
  238.  \leftmargin\labelwidth \advance\leftmargin by \labelsep
  239.  \let\makelabel\labelinglabel}}
  240. \let\endlabeling\endlist
  241. \def\marginline#1{\marginpar%
  242.  {\if@twoside \ifodd\c@page \raggedright \else \raggedleft \fi
  243.   \else \raggedright \fi #1}}
  244. \def\titlepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
  245.  \else \newpage \fi \thispagestyle{empty}\c@page\z@}
  246. \def\endtitlepage{\if@restonecol\twocolumn \else \newpage \fi}
  247. \def\next@tpage{\newpage\thispagestyle{empty}\null}
  248. \def\@extratitle{}
  249. \long\def\extratitle#1{\def\@extratitle{#1}}
  250. \def\@titlehead{}
  251. \long\def\titlehead#1{\def\@titlehead{#1}}
  252. \def\@subject{}
  253. \def\subject#1{\def\@subject{#1}}
  254. \def\@publishers{}
  255. \def\publishers#1{\def\@publishers{#1}}
  256. \def\@uppertitleback{}
  257. \long\def\uppertitleback#1{\def\@uppertitleback{#1}}
  258. \def\@lowertitleback{}
  259. \long\def\lowertitleback#1{\def\@lowertitleback{#1}}
  260. \def\@dedication{}
  261. \def\dedication#1{\def\@dedication{#1}}
  262. \def\maketitle{\@ifnextchar [{\@maketitle}{\@maketitle[1]}}
  263. \def\@maketitle[#1]{\bgroup \@restonecolfalse
  264.  \if@twocolumn \@restonecoltrue\onecolumn \else \newpa