Provided by: libparse-man-perl_0.03-2_all bug

NAME

       "Parse::Man::DOM" - parse nroff-formatted manpages and return a DOM tree

SYNOPSIS

        use Parse::Man::DOM;

        my $parser = Parse::Man::DOM->new;

        my $document = $parser->from_file( "my_manpage.1" );

        print "The manpage name is", $document->meta( "name" ), "\n";

DESCRIPTION

       This subclass of Parse::Man returns an object tree representing the parsed content of the
       input file. The returned result will be an object of the "Parse::Man::DOM::Document"
       class, which itself will contain other objects nested within it.

Parse::Man::DOM::Document

       Represents the document as a whole.

   meta
          $meta = $document->meta( $key )

       Returns a "Parse::Man::DOM::Metadata" object for the named item of metadata.

       •   name

           The page name given to the ".TH" directive.

       •   section

           The section number given to the ".TH" directive.

   paras
          @paras = $document->paras

       Returns a list of "Parse::Man::DOM::Heading" or "Parse::Man::DOM::Para" or subclass
       objects, containing the actual page content.

Parse::Man::DOM::Metadata

       Represents a single item of metadata about the page.

   name
          $name = $metadata->name

       The string name of the metadata

   value
          $value = $metadata->value

       The string value of the metadata

Parse::Man::DOM::Heading

       Represents the contents of a ".SH" or ".SS" heading

   level
          $level = $heading->level

       The heading level number; 1 for ".SH", 2 for ".SS"

   text
          $text = $heading->text

       The plain text string of the heading title

Parse::Man::DOM::Para

       Represents a paragraph of formatted text content. Will be one of the following subclasses.

   filling
          $filling = $para->filling

       Returns true if filling (".fi") is in effect, or false if no-filling (".nf") is in effect.

   body
          $chunklist = $para->body

       Returns a "Parse::Man::DOM::Chunklist" to represent the actual content of the paragraph.

   indent
          $indent = $para->indent

       Returns the indentation size in column count, if defined.

Parse::Man::DOM::Para::Plain

       Represent a plain (".P" or ".PP") paragraph.

   type
          $type = $para->type

       Returns "plain".

Parse::Man::DOM::Para::Term

       Represents a term paragraph (".TP").

   type
          $type = $para->type

       Returns "term".

   term
          $chunklist = $para->term

       Returns a "Parse::Man::DOM::Chunklist" for the defined term name.

   definition
          $chunklist = $para->definition

       Returns a "Parse::Man::DOM::Chunklist" for the defined term definition.

Parse::Man::DOM::Para::Indent

       Represents an indented paragraph (".IP").

   type
          $type = $para->type

       Returns "indent".

   marker
          $marker = $para->marker

       Returns the indentation marker text, if defined.

Parse::Man::DOM::Para::Example

       Represents an example paragraph (".EX" / ".EE").

   type
          $type = $para->type

       Returns "example".

Parse::Man::DOM::Chunklist

       Contains a list of "Parse::Man::DOM::Chunk" objects to represent paragraph content.

   chunks
          @chunks = $chunklist->chunks

       Returns a list of "Parse::Man::DOM::Chunk" objects.

Parse::Man::DOM::Chunk

       Represents a chunk of text with a particular format applied.

   text
          $text = $chunk->text

       The plain string value of the text for this chunk.

   font
          $font = $chunk->font

       The font name in effect for this chunk. One of "R", "B", "I" or "SM".

   size
          $size = $chunk->size

       The size of this chunk, relative to the paragraph base of 0.

AUTHOR

       Paul Evans <leonerd@leonerd.org.uk>