Commit Graph

271 Commits

Author SHA1 Message Date
Fred Drake 46ab6dfa89 Re-write in Python for portability. About 30% slower, but who cares?! 1999-08-03 17:54:39 +00:00
Fred Drake 82ebc27357 remap_element_names(): Only used for things that the new conversion
engine in latex2esis.py can do, so discard it.

paragraph detection & markup:  Handle some of the list-like
		environments properly, picking up paragraphs inside
		list items.  (Only changed a few element-sets used for
		recognition.)

fixup_refmodindexes_chunk():  Use the right attribute to determine the
		module a <ref*modindex/> element is referring to.

convert():  Don't call remap_element_names(); it was removed.
1999-08-03 15:32:48 +00:00
Fred Drake 2f6ec9ca81 The new conversion engine supports more of the table re-writing than
the old one, so use it.
1999-08-03 15:27:37 +00:00
Fred Drake 9ff3a6a6e7 Remove obsolete version of script. 1999-08-02 20:19:42 +00:00
Fred Drake 9f2b42080a Re-implementation of mktarball.sh as a more portable Python script;
with a more descriptive name.

Allow creation of multiple archive formats with a single pass; useful
in this case since it uses a fresh export/checkout from CVS to ensure
that the tree is "clean" (no build turds, saved files, &c).  Use --all
to create all supported formats.
1999-08-02 20:19:17 +00:00
Fred Drake 080c1b5af6 bwrite(), ewrite(): Helpers for diagnostic output; essentially the
same as sys.stderr.write(), but bwrite() will make it
		bold if stderr is a tty (for visibility).

		Use these everywhere instead of accessing
		sys.stderr.write() directly.

find_all_child_elements():  Find all elements by type name that are
		immediate children of another.

cleanup_synopses():  Receive both the document and fragment objects as
		parameters; if only the document is passed, synopsis
		information is never found since it's in the fragment!

build_para():	Add a chunk of code to ensure that a newline always
		follows the </para> end-tag.  Not really important, but
		makes presentation consistent for authoring/
		maintenance.

fixup_bifuncindexes_chunk(): Use find_all_child_elements() instead of
		find_all_elements() so we don't work with too many
		levels at once; that could cause DOM exceptions with
		the <elem>.removeChild() method.
1999-08-02 14:46:15 +00:00
Fred Drake 4fbdf9779c Mostly minor changes.
Removed some obsolete commented-out code.

Merged BaseConversion into Conversion since there's only one
conversion process now.

Remove push/pop of output stream; it's no longer needed.
1999-08-02 14:35:25 +00:00
Fred Drake d158b85896 This doesn't need to do nearly as much for the new conversion, so
simplify.
1999-08-02 14:32:46 +00:00
Fred Drake 031e222499 A few small improvements to the conversion. 1999-08-02 14:32:11 +00:00
Fred Drake eac8abee4e Ripped out the old conversion. 1999-07-29 22:42:27 +00:00
Fred Drake 865e9ff98e Added a few more passes through the document fragment. Not actually
very interesting.
1999-07-29 22:23:19 +00:00
Fred Drake 96e4a06fa6 Massive changes.
Separate the Conversion class into a base and a subclass; the subclass
is pretty minimal but the separation is useful for....

NewConversion:  New class that implements a somewhat different
		approach to the conversion.  This uses a table of
		instances (rather than tuples) that have more
		information than the tuples used for the older
		conversion procedure.  This allows a lot more control
		over the conversion, and it seems to be pretty
		stable.

TableEntry,
Parameter:	New classes that are used to build the conversion
		specification used by NewConversion.

TableParser:	xmllib.XMLParser subclass that builds a conversion
		specification from an XML document.

load_table():	Convenience function that loads a table from a file.

main():  Added flags --new and --old; these select which conversion is
	 used.  The default is --new.

Several fixes have been made in the old conversion as well; these were
done before writing & switching to the new conversion, and should be
archived.

The next checkin of this file will discard the old conversion; is is
kept in this checkin to allow it to be retrieved if needed, and to
avoid lossing the bugfixes that have been made to it in the interim.
1999-07-29 22:22:13 +00:00
Fred Drake 2394c98c05 Minor updates. 1999-07-29 22:14:09 +00:00
Fred Drake ada2de67b3 Use the (new) buildFragment() method of the EsisBuilder rather than
implementing it all here.
1999-07-29 22:13:31 +00:00
Fred Drake f032cdbb24 Some minor cleanup. 1999-07-29 22:03:52 +00:00
Fred Drake bc2285eb60 Conversion specification, used by a new path through latex2esis.py.
The specific markup conversion is coded here instead of an even more
cryptic table in the code of latex2esis.py.
1999-07-29 22:03:11 +00:00
Fred Drake 478a265057 Minor update. 1999-07-29 22:01:39 +00:00
Fred Drake 5772f33b6c Add support for bzip2 using --bzip2. 1999-07-27 16:29:30 +00:00
Fred Drake 8ea15f3495 Add --zip parameter; make this able to produce .zip files as well as
.tgz files.
1999-07-23 16:09:11 +00:00
Fred Drake 06c5a8b52e Make the default target xml instead of sgml. 1999-07-22 13:57:12 +00:00
Fred Drake 7dbde51f97 Make the default target xml instead of sgml.
Use a temporary file to pass results from latex2esis.py to
docfixer.py; this makes for better error detection by make (if the
first pipeline stage fails, make wasn't catching it).
1999-07-22 13:56:51 +00:00
Fred Drake 924b42de9c When looking for things that might be modules, include *module.c from
the Modules/ directory.  Most of the remaining undocumented modules
seem to be living there.
1999-06-17 18:49:18 +00:00
Fred Drake 0eb7b2a659 Enhanced docstring and some comments.
_begin_macro_rx:  Fixed RE that didn't properly allow a space after
		  the name of the macro.  This affects the conversion
		  of the tutorial.
1999-05-19 17:37:37 +00:00
Fred Drake c4811d8208 Modify to perform "---" to "&mdash;" conversion outside of
verbatim-like environments.  The list of verbatim-like environments is
a defined by a variable in main().
1999-05-18 17:34:51 +00:00
Fred Drake c41e1e5f5e Remove the "---" to "&mdash;" conversion; this is wrong in verbatim
environments.  Move the conversion to esis2sgml.py.
1999-05-18 17:33:01 +00:00
Fred Drake e779d4f03b Lots of adjustments to deal with the document content now being stored
in a fragment rather than the main document object.
1999-05-10 19:36:52 +00:00
Fred Drake 54fb7fb9d0 Some more fixes.
Add controls for some of the esoteric indexing macros.
1999-05-10 19:36:03 +00:00
Fred Drake 2697694e4a ExtendedEsisBuilder.push(): Override inherited definition. We don't
want to push nodes into the document, but into a document
	fragment, since we're not necesarily working with something
	that's well-formed.
1999-05-07 21:14:28 +00:00
Fred Drake f79acbdaa1 Fix some bugs introduced in the previous checkin. 1999-05-07 21:12:21 +00:00
Fred Drake 96c00b0b5e Define & use a Conversion object. It's still really ugly, but at
least there's a token object in here now!  ;-)
1999-05-07 19:59:02 +00:00
Fred Drake a871c2e747 Make it work for "manual" documents as well as "howto" documents.
This still doesn't understand anything about multiple source files or
checking time dependencies.
1999-05-06 19:37:38 +00:00
Fred Drake 4437fdf265 Make sure latex2html doesn't produce a hard link between foo/foo.html
and foo/index.html.  Make a copy instead.  (Appearantly some tar
openers on non-Unixlike systems can't handle hard links.)
1999-05-03 14:29:07 +00:00
Fred Drake d2d1eef025 Make sure latex2html doesn't produce a hard link from $part/$part.html
and $part/index.html.  Make a copy instead.  (Appearantly some tar
openers on non-Unixlike systems can't handle hard links.)
1999-05-03 14:27:45 +00:00
Fred Drake c1db512b2b Nasty hack to add a --numeric parameter to skip the use of "logical"
names.
1999-04-29 18:28:48 +00:00
Fred Drake c4a623ebdc Add command line flags to just list the files that contain the
offending lines or to include line numbers in the output.
1999-04-22 20:32:21 +00:00
Fred Drake 693a2c6581 Script to locate uses of \module where the module referred to is not
the module being documented at that point in the documentation; these
are candidates for conversion to \refmodule, which produces a
hyperlink in the HTML and PDF versions of the output.
1999-04-22 13:08:09 +00:00
Fred Drake c260c0bcdb Further refinement, to allow this to handle the library reference as
well as the other "manual" documents.
1999-04-14 13:13:32 +00:00
Fred Drake 79d41ccdd3 Add some support for the module index, so this can be used to build
the .aux file for any of the "manual" class documents.
1999-04-14 05:02:06 +00:00
Fred Drake 2e1094e4ef Use #!/usr/bin/env python instead of #!/usr/local/bin/python. 1999-04-09 14:53:35 +00:00
Fred Drake e3fd1064de Make this simpler; don't care about the paper size. Require that the
files exist in the current directory.

Add "Documenting Python" to the list of documents listed.
1999-03-18 14:57:53 +00:00
Fred Drake 87a42cd61b Add support for <platform>, some cleanup of module section after
creating the <moduleinfo>.
1999-03-11 17:35:12 +00:00
Fred Drake 1acb8740eb Oops, missed a couple of substitutions in the templates. 1999-03-04 21:33:55 +00:00
Fred Drake 5f7832d125 Allow many more aspects of the generated page to be parameterized, and
add a useful usage message.  Use 'mkmodindex --help' to display it.
1999-03-04 21:19:57 +00:00
Fred Drake aaa0d9a3a4 Record the value of $TEXINPUTS in the transcript.
Job.message():  New method.  Takes care of writing a message to the
		user and adding it to the transcript.
1999-03-03 21:57:58 +00:00
Fred Drake b1d839866c Obsolete; use the Python version instead. 1999-03-03 20:28:17 +00:00
Fred Drake 8b88093b95 Re-written mkhowto in Python; this should be at least a little more
portable.

Several things that had been done by running a python script are now a
matter of importing the right module and running a function with a few
parameters.
1999-03-03 20:24:30 +00:00
Fred Drake 749f943a6b process(): New function that contains the "orchestration" of the
actual work.

main():  Just handle the command line and filename determination,
	 calling process() to do the work.

These changes make this more import-friendly.
1999-03-03 19:36:23 +00:00
Fred Drake 7c8754fafb process(): New function that contains the "orchestration" of the
actual work.

main():  Just handle the command line and filename determination,
	 calling process() to do the work.

These changes make this more import-friendly.
1999-03-03 19:25:56 +00:00
Fred Drake 7f492ad7b8 Be more flexible to support platform annotations. 1999-03-02 16:22:56 +00:00
Fred Drake 75ab7a6fa4 Clean up *.pla files -- platform annotation information. 1999-03-02 16:22:26 +00:00