Hi Deri,

At 2024-01-21T17:48:38+0000, Deri wrote:
> Using the font suggested by Oliver (after installing it with Peter
> Schafter's install-font.sh script) and using the latest unicode aware
> pdf generation version of groff (awaiting release by Branden),

I may be confused about what remains to be merged from the
deri-gropdf-ng branch.

I'm attaching a "git diff -b" of the master branch with yours.  I don't
see many changes: the RST/RSB stuff ("start on text decorations"), and
little else (mostly changes to comment style).

Can you clarify for me what's missing vis รก vis gropdf's font support in
the master branch?  (I mean with respect to this thread, not the slanted
symbol font issue, for which gropdf.pl in the master branch should be
adequately prepared anyway.)

Regards,
Branden
diff --git a/src/devices/gropdf/gropdf.pl b/src/devices/gropdf/gropdf.pl
index f0b04909a..e26bc6b43 100644
--- a/src/devices/gropdf/gropdf.pl
+++ b/src/devices/gropdf/gropdf.pl
@@ -2,7 +2,7 @@
 #
 #       gropdf          : PDF post processor for groff
 #
-# Copyright (C) 2011-2024 Free Software Foundation, Inc.
+# Copyright (C) 2011-2020 Free Software Foundation, Inc.
 #      Written by Deri James <d...@chuzzlewit.myzen.co.uk>
 #
 # This file is part of groff.
@@ -26,7 +26,6 @@ require 5.8.0;
 use Getopt::Long qw(:config bundling);
 use Encode qw(encode);
 use POSIX qw(mktime);
-use File::Spec qw(splitpath);
 
 use constant
 {
@@ -36,6 +35,8 @@ use constant
     MINOR               => 3,
     MAJOR               => 4,
     UNICODE             => 5,
+    RST                 => 6,
+    RSB                 => 7,
 
     CHR                 => 0,
     XPOS                => 1,
@@ -48,7 +49,6 @@ use constant
     MAGIC2              => 22719,
     C_DEF               => 4330,
     E_DEF               => 55665,
-
     LINE                => 0,
     CALLS               => 1,
     NEWNO               => 2,
@@ -63,6 +63,7 @@ use constant
     USESPACE            => 2,
     COMPRESS            => 4,
     NOFILE              => 8,
+
 };
 
 my %StdEnc=(
@@ -217,8 +218,7 @@ my %StdEnc=(
             251 => 'ss',
 );
 
-(undef,undef,my $prog)=File::Spec->splitpath($0);
-
+my $prog=$0;
 unshift(@ARGV,split(' ',$ENV{GROPDF_OPTIONS})) if exists($ENV{GROPDF_OPTIONS});
 
 my $gotzlib=0;
@@ -352,6 +352,7 @@ my $boxmax=0;
 my %missing;    # fonts in download files which are not found/readable
 my @PageLabel;  # PageLabels
 
+
 my $n_flg=1;
 my $pginsert=-1;    # Growth point for kids array
 my %pgnames;        # 'names' of pages for switchtopage
@@ -362,7 +363,7 @@ my @XOstream=();
 my @PageAnnots={};
 my $noslide=0;
 my $transition={PAGE => {Type => '/Trans', S => '', D => 1, Dm => '/H', M => '/I', Di => 0, SS => 1.0, B => 0},
-		BLOCK => {Type => '/Trans', S => '', D => 1, Dm => '/H', M => '/I', Di => 0, SS => 1.0, B => 0}};
+BLOCK => {Type => '/Trans', S => '', D => 1, Dm => '/H', M => '/I', Di => 0, SS => 1.0, B => 0}};
 my $firstpause=0;
 my $present=0;
 my @bgstack;            # Stack of background boxes
@@ -431,15 +432,15 @@ sub usage
     my $had_error = shift;
     $stream = *STDERR if $had_error;
     print $stream
-"usage: $prog [-dels] [-F font-directory] [-I inclusion-directory]" .
-" [-p paper-format] [-u [cmap-file]] [-y foundry] [file ...]\n" .
-"usage: $prog {-v | --version}\n" .
-"usage: $prog --help\n";
+    "usage: $prog [-dels] [-F font-directory] [-I inclusion-directory]" .
+    " [-p paper-format] [-u [cmap-file]] [-y foundry] [file ...]\n" .
+    "usage: $prog {-v | --version}\n" .
+    "usage: $prog --help\n";
     if (!$had_error)
     {
         print $stream "\n" .
-"Translate the output of troff(1) into Portable Document Format.\n" .
-"See the gropdf(1) manual page.\n";
+        "Translate the output of troff(1) into Portable Document Format.\n" .
+        "See the gropdf(1) manual page.\n";
     }
     exit($had_error);
 }
@@ -565,8 +566,7 @@ for $papersz ( split(" ", lc($possiblesizes).' #duff#') )
         }
     }
 
-    # Allow height,width specified directly in centimeters, inches, or
-    # points.
+    # Allow height,width specified directly in centimeters, inches, or points.
     if ($papersz=~m/([\d.]+)([cipP]),([\d.]+)([cipP])/)
     {
         @defaultmb=@mediabox=(0,0,ToPoints($3,$4),ToPoints($1,$2));
@@ -629,7 +629,7 @@ while (<>)
         }
 
         $lin=~s/^\s+//;
-#	$lin=~s/\s#.*?$//;	# remove comment
+        #               $lin=~s/\s#.*?$//;      # remove comment
         $stream.="\% $_\n" if $debug;
 
         do_x($lin),next if ($cmd eq 'x');
@@ -652,6 +652,7 @@ while (<>)
 
         my $tmp=scalar(@ahead);
     }} until scalar(@ahead) == 0;
+
 }
 
 exit 0 if $lct==0;
@@ -824,6 +825,7 @@ foreach my $fontno (sort keys %fontlst)
         push(@fontdesc,EmbedFont($fontnm,$fnt));
         $pages->{'Resources'}->{'Font'}->{'F'.$fontnm}=$fontlst{$fontnm}->{OBJ};
         $obj[$objct-2]->{DATA}->{'ToUnicode'}=$textenccmap if (exists($fnt->{ToUnicode}));
+
     }
 
     if (exists($fnt->{fontfile}))
@@ -855,6 +857,7 @@ foreach my $fontno (sort keys %fontlst)
             }
         }
     }
+
 }
 
 foreach my $j (0..$#{$pages->{Kids}})
@@ -989,6 +992,7 @@ else
 print "startxref\n$xrefct\n\%\%EOF\n";
 print "\% Pages=$pages->{Count}\n" if $stats;
 
+
 sub MakeMatrix
 {
     my $fontxrev=shift||0;
@@ -1097,6 +1101,8 @@ sub GetObj
     return($obj[$ono]->{DATA});
 }
 
+
+
 sub PDFDate
 {
     my $dt=shift;
@@ -1541,7 +1547,7 @@ sub do_x
                             $curoutlevno=$#{$curoutlev};
                         }
 
-#			push(@{$curoutlev},$this);
+                        #                       push(@{$curoutlev},$this);
                         splice(@{$curoutlev},++$curoutlevno,0,$this);
                         $curoutlev->[0]->[2]++;
                     }
@@ -1802,7 +1808,7 @@ sub do_x
                     else
                     {
                         ($curoutlev,$curoutlevno,$thislev)=(@{$outlines[$pginsert]});
-#			$curoutlevno--;
+                        $curoutlevno--;
                     }
                 }
             }
@@ -1837,7 +1843,7 @@ sub do_x
             {
                 splice(@xprm,0,2);
                 my $type=shift(@xprm);
-#		print STDERR "ypos=$ypos\n";
+                #               print STDERR "ypos=$ypos\n";
 
                 if (lc($type) eq 'off')
                 {
@@ -2002,7 +2008,6 @@ sub Clean
 sub utf16
 {
     my $p=Clean(shift);
-    my $label=shift;
 
     $p=~s/\\\[(.*?)\]/FindChr($1,0)/eg;
     $p=~s/\\C($parcln)/FindChr($1,1)/eg;
@@ -2015,8 +2020,6 @@ sub utf16
             unpack "C*", encode('utf16', $p);
     }
 
-    return($p) if $label;
-
     $p=~s/(?<!\\)\(/\\\(/g;
     $p=~s/(?<!\\)\)/\\\)/g;
 
@@ -2062,19 +2065,14 @@ sub UTFName
     my $r='';
 
     $s=substr($s,1);
-    my $s1=$s;
-    $s1=~s/([[:xdigit:]]{2})/chr(hex($1))/eg;
-    my $s2=utf16($s1,1);
-#    return "/".MakeLabel((substr($s2,0,1) eq '/')?$s:$s2);
-    my $s3='/'.join '', map { MakeLabel($_) } unpack('C*',(substr($s2,0,1) eq '\\')?$s:$s2);
-    return $s3;
+    return '/'.join '', map { MakeLabel($_) } unpack('C*',$s);
 
 }
 
 sub MakeLabel
 {
     my $c=chr(shift);
-    return($c) if ($c=~m/[\w\d:]/);
+    return($c) if $c=~m/[\w:]/;
     return(sprintf("#%02x",ord($c)));
 }
 
@@ -2417,11 +2415,10 @@ sub LoadPDF
     close($PD);
 
     open(PD,"<$PDnm");
-#    $pdftxt=~s/\]/ \]/g;
+    #   $pdftxt=~s/\]/ \]/g;
     my (@pdfwds)=split(' ',$pdftxt);
     my $wd;
     my $root;
-    my @ObjStm;
 
     while ($wd=nextwd(\@pdfwds),length($wd))
     {
@@ -2433,25 +2430,11 @@ sub LoadPDF
             $pdf->[$curobj]->{OBJ}=ParsePDFObj(\@pdfwds);
             my $o=$pdf->[$curobj];
 
-            push(@ObjStm,$curobj) if (ref($o->{OBJ}) eq 'HASH' and exists($o->{OBJ}->{Type}) and $o->{OBJ}->{Type} eq '/ObjStm');
-	    $root=$curobj if ref($pdf->[$curobj]->{OBJ}) eq 'HASH' and exists($pdf->[$curobj]->{OBJ}->{Type}) and $pdf->[$curobj]->{OBJ}->{Type} eq '/XRef';
-	}
-	elsif ($wd eq 'trailer' and !exists($pdf->[0]->{OBJ}))
+            if (ref($o->{OBJ}) eq 'HASH' and exists($o->{OBJ}->{Type}) and $o->{OBJ}->{Type} eq '/ObjStm')
             {
-	    $pdf->[0]->{OBJ}=ParsePDFObj(\@pdfwds);
-	}
-	else
-	{
-#		   print "Skip '$wd'\n";
-	}
-    }
-
-    foreach my $ObjStm (@ObjStm)
-    {
-        LoadStream($pdf->[$ObjStm],$pdf);
-        my $pos=$pdf->[$ObjStm]->{OBJ}->{First};
-        my $s=$pdf->[$ObjStm]->{STREAM};
-        $s=~s/\%.*?$//m;
+                LoadStream($o,$pdf);
+                my $pos=$o->{OBJ}->{First};
+                my $s=$o->{STREAM};
                 my @o=split(' ',substr($s,0,$pos));
                 substr($s,0,$pos)='';
                 push(@o,-1,length($s));
@@ -2459,10 +2442,22 @@ sub LoadPDF
                 for (my $j=0; $j<=$#o-2; $j+=2)
                 {
                     my @w=split(' ',substr($s,$o[$j+1],$o[$j+3]-$o[$j+1]));
-            $pdf->[$o[$j]]->{OBJ}=ObjMerge($pdf->[$o[$j]]->{OBJ},ParsePDFObj(\@w));
+                    $pdf->[$o[$j]]->{OBJ}=ParsePDFObj(\@w);
                 }
 
-        $pdf->[$ObjStm]=undef;
+                $pdf->[$curobj]=undef;
+            }
+
+            $root=$curobj if ref($pdf->[$curobj]->{OBJ}) eq 'HASH' and exists($pdf->[$curobj]->{OBJ}->{Type}) and $pdf->[$curobj]->{OBJ}->{Type} eq '/XRef';
+        }
+        elsif ($wd eq 'trailer' and !exists($pdf->[0]->{OBJ}))
+        {
+            $pdf->[0]->{OBJ}=ParsePDFObj(\@pdfwds);
+        }
+        else
+        {
+            #                   print "Skip '$wd'\n";
+        }
     }
 
     $pdf->[0]=$pdf->[$root] if !defined($pdf->[0]);
@@ -2514,9 +2509,8 @@ sub LoadPDF
 
     MapInsValue($pdf,$page,'',$insmap,$xobj,$pdf->[$page]->{OBJ});
     #
-    #   Many PDFs include 'Resources' at the 'Page' level but if
-    #   'Resources' is held at a higher level (i.e 'Pages') then we need
-    #   to include its objects as well.
+    #   Many PDFs include 'Resources' at the 'Page' level but if 'Resources' is held at a higher level (i.e 'Pages')
+    #   then we need to include its objects as well.
     #
     MapInsValue($pdf,$page,'',$insmap,$xobj,$res) if !exists($pdf->[$page]->{OBJ}->{Resources});
 
@@ -2541,22 +2535,6 @@ sub LoadPDF
     return([$xonm,$BBox] );
 }
 
-sub ObjMerge
-{
-    my $o1=shift;
-    my $o2=shift;
-
-    return $o1 if !defined($o2);
-    return $o2 if !defined($o1);
-
-    foreach my $k (keys %{$o2})
-    {
-        $o1->{$k}=$o2->{$k};
-    }
-
-    return $o1;
-}
-
 sub LoadStream
 {
     my $o=shift;
@@ -2612,6 +2590,7 @@ sub BuildStream
     $obj[$xobj]->{STREAM}=$strm;
 }
 
+
 sub MapInsHash
 {
     my $pdf=shift;
@@ -2620,6 +2599,7 @@ sub MapInsHash
     my $parent=shift;
     my $val=shift;
 
+
     foreach my $k (sort keys(%{$val}))
     {
         MapInsValue($pdf,$o,$k,$insmap,$parent,$val->{$k}) if $k ne 'Contents';
@@ -2668,6 +2648,7 @@ sub MapInsValue
     {
         MapInsHash($pdf,$o,$insmap,$parent,$val);
     }
+
 }
 
 sub FindKey
@@ -2762,6 +2743,7 @@ sub nextwd
 
 sub ParsePDFObj
 {
+
     my $pdfwds=shift;
     my $rtn;
     my $wd;
@@ -2955,21 +2937,9 @@ sub ParsePDFArray
     return($rtn);
 }
 
-sub Notice
-{
-    if ($debug)
-    {
-	unshift(@_, "debug: ");
-	my $msg=join('',@_);
-	Msg(0,$msg);
-    }
-}
-
 sub Warn
 {
-    unshift(@_, "warning: ");
-    my $msg=join('',@_);
-    Msg(0,$msg);
+    Msg(0,(@_));
 }
 
 sub Die
@@ -2989,6 +2959,10 @@ sub Msg
     {
         print STDERR "fatal error: ";
     }
+    else
+    {
+        print STDERR "warning: ";
+    }
 
     print STDERR "$msg\n";
     exit 1 if $fatal;
@@ -3154,8 +3128,8 @@ sub EmbedFont
     $objct+=2;
     $fontlst{$fontno}->{NM}='/F'.$fontno;
     $pages->{'Resources'}->{'Font'}->{'F'.$fontno}=$fontlst{$fontno}->{OBJ};
-#    $fontlst{$fontno}->{FNT}=$fnt;
-#    $obj[$objct]->{STREAM}=$t1stream;
+    #     $fontlst{$fontno}->{FNT}=$fnt;
+    #     $obj[$objct]->{STREAM}=$t1stream;
 
     return($st+2);
 }
@@ -3232,7 +3206,7 @@ sub LoadFont
             $r[0]='u0020' if $r[3] == 32;
             $r[0]="u00".hex($r[3]) if $r[0] eq '---';
             $r[4]=$r[0] if !defined($r[4]);
-	    $fnt{NAM}->{$r[0]}=[$p[0],$r[3],'/'.$r[4],undef,undef,$r[5]];
+            $fnt{NAM}->{$r[0]}=[$p[0],$r[3],'/'.$r[4],undef,undef,$r[5],$p[1]||0,$p[2]||0];
             $fnt{NO}->[$r[3]]=$r[0];
             $lastnm=$r[0];
             $lastchr=$r[3] if $r[3] > $lastchr;
@@ -3260,12 +3234,12 @@ sub LoadFont
     $fnt{ascent}=$ascent;
     $fnt{capheight}=$capheight;
     $fnt{lastchr}=$lastchr;
-    $fnt{NAM}->{''}=[0,-1,'/.notdef',-1,0];
+    $fnt{NAM}->{''}=[0,-1,'/.notdef',-1,0,0,0];
     $slant=-$fnt{'slant'} if exists($fnt{'slant'});
     $fnt{slant}=$slant;
     $fnt{nospace}=(!defined($fnt{NAM}->{u0020}->[PSNAME]) or $fnt{NAM}->{u0020}->[PSNAME] ne '/space' or !exists($fnt{'spacewidth'}))?1:0;
     $fnt{'spacewidth'}=270 if !exists($fnt{'spacewidth'});
-    Notice("Using nospace mode for font '$ofontnm'") if $fnt{nospace} == 1 and $options & USESPACE;
+    Warn("Using nospace mode for font '$ofontnm'") if $fnt{nospace} == 1 and $options & USESPACE;
 
     $t1flags|=2**0 if $fixwid > -1;
     $t1flags|=(exists($fnt{'special'}))?2**2:2**5;
@@ -3285,8 +3259,8 @@ sub LoadFont
 #         $fontlst{$fontno}->{HEAD}=$head;
 #         $fontlst{$fontno}->{BODY}=$body;
 #         $fontlst{$fontno}->{TAIL}=$tail;
-#	$fno=++$objct;
-#	EmbedFont($fontno,\%fnt);
+        #         $fno=++$objct;
+        #       EmbedFont($fontno,\%fnt);
     }
     else
     {
@@ -3316,10 +3290,10 @@ sub LoadFont
         }
     }
 
-#    PutObj($fno);
-#    PutObj($fno+1);
-#    PutObj($fno+2) if defined($obj[$fno+2]);
-#    PutObj($fno+3) if defined($obj[$fno+3]);
+    #     PutObj($fno);
+    #     PutObj($fno+1);
+    #     PutObj($fno+2) if defined($obj[$fno+2]);
+    #     PutObj($fno+3) if defined($obj[$fno+3]);
 }
 
 sub GetType1
@@ -3548,7 +3522,7 @@ sub NewPage
     $stream.=$strkcol."\n", $curstrk=$strkcol if $strkcol ne '';
             $mode='g';
             $curfill='';
-#	    @mediabox=@defaultmb;
+            #    @mediabox=@defaultmb;
 }
 
 sub DrawBox
@@ -3589,7 +3563,7 @@ sub do_f
     my $fnt=$fontlst{$par}->{FNT};
     $thisfnt=$fnt;
 
-#    IsText();
+    #   IsText();
     $cft="$par";
     $fontchg=1;
     PutLine();
@@ -3669,14 +3643,11 @@ sub Set_LWidth
 
 sub do_m
 {
-    # Groff uses /m[] for text & graphic stroke, and /M[] (DF?) for
-    # graphic fill.  PDF uses G/RG/K for graphic stroke, and g/rg/k for
-    # text & graphic fill.
+    # Groff uses /m[] for text & graphic stroke, and /M[] (DF?) for graphic fill.
+    # PDF uses G/RG/K for graphic stroke, and g/rg/k for text & graphic fill.
     #
-    # This means that we must maintain g/rg/k state separately for text
-    # colour & graphic fill (this is probably why 'gs' maintains
-    # separate graphic states for text & graphics when distilling PS ->
-    # PDF).
+    # This means that we must maintain g/rg/k state separately for text colour & graphic fill (this is
+    # probably why 'gs' maintains separate graphic states for text & graphics when distilling PS -> PDF).
     #
     # To facilitate this:-
     #
@@ -3690,7 +3661,7 @@ sub do_m
     $par=substr($par,1);
     $par=~s/^ +//;
 
-#    IsGraphic();
+    #   IsGraphic();
 
     $textcol=set_col($mcmd,$par,0);
     $strkcol=set_col($mcmd,$par,1);
@@ -3908,8 +3879,8 @@ sub do_D
         my (@p)=split(' ',$par);
 
         foreach my $p (@p) { $p/=$unitwidth; }
-#	$xpos+=$p[0]*100;	       # WTF!!!
-#	int lw = ((font::res/(72*font::sizescale))*linewidth*env->size)/1000;
+        #               $xpos+=$p[0]*100;               # WTF!!!
+        #int lw = ((font::res/(72*font::sizescale))*linewidth*env->size)/1000;
         $p[0]=(($desc{res}/(72*$desc{sizescale}))*$linewidth*$cftsz)/1000 if $p[0] < 0;
         $lwidth=$p[0];
         $stream.="$p[0] w\n";
@@ -3927,8 +3898,7 @@ sub do_D
 
         foreach my $p (@p) { $p/=$unitwidth; }
 
-	# Documentation is wrong. Groff does not use Dh1,Dv1 as centre
-	# of the circle!
+        # Documentation is wrong. Groff does not use Dh1,Dv1 as centre of the circle!
 
         my $centre=adjust_arc_centre(\@p);
 
@@ -4057,6 +4027,7 @@ sub FindCircle
     {
         return(-1);
     }
+
 }
 
 sub PtoR
@@ -4075,6 +4046,7 @@ sub RtoP
 
 sub PutLine
 {
+
     my $f=shift;
 
     IsText() if !defined($f);
@@ -4124,8 +4096,8 @@ sub PutLine
             {
                 $stream.="%!! GAP=".($gap)."\n" if $debug;
 
-#		while ($gap >= $whtsz+$wt)
-#		while (abs($gap - ($whtsz+$wt)) > 1)
+                #           while ($gap >= $whtsz+$wt)
+                #           while (abs($gap - ($whtsz+$wt)) > 1)
                 if ($wt >= 0)
                 {
                     my $i=int(($gap+1) / ($whtsz+$wt));
@@ -4172,6 +4144,7 @@ sub PutLine
                 $n=0;
             }
 
+
         }
         else
         {
@@ -4263,7 +4236,7 @@ sub AssignGlyph
         ($chf->[MINOR],$chf->[MAJOR])=NextAlloc($fnt);
     }
 
-#   $fnt->{SUB}->[$chf->[MAJOR]]->{CHARSET}.=$chf->[PSNAME];
+    #   $fnt->{SUB}->[$chf->[MAJOR]]->{CHARSET}.=$chf->[PSNAME];
 
     my $uc;
 
@@ -4299,7 +4272,7 @@ sub PutGlyph
     {
         PutLine();
         $cftmajor=$chf->[MAJOR];
-#	$whtsz=$fontlst{$cft}->{FNT}->{spacewidth}*$cftsz;
+        #       $whtsz=$fontlst{$cft}->{FNT}->{spacewidth}*$cftsz;
         my $c=$cft;
         $c.=".".$cftmajor if $cftmajor;
         $stream.="/F$c $cftsz Tf\n";
@@ -4373,6 +4346,7 @@ sub do_t
 
         PutGlyph($fnt,$ch,0);
     }
+
 }
 
 sub do_u
@@ -4391,7 +4365,7 @@ sub do_h
 
     $v/=$unitwidth;
 
-    if ($mode eq 't')
+    if ( $mode eq 't')
     {
         if ($w_flg)
         {
@@ -4436,7 +4410,7 @@ sub do_H
 
     if ($mode eq 't')
     {
-#	PutLine();
+        #       PutLine();
         if ($#lin > -1)
         {
             $lin[$#lin]->[HWID]=d3($xpos-$lin[$#lin]->[XPOS]);
@@ -4601,7 +4575,7 @@ sub map_subrs
 
     for (my $j=0; $j<=$#{$lines}; $lin=$lines->[++$j] )
     {
-#	next if !defined($lines->[$j]);
+        #       next if !defined($lines->[$j]);
 
         if ($stage == 0)
         {
@@ -4643,8 +4617,8 @@ sub map_subrs
                     redo;
                 }
 
-#		$s=decrypt_char($s);
-#		subs_call($s,"#$n");
+                #               $s=decrypt_char($s);
+                #               subs_call($s,"#$n");
                 $lines->[$i]=["#$n",$l,$s,'NP'];
             }
             elsif ($lin=~m/^ND/)
@@ -4695,10 +4669,10 @@ sub map_subrs
 
 		$i=0;
             }
-#	    else
-#	    {
-#		Warn("Don't understand '$lin'");
-#	    }
+            #       else
+            #       {
+            #           Warn("Don't understand '$lin'");
+            #       }
         }
         elsif ($stage == 3)
         {
@@ -4759,11 +4733,7 @@ sub subs_call
             my $n2=$charstr->[++$j];
             push(@c,[$n2,0]);
 
-	    if ($n2==16)	 # callothersub
-	    {
-		$c[$#c-4]->[0]=MarkSub("#$c[$#c-4]->[0]") if ($c[$#c-4]->[1]);
-	    }
-	    elsif ($n2==6)	 # seac
+            if ($n2==6)         # seac
             {
                 my $ch=$StdEnc{$c[$#c-2]->[0]};
                 my $chf;
@@ -4803,7 +4773,7 @@ sub subs_call
 
     $sec{$key}->[CHARCHAR]=\@c;
 
-#    foreach my $j (@c) {Warn("Undefined op in $key") if !defined($j);}
+    #     foreach my $j (@c) {Warn("Undefined op in $key") if !defined($j);}
 }
 
 sub Subset
@@ -4960,14 +4930,13 @@ sub encode_charstr
                 my $lo=abs($n + 108) & 0xff;
                 push(@c,$hi+251,$lo);
             }
-#	    elsif ($n >= -32768 and $n <= 32767)
-#	    {
-#		push(@c,28,($n>>8) & 0xff,$n & 0xff);
-#	    }
+            #       elsif ($n >= -32768 and $n <= 32767)
+            #       {
+            #           push(@c,28,($n>>8) & 0xff,$n & 0xff);
+            #       }
             else
             {
-		push(@c,255,($n >> 24) & 0xff, ($n >> 16) & 0xff,
-		     ($n >> 8) & 0xff, $n & 0xff );
+                push(@c,255,($n >> 24) & 0xff, ($n >> 16) & 0xff, ($n >> 8) & 0xff, $n & 0xff );
             }
         }
         else

Attachment: signature.asc
Description: PGP signature

Reply via email to