eliz ec93091934 Fix a typo. 7 gadi atpakaļ
..
DebugTexinfo f3deea763e Plaintext.pm _convert don't use method call syntax 8 gadi atpakaļ
Texinfo ec93091934 Fix a typo. 7 gadi atpakaļ
init 08bf6a0942 revert last revision 9 gadi atpakaļ
maintain b791f562fe include a comment saying a script is a generated file 7 gadi atpakaļ
parsetexi ff3390f60c track m4 files under parsetexi 7 gadi atpakaļ
t 265f3b5cff only space, tab or newline for texinfo command 7 gadi atpakaļ
tests e47f8da8a9 texi2any strip CRs from line endings 7 gadi atpakaļ
MANIFEST 77e710bb82 run maintain/prepare_perl_module_files.sh 7 gadi atpakaļ
Makefile.PL 08bf6a0942 revert last revision 9 gadi atpakaļ
Makefile.am 68084faabd correct a comment 7 gadi atpakaļ
README 08bf6a0942 revert last revision 9 gadi atpakaļ
TODO 08bf6a0942 revert last revision 9 gadi atpakaļ
defs.in 08bf6a0942 revert last revision 9 gadi atpakaļ
diff-for-test-parsetexi.diff 7daf788c5d update diff-for-test-parsetexi.diff 8 gadi atpakaļ
prove.sh 08bf6a0942 revert last revision 9 gadi atpakaļ
texi2any.pl 1b4750acf9 texi2any.pl 2017 7 gadi atpakaļ

README

$Id$
texinfo/tp/README

Copyright 2011, 2012, 2013, 2014, 2015 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.

Texinfo::Parser (hence the directory name tp) is a Perl module for
parsing Texinfo code into a tree representing the Texinfo code
structure.

These other modules and libraries are required (all have been standard
parts of Perl for years, at least since 5.7.3):
Carp, Config, Data::Dumper, Encode, File::Basename, File::Spec
Getopt::Long, Unicode::Normalize, Storable

It also uses the less widely-available modules:
Locale::Messages, Unicode::EastAsianWidth, Text::Unidecode
For these, internal versions are included, and are installed and used as
part of Texinfo (not disturbing the Perl installation at all).

To run the tests you also need:
Test::More, Data::Compare, Test::Deep
On Debian-based distros, Test::More is part of perl-modules and thus
installed with perl, the packages corresponding to the other modules
are named:
libdata-compare-perl libtest-deep-perl

The tests are in the subdirectories t/ and test/. The tests in t/ test
the Perl modules used by the makeinfo command, and the tests in test/
test the command itself.

This module is part of GNU Texinfo. A standalone Perl module may also be
produced from within the the Texinfo tree, using
./maintain/prepare_perl_standalone_module_archive.sh
The resulting module, although standalone, should always be regenerated
from the sources in Texinfo, to avoid divergence of sources.


If you want to delve into making a new backend, the documentation in
tp/Texinfo/Convert/Converter.pm is a good starting point, as it
describes the existing backends and other places to look. To do a good
job, expect to spend a lot of time making it do the right thing with the
existing tests.

tp builds a complicated parse tree. It can output a lot of debug
information about the tree, and what it's doing generally. For example,
these commands output the tree (in different forms):
makeinfo -c DUMP_TREE=1 -c TEXINFO_OUTPUT_FORMAT=parse document.texi
makeinfo -c TEXINFO_OUTPUT_FORMAT=debugtree document.texi
In addition (or instead) setting the DEBUG configuration variable will
dump more information about what it's doing.