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
|
sub convquotes
{
local($line)=@_;
local($pre,$mid,$end,$obrace,$cbrace);
$obrace=index($line,'[[',0);
while($obrace!=-1)
{
$pre=substr($line,0,$obrace);
$cbrace=index($line,']]',$obrace);
while(substr($line,$cbrace+2,1) eq ']')
{ $cbrace++;
}
$mid=substr($line,$obrace+2,$cbrace-$obrace-2);
$end=substr($line,$cbrace+2);
$line=$pre . "\\code{}" . &TeXliteral($mid) . "\\edoc{}" . $end;
$obrace=index($line,'[[',0);
}
return $line;
}
sub escapebslash
{
local($line)=@_;
$line=~s/([\\\{\}])/\n\1/g;
$line=~s/\n/\\/g;
return $line;
}
sub TeXliteral
{
local($_)=@_;
s/\\/<\\char92>/g;
s/\}/<\\char125}/g;
s/\{/{\\char123}/g;
s/<\\char/{\\char/g;
s/\{\\char92>/{\\char92}/g;
s/\$/{\\char36}/g;
s/&/{\\char38}/g;
s/#/{\\char35}/g;
s/\^/{\\char94}/g;
s/_/{\\char95}/g;
s/%/{\\char37}/g;
s/~/{\\char126}/g;
s/ /\\ /g;
return $_;
}
1;
|