1    | /** The style files needed for LaTeX. **/
2    | 
3    | /*+ The fonts style file as a string. +*/
4    | char *latex_fonts_style=
5    | "%\n"
6    | "% fonts.sty - A modified version of 10pt.sty from the standard LaTeX 2.0.9 distribution.\n"
7    | "%             Original author / copyright unknown.\n"
8    | "%\n"
9    | "% Fonts for cxref, smaller than usual to get more on a page (cxref *is* rather verbose).\n"
10   | "%\n"
11   | "\n"
12   | "\\typeout{Fonts Style-sheet -- By A. M. Bishop. (smaller than default)}\n"
13   | "\n"
14   | "\\lineskip 1pt \\normallineskip 1pt\n"
15   | "\\def\\baselinestretch{1}\n"
16   | "\n"
17   | "\\def\\@normalsize{\\@setsize\\normalsize{10pt}\\xpt\\@xpt\n"
18   | "\\abovedisplayskip 10pt plus2pt minus5pt\\belowdisplayskip \\abovedisplayskip\n"
19   | "\\abovedisplayshortskip \\z@ plus3pt\\belowdisplayshortskip 6pt plus3pt\n"
20   | "minus3pt\\let\\@listi\\@listI} \n"
21   | "\\def\\small{\\@setsize\\small{9pt}\\ixpt\\@ixpt\n"
22   | "\\abovedisplayskip 8.5pt plus 3pt minus 4pt\\belowdisplayskip \\abovedisplayskip\n"
23   | "\\abovedisplayshortskip \\z@ plus2pt\\belowdisplayshortskip 4pt plus2pt minus 2pt\n"
24   | "\\def\\@listi{\\leftmargin\\leftmargini \\topsep 4pt plus 2pt minus 2pt\\parsep 2pt\n"
25   | "plus 1pt minus 1pt\n"
26   | "\\itemsep \\parsep}}\n"
27   | "\\def\\footnotesize{\\@setsize\\footnotesize{8pt}\\viiipt\\@viiipt\n"
28   | "\\abovedisplayskip 6pt plus 2pt minus 4pt\\belowdisplayskip \\abovedisplayskip\n"
29   | "\\abovedisplayshortskip \\z@ plus 1pt\\belowdisplayshortskip 3pt plus 1pt minus\n"
30   | "2pt\n"
31   | "\\def\\@listi{\\leftmargin\\leftmargini \\topsep 3pt plus 1pt minus 1pt\\parsep 2pt\n"
32   | "plus 1pt minus 1pt\n"
33   | "\\itemsep \\parsep}}\n"
34   | "\\def\\scriptsize{\\@setsize\\scriptsize{6pt}\\viipt\\@viipt}\n"
35   | "\\def\\tiny{\\@setsize\\tiny{5pt}\\vpt\\@vpt}\n"
36   | "\\def\\large{\\@setsize\\large{12pt}\\xiipt\\@xiipt}\n"
37   | "\\def\\Large{\\@setsize\\Large{14pt}\\xivpt\\@xivpt}\n"
38   | "\\def\\LARGE{\\@setsize\\LARGE{17pt}\\xviipt\\@xviipt}\n"
39   | "\\def\\huge{\\@setsize\\huge{20pt}\\xxpt\\@xxpt}\n"
40   | "\\def\\Huge{\\@setsize\\Huge{25pt}\\xxvpt\\@xxvpt}\n"
41   | "\\normalsize \n"
42   | "\n"
43   | "\\if@twoside \\oddsidemargin 44pt \\evensidemargin 82pt \\marginparwidth 107pt\n"
44   | "\\else \\oddsidemargin 63pt \\evensidemargin 63pt\n"
45   | " \\marginparwidth 90pt \n"
46   | "\\fi\n"
47   | "\\marginparsep 11pt \n"
48   | " \\topmargin 27pt \\headheight 12pt \\headsep 25pt \\footskip 30pt \n"
49   | "\n"
50   | "\\textheight = 43\\baselineskip\n"
51   | "\\advance\\textheight by \\topskip\n"
52   | "\\textwidth 345pt \\columnsep 10pt \\columnseprule 0pt \n"
53   | "\n"
54   | "\\footnotesep 6.65pt \n"
55   | "\\skip\\footins 9pt plus 4pt minus 2pt \n"
56   | "\\floatsep 12pt plus 2pt minus 2pt \\textfloatsep 20pt plus 2pt minus 4pt\n"
57   | "\\intextsep 12pt plus 2pt minus 2pt \\dblfloatsep 12pt plus 2pt\n"
58   | "minus 2pt \\dbltextfloatsep 20pt plus 2pt minus 4pt\n"
59   | "\\@fptop 0pt plus 1fil \\@fpsep 8pt plus 2fil \\@fpbot 0pt plus 1fil \n"
60   | "\\@dblfptop 0pt plus 1fil \\@dblfpsep 8pt plus 2fil \\@dblfpbot 0pt plus 1fil\n"
61   | "\\marginparpush 5pt \n"
62   | "\n"
63   | "\\parskip 0pt plus 1pt \\parindent 15pt \\partopsep 2pt plus 1pt minus 1pt \n"
64   | "\\@lowpenalty 51 \\@medpenalty 151 \\@highpenalty 301 \n"
65   | "\\@beginparpenalty -\\@lowpenalty \\@endparpenalty -\\@lowpenalty \\@itempenalty\n"
66   | "-\\@lowpenalty \n"
67   | "\n"
68   | "\n"
69   | "\\def\\part{\\par \\addvspace{4ex} \\@afterindentfalse \\secdef\\@part\\@spart} \n"
70   | "\\def\\@part[#1]#2{\\ifnum \\c@secnumdepth >\\m@ne \\refstepcounter{part}\n"
71   | "\\addcontentsline{toc}{part}{\\thepart \\hspace{1em}#1}\\else\n"
72   | "\\addcontentsline{toc}{part}{#1}\\fi { \\parindent 0pt \\raggedright \n"
73   | " \\ifnum \\c@secnumdepth >\\m@ne \\Large \\bf Part \\thepart \\par \\nobreak \\fi \\huge\n"
74   | "\\bf #2\\markboth{}{}\\par } \\nobreak \\vskip 3ex \\@afterheading } \n"
75   | "\\def\\@spart#1{{\\parindent 0pt \\raggedright \n"
76   | " \\huge \\bf \n"
77   | " #1\\par} \\nobreak \\vskip 3ex \\@afterheading } \n"
78   | "\\def\\section{\\@startsection {section}{1}{\\z@}{-3.5ex plus -1ex minus \n"
79   | " -.2ex}{2.3ex plus .2ex}{\\Large\\bf}}\n"
80   | "\\def\\subsection{\\@startsection{subsection}{2}{\\z@}{-3.25ex plus -1ex minus \n"
81   | " -.2ex}{1.5ex plus .2ex}{\\large\\bf}}\n"
82   | "\\def\\subsubsection{\\@startsection{subsubsection}{3}{\\z@}{-3.25ex plus \n"
83   | "-1ex minus -.2ex}{1.5ex plus .2ex}{\\normalsize\\bf}}\n"
84   | "\\def\\paragraph{\\@startsection\n"
85   | " {paragraph}{4}{\\z@}{3.25ex plus 1ex minus .2ex}{-1em}{\\normalsize\\bf}}\n"
86   | "\\def\\subparagraph{\\@startsection\n"
87   | " {subparagraph}{4}{\\parindent}{3.25ex plus 1ex minus \n"
88   | " .2ex}{-1em}{\\normalsize\\bf}}\n"
89   | "\n"
90   | "\n"
91   | "\\setcounter{secnumdepth}{3}\n"
92   | "\n"
93   | "\\def\\appendix{\\par\n"
94   | " \\setcounter{section}{0}\n"
95   | " \\setcounter{subsection}{0}\n"
96   | " \\def\\thesection{\\Alph{section}}}\n"
97   | "\n"
98   | "\n"
99   | "\\leftmargini 25pt\n"
100  | "\\leftmarginii 22pt \\leftmarginiii 18.7pt \\leftmarginiv 17pt \\leftmarginv 10pt\n"
101  | "\\leftmarginvi 10pt\n"
102  | "\\leftmargin\\leftmargini\n"
103  | "\\labelsep 5pt\n"
104  | "\\labelwidth\\leftmargini\\advance\\labelwidth-\\labelsep\n"
105  | "\\def\\@listI{\\leftmargin\\leftmargini \\parsep 4pt plus 2pt minus 1pt\\topsep 8pt\n"
106  | "plus 2pt minus 4pt\\itemsep 4pt plus 2pt minus 1pt}\n"
107  | "\\let\\@listi\\@listI\n"
108  | "\\@listi \n"
109  | "\\def\\@listii{\\leftmargin\\leftmarginii\n"
110  | " \\labelwidth\\leftmarginii\\advance\\labelwidth-\\labelsep\n"
111  | " \\topsep 4pt plus 2pt minus 1pt\n"
112  | " \\parsep 2pt plus 1pt minus 1pt\n"
113  | " \\itemsep \\parsep}\n"
114  | "\\def\\@listiii{\\leftmargin\\leftmarginiii\n"
115  | " \\labelwidth\\leftmarginiii\\advance\\labelwidth-\\labelsep\n"
116  | " \\topsep 2pt plus 1pt minus 1pt \n"
117  | " \\parsep \\z@ \\partopsep 1pt plus 0pt minus 1pt\n"
118  | " \\itemsep \\topsep}\n"
119  | "\\def\\@listiv{\\leftmargin\\leftmarginiv\n"
120  | " \\labelwidth\\leftmarginiv\\advance\\labelwidth-\\labelsep}\n"
121  | "\\def\\@listv{\\leftmargin\\leftmarginv\n"
122  | " \\labelwidth\\leftmarginv\\advance\\labelwidth-\\labelsep}\n"
123  | "\\def\\@listvi{\\leftmargin\\leftmarginvi\n"
124  | " \\labelwidth\\leftmarginvi\\advance\\labelwidth-\\labelsep}\n"
125  | "\n"
126  | "\n"
127  | ;
128  | 
129  | /*+ The page style file as a string. +*/
130  | char *latex_page_style=
131  | "%\n"
132  | "% page.sty - Copyright 1995,1996 Andrew M. Bishop\n"
133  | "%\n"
134  | "% Page layout for cxref, smaller margins than usual to get more on a page (cxref *is* rather verbose).\n"
135  | "%\n"
136  | "\n"
137  | "\\typeout{Page Style-sheet (US) -- By A. M. Bishop. (1 inch margins)}\n"
138  | "\n"
139  | "%\n"
140  | "% Physical paper size.\n"
141  | "%\n"
142  | "\n"
143  | "\\vsize=11 in            % Page height (US)\n"
144  | "\\hsize=8.5 in           % Page width (US)\n"
145  | "\n"
146  | "%\n"
147  | "% Margins etc. Vertically\n"
148  | "%\n"
149  | "\n"
150  | "\\topmargin=-0.5in       % Between (top of page + 1 inch) & top of header\n"
151  | "\n"
152  | "\\headheight=0.25in      % Height of the header\n"
153  | "\n"
154  | "\\headsep=0.25in         % Between header and text\n"
155  | "\n"
156  | "\\textheight=9.0in       % Height of text (US)\n"
157  | "\n"
158  | "\\footskip=0.25in        % Between bottom of text and bottom of footer\n"
159  | "\n"
160  | "%\n"
161  | "% Margins etc. Horizontally\n"
162  | "%\n"
163  | "\n"
164  | "\\oddsidemargin=0.0in    % Between (left side of page + 1 inch) & left edge of text\n"
165  | "\\evensidemargin=0.0in   % Between (left side of page + 1 inch) & left edge of text\n"
166  | "\n"
167  | "\\textwidth=6.5in        % Width of text (US)\n"
168  | ;
169  | 
170  | /*+ The cxref style file as a string. +*/
171  | char *latex_cxref_style=
172  | "%\n"
173  | "% cxref.sty - Copyright 1996 Andrew M. Bishop\n"
174  | "%\n"
175  | "% New commands that are defined to use in typesetting cxref.\n"
176  | "%\n"
177  | "\n"
178  | "\\typeout{Cxref Style-sheet -- By A. M. Bishop. (Custom commands)}\n"
179  | "\n"
180  | "% Stop LaTeX from printing all of the annoying error messages about under/over-full boxes.\n"
181  | "\n"
182  | "\\tolerance=10000\n"
183  | "\\hbadness=10000\n"
184  | "\\emergencystretch=100pt\n"
185  | "\n"
186  | "% Set the section number depth to 3.\n"
187  | "\n"
188  | "\\setcounter{secnumdepth}{3}\n"
189  | "\n"
190  | "% Set the table of contents number depth to 3.\n"
191  | "\n"
192  | "\\setcounter{tocdepth}{3}\n"
193  | "\n"
194  | "% Set the parindent and table column separator to zero.\n"
195  | "\n"
196  | "\\setlength{\\parindent}{0in}\n"
197  | "\\setlength{\\tabcolsep}{0in}\n"
198  | "\n"
199  | "% Define a command to display the 'computer format' text, a small teletype font.\n"
200  | "\n"
201  | "\\newcommand{\\stt}{\\small\\tt}\n"
202  | "\n"
203  | "% The command argument list and items to use in it.\n"
204  | "\n"
205  | "\\newenvironment{cxrefarglist}{\\begin{list}{}{\\leftmargin=2.25in \\labelsep=0in \\labelwidth=2.25in \\itemsep=0pt \\parsep=3pt \\topsep=3pt}}{\\end{list}}\n"
206  | "\\newcommand{\\cxrefargitem}[1]{\\item[\\parbox{2.25in}{$\\cdot$\\hspace*{0.1in}{\\stt #1}}]}\n"
207  | "\n"
208  | "% A table with one wide column and a cross reference (Include files).\n"
209  | "\n"
210  | "\\newenvironment{cxreftabi}{\\begin{tabular}{{p{5.0in}l}}}{\\end{tabular}}\n"
211  | "\n"
212  | "% A table with a narrow column, a wide column and a cross reference (Included in).\n"
213  | "\n"
214  | "\\newenvironment{cxreftabii}{\\begin{tabular}{{p{0.75in}p{4.25in}l}}}{\\end{tabular}}\n"
215  | "\n"
216  | "% A table with two approximately equal columns (2nd is wider) and a cross reference (Struct / Union).\n"
217  | "\n"
218  | "\\newenvironment{cxreftabiia}{\\begin{tabular}{{p{2.5in}p{3.5in}}}}{\\end{tabular}}\n"
219  | "\n"
220  | "% A table with two exactly equal columns and a cross reference (Appendix).\n"
221  | "\n"
222  | "\\newenvironment{cxreftabiib}{\\begin{tabular}{{p{2.5in}p{2.5in}l}}}{\\end{tabular}}\n"
223  | "\n"
224  | "% A table with a narrow column, two approximately equal columns and a cross reference (Used in, Calls, Called etc.).\n"
225  | "\n"
226  | "\\newenvironment{cxreftabiii}{\\begin{tabular}{{p{0.75in}p{2.25in}p{2.0in}l}}}{\\end{tabular}}\n"
227  | "\\newcommand{\\cxreftabiiispan}[1]{\\multicolumn{2}{p{4.25in}}{#1}}\n"
228  | "\n"
229  | "% Break the above tables by stopping the current table and starting a new one.\n"
230  | "\n"
231  | "\\newcommand{\\cxreftabbreak}[1]{\\end{#1}\\vskip 0pt\\begin{#1}}\n"
232  | "\n"
233  | "% Cross references for Files, Functions, Variables and Typedefs.\n"
234  | "\n"
235  | "\\newcommand{\\cxreffile}[1]{{\\small\\it (Section \\ref{file_#1})\\/}}\n"
236  | "\\newcommand{\\cxreffunc}[2]{{\\small\\it (Section \\ref{func_#1_#2})\\/}}\n"
237  | "\\newcommand{\\cxrefvar}[2]{{\\small\\it (Section \\ref{var_#1_#2})\\/}}\n"
238  | "\\newcommand{\\cxreftype}[2]{{\\small\\it (Section \\ref{type_#1_#2})\\/}}\n"
239  | ;