2013-10-05  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.5.3 released.

	* t/man-empty.t: Skip errors test if Pod::Simple didn't produce
	any errors, which happens with the version shipped with Perl
	versions prior to 5.18.  Catch warnings as well as exceptions.
	* t/text-empty.t: Likewise.

	* lib/Pod/Man.pm: Fix documentation of the default for the errors
	constructor parameter.
	* lib/Pod/Text.pm: Likewise.

2013-09-22  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.5.2 released.

	* lib/Pod/Man.pm (_handle_element_start): Merge the two formatting
	hashes and move the data to the top of the module.
	(cmd_para): Separate reverse from the substitution.
	(cmd_verbatim): Likewise.

2013-09-22  Dagfinn Ilmari Mannsåker  <ilmari@ilmari.org>

	* lib/Pod/Man.pm (cmd_para): Reverse the text before fixing
	trailing whitespace to avoid having to scan the entire paragraph.
	(cmd_verbatim): Likewise.

	* lib/Pod/Man.pm (method_for_element): Merge two tr expressions.

	* lib/Pod/Man.pm (formatting): Replaced with two hashes that store
	the default and override formatting options for different blocks.
	(_handle_element_start): Inline the formatting logic using those
	hashes and remove the call to formatting.  (#83253)

	* lib/Pod/Man.pm (new): Save the results of can and use it to make
	the method call to avoid redoing method lookup.
	(_handle_element_start): Likewise.
	(_handle_element_end): Likewise.

2013-09-21  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (parse_lines): Override the Pod::Simple method to
	set a default output file handle of STDOUT if none was set,
	matching the behavior of parse_file.
	(parse_string_document): Likewise.
	* lib/Pod/Text.pm (parse_lines): Likewise.
	(parse_string_document): Likewise.

	* lib/Pod/Man.pm (start_document): Perform document initialization
	even if the document is contentless.  Documents with only errors
	are shown as contentless but then have a POD ERRORS section, and
	previously this led to internal errors because state variables
	weren't properly initialized.  Thanks, Andreas Koenig.  (#88724)
	* lib/Pod/Text.pm (start_document): Likewise.
	* t/man-empty.t: New file.  Test error handling with contentless
	documents.
	* t/text-empty.t: Likewise.

	* lib/Pod/Man.pm: Fix an output_fh reference in the documentation.
	Thanks, Andreas Koenig.  (#88723)

	* lib/Pod/Man.pm (guesswork): Fix comment typos.  Thanks, David
	Steinbrunner.  (#85683)
	* lib/Pod/Text/Termcap.pm (strip_format): Likewise.
	(wrap): Likewise.

	* pod/perlpodstyle.pod: Wrap verbatim license line in POD that was
	over 79 characters after the man page indentation.  Thanks, Brian
	Gottreu and Steve Hay.  (#87440)

2013-02-27  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.5.1 released.

	* t/color.t: Add Z<> to tag width test to avoid triggering the new
	Pod::Parser warning about numeric items in description lists.
	* t/overstrike.t: Likewise.
	* t/termcap.t: Likewise.
	* t/man.t: Remove the test for proper handling of lists that start
	with a non-bullet and then have an item that looks like a bullet.
	This now triggers a warning in Pod::Simple.  Move it to...
	* t/man-options.t: ...here, where we can configure the parser to
	ignore errors and test that the output is correct.

2013-01-02  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.5.0 released.

	* lib/Pod/Man.pm (guesswork): Extend a small-caps section through
	the punctuation that commonly appears in license disclaimers so
	that small caps isn't turned on and off at the boundaries of every
	word, producing unreadable *roff.
	* t/man.t: Test the updated small-caps behavior.

	* lib/Pod/Man.pm (new): Support a new errors option with values
	die, stderr, pod, and none.  Convert the stderr option to the
	errors option with value stderr.  (#39007)
	(end_document): Die if errors was set to die and there were POD
	syntax errors.
	* lib/Pod/Text.pm (new): Likewise.
	(end_document): Likewise.
	* scripts/pod2man: Support a new --errors option that sets the
	underlying errors formatter option and default to dying on POD
	syntax errors.
	* scripts/pod2text: Likewise.
	* t/man-options.t: Add support for catching exceptions during
	formatting.  Test valid and invalid errors settings.
	* t/text-options.t: Likewise.

	* lib/Pod/Man.pm (cmd_l): Add nourls option to suppress the URL
	from L<> formatting codes that contain anchor text.  (#62210)
	* lib/Pod/Text.pm (cmd_l): Likewise.
	* scripts/pod2man: New --nourls option to set the corresponding
	option in Pod::Man.
	* scripts/pod2text: Likewise for Pod::Text.
	* t/man-options.t: Test new nourls option.
	* t/text-options.t: Likewise.

	* lib/Pod/Man.pm (outindex): Also collapse consecutive whitespace
	in index term text.
	* t/man.t: Test for handling of index terms containing whitespace.

2013-01-02  Kevin Ryde  <user42@zip.com.au>

	* lib/Pod/Man.pm (outindex): Remove newlines from index term text
	since *roff quotes don't span lines.  (#82332)

2012-06-01  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.4.2 released.

	* t/text-encoding.t: Remove the test of a POD document without an
	encoding.  We previously tested that this interpreted the document
	as ISO 8859-1, but Pod::Simple behavior has changed so that the
	test started failing, plus Pod::Simple now warns about a missing
	=encoding.  (#77553)

2012-05-30  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.4.1 released.

	* lib/Pod/Man.pm (parse_file): Override the Pod::Simple method to
	set output_fh to STDOUT if it's not already set.  (#77530)
	* lib/Pod/Text.pm (parse_file): Likewise.

2012-05-26  Russ Allbery  <rra@stanford.edu>

	* t/basic.t: Embed PID in file names to avoid conflicts when
	running the test suite in parallel.  (#62083)
	* t/color.t: Likewise.
	* t/filehandle.t: Likewise.
	* t/man-heading.t: Likewise.
	* t/man-options.t: Likewise.
	* t/man-perlio.t: Likewise.
	* t/man-utf8.t: Likewise.
	* t/man.t: Likewise.
	* t/overstrike.t: Likewise.
	* t/pod-parser.t: Likewise.
	* t/termcap.t: Likewise.
	* t/text-encoding.t: Likewise.
	* t/text-options.t: Likewise.
	* t/text-perlio.t: Likewise.
	* t/text-utf8.t: Likewise.
	* t/text.t: Likewise.

	* t/man.t: Add another test for anchor text based on an RT ticket.
	* t/text.t: Likewise.

	* lib/Pod/Man.pm (start_document): Request details on PerlIO
	layers to look for the UTF8 flag, which is not a layer in its own
	right.  Based on a patch from Leon Timmermans.  (#76440)
	* lib/Pod/Text.pm (start_document): Likewise.

	* lib/Pod/Man.pm (preamble_template): Fix handling of the F
	register when processing multiple documents at once.  .IX will now
	continue to be defined for documents after the first, and the page
	number will not be reset at the start of each document.  Thanks to
	Nicholas Clark for the analysis.  (perl #103202)

	* lib/Pod/Man.pm (start_document): Remove CONTENTLESS parser state
	between documents.
	* lib/Pod/Text.pm (start_document): Set CONTENTLESS in the parser
	if the document contained no content.
	* scripts/pod2man: Report an error and remove the empty output
	file if the input file had no content (if it did not exist, for
	example).  Exit with non-zero status if there were any errors.
	Based on a patch by Dmitry Smirnov.  (#75099)
	* scripts/pod2text: Likewise.

	* lib/Pod/Man.pm (cmd_l): Format the URL text before comparing it
	to the anchor when deciding whether to show separate anchor text.
	This avoids spurious mismatches between the URL target and anchor
	text because the anchor text was already formatted and has (for
	example) hyphens escaped.  (#76396)
	* t/man.t: Test L<> formatting codes with URLs containing hyphens.

	* lib/Pod/Man.pm (preamble_template): Define \*(C` and \*(C' to
	the empty string when processed through troff to avoid groff
	warnings.  Avoid warnings from checking the F register (used to
	enable index output) when running under groff.  Patch from Bjarni
	Ingi Gislason.  (#75434)

2012-02-14  Russ Allbery  <rra@stanford.edu>

	* Makefile.PL: Stop removing pod2man and pod2text on make
	realclean, left over from when they were *.PL scripts.  (#74848)

2011-12-20  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm: Fix the ASCII fallback string for the AE
	ligature to use the string that was actually defined.

2010-10-10  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.4.0 released.

	* scripts/pod2man: Remove the code to generate the #! line and
	supporting code and instead rely on ExtUtils::MakeMaker to handle
	that during package build.
	* scripts/pod2text: Likewise.
	* scripts/pod2man.PL: Renamed to pod2man.
	* scripts/pod2text.PL: Renamed to pod2text.
	* Makefile.PL: Remove PL_FILES section.

	* pod/perlpodstyle.pod: New style guide for POD documentation,
	split mostly from the NOTES section of the pod2man man page.
	* scripts/pod2man.PL: Remove NOTES section, now maintained as the
	separate perlpodstyle document.
	* Makefile.PL: Add perlpodstyle.1 to the generated man pages.

	* lib/Pod/Man.pm (cmd_para): Do not strip escaped trailing
	whitespace, such as that created by S<> at the end of a line,
	since the backslash is then taken by *roff as escaping the
	newline.  Thanks, Kevin Ryde.  (#61781)
	* t/man.t: Test S<> at the end of lines.

	* lib/Pod/Man.pm (output): If the utf8 option is given, encode
	output in UTF-8 if there is no encoding layer.  Now requires the
	Encode module.
	(start_document): Rather than forcibly change the PerlIO encoding
	layer, probe the PerlIO layers with protection for Perl versions
	without PerlIO and set a flag indicating whether to encode on the
	fly on output.
	* lib/Pod/Text.pm: Likewise.
	* Makefile.PL: Mark Encode as required.
	* t/man-perlio.t: Test Pod::Man output to a file handle with a
	PerlIO encoding layer already applied.
	* t/text-perlio.t: Likewise for Pod::Text.

2010-02-17  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.3.1 released.

	* lib/Pod/Text/Color.pm: Update $VERSION for recent changes.
	* lib/Pod/Text/Termcap.pm: Likewise.

2009-12-28  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.3.0 released.

	* lib/Pod/Man.pm (_handle_element_start): Do not turn off IN_NAME
	for any formatting code.
	(cmd_b): Suppress formatting if in the NAME section to not confuse
	lexgrog.
	(cmd_i): Likewise.
	(cmd_f): Likewise.
	* t/man.t: Test formatting codes in the NAME section.

	* lib/Pod/ParseLink.pm (parselink): Allow anchor text for URLs as
	well.  Fix the check of the anchor text to not think no text was
	provided when the text was "0".
	* t/parselink.t: Test anchor text of "0" and anchor text with
	URLs.

	* Makefile.PL: Require Pod::Simple 3.06 or later for proper
	handling of L<> tags with anchor text.
	* t/text.t: Remove logic to skip an S<> test for Pod::Simple
	versions earlier than 3.06.

	* lib/Pod/Man.pm (cmd_l): Support anchor text for L<> links of
	type URL by rendering the anchor text and then the URL in angle
	brackets.
	* lib/Pod/Text.pm (cmd_l): Likewise.
	* t/man.t: Test rendering of L<> URL links with anchor text.
	* t/text.t: Likewise.

	* lib/Pod/Text.pm (strip_format): New function.
	(item): When formatting item tags, use the width of the tag
	without formatting codes.  This does not change the output of
	Pod::Text but provides a hook for correct formatting in
	subclasses.  Thanks, David Hull.
	* lib/Pod/Text/Color.pm (strip_format): New function.
	* lib/Pod/Text/Termcap.pm (strip_format): New function.
	* t/color.t: Test proper formatting of item tags which have
	formatting codes applied.
	* t/termcap.t: Likewise.
	* t/overstrike.t: New test of Pod::Text::Overstrike.

	* t/basic.t: Use Test::More for testing.  Remove duplicate
	addition of ../blib/lib to the library search path.
	* t/color.t: Likewise.
	* t/filehandle.t: Likewise.
	* t/man-heading.t: Likewise.
	* t/man-options.t: Likewise.
	* t/man-utf8.t: Likewise.
	* t/man.t: Likewise.
	* t/parselink.t: Likewise.
	* t/pod-parser.t: Likewise.
	* t/termcap.t: Likewise.
	* t/text-encoding.t: Likewise.
	* t/text-options.t: Likewise.
	* t/text-utf8.t: Likewise.
	* t/text.t: Likewise.

	* t/pod-spelling.t: Update to the current version of this test
	from C TAP Harness 1.1, converting it to use Test::More.
	* t/pod.t: Likewise.

2009-06-15  Russ Allbery  <rra@stanford.edu>

	* t/basic.t: Unlink temporary files in a loop to be sure that all
	versions are deleted on VMS.  Thanks, John E. Malmberg.
	* t/color.t: Likewise.
	* t/filehandle.t: Likewise.
	* t/man-options.t: Likewise.
	* t/man-utf8.t: Likewise.
	* t/man.t: Likewise.
	* t/pod-parser.t: Likewise.
	* t/termcap.t: Likewise.
	* t/text-encoding.t: Likewise.
	* t/text-options.t: Likewise.
	* t/text-utf8.t: Likewise.
	* t/text.t: Likewise

2009-03-29  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (outindex): Escape backslashes in the quoted text
	of .IX macros generated from X<> formatting code.
	* t/man.t: Add test case for X<\n>.

2009-03-05  Russ Allbery  <rra@stanford.edu>

	* scripts/pod2man.PL: Clarify that no markup should be used in the
	NAME section of a manual page.

2009-02-28  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (devise_date): Avoid POSIX::strftime because
	POSIX requires Fcntl, which is an XS module, and hence can't build
	in miniperl.  This allows ExtUtils::MakeMaker to build as a normal
	module in Perl core.  Thanks, Michael G Schwern.
	* t/devise-date.t: Test that Pod::Man's devise_date method matches
	the output of strftime.

	* lib/Pod/Man.pm (_handle_element_start): Don't exit IN_NAME mode
	because of a C<> block.  Thanks, Niko Tyni.
	(quote_literal): Return an ASCII quoted string if in the NAME
	section to avoid confusing lexgrog.  Thanks, Niko Tyni.
	* t/man.t: Test C<> in the NAME section.

2009-01-17  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.2.2 released.

	* t/man-heading.t: New file testing Pod::Man options for changing
	the .TH line of the generated man page.

	* lib/Pod/Text.pm (cmd_verbatim): Correctly handle indentation of
	verbatim paragraphs that contain lines with only whitespace.
	Thanks, Renee Baecker.
	* t/text.t: Test for this fix.

2008-12-19  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.2.1 released.

	* t/man.t: Add a test of =for.
	* t/text.t: Likewise.

2008-11-07  Russ Allbery  <rra@stanford.edu>

	* t/text-encoding.t: Also set raw encoding on the output file
	handle so that the test works properly on Windows.  Thanks, Steve
	Hay.

2008-11-03  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Text.pm (pod2text): Properly initialize the output file
	handle when called with only one argument.  Thanks, Michael G
	Schwern.
	* t/pod-parser.t: Test the pod2text function with one argument.

2008-10-05  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.2.0 released.

	* t/pod-spelling.t: Skip all tests unless RRA_MAINTAINER_TESTS is
	set in the environment.  Spelling dictionaries are too different
	between systems.  Use a comment on the plan line to indicate
	skipping the entire file.

	* lib/Pod/Man.pm: Spelling fixes.
	* lib/Pod/ParseLink.pm: Likewise.
	* scripts/pod2man.PL: Likewise.

	* lib/Pod/ParseLink.pm: Quote version number to preserve any
	trailing zeroes.
	* lib/Pod/Text/Color.pm: Likewise.
	* lib/Pod/Text/Overstrike.pm: Likewise.
	* lib/Pod/Text/Termcap.pm: Likewise.

	* lib/Pod/Man.pm: Document the PerlIO limitations of the current
	implementation and the requirement that encodings of input POD
	source be properly declared.
	(start_document): If the utf8 option is set, force the encoding of
	the output file handle to UTF-8.
	* lib/Pod/Text.pm: Document the PerlIO limitations of the current
	implementation and the requirement that encodings of input POD
	source be properly declared.
	(output): Try to force the encoding of the output file handle to
	match the encoding of the POD source if the utf8 option is not
	set, matching the pre-Unicode behavior.
	(start_document): If the utf8 option is set, force the encoding of
	the output filel handle to UTF-8.
	* scripts/pod2man.PL: Document the requirement that encodings of
	input POD source be properly declared for --utf8 support.
	* scripts/pod2text.PL: Add --utf8 option.
	* t/man-utf8.t: Stop forcing the output encoding to UTF-8.
	* t/text-utf8.t: Likewise.
	* t/text-encoding.t: New file.  Additional tests for encoding
	combinations with Pod::Text.

2008-09-21  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.1.4 released.

	* t/pod-spelling.t: Also support aspell and search for it before
	ispell.  Red Hat's ispell is actually aspell and doesn't support
	the same arguments.
	* lib/Pod/Man.pm: Add additional stopwords needed by aspell.
	* lib/Pod/Text.pm: Likewise.
	* lib/Pod/Text/Overstrike.pm: Likewise.
	* scripts/pod2man.PL: Likewise.
	* scripts/pod2text.PL: Likewise.

	* t/man-options.t: Separate UTF-8 tests out to....
	* t/man-utf8.t: ...here.  New file.  Skip UTF-8 tests for versions
	of Perl prior to 5.8.
	* t/text-utf8.t: Skip UTF-8 tests for versions of Perl prior to
	5.8.

2008-09-14  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.1.3 released.

	* lib/Pod/Man.pm (new): Support a stderr option, saying to send
	errors to standard error instead of a POD ERRORS section.
	* lib/Pod/Text.pm (new): Likewise.
	* scripts/pod2man.PL: New --stderr option.
	* scripts/pod2text.PL: Likewise.
	* t/man-options.t: Test POD ERRORS vs. stderr handling.
	* t/text-options.t: Likewise.

	* t/text-utf8.t: New test for UTF-8 handling in Pod::Text.
	* lib/Pod/Text.pm (output): Better document why we're doing
	character transformations on output.

	* t/man-options.t: Properly set encoding on file descriptors and
	in the POD file so that UTF-8 tests are handled with the correct
	encoding.  Now that the test file is properly encoded, test that
	non-breaking spaces doesn't interfere with hyphen detection.

	* lib/Pod/Man.pm (format_text): Stop remapping the code point for
	non-breaking space.  This should not be necessary and was wrong
	when the string from Pod::Simple was a character string and not a
	byte string.  It was papering over a bug in setting the encoding
	of an input POD file.

2008-08-08  Russ Allbery  <rra@stanford.edu>

	* t/pod-spelling.t: Suppress the personal ispell dictionary when
	checking spelling.
	* lib/Pod/Man.pm: Add additional stopwords that were in my
	personal dictionary.
	* lib/Pod/ParseLink.pm: Likewise.
	* scripts/pod2man.PL: Likewise.

2008-08-07  Russ Allbery  <rra@stanford.edu>

	* scripts/pod2man.PL: Mention --utf8 in the SYNOPSIS.

2008-07-20  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.1.2 released.

	* t/pod-spelling.t: New check to spell-check all POD
	documentation using ispell with Pod::Spell.
	* lib/Pod/Man.pm: Fix spelling and markup errors in
	documentation and add stop-words where appropriate.
	* lib/Pod/ParseLink.pm: Likewise.
	* lib/Pod/Text.pm: Likewise.
	* lib/Pod/Text/Color.pm: Likewise.
	* lib/Pod/Text/Overstrike.pm: Likewise.
	* lib/Pod/Text/Termcap.pm: Likewise.
	* scripts/pod2man.PL: Likewise.
	* scripts/pod2text.PL: Likewise.

	* lib/Pod/Man.pm (cmd_head2): Use .SS instead of a local .Sh
	macro for subheadings.
	(preamble_template): Don't define .Sh.
	* t/basic.man: Update output accordingly.
	* t/man.t: Likewise.

	* lib/Pod/Man.pm (format_text): Remap ISO 8850-1 non-breaking
	spaces produced by Pod::Simple to the corresponding UTF-8 code
	point for UTF-8 output.
	* t/man-options.t: Test S<> output with UTF-8 enabled.

2008-07-03  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.1.1 released.

	* t/man-options.t: Test changing the fixed-width fonts.

	* lib/Pod/Man.pm (preamble): Pass a flag to preamble_template
	indicating whether the output is in UTF-8.
	(preamble_template): Don't include the accent mark definitions if
	the output is in UTF-8.
	* t/man-options.t: Test omission of the accent mark definitions
	for UTF-8 output.

	* Makefile.PL: Make the LICENSE key conditional on Perl 5.10 or
	later since it wasn't supported in Perl 5.8.

2008-06-04  Russ Allbery  <rra@stanford.edu>

	* t/text.t: Fix test four (S<> handling with all whitespace) to
	not give a spurious failure with Pod::Simple 3.06.

2008-06-01  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.1.0 released.

	* Makefile.PL: Add LICENSE.

	* lib/Pod/Man.pm (format_text): If the utf8 option is set, don't
	convert non-ASCII characters to *roff escapes or X.  Document the
	utf8 option.
	* scripts/pod2man.PL: New option -u or --utf8 says to output
	literal UTF-8 characters rather than pure ASCII.
	* t/man-options.t: New file.  Test the utf8 option.

	* t/man.t: Be more cautious about passing an encoding to binmode
	to allow for a Perl without PerlIO.

	* lib/Pod/Man.pm (switchquotes): Match text between \f(CW and \fP
	or \fR in headings non-greedily to get the fonts right with
	multiple C<> formatting codes.
	* t/man.t: Test =head1 with multiple C<> codes.

2008-05-14  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (preamble_template): Protect .Sh text against
	leading *roff control characters since some *roff implementations
	apparently "look through" font escapes at the beginning of lines.

2008-05-12  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (format_text): Escape backslashes separately from
	processing non-ASCII characters and do that, dash escaping, and
	underscore adjustment before processing non-ASCII characters.
	Otherwise, we escape the hyphen in eth characters.
	* t/man.t: Test for handling of eth.

2007-11-28  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.0.6 released.

	* lib/Pod/Man.pm (preamble_template): Define the IX macro to empty
	rather than leaving it undefined when indexing is not requested to
	eliminate warnings when groff warnings are enabled.

	* lib/Pod/Man.pm (formatting): Set literal for verbatim and C<>
	text.
	(format_text): If literal is set, escape apostrophes and
	backquotes.
	(quote_literal): Recognize escaped apostrophes and backquotes.
	(preamble_template): Define the string used for escaped
	apostrophes.
	* t/basic.man: Adjust for escaped apostrophes.
	* t/man.t: Likewise, and add a new test for quote escaping.

2007-09-11  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (devise_title): Simplify the logic to skip lib
	directories to avoid Perl warnings and unnecessary checks.

	* t/text.t: Add a test for S<> with all-whitespace contents but
	skip it for the current Pod::Simple.

2006-09-16  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.0.5 released.

	* lib/Pod/Man.pm (parse_from_file): Accept and mostly ignore a
	hash of options as the first option to parse_from_file.  Support
	an option of -cutting and configure Pod::Simple to assume the POD
	has already started.  This is for backward compatibility with
	Pod::Parser.
	* lib/Pod/Text.pm (parse_from_file): Likewise.
	* t/pod-parser.t: New file to test the above.

	* lib/Pod/Man.pm (guesswork): Recognize more uses of hyphens in
	regular English text and allow them to be regular hyphens.
	(preamble): Turn off hyphenation and, for nroff, justification
	after the .TH macro since that's where groff turns them on.
	* t/basic.t: Update for the new preamble.
	* t/filehandle.t: Likewise.
	* t/man.t: Likewise, and test the new hyphen behavior.
	* t/basic.man: Adjust for the new hyphen behavior.

	* t/pod.t: Add a new test for POD validity using Test::Pod (if
	available).

2006-03-08  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm: Stop mapping vertical bar to \(bv, since it
	produces Unicode characters where they aren't desirable.  Remove
	the preamble reference to the Tr string, which was never defined.

2006-02-19  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.0.4 released.

	* lib/Pod/Man.pm (devise_date): Pod::Simple's source_filename
	method returns garbage if we're parsing from a file handle, so use
	the current time if stating the returned input file fails.

	* lib/Pod/Man.pm (parse_from_filehandle): New function for
	backward compatibility, since Pod::Simple doesn't support the API
	of Pod::Parser.
	* lib/Pod/Text.pm (parse_from_filehandle): Likewise.
	* t/filehandle.t: Test the parse_from_filehandle API.

2006-01-28  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.0.3 released.

	* t/basic.t: Pass in a file handle for Pod::Simple output and then
	close it afterwards to work around Pod::Simple leaving file
	handles open and preventing removal of temporary files on Windows.
	This is temporary until a new Pod::Simple release offers a better
	approach.
	* t/color.t: Likewise.
	* t/man.t: Likewise.
	* t/termcap.t: Likewise.
	* t/text-options.t: Likewise.
	* t/text.t: Likewise.

2006-01-25  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.0.2 released.

	* t/man.t: Use iso-8859-1 encoding when writing out the temporary
	test file and properly mark the encoding of the test that uses ISO
	8859-1 characters.

	* lib/Pod/Man.pm (parse_from_file): Flush the output file handle
	rather than closing it.  Closing it is unexpected and could break
	callers.
	* lib/Pod/Text.pm (parse_from_file): Likewise.

	* lib/Pod/Text/Termcap.pm (wrap): Use additional temporary
	variables to avoid ${char}{0,$width}, which only works in very
	recent Perls.
	* lib/Pod/Text/Color.pm (wrap): Likewise.

2006-01-20  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.0.1 released.

	* Makefile.PL: Require Pod::Simple 3.04.

	* lib/Pod/Man.pm (parse_from_file): New method.  Call reinit
	before calling the parent parse_from_file method to preserve the
	previous capability of reusing the same Pod::Man object for
	multiple documents.  Close the output file handle after
	Pod::Simple returns to force the output to flush.
	* lib/Pod/Text.pm (parse_from_file): Likewise.

	* scripts/pod2man.PL: Use a single object for all conversions.
	* scripts/pod2text.PL: Likewise.  Also use parse_from_file, not
	parse_file, since we're passing in two options.

	* t/basic.t: Use a single formatting object and don't undef the
	object after formatting.
	* t/color.t: Likewise.
	* t/man.t: Likewise.
	* t/termcap.t: Likewise.
	* t/text-options.t: Likewise.
	* t/text.t: Likewise.

	* lib/Pod/Text.pm (pod2text): Pod::Simple's parse_file method only
	takes one argument.  Pass the second argument to output_fh
	instead.

	* lib/Pod/Man.pm (_handle_element_end): Add trailing parens to the
	end method call to make Perl 5.005 happy.
	* lib/Pod/Text.pm (_handle_element_end): Likewise.

2005-11-28  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 2.00 released.

	* Makefile.PL: Require Pod::Simple 3.03.

	* t/termcap.t: Force a particular terminal configuration to get
	reliable results and update the expected results; I'm not sure
	what terminal I was testing with before.

2005-03-19  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm: Reorder documentation sections to put SEE ALSO
	last.
	(devise_title): Strip vendor_perl as well as site_perl, reported
	by Alexey Tourbin.

	* lib/Pod/Man.pm (new): Fall back on fullstop_space_harden if
	preserve_whitespace is not available.
	* lib/Pod/Text.pm (new): Likewise.

2004-12-31  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Text/Color.pm (wrap): Count text lengths correctly when
	there are multiple adjacent escape sequences.  Use a temporary
	variable to make the regex clearer.
	* lib/Pod/Text/Termcap.pm (wrap): Likewise.
	* t/color.t: New file.  Test wrapping.
	* t/termcap.t: New file.  Test wrapping.

	* t/basic.t: Skip the Pod::Text::Color tests if loading the module
	failed due to a missing Term::ANSIColor.

	* scripts/pod2man.PL: Move SEE ALSO to last in the section
	ordering and move HISTORY directly after AUTHOR and before
	COPYRIGHT AND LICENSE, based on discussion on perl5-porters.
	Remove the obsolete caution against enclosing URLs in L<>.

2004-06-08  Russ Allbery  <rra@stanford.edu>

	* t/basic.txt: C<> without any content now produces quote marks.
	* t/basic.cap: Likewise.
	* t/basic.clr: Likewise.
	* t/basic.ovr: Likewise.

	* t/text-errors.t: Deleted.  These errors are now caught by
	Pod::Simple instead, which is a better place to test them.

	* t/text-options.t: Add a test suite for the code option.  Undef
	the formatter after running it to make sure everything is closed
	correctly.

	* t/basic.t: Use the same interface for invoking all formatters,
	since they're now all based on Pod::Simple.  Undef the formatter
	after running it to make sure everything is closed correctly.
	* t/text.t: Likewise.

	* scripts/pod2man.PL: Change another documentation reference from
	Pod::Parser to Pod::Simple.

	* scripts/pod2text.PL: Add support for multiple pairs of input and
	output files, similar to pod2man.  Change documentation references
	from Pod::Parser to Pod::Simple.

	* lib/Pod/Text.pm: Significantly reworked to use Pod::Simple
	instead of Pod::Parser.  With the exception of better E<> handling
	and different handling of C<> without any content, the new
	formatter produces the same output as the old one.
	* lib/Pod/Text/Color.pm: Likewise.
	* lib/Pod/Text/Overstrike.pm: Likewise.
	* lib/Pod/Text/Termcap.pm: Likewise.

	* lib/Pod/Man.pm (_handle_element_end): Correctly handle the case
	where a command handler returns only "0" as the result of a
	command.

2004-05-07  Russ Allbery  <rra@stanford.edu>

	* scripts/pod2man.PL: Make the argument to the --release flag
	optional.

2004-02-14  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm: Refer to Pod::Simple in SEE ALSO.

	* t/man.t: Destroy the parser after parsing each segment, since
	this will force Pod::Simple to flush output.  Add many new tests
	taken from the Pod::Simple work by Sean Burke and update the
	results of a few tests for the new parser.

	* t/basic.pod: Remove a variety of L<> tests involving extra
	whitespace and newlines that aren't supported by perlpodspec to
	avoid unimportant errors.
	* t/basic.cap: Update.
	* t/basic.clr: Update.
	* t/basic.ovr: Update.
	* t/basic.txt: Update.
	* t/basic.man: Update and modify for the new results from the
	Pod::Simple-based Pod::Man.

	* t/basic.t: Destroy the parser after parsing each file, since
	that will force Pod::Simple to flush output.

	* scripts/pod2man.PL: Create a new parser for each file since
	Pod::Simple parsers are not reusable.  Update documentation to
	refer to Pod::Simple rather than Pod::Parser.

	* lib/Pod/Man.pm: Completely rewritten, using input from Sean
	Burke, to use Pod::Simple as the underlying parser instead of
	Pod::Parser.  Other than minor and unimportant variations, the new
	output is identical to the old except for some small bug fixes and
	better handling of E<>.

2003-07-09  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.27 released.

	* lib/Pod/Text/Termcap.pm (initialize): Handle the case where the
	HOME environment variable isn't set, mostly for Windows.

2003-03-30  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.26 released.

	* lib/Pod/Man.pm: Make sure the module returns 1, to keep Perl
	5.8.0 happy.

2003-01-04  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.25 released.

	* lib/Pod/Man.pm (begin_pod): Initialize ITEMTYPES.
	(textblock): Fix a comment about SHIFTWAIT and SHIFTS.
	(cmd_over): Push unknown onto ITEMTYPES.
	(cmd_back): Pop an item type off ITEMTYPES.
	(cmd_item): Set the top element of ITEMTYPES if set to unknown
	based on whether this item is =item/=item * or not.  Only map
	asterisk to a real bullet if the item type for this =over/=back
	pair is bullet.  Fix a bug where =item 0 was interpreted the same
	as =item.
	* t/man.t: Add tests for bullet handling with =item.

2002-08-03  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.24 released.

	* lib/Pod/Text.pm (initialize): Accept margin option and use it to
	set the initial indentation level.
	(item): Fix handling of the colon in the margin when alt is
	specified, and make it work properly in the presence of a non-zero
	margin setting.
	(heading): Indent headings by the margin setting.
	* lib/Pod/Text/Overstrike.pm (heading): Indent headings by the
	margin setting.
	* scripts/pod2text.PL: Accept and document the -m option to set
	the left margin.
	* t/text-options.t: New file.  Test margin and alt.

2002-07-14  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.23 released.

	* lib/Pod/Man.pm: Add a pointer to the module web site.
	* lib/Pod/Text.pm: Likewise.
	* lib/Pod/Text/Color.pm: Likewise.
	* lib/Pod/Text/Overstrike.pm: Likewise.
	* lib/Pod/Text/Termcap.pm: Likewise.
	* lib/Pod/ParseLink.pm: Likewise, and reference Pod::Parser.
	* scripts/pod2man.PL: Likewise, and remove a recommendation to
	provide link text for L<>.
	* scripts/pod2text.PL: Likewise, clean up some old-style L<> links
	to work around bugs in Pod::Man and Pod::Text that have been
	fixed, and reference Pod::Text::Overstrike.

2002-06-23  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.22 released.

	* lib/Pod/Man.pm (quote_literal): Tweak the regex for matching
	numbers to not consider a single period to be a number.
	* lib/Pod/Text.pm (seq_c): Likewise.
	* t/man.t: Add a test for proper quoting of C<.>.
	* t/text.t: New file.  Likewise.

2002-02-16  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.21 released.

	* lib/Pod/Text/Overstrike.pm (wrap): Fix the regex for wrapping
	lines to use a non-backtracking section for each character to
	avoid exponential backtracking on lines with a lot of markup.

2002-01-27  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.20 released.

	* t/basic.t: EBCDIC compatibility when testing Pod::Text::Termcap.
	Convert the escape characters so that the test will match.  I'm
	not entirely sure this doesn't paper over another problem, but
	it's an improvement at least.

	* lib/Pod/Text/Overstrike.pm (wrap): Use [\b] instead of \cH in
	regexes to match backspaces, for platforms that use EBCDIC where
	\b and \cH aren't the same character.
	(strip_format): Likewise.

2002-01-02  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.19 released.

	* t/man.t: New file, testing special behavior of Pod::Man.

	* lib/Pod/Man.pm (cmd_head1): Keep track of whether the current
	section is the NAME section.
	(collapse): Don't apply guesswork to the text inside the NAME
	section since it may get pulled out by programs like catman.
	(begin_pod): No longer output .UC after the .TH macro; catman
	doesn't like anything between the NAME section and .TH and .UC
	doesn't appear to actually do anything on any modern platform.
	Also initialize IN_NAME here.
	* t/basic.man: Adjust to reflect lack of guesswork in the NAME
	section and removal of the .UC request.

2002-01-01  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Text/Termcap.pm (initialize): Terminal speed should be a
	number, not a string.  Also fall back on a hard-coded terminal
	speed if getospeed doesn't work.

2001-12-31  Russ Allbery  <rra@stanford.edu>

	* t/basic.pod: Add a verbatim paragraph right before a heading,
	which was previously mishandled by Pod::Man.
	* t/basic.cap: Update.
	* t/basic.clr: Update.
	* t/basic.man: Update.
	* t/basic.ovr: Update.
	* t/basic.txt: Update.

	* lib/Pod/Man.pm (verbatim): Remove the blank line from .Ve in the
	preamble and set NEEDSPACE here instead, as this works better
	before headings and in other, similar situations.

	* t/text-errors.t: New file, testing errors issued by Pod::Text.

	* lib/Pod/Text.pm (interior_sequence): Fix error reporting for
	unknown sequences; the code was initializing $seq twice.
	(command): Fix the unknown command warning to use a colon rather
	than quotes like the other warnings and update the documentation
	to match.
	(interior_sequence): Fix the unknown formatting code warning to
	match the documentation.

2001-11-30  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.18 released.

	* lib/Pod/ParseLink.pm: Escape L<> in the NAME section of the
	documentation.

2001-11-27  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Text/Termcap.pm (initialize): Fall back on a hard-coded
	terminal speed if POSIX::Termios doesn't work, such as on VMS.

	* VERSION: podlators 1.17 released.

	* lib/Pod/Text/Color.pm: Change all documentation references from
	interior sequences to formatting codes to match the terminology of
	perlpodspec.
	* lib/Pod/Text/Overstrike.pm: Likewise.

	* lib/Pod/Text.pm: Change all documentation references from
	interior sequences to formatting codes to match the terminology of
	perlpodspec.
	(interior_sequence): Change the unknown sequence warning to
	unknown formatting code.

	* lib/Pod/Man.pm: Change all documentation references from
	interior sequences to formatting codes to match the terminology of
	perlpodspec.  Move the extra *roff code to NOTES instead of
	carrying it around inside the module.
	(sequence): Return references to arrays rather than references to
	scalars for already-formatted text because there are too many odd
	bugs with scalar references in older versions of Perl.  No longer
	bless references since the current Pod::Parser doesn't require it.
	Pass a third argument to collapse().  Change the unknown sequence
	warning to unknown formatting code.
	(collapse): Simplify and handle references to arrays rather than
	references to scalars.  Take a third argument that says whether to
	do C<> cleanup operations rather than checking $literal > 1.

	* Makefile.PL: Require version 1.13 of Pod::Parser so that
	Pod::Man doesn't have to bless already-formatted strings.

	* lib/Pod/Text/Termcap.pm: Fix a documentation typo.  =head should
	be =head1.

2001-11-26  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.16 released.

	* t/basic.t: Use an @INC path of ../lib for Perl core tests.
	(source_path): New function to find the test source files, needed
	when testing as Part of Perl core.  Used for all source file
	paths.

	* VERSION: podlators 1.15 released.

	* scripts/pod2man.PL: Delete the lax option before calling
	Pod::Man and document that it's obsolete and that podchecker
	should be used instead.  Mark some man page references with an
	explicit L<> and remove unnecessary anchor text on L<> references
	to other POD modules.  Add podchecker to the references section.

	* lib/Pod/Man.pm: Documentation fixes.  Remove the mention of lax
	from BUGS since podchecker now handles that.  Add mentions of
	turning off guesswork and proper 8-bit character handling.  Move
	some notes about fragile heuristics to a CAVEATS section.

2001-11-25  Russ Allbery  <rra@stanford.edu>

	* t/basic.t: Set TERM and TERMCAP per the Term::Cap documentation
	to obtain reproducible results for the Pod::Text::Termcap test.

	* lib/Pod/Text/Termcap.pm (initialize): Wrap the call into
	Term::Cap with eval because it throws exceptions if the terminal
	can't be found.  Fall back on the ANSI escape sequences rather
	than dying if the termcap entry is incomplete.  Note the fallback
	in the documentation.

2001-11-23  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.14 released.

	* t/parselink.t: New file.
	* t/basic.t: New file.
	* t/basic.cap: New file.
	* t/basic.clr: New file.
	* t/basic.ovr: New file.
	* t/basic.man: New file.
	* t/basic.pod: New file.
	* t/basic.txt: New file.

	* lib/Pod/Text/Overstrike.pm (strip_format): New function.
	(seq_b): Use it.
	(seq_f): Likewise.
	(seq_i): Likewise.
	(heading): New override to prevent excessive interpolation, since
	it's necessary to interpolate before formatting or the formatting
	codes end up in the output.
	(cmd_head1): Simplify, interpolate here, and use strip_format.
	(cmd_head2): Likewise.
	(cmd_head3): Likewise.
	(cmd_head4): New function, doing the same as cmd_head3().

	* lib/Pod/Man.pm (initialize): Move initialization of per-file
	variables from here...
	(begin_pod): ...to here.  Remove WEIRDINDENT, add SHIFTS, and
	rename NEWINDENT to SHIFTWAIT.
	(textblock): Maintain a stack of shifts rather than using
	WEIRDINDENT.  Rename NEWINDENT to SHIFTWAIT.
	(cmd_over): Likewise.
	(cmd_back): Likewise.
	(cmd_item): Likewise.
	(cmd_head3): Use font escapes rather than .I to avoid strange
	problems with quoting, at least for =head3.  =head1 and =head2
	likely still have troubles with repeated double-quotes.
	(outindex): Accumulate output in an array to avoid some duplicate
	code.
	(switchquotes): Fix all fixed-width font changes for nroff, not
	just the simple ones, and don't hard-code the value of any
	fixed-width font.

2001-11-22  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/ParseLink.pm (_parse_section): Fix a bug in the handling
	of link text that's entirely in quotes.

	* lib/Pod/Text.pm (heading): New function, for generic code for
	all headings.  loose now applies to all headers, not just =head1.
	Also output any =item tags left open.
	(cmd_head1): Use it.
	(cmd_head2): Likewise.
	(cmd_head3): Likewise.
	(cmd_head4): Likewise.
	(cmd_over): Output any =item tags left open.
	(cmd_back): Likewise.
	(command): No longer handle open =item tags here since this is now
	handled by individual commands.  Fixes handling of =for or
	=begin/=end in =item paragraphs.
	(cmd_item): Default to a tag of "*" if none is given.
	(item): Insert some whitespace for empty item paragraphs to keep
	them from blending into subsequent text.  Fix -w warnings.

	* lib/Pod/ParseLink.pm: Documentation fixes.  Double quotes are
	only removed around sections, not names.  Text entirely enclosed
	in double quotes is interpreted as a link to a section.  Expand
	the explanation of formatting codes inside L<> codes.
	(_parse_section): Avoid -w warnings on empty page or section
	components.
	(parselink): Avoid -w warnings on empty name components.

	* lib/Pod/Man.pm (begin_pod): When intuiting the man page name for
	a module, also strip $^O by itself as a directory component even
	when not preceeded or followed by a dash and other text.

2001-11-15  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.13 released.

	* lib/Pod/Man.pm (guesswork): Minor tweak to make the hyphen
	handling -w clean.

	* VERSION: podlators 1.12 released.

2001-11-14  Russ Allbery  <rra@stanford.edu>

	* Makefile.PL: Require at least version 0.8 of File::Spec.

	* lib/Pod/Man.pm: Use L<> for all man page references in the
	documentation that should be highlighted.  Switch the rest to bold
	versions of the program name.  Change func(n) to func(3) in the
	example of things that are automatically formatted so that it will
	be formatted.  Remove from BUGS the note that some of the path
	mangling assumes Unix directory separators.  Don't give anchor
	text for L<> links that no longer require it.
	* lib/Pod/Text.pm: Update the documentation to use now-allowable
	POD constructs like C<< >>.  Don't escape angle brackets that
	don't require escaping.  Don't give anchor text for L<> links that
	no longer require it.
	* lib/Pod/Text/Color.pm: Likewise.
	* lib/Pod/Text/Overstrike.pm: Likewise.
	* lib/Pod/Text/Termcap.pm: Likewise.

	* lib/Pod/Text.pm (interior_sequence): Inside S<>, convert all
	whitespace to non-breaking spaces, not just spaces.

	* lib/Pod/Man.pm (guesswork): Rewrite the handling of dashes and
	hyphens.  Be much more conservative about which hyphens are turned
	into dashes, and make all hyphens non-breaking unless we can be
	fairly sure that they're inside normal words.

	* lib/Pod/Man.pm (textblock): Remove the special handling of
	consecutive L</section> links.
	(sequence): Defer expansion of formatting escapes inside L<> until
	L<> is processed.  Use Pod::ParseLink to parse the link text and
	determine the text used.  Expand formatting escapes in the link
	text after the final text is determined.  Surround URLs with angle
	brackets in the output.
	(buildlink): Deleted.
	(collapse): Only escape backslashes for C<> codes.
	* lib/Pod/Text.pm (textblock): Remove the special handling of
	consecutive L</section> links.
	(interior_sequence): Defer expansion of formatting escapes inside
	L<> until L<> is processed.  Pass the Pod::InteriorSequence object
	to seq_l.
	(seq_l): Use Pod::ParseLink to parse the link text and determine
	the text used.  Expand formatting escapes in the link text after
	the final text is determined.  Surround URLs with angle brackets
	in the output.
	* lib/Pod/ParseLink.pm: New file.

	* lib/Pod/Man.pm (initialize): Initialize NEWINDENT.
	(textblock): Handle indentation of =item-less =over/=back blocks
	if NEWINDENT is set.
	(cmd_over): Set NEWINDENT.
	(cmd_back): Clear NEWINDENT.
	(cmd_item): Likewise.

	* lib/Pod/Man.pm (begin_pod): Include the version of Pod::Parser
	in the header.

	* lib/Pod/Man.pm: Support E<apos>, E<nbsp>, and E<shy>.
	* lib/Pod/Text.pm: Support E<apos> and E<nbsp> and treat E<shy> as
	an empty string.

2001-11-13  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (begin_pod): Completely rewrite the name parsing
	code for modules to use File::Spec.  In the process, fix a bug in
	dealing with the new three-component version number directories.
	Swap the order of date and release in the .TH line to better
	comply with the man macro documentation.

2001-11-04  Russ Allbery  <rra@stanford.edu>

	* scripts/pod2man.PL: Add the --name option and documentation.
	* lib/Pod/Man.pm: Add documentation for the name option, which was
	already implemented.
	(begin_pod): Only try to determine a module name from the path for
	the man page name if the man page we're generating is in section
	3.  No longer insert a timestamp into the generated man page; it
	just causes unnecessary differences and merge conflicts.

2001-10-20  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.11 released.

	* scripts/pod2man.PL: Add --verbose to print out each output file
	as it is generated.  Silence -w warnings about the magic to exec
	Perl if run under a shell.
	* scripts/pod2text.PL: Silence -w warnings likewise.

	* lib/Pod/Text/Overstrike.pm (wrap): Better handle the case where
	a highlighted portion of text ends a line.

	* lib/Pod/Text.pm: Add the code option to include the non-POD text
	of the input file and document it.
	(initialize): Pass -want_nonPODs to Pod::Parser	if code is set.
	(preprocess_paragraph): Call output_code for any paragraphs
	received that aren't part of the POD.
	(output_code): New function.
	* lib/Pod/Text/Color.pm (output_code): New function.
	* lib/Pod/Text/Overstrike.pm (output_code): New function.
	* lib/Pod/Text/Termcap.pm (output_code): New function.
	* scripts/pod2text.PL: Add support and documentation for --code.

	* lib/Pod/Man.pm (outindex): No output was being emitted for X<>
	sequences due to a misplaced my.
	(switchquotes): Must use .ie for if statements containing a .el
	clause in *roff; .if won't work.

2001-07-19  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (sequence): Turned carps for unknown escapes and
	unknown sequences into warnings, suppressed the Perl file and line
	number, and added the file and line number for the POD data.
	(cmd_back): Likewise for unmatched =back errors.
	* lib/Pod/Text.pm (interior_sequence): Likewise for unknown
	escapes and unknown sequences.
	(cmd_back): Likewise for unmatched =back errors.

2001-07-10  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.10 released.

	* scripts/pod2man.PL: Added a description of the COPYRIGHT AND
	LICENSE section, add a mention of a mailing list in SEE ALSO, and
	mention that large logs are better kept separate from HISTORY in
	the description of a standard manual page.  Added a COPYRIGHT AND
	LICENSE section for pod2man.
	* scripts/pod2text.PL: Added a COPYRIGHT AND LICENSE section to
	the documentation.

	* lib/Pod/Man.pm: Changed LICENSE to COPYRIGHT AND LICENSE.
	* lib/Pod/Text.pm: Likewise.

	* lib/Pod/Text/Color.pm: Added a COPYRIGHT AND LICENSE section to
	the documentation.
	* lib/Pod/Text/Overstrike.pm: Likewise.
	* lib/Pod/Text/Termcap.pm: Likewise.

	* lib/Pod/Text.pm (seq_c): Add heuristics to decide whether or not
	to quote the argument of C<>.

	* lib/Pod/Man.pm (switchquotes): Remove font changes for nroff to
	work around a bug in the Solaris 2.6 version of nroff's handling
	of \fP in headings.  No longer add an extra level of quoting for
	=item; it isn't necessary.

	* lib/Pod/Man.pm (sequence): Call quote_literal to handle C<>.
	(quote_literal): New function, handling the decision of whether or
	not to put quotes around the argument of C<>.

	* lib/Pod/Man.pm: Added a LICENSE section to the documentation.
	* lib/Pod/Text.pm: Likewise.

	* lib/Pod/Man.pm (guesswork): Remove the logic turning PI into a
	pretty pi character; it produces too many false positives.

	* lib/Pod/Man.pm: Removed the definition .Ip from the preamble.
	Removed .bd B 3 from the preamble; this isn't part of the accent
	mark definitions but instead changes the way bolding is done,
	confusing some other translators.
	(cmd_item): Emit .IP instead of .Ip.

2001-04-09  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.09 released.

	* lib/Pod/Man.pm (guesswork): Fine-tune.  Don't allow colons after
	sequences to put in small caps since they're already handled by
	being rolled into the sequence and were causing weird things to
	happen in references to functions.  Allow small caps before an
	open paren.  Teach the handling of functions and manual page
	references about small caps escapes, and be pickier about what
	constitutes a manual page reference.

	* lib/Pod/Text.pm: Fix again the incorrect mappings for E<Iacute>
	and E<iacute>, and this time for E<Igrave> and E<igrave> too.
	Reported by Sean Burke.

2001-02-09  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.08 released.

	* lib/Pod/Text.pm (seq_l): Output anything that looks like a URL
	verbatim rather than interpreting it as a manual page reference.
	* lib/Pod/Man.pm (buildlink): Likewise.

2001-01-16  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.07 released.

	* lib/Pod/Man.pm (begin_pod): Quote the file name if it contains
	spaces.
	(cmd_head1): Remove newlines.
	(cmd_head2): Likewise.
	(cmd_head3): Likewise.
	(cmd_head4): Likewise.

2000-12-25  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.06 released.

	* scripts/pod2text.PL: Add -o or --overstrike to use
	Pod::Text::Overstrike as the formatter.

	* lib/Pod/Man.pm (switchquotes): =item text requires another level
	of quoting of double quotes, which was already present but not
	working for C<> text because it was in the wrong order.  Fixed and
	more comments added.

	* lib/Pod/Text/Color.pm: Use a static version number rather than
	the CVS revision.
	* lib/Pod/Text/Termcap.pm: Likewise.

	* lib/Pod/Text/Overstrike.pm: New file.  Contributed by Joe Smith
	<Joe.Smith@inwap.com>.

2000-11-18  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.05 released.

	* scripts/pod2man.PL: Allow pod2man to take multiple pairs of
	input and output files on the command line to decrease the time
	that it takes to process all of Perl's documentation.

	* lib/Pod/Man.pm (textmapfonts): New function, like mapfonts but
	without the last change to work around a Solaris 2.6 nroff bug.
	(textblock): Use textmapfonts instead of mapfonts.
	(cmd_head4): Likewise.
	(cmd_item): Likewise.

	* lib/Pod/Man.pm (switchquotes): Turned into a method rather than
	a static function.  Switch \*C` and \*C' sequences from C<> as
	well as literal double-quotes if the quote character contains
	double quotes.  Not doing this was causing weird output on some
	systems in some circumstances.
	(cmd_head1): Call of switchquotes changed.
	(cmd_head2): Likewise.
	(cmd_item): Likewise.

	* lib/Pod/Man.pm (mapfonts): Use \fP to switch back to the default
	font rather than changing back to \fR so that font changes work
	correctly in headings using a different font.  Sprinkle \fP
	through all font changes so that the default font is always the
	"previous" font so that the above works.

	* lib/Pod/Man.pm (cmd_head3): New function.
	(cmd_head4): New function.
	* lib/Pod/Text.pm: (cmd_head3): New function.
	(cmd_head4): New function.

	* lib/Pod/Text.pm (initialize): Change the default quote character
	for C<> to be double quotes rather than matched left/right single
	quotes.

2000-10-09  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.04 released.

	* lib/Pod/Man.pm: Output .PD 0 and .PD around repeated =item tags
	so that they're formatted without intervening blank lines,
	improving formatting of e.g. perlfunc.pod.
	(initialize): Initialize ITEMS to 0.
	(verbatim): Call makespace unconditionally.
	(textblock): Likewise.
	(cmd_head1): Output .PD and reset ITEMS if ITEMS > 1.
	(cmd_head2): Likewise.
	(cmd_item): Count the number of consecutive =item commands and
	output .PD 0 before the second.
	(makespace): Handle the check for NEEDSPACE here rather than in
	the caller and output .PD and reset ITEMS if ITEMS > 1.

	* lib/Pod/Text.pm: Fix incorrect mappings for E<Iacute> and
	E<iacute>, reported by Sean Burke.

2000-10-08  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (initialize): Change the default quote character
	for C<> to be double quotes rather than matched left/right single
	quotes.

	* lib/Pod/Text.pm (command): Fixed a shadowed variable warning.
	* lib/Pod/Man.pm (command): Likewise.

2000-09-03  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.03 released.

	* scripts/pod2man.PL: Added a new --quotes option.
	* scripts/pod2text.PL: Likewise.

	* lib/Pod/Man.pm: Changed the preamble to allow configurable quote
	characters around C<> text.
	(initialize): Parse the new quotes option to set the configurable
	quote characters.
	(begin_pod): Substitute the quote characters into the preamble.
	Make a new copy of the preamble for each file so that the
	fixed-width font and the quote characters may change between
	different Pod::Man objects and different files.

	* lib/Pod/Text.pm (initialize): Added support for a quotes option
	to specify what quotes to use around C<> text.
	(seq_c): Use the configurable quote characters.

	* lib/Pod/Text.pm (command): Check using can() before calling cmd_
	handlers and report a nice error when encountering an unknown
	paragraph command.
	* lib/Pod/Man.pm (command): Likewise.

2000-09-02  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Text.pm: Add sol and verbar to the escapes.
	* lib/Pod/Man.pm: Likewise.

	* lib/Pod/Text.pm (pod2text): When given two arguments, was
	incorrectly assigning to $_[0], causing other strange problems.

	* lib/Pod/Man.pm (cmd_item): Fix the regex for stripping bullets
	from index entries so that it doesn't strip a leading 'o'.

2000-04-30  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm: In the prelude, terminate the .IX definition
	with .. instead of ".    ." for groff.

2000-04-25  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.02 released.

	* lib/Pod/Man.pm (sequence): Pass a special flag to collapse() for
	C<> blocks rather than trying to fix up hyphens and underscores.
	(collapse): Fix hyphens and underscores for literal C<> block
	content.

2000-04-09  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (sequence): Fix hyphens and underscores in only
	those children of a C<> sequence that haven't already had
	guesswork applied to them.

2000-03-30  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.01 released.

	* Makefile.PL: Install the modules in the Perl core area if the
	Perl version is 5.6.0 or higher.

2000-03-18  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (begin_pod): Strip a leading lib/ from a file
	name for module man pages, needed for ExtUtils::MakeMaker.

2000-03-16  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 1.00 released.

	* Makefile.PL: pod2roff renamed to pod2man.

	* lib/Pod/Text.pm: Use a static version number, add the remaining
	ISO 8859-1 HTML entities (from Tim Jenness).

	* lib/Pod/Man.pm (protect): Be even more aggressive; protect any
	line starting with a backslash.
	(cmd_item): Replace embedded newlines in titles with spaces.

	* scripts/pod2man.PL: Hide '-' arguments from Getopt::Long so that
	Pod::Parser will interpret them as STDIN or STDOUT.  Remove
	needless use vars.
	* scripts/pod2text.PL: Likewise.

	* scripts/pod2text.PL: Don't default to Pod::Text::Termcap even if
	STDOUT is a tty until it works right on Windows, VMS, etc.

	* scripts/pod2man.PL: Change Getopt::Long config from bundling to
	bundling_override so that options like -center work for backwards
	compatibility.

2000-03-07  Russ Allbery  <rra@stanford.edu>

	* scripts/pod2man.PL: Change pod2txt to pod2man in SYNOPSIS.

2000-03-06  Russ Allbery  <rra@stanford.edu>

	* scripts/pod2man.PL: Renamed from pod2roff.PL as this has been
	incorporated in Perl core.  Updated self-references in the
	documentation, changed "stati" to "statuses."

	* lib/Pod/Man.pm: Set version number to 1.00, change references to
	pod2roff to pod2man in the documentation, and remove the note about
	this module replacing pod2man in Perl core.

	* lib/Pod/Man.pm (initialize): Use "perl v5.6.0" instead of "perl
	5.6, patch 0" for the default release string, handle both pre-5.6
	and post-5.6 version numbering schemes.
	(protect): Allow for two-character fonts.
	(begin_pod): Zero-pad the month and day in the modification date.
	(sequence): Add a temporary variable for L<> text rather than
	blessing the sub return to work around a 5.6 bug.
	(guesswork): $3 no longer used in small-caps regex, remove to
	avoid warnings under -w.

2000-03-05  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (protect): Protect leading periods following font
	escapes as well.
	(initialize): Avoid warnings when center, date, or release aren't
	set.
	(begin_pod): Make filename munging safe even when $* is set and
	the filenames contain embedded newlines.
	(textblock): Use a temporary variable for paragraph text, fix the
	regex to concatenate multiple L<> section links and fix whitespace
	handling for it around "and".
	(sequence): Add a temporary variable workaround so that Z<> works
	correctly with current Perl.
	(cmd_for): Don't extract the line number when we don't use it.

1999-10-07  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 0.08 released.

	* lib/Pod/Text.pm: Export pod2text() for backwards compatibility.

	* lib/Pod/Text.pm (interior_sequence): Add support for numeric E<>
	escapes.
	* lib/Pod/Man.pm (sequence): Likewise.

1999-09-27  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Man.pm (buildlink): Links to sections had doubled quote
	marks.

	* scripts/pod2roff.PL: Pod::Parser constructors take an expanded
	hash, not a hash ref.

1999-09-25  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 0.07 released.

	* lib/Pod/Man.pm: Changed the parsing model so that rather than
	deferring E<> escapes until just before output, *roff output is
	generated by the interior sequence parsing and the result is
	passed up the parse trees as Pod::Man::String objects instead of
	scalars to mark the output as already processed.  In the process,
	cleaned up what *roff escaping and guesswork is applied where and
	cleaned up the whole process of applying guesswork.  Also improved
	the small caps guesswork to allow for more cases, including
	several adjacent all caps words, and fixed some bugs with the link
	text generation for man page references.  Improved the escaping of
	dashes and hyphens to use a single pass, improved the index
	generation slightly, and fixed a few places that were clobbering
	the caller's $_.

1999-09-20  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 0.06 released.

	* scripts/pod2roff.PL: Expanded the man page documentation to take
	into account suggestions from Larry Virden.  Added examples for
	ENVIRONMENT, more examples for OPTIONS, better examples for
	subsections in DESCRIPTION, more details on ERRORS, a plea for a
	method of fixing problems in DIAGNOSTICS as well as what the
	message means, a plea for an explanation of examples in EXAMPLES,
	a plea for documenting files that are modified in FILES, a mention
	of a program web site in SEE ALSO, a mention of e-mail addresses
	in AUTHORS, the AVAILABILITY section, and a note about markup
	including L<> issues with e-mail addresses and URLs.

	* lib/Pod/Man.pm: Added a BUGS entry for index entries for stuff
	in NAME.

	* lib/Pod/Text.pm: =begin text blocks are now output verbatim
	rather than interpreted as POD.  Documented the oddity with
	Ctrl-As as a restriction.

	* Makefile.PL: pod2txt renamed to pod2text.

	* scripts/pod2roff.PL: Exit on Getopt::Long errors.

	* scripts/pod2text.PL: Renamed to pod2text and updated for the
	renaming of Pod::PlainText to Pod::Text.  Added an explicit check
	for Term::ANSIColor if -c was given.  Added documentation of -h,
	expanded the DIAGNOSTICS section to include directly generated
	error messages and the most common Getopt::Long message.

	* lib/Pod/Text/Termcap.pm: Updated for the renaming of
	Pod::PlainText to Pod::Text.

	* lib/Pod/Text/Color.pm: Updated for the renaming of
	Pod::PlainText to Pod::Text, added BUGS note that the
	implementation is rather incomplete and a note in DESCRIPTION that
	it relies on Term::ANSIColor.

	* lib/Pod/Text.pm: Renamed to Pod::Text, various comment cleanups,
	always treat =for paragraphs as verbatim text, cleaned up the
	documentation a little, and added two more diagnostics and a
	cross-reference to pod2text(1).  Bumped revision to 2.0 to be
	larger than the old Pod::Text.

	* lib/Pod/Man.pm: Renamed to Pod::Man from Pod::Roff, since there
	is no standard Pod::Man module to worry about conflicting with.

	* scripts/pod2roff.PL: Cut down on some information redundant with
	Pod::Man's documentation, changed for the renaming of Pod::Roff to
	Pod::Man, and added a BUGS section noting a few currently unfixed
	problems.

	* lib/Pod/Roff.pm: Inherit from Pod::Parser instead of
	Pod::Select, get the date from our input file by default, be even
	more conservative about small caps but put AT&T in small caps, and
	added documentation.

	* Makefile.PL: Add pod2roff to the scripts, improve handling of
	scripts a little.

1999-09-19  Russ Allbery  <rra@stanford.edu>

	* lib/Pod/Roff.pm: New file.
	* scripts/pod2roff.PL: New file.

1999-09-18  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 0.05 released.

	* lib/Pod/Text/Color.pm: Pod::SimpleText changed to Pod::PlainText
	in one final spot in the documentation.

1999-08-30  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 0.04 released.

	* Makefile.PL: Use File::Spec to build file paths for portability,
	removed the dist setting since current Perls get this right, and
	added the magic to cope with pod2txt as a .PL file.

	* scripts/pod2txt.PL: Added the .PL magic to fix the shebang line
	that will be necessary when this script is part of Perl core.

	* VERSION: podlators 0.03 released.

	* lib/Pod/Text/Color.pm: Pod::SimpleText changed to Pod::PlainText
	everywhere.
	* lib/Pod/Text/Termcap.pm: Likewise.

	* scripts/pod2txt: Pod::SimpleText changed to Pod::PlainText
	everywhere, added documentation that Pod::Text::Termcap is used by
	default if STDOUT is a tty, and clarified the documentation of
	--loose.

1999-07-29  Russ Allbery  <rra@stanford.edu>

	* VERSION: podlators 0.02 released.

	* lib/Pod/PlainText.pm: Added a pod2text() function for backwards
	compatibility.

	* lib/Pod/Text/Termcap.pm: Switch from using Pod::SimpleText to
	using Pod::PlainText.
	* lib/Pod/Text/Color.pm: Likewise.

	* lib/Pod/PlainText.pm: Properly wrap multi-line =item tags.

	* Makefile.PL: Changed the name of the package to podlators.

	* lib/Pod/PlainText.pm: Fixed a spurious space with =for text
	commands, check the content of sequences against '' specifically
	rather than testing truth so that it does the right thing with 0,
	process sequences for =head headings, and changed the name from
	SimpleText to PlainText.  Also speeded up some sequences slightly.

1999-06-12  Russ Allbery  <rra@stanford.edu>

	* VERSION: Pod::SimpleText 0.01 released.

	* lib/Pod/SimpleText.pm: Minor documentation fixes.

	* scripts/pod2txt: New file.

	* lib/Pod/SimpleText.pm: New file.
	* lib/Pod/Text/Color.pm: New file.
	* lib/Pod/Text/Termcap.pm: New file.
