1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185
|
######################################################
#
# This is file `foils.perl',
# generated with the docstrip utility.
#
# Copyright Boris Veytsman 1998
#
# You are *not* allowed to modify this file.
#
# You are *not* allowed to distribute this file.
# For distribution of the original source see
# the terms for copying and modification in the file
# foilhtml.dtx
#
$FOILHEADLEVEL = 4 unless defined($FOILHEADLEVEL);
%section_commands=('foilhead',$FOILHEADLEVEL,
'rotatefoilhead',$FOILHEADLEVEL,%section_commands);
%new_section_headings = ('foilhead', 'H1','rotatefoilhead','H1');
&generate_new_sectioning_subs;
sub generate_new_sectioning_subs{
local($key, $val);
while ( ($key, $val) = each %new_section_headings) {
eval "sub do_cmd_$key {"
. 'local($after) = @_;'
. '&do_cmd_section_helper(' . $val . ');}';
%section_commands=($key,$val,%section_commands);
}
};
$FOILCLASS = 'article' unless defined $FOILCLASS;
$FOILOPTIONS = '10pt' unless defined $FOILOPTIONS;
sub make_latex{
# This is the environment in which to process constructs that cannot be
# translated to HTML.
# The environment tex2html_wrap will be wrapped around any shorthand
# environments (e.g. $, \(, \[).
# The tex2html_wrap environment will be treated as an unrecognised
# evironment by the translator and its contents (i.e. the 'shorthand'
# environment) will be passed to latex for processing as usual.
local($contents) = @_;
local($preamble) = $preamble;
local($aux_preamble) = $aux_preamble;
while ($preamble =~ s/^(\@.*\n)/$prelatex .= $1;''/e) {}
print "\nPRE-LATEX: $prelatex" if (($prelatex)&&($VERBOSITY > 1));
# Make the @ character a normal letter ...
$preamble =~ s/\\par([^A-Za-z])/\n$1/g;
$preamble =~
s/\\documentclass.*/
\\documentclass\[$FOILOPTIONS\]{$FOILCLASS}\\makeatletter/;
# ... and make it special again after the preamble
# remove the \begin/\end for tex2html_nowrap and tex2html_deferred environments
$preamble =~s/\\(begin|end)\s*\{(tex2html_(nowrap|deferred|nomath|preform)[_a-z]*|imagesonly)\}//g;
$preamble = "\\documentclass\{article\}%\n\\usepackage{html,color}%\n\\makeatletter"
unless ($preamble);
if (($LATEX_DUMP)&&(!($preamble =~ /\\usepackage\{ldump\}/))) {
$*=1;
$preamble =~ s/(\\document(class|style)[^\n]*\n)/$1\\usepackage\{ldump\}\n/;
$*=0;
}
$LOAD_LATEX_COLOR = "\\usepackage[dvips]{color}" unless $LOAD_LATEX_COLOR;
$LATEX_COLOR = "\\pagecolor[gray]{.85}" unless $LATEX_COLOR;
if ($preamble =~ /(^|\s*[^%])\s*\\documentstyle/) {
# \usepackage is invalid in LaTeX 2.09 and LaTeX-2e compatibility mode
$LATEX_COLOR = ''; $LOAD_LATEX_COLOR = '';
}
$preamble .= $LOAD_LATEX_COLOR."\n" unless ($preamble =~ /[,\{]color[,\}]/);
$preamble .= $LATEX_COLOR."\n" unless ($preamble =~ /\\pagecolor/);
$aux_preamble = '' unless (($aux_preamble)&&($contents =~ /\\(hyper)?(ref|cite)/));
local($paperwidth) = '';
if ($PAPERSIZE) { $paperwidth = &adjust_textwidth($PAPERSIZE); }
else { $paperwidth = &adjust_textwidth("a5"); }
local($kern) = ($EXTRA_IMAGE_SCALE ? $EXTRA_IMAGE_SCALE/2 : ".5" );
$kern = $kern * $MATH_SCALE_FACTOR;
$prelatex . ($DEBUG ? "\\nonstopmode" : "\\batchmode") .
"\n$preamble\n$aux_preamble\n" .
"\\count\@=\\the\\catcode`\\_ \\catcode`\\_=8 \n" .
"\\newenvironment{tex2html_wrap}{}{} \\catcode`\\_=\\count\@\n" .
"\\makeatother\n" .
"\\ifx\\AtBeginDocument\\undefined \\newcommand{\\AtBeginDocument}[1]{}\\fi\n" .
"\\newbox\\sizebox\n" . "$paperwidth" .
"\\newwrite\\lthtmlwrite\n" . "\\makeatletter\n" .
"\\let\\realnormalsize=\\normalsize\n\\global\\topskip=2sp\n\\def\\preveqno{}" .
"\\let\\real\@float=\\\@float \\let\\realend\@float=\\end\@float\n" .
"\\def\\\@float{\\let\\\@savefreelist\\\@freelist\\real\@float}\n" .
# "\\def\\\@float{\\\@dbflt}\n" .
"\\def\\end\@float{\\realend\@float\\global\\let\\\@freelist\\\@savefreelist}\n" .
"\\let\\real\@dbflt=\\\@dbflt \\let\\end\@dblfloat=\\end\@float\n" .
"\\let\\\@largefloatcheck=\\relax\n" .
"\\def\\\@dbflt{\\let\\\@savefreelist\\\@freelist\\real\@dbflt}\n" .
"\\def\\adjustnormalsize{\\def\\normalsize{\\mathsurround=0pt \\realnormalsize\n" .
" \\parindent=0pt\\abovedisplayskip=0pt\\belowdisplayskip=0pt}\\normalsize}%\n" .
"\\def\\lthtmltypeout#1{{\\let\\protect\\string\\immediate\\write\\lthtmlwrite{#1}}}%\n" .
"\\newcommand\\lthtmlhboxmathA{\\adjustnormalsize\\setbox\\sizebox=\\hbox\\bgroup}%\n" .
"\\newcommand\\lthtmlvboxmathA{\\adjustnormalsize\\setbox\\sizebox=\\vbox\\bgroup%\n".
" \\let\\ifinner=\\iffalse }%\n" .
"\\newcommand\\lthtmlboxmathZ{\\\@next\\next\\\@currlist{}{\\def\\next{\\voidb\@x}}%\n" .
# " \\expandafter\\box\\next\\edef\\next{\\egroup\\def\\noexpand\\thiseqn{\\theequation}}\\next}%\n" .
" \\expandafter\\box\\next\\egroup}%\n" .
"\\newcommand\\lthtmlmathtype[1]{\\def\\lthtmlmathenv{#1}}%\n" .
"\\newcommand\\lthtmllogmath{\\lthtmltypeout{l2hSize %\n" .
":\\lthtmlmathenv:\\the\\ht\\sizebox::\\the\\dp\\sizebox::\\the\\wd\\sizebox.\\preveqno}}%\n" .
"\\newcommand\\lthtmlfigureA[1]{\\let\\\@savefreelist\\\@freelist
\\lthtmlmathtype{#1}\\lthtmlvboxmathA}%\n" .
"\\newcommand\\lthtmlfigureZ{\\lthtmlboxmathZ\\lthtmllogmath\\copy\\sizebox
\\global\\let\\\@freelist\\\@savefreelist}%\n" .
"\\newcommand\\lthtmldisplayA[1]{\\lthtmlmathtype{#1}\\lthtmlvboxmathA}%\n" .
"\\newcommand\\lthtmldisplayB[1]{\\edef\\preveqno{(\\theequation)}%\n" .
" \\lthtmldisplayA{#1}\\let\\\@eqnnum\\relax}%\n" .
"\\newcommand\\lthtmldisplayZ{\\lthtmlboxmathZ\\lthtmllogmath\\lthtmlsetmath}%\n" .
"\\newcommand\\lthtmlinlinemathA[1]{\\lthtmlmathtype{#1}\\lthtmlhboxmathA" .
" \\vrule height1.5ex width0pt }%\n" .
"\\newcommand\\lthtmlinlineA[1]{\\lthtmlmathtype{#1}\\lthtmlhboxmathA}%\n" .
"\\newcommand\\lthtmlinlineZ{\\egroup\\expandafter\\ifdim\\dp\\sizebox>0pt %\n" .
" \\expandafter\\centerinlinemath\\fi\\lthtmllogmath\\lthtmlsetinline}\n" .
"\\newcommand\\lthtmlinlinemathZ{\\egroup\\expandafter\\ifdim\\dp\\sizebox>0pt %\n" .
" \\expandafter\\centerinlinemath\\fi\\lthtmllogmath\\lthtmlsetmath}\n" .
"\\def\\lthtmlsetinline{\\hbox{\\vrule width.1em\\vtop{\\vbox{%\n" .
" \\kern.1em\\copy\\sizebox}\\ifdim\\dp\\sizebox>0pt\\kern.1em\\else\\kern.3pt\\fi\n" .
" \\ifdim\\hsize>\\wd\\sizebox \\hrule depth1pt\\fi}}}\n" .
"\\def\\lthtmlsetmath{\\hbox{\\vrule width.1em\\setbox1=\\vtop{\\vbox{%\n" .
" \\kern.1em\\kern$kern pt\\hbox{\\hglue.17em\\copy\\sizebox\\hglue$kern pt}}\\kern.3pt%\n" .
# " \\ifdim\\dp\\sizebox>0pt\\kern.1em \\kern$kern pt\\fi}%\n" .
" \\ifdim\\dp\\sizebox>0pt\\kern.1em\\fi \\kern$kern pt%\n" .
" \\ifdim\\hsize>\\wd\\sizebox \\hrule depth1pt\\fi}\\message{ht\\the\\ht1: dp\\the\\dp1}\\box1}}\n" .
"\\def\\centerinlinemath{%\\dimen1=\\ht\\sizebox\n" .
# " \\ifdim\\dimen1<\\dp\\sizebox \\ht\\sizebox=\\dp\\sizebox\n" .
" \\dimen1=\\ifdim\\ht\\sizebox<\\dp\\sizebox \\dp\\sizebox\\else\\ht\\sizebox\\fi\n" .
# " \\vrule width0pt depth\\dp\\sizebox \n" .
# " \\else \\dp\\sizebox=\\ht\\sizebox \\fi}\n\n" .
" \\advance\\dimen1by.5pt \\vrule width0pt height\\dimen1 depth\\dimen1 \n".
" \\dp\\sizebox=\\dimen1\\ht\\sizebox=\\dimen1\\relax}\n\n" .
"\\def\\lthtmlcheckvsize{\\ifdim\\ht\\sizebox<\\vsize\\expandafter\\vfill\n" .
" \\else\\expandafter\\vss\\fi}%\n" .
# "\\def\\\@enddocumenthook{\\ifnum\\count0>1 \\ifvoid\\\@cclv\\penalty-\\\@MM\\fi\\fi}\n" .
"\\makeatletter \\tracingstats = 1 \n" .
$LaTeXmacros . "\n" # macros defined in extension files
# "\\usepackage{lthimages}\n" .
. (($LATEX_DUMP)? "\\latexdump\n" : '')
. "\n\\begin{document}\n" .
"\\pagestyle{empty}\\thispagestyle{empty}%\n" .
"\\lthtmltypeout{latex2htmlLength hsize=\\the\\hsize}%\n" .
"\\lthtmltypeout{latex2htmlLength vsize=\\the\\vsize}%\n" .
"\\lthtmltypeout{latex2htmlLength hoffset=\\the\\hoffset}%\n" .
"\\lthtmltypeout{latex2htmlLength voffset=\\the\\voffset}%\n" .
"\\lthtmltypeout{latex2htmlLength topmargin=\\the\\topmargin}%\n" .
"\\lthtmltypeout{latex2htmlLength topskip=\\the\\topskip}%\n" .
"\\lthtmltypeout{latex2htmlLength headheight=\\the\\headheight}%\n" .
"\\lthtmltypeout{latex2htmlLength headsep=\\the\\headsep}%\n" .
"\\lthtmltypeout{latex2htmlLength parskip=\\the\\parskip}%\n" .
"\\lthtmltypeout{latex2htmlLength oddsidemargin=\\the\\oddsidemargin}%\n" .
"\\makeatletter\n" .
"\\if\@twoside\\lthtmltypeout{latex2htmlLength evensidemargin=\\the\\evensidemargin}%\n" .
"\\else\\lthtmltypeout{latex2htmlLength evensidemargin=\\the\\oddsidemargin}\\fi%\n" .
"\\makeatother\n"
. "$contents\n"
# "\\clearpage\n" .
. "\\end{document}";
}
$DONT_INCLUDE = "foilhtml:".$DONT_INCLUDE;
&ignore_commands( <<_IGNORED_CMDS_);
portraitfoils
lanscapefoils
MyLogo # {}
Restriction # {}
LogoOff
LogoOn
rightfooter # {}
rightheader # {}
leftheader # {}
newnonfloat #{} #{}
foilheadskip # &ignore_numeric_argument
abovefloatskip # &ignore_numeric_argument
captionwidth # &ignore_numeric_argument
titleauthorskip # &ignore_numeric_argument
authorauthorskip # &ignore_numeric_argument
authordateskip # &ignore_numeric_argument
dateabstractskip # &ignore_numeric_argument
zerolistvertdimens
_IGNORED_CMDS_
1; # This should be the last line
|