while(<>){
utf8::decode($_);
- s/([$asian])\s+([$asian])/$1$2/g unless($out_cs eq 'UniKS');
- s/([$asian])\s*([^$asian])/$1 $2/g;
- s/([^$asian])\s*([$asian])/$1 $2/g;
if($in_cs ne 'ucs@mcs'){
s/(.)/&get_char_in_mcs($1,$in_cs)/ge;
}
+ s/([$asian])\s+([$asian])/$1$2/g unless($out_cs eq 'UniKS');
+ s/([$asian])\s*([^$asian])/$1 $2/g;
+ s/([^$asian])\s*([$asian])/$1 $2/g;
+ s/\-\-\-/pack("U",0x2014)/geo;# EM DASH
+ s/\-\-/pack("U",0x2013)/geo;# EN DASH
+ s/\`\`/pack("U",0x201f)/geo;# DOUBLE HIGH-REVERSED-9 QUOTATION MARK
+ s/\`/pack("U",0x201b)/geo;# SINGLE HIGH-REVERSED-9 QUOTATION MARK
+ s/\'\'/pack("U",0x201d)/geo;# RIGHT DOUBLE QUOTATION MARK
+ s/\'/pack("U",0x2019)/geo;# RIGHT DOUBLE QUOTATION MARK
s/(amp.+?;)/&de_tex_er($1)/ge;
# s/(&.+?;)/&de_tex_er($1)/ge;
@chars=split(//);
and($chars[$i+1]=~/[$asian]/))){
print '{\selectjisfont\hspace{.25ex}}';
}else{
- print " ";
+ print '{\fontencoding{UT1}\fontfamily{omlgc}\selectfont{} }';
}
}
next CHAR;
# Cyrillic
or($char_id>=0x0530 and $char_id<=0x058f)
# Armenian
+ or($char_id>=0x2010 and $char_id<=0x2046)
+ # General Punctuation (partial)
){
print &latin_parse();
next CHAR;
# arguments: none
# return: string for output with TeX macro.
my($char_id);
- my $out_str=$chars[$i];
- $i++;
+ my $out_str="";
while($i<=$#chars){
$char_id=unpack("U",$chars[$i]);
if(($char_id>0x20 and $char_id<=0x021f)
# Latin Extended Additional
# 0x1e00 -> 0x0600, etc.
$out_str.=pack("U",$char_id-0x1800);
+ }elsif($char_id>=0x2010 and $char_id<=0x2046){
+ # General Punctuation (partial)
+ $out_str.=pack("U",$char_id-0x1000);
}else{
$i--;
last;