Commit Graph

111 Commits

Author SHA1 Message Date
Fred Drake c81d470648 Allow the <author/> element to appear before a paragraph without being
made a part of the paragraph.
2001-03-29 23:31:22 +00:00
Fred Drake 7190247e0b Remove the annoying __version__ definitions. 2001-03-23 17:09:02 +00:00
Fred Drake 3e8f921fb9 Lots of small changes to make this work with the Python DOM bindings
(minidom in particular); it was using PyDOM which is now obsolete.

Only write the output file on success -- this avoids updating the timestamp
on the file on failure, which confuses "make".
2001-03-23 17:01:47 +00:00
Fred Drake 2262a80fb3 Pick up the "encode" function from esistools instead of defining our own
(broken) version.

Remove Conversion.err_write() -- use dbgmsg() consistently.
2001-03-23 16:53:34 +00:00
Fred Drake f6c115ff2f Re-write to no longer depend on an old version of PyXML. This now
implements a SAX XMLReader interface instead of the old Builder interface
used with PyDOM (now obsolete).

This only depends on the standard library, not PyXML.
2001-03-23 16:42:08 +00:00
Fred Drake a4699a71b8 Pick the "escape" function from the standard library instead of from PyXML. 2001-03-23 16:38:12 +00:00
Fred Drake ce19496ec1 Add conversions for more of the markup -- not all of this was around when
this file was written!
2001-03-23 16:29:06 +00:00
Fred Drake fed0d09075 Conversion.write_ordinal(): Not used, remove it. 2000-11-22 17:59:32 +00:00
Fred Drake 691a5a7c09 Convert the LaTeX "tie" (~) to a simple space.
Add support for some combining characters.

Remove unnecessary imports and dependencies on PyXML and esistools.
2000-11-22 17:56:43 +00:00
Fred Drake 382a75d0e9 Update to reflect the process changes.
Remove the SGML aspects; there's too much XML momentum to worry about
the SGML flavor at this point.
2000-11-22 16:58:25 +00:00
Fred Drake 97be740cd8 Update the rules to separate the two phases for the ESIS generation,
entirely so that debugging can be performed independently.
2000-11-22 16:54:20 +00:00
Fred Drake d397f236d5 Add support for (relatively) recent additions and changes to python.sty,
and one more standard LaTeX macro.
2000-11-22 16:45:19 +00:00
Fred Drake 2ed27d3189 Note that readframes() returns data in linear format, even if the original
is encoded in u-LAW format.  Based on suggestion from Anthony Baxter
<anthony_baxter@users.sourceforge.net>.

This closes bug #122273.
2000-11-17 19:05:12 +00:00
Fred Drake d95f4e1a0d Martin von Loewis <loewis@informatik.hu-berlin.de>:
Correct typo that caused a well-formedness failure.
2000-07-01 06:26:44 +00:00
Guido van Rossum 51060be2f8 Remove unused "import curses". 2000-05-24 14:33:26 +00:00
Fred Drake ecb84f8e75 Don't insert extra indentation before <title> elements. 2000-01-20 22:51:14 +00:00
Fred Drake 645af9fedd rewrite_descriptor(): Fixup conversion of arguments (simpler).
join_adjacent_elements():  Hack to merge adjacent instances of
        <option>; the source \programopt with GNU-style long options
        created problems with LaTeX2HTML; this removes the evil
        workaround, which should never be necessary from structured
        documents(!).
1999-11-23 21:52:03 +00:00
Fred Drake 8a3b4495df Don't rename \var to <varname>; DocBook is too verbose here.
Do adopt DocBook's <command>, <option>, <envar> names for \program,
\programopt, \envvar.

Add \filenq --> <filename quote="no"> (it has to go somewhere, at
least for now).
1999-11-23 21:48:41 +00:00
Fred Drake 91f31eab1c Added citetitle and programopt.
Made var get renamed to varname (more like DocBook).
Other names should probably be changed as well; still waiting for the
DocBook book to arrive.
1999-11-09 19:33:24 +00:00
Fred Drake 0ee4891c82 Update the instructions slightly.
Add a new section describing what each of the tools does, in general
terms.
1999-08-26 18:08:13 +00:00
Fred Drake 4f0279f439 Removed; no longer needed now that the other tools can handle entity
references directly.
1999-08-26 18:05:23 +00:00
Fred Drake abb158f56b feed(): Added support for ESIS '&' lines. 1999-08-26 18:04:32 +00:00
Fred Drake 1f33292542 Remove use of fixgenents.sh; no longer needed. 1999-08-26 17:57:18 +00:00
Fred Drake 3cf4eb4e3d Specify: \geq --> &geq;
\leq    --> &leq;
                \LaTeX  --> LaTeX       (just text)
                \TeX    --> TeX         (just text)
1999-08-26 17:56:47 +00:00
Fred Drake f6199edcd3 Conversion.subconvert(): Added support for "entityref" parameters
(must be named in the conversion spec.).

TableParser.start_entityref():  New method.  Use to support creating
        entity references via the conversion specification.
1999-08-26 17:54:16 +00:00
Fred Drake a20581c1e5 write_esis(): Added support for ENTITY_REFERENCE nodes. 1999-08-26 17:51:56 +00:00
Fred Drake 53eae8e81b convert(): Add support for ESIS '&' lines, and make sure we don't
silently ignore unrecognized lines.
1999-08-26 17:50:26 +00:00
Fred Drake abf8a1daa8 rewrite_descriptor(): Fix bug that dropped the first TEXT node from
<description> elements.  Add another sanity
                       check to make sure a special case only becomes
                       involved for <opcodedesc> and <opcodedescni>
                       elements.

fixup_paras_helper():  Clean up control flow.

Everywhere that checks node.nodeType==ELEMENT and node.tagName now
just check node.nodeName (nodeName is guaranteed for all node types
and will be special values that don't conflict with GIs for
non-ELEMENT nodes).  Simplifies a number of tests and improves
readability in a lot of places.
1999-08-20 14:28:29 +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 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 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 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