# Pod::Man -- Convert POD data to formatted *roff input.
-# $Id: Man.pm,v 0.5 1999/09/25 19:49:49 eagle Exp $
+# $Id: Man.pm,v 0.8 1999/10/07 09:39:37 eagle Exp $
#
# Copyright 1999 by Russ Allbery <rra@stanford.edu>
#
@ISA = qw(Pod::Parser);
-($VERSION = (split (' ', q$Revision: 0.5 $ ))[1]) =~ s/\.(\d)$/.0$1/;
+($VERSION = (split (' ', q$Revision: 0.8 $ ))[1]) =~ s/\.(\d)$/.0$1/;
############################################################################
# Handle E<> escapes.
if ($command eq 'E') {
- if (exists $ESCAPES{$_}) {
+ if (/^\d+$/) {
+ return bless \ chr ($_), 'Pod::Man::String';
+ } elsif (exists $ESCAPES{$_}) {
return bless \ "$ESCAPES{$_}", 'Pod::Man::String';
} else {
carp "Unknown escape E<$1>";
$text .= (length $manpage) ? " in $manpage"
: " elsewhere in this document";
} else {
- $text .= 'the section on "' . $section . '"';
+ if ($section !~ /^".*"$/) { $section = '"' . $section . '"' }
+ $text .= 'the section on ' . $section;
$text .= " in $manpage" if length $manpage;
}
$text;
# Pod::Text -- Convert POD data to formatted ASCII text.
-# $Id: Text.pm,v 2.1 1999/09/20 11:53:33 eagle Exp $
+# $Id: Text.pm,v 2.3 1999/10/07 09:41:57 eagle Exp $
#
# Copyright 1999 by Russ Allbery <rra@stanford.edu>
#
require 5.004;
use Carp qw(carp croak);
+use Exporter ();
use Pod::Select ();
use strict;
-use vars qw(@ISA %ESCAPES $VERSION);
+use vars qw(@ISA @EXPORT %ESCAPES $VERSION);
# We inherit from Pod::Select instead of Pod::Parser so that we can be used
# by Pod::Usage.
-@ISA = qw(Pod::Select);
+@ISA = qw(Pod::Select Exporter);
-($VERSION = (split (' ', q$Revision: 2.1 $ ))[1]) =~ s/\.(\d)$/.0$1/;
+# We have to export pod2text for backward compatibility.
+@EXPORT = qw(pod2text);
+
+($VERSION = (split (' ', q$Revision: 2.3 $ ))[1]) =~ s/\.(\d)$/.0$1/;
############################################################################
# Expand escapes into the actual character now, carping if invalid.
if ($command eq 'E') {
- return $ESCAPES{$_} if defined $ESCAPES{$_};
- carp "Unknown escape: E<$_>";
- return "E<$_>";
+ if (/^\d+$/) {
+ return chr;
+ } else {
+ return $ESCAPES{$_} if defined $ESCAPES{$_};
+ carp "Unknown escape: E<$_>";
+ return "E<$_>";
+ }
}
# For all the other sequences, empty content produces no output.
}
# Initialize and run the formatter.
-my $parser = Pod::Man->new (\%options);
+my $parser = Pod::Man->new (%options);
$parser->parse_from_file (@ARGV);
__END__