    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  | ;