Commits

Anonymous committed 77820ec

Created

Comments (0)

Files changed (94)

+1997-10-22  SL Baur  <steve@altair.xemacs.org>
+
+	* psgml-charent.el (sgml-display-char-list-filename): Use
+	locate-data-directory instead of data-directory.
+	* psgml.el (sgml-data-directory): Ditto.
+
+1997-10-10  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+	* custom/wid-edit.el (variable-link): New widget.
+	(widget-variable-link-action): New function.
+	(function-link): New widget.
+	(widget-function-link-action): New function.
+
+1997-10-10  Karl M. Hegbloom  <karlheg@inetarena.com>
+
+	* prim/modeline.el (modeline-minor-mode-menu): menus are toggles
+	not strings now.
+
+1997-10-10  SL Baur  <steve@altair.xemacs.org>
+
+	* psgml-html.el (html-quote-region): Grow bounds when performing
+	substitutions.
+	From Adrian Aichner <aichner@ecf.teradyne.com>
+
+1997-09-26  SL Baur  <steve@altair.xemacs.org>
+
+	* iso-sgml.el: Correct email address.
+
+	* psgml-parse.el (sgml-compile-dtd): no-conversion -> binary
+	coding system.
+	(sgml-bdtd-merge): Ditto.
+	(sgml-push-to-entity): Ditto.
+
+1997-06-15  Steven L Baur  <steve@altair.xemacs.org>
+
+	* psgml-parse.el (sgml-parse-chars): De-ebolify.
+	(sgml-read-peek): Use char-after not following-char.
+
+1997-06-14  Steven L Baur  <steve@altair.xemacs.org>
+
+	* psgml-parse.el (sgml-read-model): Ebola vaccine.
+	From Andrew J Cosgriff <Andrew.Cosgriff@cc.monash.edu.au>
+
+Wed Apr 23 11:28:10 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* psgml-charent.el (sgml-display-char-list-filename): Move
+	iso88591.map to a proper location.
+
+Tue Apr 22 02:05:09 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* psgml-xemacs.el (sgml-xemacs-get-popup-value): Allow for
+	interactive function.
+
+Sat Mar 22 19:58:27 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* psgml-html.el (html-mode): Too many backslashes in DOCSTRING.
+
+Wed Mar 19 22:58:40 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* psgml-html.el (html-helper-address-string): Use
+	user-mail-address function.
+
+Mon Jan 27 13:12:41 1997  Jin S. Choi <jsc@atype.com>
+
+	* psgml.el: Fix location of CATALOG in `sgml-validate-command'.
+
+Thu Jan 16 18:23:51 1997  Steven L Baur  <steve@miranova.com>
+
+	* psgml.el: Use newer interface form of nsgmls.
+
+Wed Nov 20 19:40:05 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-modify-dtd): set sgml-current-tree to
+	sgml-top-tree. Needed by sgml-open-element.
+
+Mon Nov 11 01:50:40 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Version 1.0 released.
+
+Sun Sep 15 14:07:24 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml.el (sgml-mode): modify mode-line-format with subst, don't
+	replicate the whole format in the code.
+
+Thu Sep 12 20:27:38 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-external-file): Try to find system
+	identifiers using the sgml-public-map
+	if sgml-system-identifiers-are-preferred; this way that flag will
+	have effect even if the sgml-public-map contains `%s'.
+	(sgml-final): moved to be defined before use.
+
+	* psgml-dtd.el (sgml-parse-parameter-literal): Try to handle
+	character references to character number above 255 by leaving a
+	character reference in then parsed entity text.
+
+Thu Sep  5 14:11:00 1996  Dave Love  <d.love@dl.ac.uk>
+
+	* psgml-other.el (sgml-set-face-for): Nullify
+	{after,before}-change-functions as well as (obsolete)
+ 	{after,before}-change-function.
+
+Tue Sep 10 17:52:40 1996  Steven L Baur  <steve@miranova.com>
+
+	* Various files: Sync'ed with 1.0a12
+
+Fri Jul 12 18:20:07 1996  Steven L Baur  <steve@miranova.com>
+
+	* Various files: Sync'ed up to Wingpsgml
+
+	* iso-sgml.el:  Added Appendix 2 Proposed entity additions to Latin-2
+
+Fri Jul 12 03:38:10 1996  Adrian Aichner <aichner@ecf.teradyne.com>
+
+	* psgml-edit.el: Allow user to control capitalization of auto-inserted
+	keywords.
+	
+
+Sun Sep  1 01:53:33 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Version 1.0a12
+
+	* psgml-maint.el: new file. Used to compile psgml.
+
+Tue Aug 20 23:11:30 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml.el:
+	(sgml-validate-error-regexps): Fixes from Dave Love <d.love@dl.ac.uk>
+	and David Megginson <dmeggins@uottawa.ca> for use with nsgmls.
+	(sgml-validate-command): changed default validate command to use
+	nsgmls.
+	
+Sun Aug 11 19:21:56 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* iso88591.map: added code to character mappings.
+
+Thu Jun 13 20:43:53 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-get-and-move): use sgml-final, not
+	sgml-state-final-p. In this case the substate can be an AND-state.
+
+Tue May 21 07:39:34 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Version 1.0a11 released.
+
+Mon May 20 23:14:02 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml.el (psgml-version): bump version.
+	(sgml-build-custom-menus): fix button3 after easy-menu redefines
+	it. (this was actually done at an earlier date).
+	
+Fri May  3 18:16:18 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-push-to-entity): remove binding
+	before/after change functions. This probably made them nil in the
+	main buffer.
+
+Fri Apr  5 14:37:47 1996  Karl Eichwalder  <ke@ke.Central.DE>
+
+	* psgml.texi, psgml-api.texi: Add INFO-DIR-ENTRY.
+
+	* aclocal.m4, configure.in, Makefile.in: New.
+	* INSTALL, install-sh, mkinstalldirs: Add from autoconf-2.9
+	package.
+
+Fri Apr  5 09:47:01 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Version 1.0a10 released.
+
+Thu Mar 21 22:14:43 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-cache-catalog): use file-truename on file
+	to be cached.
+
+Wed Mar 20 20:59:35 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-info.el (sgml-eltype-refrenced-elements): allow for
+	exceptions.
+	
+Tue Mar 19 21:59:27 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-api.el (sgml-map-content): use max from main buffer when
+	setting parser goal. (fix bug 75).
+
+Sun Mar 17 15:06:26 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-list-valid-tags): Show current
+	shortreference map name.
+
+	* psgml-parse.el (sgml-lookup-shortref-name): new func.
+
+	* psgml-edit.el (sgml-what-element): display 'shortref' if cursor
+	over beginning of a shortref
+
+	* psgml-parse.el (sgml-is-goal-after-start): handle stag in entity
+	differently from stag in buffer.
+
+Tue Mar 12 21:22:52 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el: removed use of & in functions and variable
+	names.
+	
+	* psgml-dtd.el (sgml-remove-redundant-states-1): remove unused
+	variable res.
+
+	* psgml.el (sgml-parse-colon-path): remove unused variable cd-prefix
+
+Sun Feb 18 16:33:43 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-push-to-entity): set mc-flag to nil so that
+	MULE does not mangle binary data. (reported by Jeffrey Friedl
+	<jfriedl@nff.ncl.omron.co.jp>)
+
+Mon Jan 22 22:57:54 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-down-element): make sure sgml-last-element
+	has a reasonable value even if there is an error
+
+Sat Jan  6 22:07:44 1996  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-parse-nametoken): change buffer-substring
+	to buffer-substring-no-properties
+
+Sun Nov  5 13:41:36 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-dtd.el (sgml-parse-attribute-definition): remove
+	unnecessary call to sgml-general-case.
+	(sgml-check-nametoken-group): added a revers to get name tokens in
+	same order as declared.
+
+Sat Nov  4 12:58:56 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml.el (sgml-validate-error-regexps): added new regexp for
+	nsgmls (from David M).
+
+	* psgml-edit.el (sgml-insert-attributes): call auto-fill-function
+	after.
+
+	* psgml.el (sgml-default-validate-command): add %v for
+	sgml-declaration variable
+
+Sat Aug 26 13:57:07 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* fs.el (fs-para): fix typo (bug 61).
+
+	* psgml-edit.el (sgml-custom-dtd): new arglist to
+	sgml-doctype-insert.
+	
+	* psgml-api.el (sgml-map-content): don't take hook-variables as
+	parameters. Move data parsing to separate function. (bug 59)
+
+Wed Aug 23 20:53:50 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Version 1.0 a8 released.
+
+	* psgml-edit.el (sgml-expand-shortref-to-text): use
+	sgml-rs-ignore-pos.
+	(sgml-expand-shortref-to-entity): dito.
+
+	* psgml-other.el (sgml-build-custom-menus): make menu entry call
+	sgml-insert-markup.
+
+	* psgml.el (sgml-doctype): typo.
+
+	* psgml-parse.el (sgml-rs-ignore-pos): Replaces
+	sgml-last-start-pos, now buffer local. (bug 49)
+	(sgml-push-to-entity): set sgml-rs-ignore-pos to start of entity
+	reference. (bug 49)
+
+ 	* psgml-edit.el (sgml-doctype-insert): Remove &rest (bug 56).
+
+	* psgml-lucid.el (sgml-build-custom-menus): Fix (bug 56).
+
+	* psgml-other.el (sgml-build-custom-menus): Fix (bug 56).
+
+	* psgml-edit.el (sgml-edit-attrib-specification-list): Use the
+	attlist for attribute names, not the name parsed from the
+	buffer. This fixes problems with attached text properties.
+	(fixes bug 53).
+
+Tue Aug 22 20:56:06 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Version 1.0a7 released
+
+	* psgml.el (psgml-version): bump version
+
+Mon Aug 21 23:38:49 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-extid-sysid): handle old style extids.
+	(sgml-check-entities): log message on missmatch
+
+Wed Aug 16 22:54:42 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el 
+	(sgml-make-extid): optional argument dir added. New representation
+	for external identifiers. 	
+	(sgml-extid-dir): New attr of extid
+	(sgml-extid-expand): new fun.
+	(sgml-path-lookup): use sgml-extid-expand
+	(sgml-lookup-sysid-as-file): take extid as argument instead of sysid,
+	use sgml-extid-expand
+	(sgml-parse-external): don't expand sysid
+
+
+Thu Aug 10 22:33:50 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml.el (sgml-default-validate-command): new function.
+	(sgml-validate): use new func.
+	(sgml-validate-command): new possible value: a list of templates
+	to try.
+
+Mon Jul 31 22:34:10 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-entity-insert-text): mark entities not
+	found.
+	(sgml-entity-marked-undefined-p): new func.
+	(sgml-push-to-entity): set default-directory to that of external
+	entities file.
+	(sgml-parse-external): expand sysid as file name
+
+	* psgml-info.el (sgml-display-table): add  nosort option.
+	(sgml-general-dtd-info): more info. including undef entities.
+
+Sun Jul 30 22:23:15 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* test/son2.sgml: check that inclusions are inherited from the doc
+	element.
+
+	* test/doc.dtd: adding ix element as inclusion in doc.
+
+Wed Jul 26 22:07:16 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-parse-catalog-buffer): recoded. Now all
+	entries are on the format (type name file) and name might be nil
+	for "noname" entries.
+	(sgml-catalog-lookup): changed to handle new internal catalog
+	format.
+	
+Mon Jul 24 00:07:02 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-parse-catalog-buffer): Handle full catalog
+	format.
+	(sgml-catalog-lookup): Handle new catalog format including
+	parameter entities.
+	(sgml-search-catalog): new function, can be used to look up
+	SGMLDECL etc..
+
+	* psgml.el (sgml-system-identifiers-are-preferred): new option.
+
+Sun Jul 23 20:56:00 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-other.el (sgml-popup-multi-menu): kludge to force
+	x-popup-menu to be two level.
+
+	* psgml-parse.el (sgml-do-data): move start after data consumed.
+
+Mon May  1 20:57:29 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-normalize-content): fixing arithmetic error
+
+	* psgml-parse.el (sgml-make-shortmap): add missing = to skip strings
+
+Sun Apr 23 23:01:35 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Id 46: turns on autofill, fixed.
+
+	* psgml-parse.el (sgml-auto-fill-inhibit-function): new variable
+	(do-auto-fill): advise do-auto-fill to honour above variable
+	(sgml-need-dtd): set sgml-auto-fill-inhibit-function, and don't
+	set auto-fill-function.
+	(sgml-safe-context-of): new fun
+	(sgml-safe-element-at): new fun
+	(sgml-in-prolog-p): new fun
+
+Mon Apr 10 21:26:30 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-dtd.el (sgml-write-dtd): set file-type for oemacs.
+
+Tue Mar 28 19:01:53 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-try-merge-compiled-dtd): entd should be
+	ents.
+	
+
+Mon Mar 27 18:31:26 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-bdtd-load): var. renamed.
+	(sgml-eltypes-in-state): fix som inconsitencies with
+	token/eltype/symbol.
+	(sgml-list-implications): fix bug handling empty elements.
+
+	* psgml.el (sgml-recompile-out-of-date-cdtd): renamed from
+	sgml-ignore-out-of-date-cdtd.
+
+Sun Mar 26 16:25:10 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Id 34: CATALOG searching priorities, fixed.
+
+	* psgml-parse.el (sgml-catalog-lookup): 
+	Giv PUBLIC entries priority over ENTITY and DOCTYPE
+
+	* Id 35: Entity manager handling of system id, fixed.
+
+	* psgml-parse.el (sgml-lookup-sysid-as-file): new func.
+	(sgml-external-file): call new func.
+
+	* Id 41: selecting from a popup menu should not be an error
+	Installing patch from Tim Bradshaw <tfb@edinburgh.ac.uk>,
+	Also fixing consequences.
+	Also making new menu function sgml-popup-multi-menu,
+	which uses call-back style. Nicer attributes menu.
+
+	* psgml-other.el (sgml-set-face-for): Use sgml-type instead of
+	type for overlay property.
+
+	* psgml-edit.el (sgml-attrib-menu): Make all attributes into one
+	list with submenues for every attribute.
+
+Thu Mar 23 20:23:26 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml.el (sgml-mode): append to post-command-hook, this makes
+	psgml work better with auto-show.
+
+	* psgml-parse.el (sgml-throw-on-error): new var.
+	(sgml-error): Throw if sgml-throw-on-error is set.
+	(sgml-push-to-entity): remove fifth arg to insert-file-contents
+	
+	* psgml-edit.el: (sgml-indent-line)
+	Make sgml-indent-line better behaved.
+	1. Don't tab outside document element.
+	2. Ignore parse errors.
+
+
+Sun Mar 19 16:46:45 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-bdtd-load): if sgml-ignore-out-of-date-cdtd
+	is ask, ask before recompiling.
+
+Thu Mar  2 19:08:59 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Id 38: auto-fill breaks pubid, fixed
+
+	* psgml-parse.el (sgml-do-auto-fill): new function, won't
+	auto-fill outside document element
+	(sgml-need-dtd): set auto-fill-function.
+
+Wed Feb 22 22:51:30 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Id 37: sgml-kill-element with cursor inside tag
+	fixed.
+
+	* psgml-edit.el (sgml-kill-element): signal error if point is
+	inside markup
+
+Sat Jan 28 14:35:01 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-insert-element): Leave point at the end of
+	the element.
+
+	* psgml.texi: Patch from Kevin R
+
+Mon Jan 23 19:29:33 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-tag-regexp): make it handle unclosed tags
+	and net tags.
+
+	* psgml-parse.el (struct sgml-tree): new field asl, constuctor
+	changed.
+	(sgml-open-element): pass asl to sgml-make-tree
+	(sgml-element-attribute-specification-list): use sgml-tree-asl.
+
+Sat Jan 14 16:27:46 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml.el (sgml-mode-abbrev-table): new var. From patch by Karl
+	Eichwalder. 
+	(sgml-validate-command): fixed doc. (Kevin Rodgers)
+
+Thu Jan 12 16:57:05 1995  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-other.el (sgml-set-face-for): installed patch from Kevin
+
+	* psgml-parse.el (sgml-do-end-tag): move call to sgml-set-markup-type
+
+Sun Dec 11 16:38:29 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-do-set-option): take care of
+	read-from-string.
+
+	* psgml.el (psgml-version): bump
+	(sgml-ignore-out-of-date-cdtd): new option
+
+	* psgml-parse.el (sgml-bdtd-load): make up to date test optional.
+
+Fri Dec  9 22:02:13 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-other.el: Add ranges to multipart menus.
+
+	* psgml-edit.el	(sgml-normalize-start-tag): Don't recreate
+	NET-start tags. 
+
+Sun Dec  4 01:23:46 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-expand-shortref-to-text): update sgml-goal
+	(sgml-expand-shortref-to-entity): dito
+
+Tue Nov 29 13:13:13 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-dtd.el (sgml-before-eltype-modification): obsolete?
+
+	* psgml-parse.el: Major changes to handling of compiled dtds
+
+Fri Nov 25 23:01:46 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-entities-menu): sort entities menu
+
+Thu Nov 17 20:45:02 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-path-lookup): set cand not res.
+
+Sat Nov 12 08:09:13 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-dtd.el (sgml-code-dtd): map over all eltypes, not only
+	defined, when outputing the names
+
+Thu Nov  3 06:47:17 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Patch from Norman Walsh
+
+	* psgml-parse.el (sgml-do-entity-ref): check
+	sgml-warn-about-undefined-entities.
+
+	* psgml.el (sgml-warn-about-undefined-entities): new var.
+
+Mon Oct 31 20:10:58 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-try-merge-compiled-dtd): Immediately exit
+	entity check loop if discrepancy found.
+
+Sun Oct 30 17:02:09 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-copy-eltypes): remove
+
+	* psgml.el ((fboundp 'run-hook-with-args)): conditionally define
+
+	* psgml-edit.el (sgml-list-valid-tags): don't show shortmap.
+
+	* psgml-dtd.el (sgml-before-eltype-modification): use
+	sgml-merge-eltypes instead of sgml-copy-eltypes.
+	(sgml-do-usemap-element): call sgml-before-eltype-modification.
+
+	* psgml-parse.el (sgml-merge-eltypes): don't overwrite values in
+	old eltypes.
+
+Sat Oct 29 00:15:41 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-setup-doctype): new func.
+
+
+Thu Oct 27 01:51:37 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-show-warnings): instead of suppress
+	warnings, defualt nil. Set to t by next trouble spot.  Warnings
+	also shown when parsing dtd.
+	(sgml-parse-external): moved
+	(sgml-do-doctype): include the code that sgml-check-doctype-body
+	did have
+	(sgml-make-primitive-content-token): moved
+
+Wed Oct 26 23:23:26 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml.el (psgml-version): bump version
+	(sgml-ignore-undefined-elements): new option
+
+	* psgml-parse.el (sgml-eltype-all-miscdata): replace the function
+        sgml-eltype-all-appdata.
+	(sgml-eltype-set-all-miscdata): new func.
+
+Tue Oct 25 01:26:03 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-dtd.el (sgml-declare-entity): handle #DEFAULT
+
+	* psgml-parse.el (sgml-lookup-entity): support default entity
+	(sgml-entity-declare): dito
+	(sgml-merge-entity-tables): dito
+
+Sat Oct 22 01:24:50 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-read-dtd): Decode current buffer.
+
+Fri Oct 14 00:41:19 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-dtd.el (sgml-code-dtd): take dtd as argument
+	(sgml-save-dtd): take optional dtd
+
+	* Id 27: insert-element looping
+	Test if inside markup when producing menus and completion tables.
+
+Wed Sep 28 08:10:19 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-set-parse-state): Use smgl-goto-epos
+	(sgml-push-to-entity): reuse buffers always
+	(sgml-close-element): don't promote position of tag
+
+	* psgml-dtd.el (sgml-parse-external): remove use of sgml-gname-symbol
+	(sgml-check-declared-value): "-
+	(sgml-check-default-value): "-
+
+Tue Sep 27 20:11:57 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-open-element): take attribute specification
+	list as argument.  Call hook sgml-open-element-hook.
+	(sgml-data-function): new var
+	(sgml-pi-function): new var
+	remove sgml-{g,e}name-symbol
+	(sgml-skip-cdata): rename to sgml-do-data
+
+Mon Sep 26 09:44:35 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Version 1.0 a3
+
+Sun Sep 25 16:12:06 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el: move sgml-set-markup-type
+
+	* psgml-edit.el (sgml-do-set-option): add event argument
+
+	* Id 1: C-c C-d may hang
+	psgml-edit.el (sgml-next-data-field): check if at end of buffer
+
+	* psgml-edit.el (sgml-normalize-start-tag): can`t use
+	sgml-change-start-tag becuse trimming may have moved cursor to
+	some other place if the tag is implied.
+
+
+Sun Sep 25 14:54:19 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-lucid.el: Implement changes in psgml-other.
+	* Id 24: Lucid menubar problems, see above.
+
+Sun Sep 25 10:17:25 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-other.el (sgml-popup-menu): new func.
+	(sgml-max-menu-size): move here
+
+	* psgml.el: split sgml-user-options into sgml-file-options and
+	sgml-user-options.  Fix some properties and buffer local status.
+	(sgml-valid-option): new func.
+	(sgml-save-options): save all file options that are valid.
+
+	* psgml-edit.el: options menu split into file and user options,
+	sgml-split-menu move to emacs specific files (psgml-other,
+	psgml-lucid).  The emacs specific provides a sgml-popup-menu.
+
+	* psgml.el (sgml-live-element-indicator): remove buffer localness
+
+	* psgml-parse.el (sgml-parse-catalog-buffer): use sgml-parse-name
+	for doctype.
+
+Fri Sep 23 00:19:18 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-dtd.el (sgml-reduce-|): inline sgml-make-alt
+
+	* psgml-parse.el (sgml-add-move-to-set): make into macro
+	(sgml-state-final-p): make into macro
+
+	* psgml-dtd.el (sgml-make-primitive-content-token): make defsubst
+
+	* psgml-parse.el (sgml-parse-name): remove defsubst
+	(sgml-parse-name): add compiler macro
+
+	* psgml-dtd.el (sgml-remove-redundant-states-1): new optimizer
+	(sgml-make-*): use it
+	(sgml-make-+): use it
+	(sgml-make-conc): use it
+
+	* psgml-parse.el (sgml-parse-ds): make defsubst
+	(sgml-parse-parameter-entity-ref): make defsubst
+	(sgml-do-parameter-entity-ref): new sub for above
+	(sgml-eltype-token): def compiler macro
+	(sgml-token-eltype): def compiler macro
+
+	* psgml-dtd.el (sgml-parse-connector): make defsubst
+	(sgml-make-opt): nconc instead of append
+
+	* psgml-parse.el (sgml-parser-loop): check for end tag before
+	skipping cdata
+	(sgml-skip-ps): make defsubst
+
+	* psgml-dtd.el (sgml-parse-prolog): add cleanup entities
+
+	* psgml-parse.el (sgml-parser-loop): move parsing of end-tag to
+	after shortref
+
+	* psgml.el (sgml-debug): use sgml-log-message
+
+	* psgml-parse.el (sgml-deref-shortmap): respect the nobol argument
+	(sgml-last-start-pos): New variable
+	(sgml-push-to-entity): set sgml-last-start-pos to buffer start if
+	entering an internal entity
+	(sgml-pop-entity): set sgml-last-start-pos
+	(sgml-parse-to): set sgml-last-start-pos
+	(sgml-parser-loop): call deref map with disabling of &#RS if point
+	is equal to sgml-last-start-pos
+
+Thu Sep 22 01:03:56 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-cleanup-entities): clean up buffers used by
+	sgml-push-to-entity if some looping code has left a lot of buffers.
+	(sgml-need-dtd): call sgml-cleanup-entities
+	(sgml-push-to-entity): check that the sgml-cleanup-entities works,
+	cludge to make sure shortref maps don't find record-start in the
+	beginning of internal entities.  This cludge breaks the epos
+	promotion code.
+	(sgml-set-parse-state): when setting parse state to start of a
+	element goto epos-end (not start+len).
+
+Sun Sep 18 05:49:17 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el 
+	(sgml-parse-parameter-entity-ref): call sgml-push-to-entity with
+	optional argument 'param.
+	(sgml-push-to-entity): take new optional argument and pass it to
+	sgml-entity-insert-text. 
+	(sgml-entity-insert-text): take extra type argument.
+	ci 2.8
+	(sgml-eltype-mixed): add comp.macro
+	(sgml-parse-name): make defsubst
+
+Thu Sep 15 02:06:22 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el (sgml-current-entity-map): add default-directory
+	(sgml-set-global): set default-directory in
+	sgml-current-entity-map
+	(sgml-check-name): fix bug in compiler-macro
+	(sgml-insert-external-entity): don't accepty directories as result
+	(sgml-push-to-entity): copy default-directory to new buffer
+
+	* psgml.el (sgml-catalog-files): new default value
+
+Wed Sep 14 04:36:29 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el (sgml-dtd): make type an untyped vector
+
+Tue Sep 13 06:35:43 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-check-name): add comp-mac
+	(sgml-final): make defsubst
+	(sgml-final&): sub for above
+	(sgml-parse-pcdata): make defsubst
+	(sgml-eltype-name): add comp-mac
+
+Mon Sep 12 05:11:38 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el (sgml-parse-processing-instruction): make defsubst
+	(sgml-do-processing-instruction): broken out from above
+
+Mon Sep 12 01:36:46 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-parse-general-entity-ref): make defsubst
+	(sgml-do-general-entity-ref): broken out from above
+	(sgml-set-markup-type): make defsubst
+
+Sun Sep 11 21:49:14 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-is-enabled-net): make defsubst
+	(sgml-parse-s): make defsubst
+	(sgml-element-mixed): add a compiler macro
+
+Sun Sep 11 00:00:45 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-lucid.el: Install patch 
+	From: Tim Bradshaw <tfb@edinburgh.ac.uk>
+	in 4.0b2 with lemacs 19.10 and up I don't think you want to add
+	the SGML menus before the "Help" menu since then they come out at
+	the right hand of the menubar.  Attached patch to psgml-lucid does
+	the trick. 
+
+
+Thu Sep  8 23:38:20 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-dtd.el (sgml-check-content): ANY also mixed
+
+
+Thu Sep  8 22:35:19 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el (sgml-make-shortmap): Only warning for strange
+	short ref delimiter
+
+	* psgml-dtd.el (sgml-dtd-shortmaps): New variable
+	(sgml-declare-shortref): add mapping to variable
+	(sgml-check-doctype-body): add shortref maps from variable to dtd
+	struct
+
+	* psgml-edit.el (sgml-custom-dtd): new command
+	(sgml-custom-markup): new command
+
+Thu Sep  8 01:17:59 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-normalize): expand short references also
+
+Wed Sep  7 20:56:41 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-reparse-buffer): New function.
+
+	* nefarious.el (sgml-map-element-types): Update for 1.0
+
+
+Sun Sep  4 17:09:27 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-untag-element): require tags to be in the
+	buffer 
+
+	* psgml-parse.el (sgml-update-display): parse to point-max after
+	parse to window-end
+
+	* psgml.el (sgml-validate-command): change to use format string
+	(sgml-validate): use format
+
+	* psgml-edit.el (sgml-operate-on-tags): give tags uniq numbers as
+	invisible property
+
+Sun Sep  4 10:21:54 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-dtd.el (sgml-check-element-type): Fix problem with ranked
+	groups
+
+
+Sun Sep  4 00:10:50 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-indent-line): use sgml-find-context-of at
+	end of buffer.
+
+Sun Sep 3 23:00:00 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* Version 0.4b2
+
+Fri Sep  2 19:48:41 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml.el (sgml-local-catalogs): new variable
+
+	* psgml-parse.el: Implement local serach maps for entities
+
+
+Tue Aug 30 17:28:42 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el: Introduce sgml-current-omittag and
+	sgml-current-shorttag that holds golbal copies of sgml-omittag and
+	sgml-shorttag.  Change variable references where apropriate
+
+	* psgml-edit.el (sgml-next-trouble-spot): ignore warnings before
+	point
+	(sgml-expand-entity-reference): New command
+
+Mon Aug 29 07:44:48 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-parse.el (sgml-parser-loop): Take argument: a function
+	that should return t if the loop should be prematurely exited
+	(sgml-parse-to): take optional argument to pass to sgml-parser-loop
+
+	* psgml.el (sgml-command-post): function called from
+	post-command-hook. Activates DTD is `sgml-auto-activate-dtd' is
+	set and call `sgml-update-display' in psgml-parse if there is an
+	active DTD.
+	(sgml-auto-activate-dtd): New variable.
+
+	* psgml-parse.el (sgml-update-display): instead of
+	sgml-set-live-indicator 
+
+	* psgml-dtd.el (sgml-parse-character-reference): only parse
+	function character refrences if optional argument is true
+
+Sat Aug 27 10:53:54 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el: Implement short references
+
+Fri Aug 26 02:47:35 1994  Lennart Staflin  <lenst@lysator.liu.se>
+
+	* psgml-edit.el (sgml-operate-on-tags): only set inivisible
+	property (and rear-nonsticky)
+
+	* psgml-parse.el (sgml-parse-to): remove sgml-hide manipulation
+
+Fri Aug 26 00:02:30 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el (sgml-set-live-element-indicator): don't let
+	point be inside an invisible region.
+
+Thu Aug 25 04:35:33 1994  Lennart Staflin  (lenst@konrad)
+
+	* psgml-edit.el (sgml-operate-on-tags): use category sgml-hide
+	instead of invisible+read-only.
+
+	* psgml-parse.el (sgml-parse-to): temporary set sgml-hide's
+	property intangible to nil when parsing.
+
+	* psgml.el (sgml-max-menu-size): set as 2/3 of frame-height
+	(psgml-version): bump version
+
+	* psgml-parse.el (sgml-do-pcdata): set markup type nil, to delete
+	any overlays left from previous parse.
+
+	* psgml-other.el (sgml-mode-map): change Fold to View
+	(sgml-set-face-after-change): disable
+
+	* Version 1a1
+
+Wed Aug 24 20:29:37 1994  Lennart Staflin  (lenst@dell)
+
+	* psgml-edit.el: changing append to nconc
+
+	* psgml-parse.el: changing append to nconc
+
+Wed Aug 24 07:06:39 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el (sgml-set-live-element-indicator): parse to
+	window-end after sit-for to set faces.
+
+	* psgml.el (sgml-exposed-tags): new variable.
+
+	* psgml-edit.el (sgml-operate-on-tags): install patch
+	From: kevinr@airedale (Kevin Rodgers)
+	(sgml-operate-on-tags): installed another patch from above. Added
+	variable sgml-exposed-tags.
+
+Tue Aug 23 02:32:45 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el (sgml-load-dtd): install patch
+	date: 1994/08/19 18:30:03; author: kevinr; state: Exp;
+	lines: +3 -3 sgml-load-dtd, sgml-external-file: Use
+	`expand-file-name' instead of `concat'.
+
+	* psgml-dtd.el (sgml-make-pcdata): change sgml-make-opt to
+	sgml-make-* 
+
+Mon Aug 22 21:30:04 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-edit.el: split psgml-parse into psgml-parse and psgml-edit
+
+Sat Aug 20 02:10:32 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml.texi (Attributes): add C-c C-d in attribute edit mode.
+
+Sat Aug 13 00:59:17 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml.el (sgml-mode): add some documentation.
+
+Mon Jul 19 1994 00:33:28  Kevin Rodgers <kevinr@ihs.com>
+
+	* psgml-parse.el (sgml-close-element-hook): Define.
+	(sgml-close-element): Invoke `sgml-close-element-hook' after
+	`(sgml-tree-end sgml-current-tree)' and `(sgml-tree-etag-len
+	sgml-current-tree)' have been set.
+
+Fri Aug 12 21:19:52 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el (sgml-pub-expand-char): remove test -- expand any
+	character. 
+
+	* experiment.el (sgml-pub-expand-char): remove test -- expand any
+	character.
+
+Thu Aug 11 20:13:44 1994  Lennart Staflin  (lenst@lysita)
+
+	* psgml-parse.el (sgml-push-to-param): move call to
+	sgml-external-file to before set-buffer.  Simplify testing.
+
+Tue Jul 12 1994 21:39:20  Kevin Rodgers <kevinr@ihs.com>
+
+	* psgml-parse.el (sgml-map-public): Accept an additional
+	optional argument, NAME, and map `n' to it if it's not nil.
+	(sgml-external-file): Pass the optional argument NAME to
+	`sgml-map-public'.
+	(sgml-pub-expand-char): Recognize `n' as well as `c', `o', and
+	`d' (and their upper-case variants).
+
+Wed Jul  6 21:17:41 1994  Lennart Staflin  (lenst@konrad)
+
+	* psgml-parse.el (sgml-next-data-field): stop any where but avoid
+	current element (previously only stopped at the beginning of an
+	element)
+# Makefile for Ispell support lisp code
+
+# This file is part of XEmacs.
+
+# XEmacs is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2, or (at your option) any
+# later version.
+
+# XEmacs is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with XEmacs; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
+
+VERSION = 1.0
+PACKAGE = psgml
+PKG_TYPE = regular
+REQUIRES =
+CATEGORY = oa
+
+ELCS = iso-sgml.elc psgml-api.elc psgml-charent.elc psgml-debug.elc \
+	psgml-dtd.elc psgml-edit.elc psgml-fs.elc psgml-html.elc \
+	psgml-info.elc psgml-other.elc psgml-parse.elc psgml-xemacs.elc \
+	psgml.elc tempo.elc
+
+INFO_FILES = $(PACKAGE)*.info*
+
+include ../../XEmacs.rules
+
+all:: $(ELCS) auto-autoloads.elc custom-load.elc $(PACKAGE).info $(PACKAGE)-api.info
+
+srckit: srckit-std
+
+binkit: binkit-sourcedatainfo
+This is the READ ME file for psgml.el version 1.0       -*- text -*-
+
+   PSGML is a major mode for editing SGML documents.  It works with
+GNU Emacs 19.19 and later or with XEmacs 19.13.
+
+This distribution should contain the following source files:
+	psgml.el
+	psgml.texi
+	psgml-other.el
+	psgml-lucid.el
+	psgml-edit.el
+	psgml-parse.el
+	psgml-dtd.el
+	psgml-info.el
+        psgml-charent.el
+	psgml-api.texi	-- internals documentation
+	psgml-api.el	-- Extra functions for the API
+	iso88591.map
+	Makefile.in
+
+In addition the distribution contains the formatted versions of the
+documentation files (psgml.info, ...). But the compiled elisp code is
+no longer supplied. You will have to byte compile the files before
+PSGML will achieve usable speed.
+
+PSGML now comes with autoconf support. See INSTALL for generic
+instructions. Run
+
+	sh configure
+	make
+
+and possibly
+
+	make install
+
+If you are using xemacs, you can run give the argument `--with-xemacs'
+to configure, or use `make xemacs'.
+
+Instead of using configure you can load the psgml-main.el file and run
+the command psgml-compile-files. Then you have to set load-path or
+move the .elc files.
+
+Send bug reports, comments and suggestions to lenst@lysator.liu.se.
+
+New in version 1.0
+
+* Main changes
+
+** Support for general entities
+
+** Support for short reference
+
+** Support for catalog files
+
+** New mechanism for caching parsed DTD
+
+** Includes commands to list various aspects of the DTD
+
+* Entity support
+
+PSGML will recognize entity references (except in attribute values). If
+the entity is a general text entity, PSGML will also parse the content
+of the entity. To support this PSGML has a new entity manager with a
+new mechanism for looking up entities (see belove).
+
+Short references are also supported, for the short reference delimiters
+from the concrete reference syntax.
+
+There are some new and changed commands to complete the entity support:
+
+** Command: `sgml-expand-entity-reference'
+
+Insert the text of the entity referenced at point.
+
+** Command: `sgml-expand-all-shortrefs'
+
+Expand all short references in the buffer. Short references to text
+entities are expanded to the replacement text of the entity, other
+short references are expanded into general entity references. If
+argument, `to-entity', is non-nil, or if called interactive with
+numeric prefix argument, all short references are replaced by generally
+entity references.
+
+** Command: `sgml-normalize'
+
+Changed to expand short references also. Normalize buffer by filling in
+omitted tags and expanding empty tags. Argument `to-entity' controls
+how short references are expanded as with `sgml-expand-all-shortrefs'.
+
+* Fontification
+
+If `sgml-set-face' is true and the DTD has been activated, PSGML will
+automatically set the face of markup in the buffer.
+
+First the current line is parsed and fontified. If this would mean
+parsing more than 500 chars, wait 1 second first.
+
+The rest of the buffer is fontified after 6 seconds idle time.
+
+Fontification can be interrupted by any input event.
+
+The buffer can be fontified initially if `sgml-auto-activate-dtd' is
+true.
+
+* New entity manager
+
+The new entity manager will handle an entity reference thus:
+
+** If the entity has a system identifier, the entity manager will first
+try and call the functions on `sgml-sysid-resolve-functions' with the
+system identifier as argument, and if any function returns non-nil
+assume that the function has handled the entity.
+
+** If the entity has a system identifier and
+`sgml-system-identifiers-are-preferred' is non-nil, the system
+identifier will be used as a file name relative to the file containing
+the entity declaration.
+
+** Next the entity manager will try the catalog, and
+
+** if not found there use the `sgml-public-map'.
+
+** Finally if the entity has not been found and it has a system
+identifier, this will be used as a file name.
+
+Note: `sgml-system-path' is no longer used for entity lookup.
+
+The catalog files searched is given by the variable
+`sgml-local-catalogs' and `sgml-catalog-files'. The
+`sgml-catalog-files' variable is initialized from the environment
+variable `SGML_CATALOG_FILES' (should be a colon separated list of
+files). The `sgml-local-catalogs' variable is assumed to be set in a
+files local variables.
+
+File names for external entities (e.g system identifiers) are relative
+to the directory containing the file declaring the entity.
+
+The `sgml-public-map' is initialized from the environment variable
+`SGML_PATH'.
+
+`sgml-system-path' defaults to nil.
+
+Supports most of sgmls substitutions for sgml-public-map. Supported:
+%%, %N, %P, %S, %Y, %C, %L, %O, %T, %V. Unsupported: %D, %X, %A, %E,
+%I, %R, %U. Note: that %D is and alias for %C in PSGML (historical
+accident).
+
+* New and changed options
+
+** `sgml-recompile-out-of-date-cdtd'
+
+** New options for insert-element:
+`sgml-insert-missing-element-comment' and
+`sgml-insert-end-tag-on-new-line'.
+
+** `sgml-validate-files' and slight change of `sgml-validate-command'
+
+The variable `sgml-validate-command' can now be a list of strings. The
+strings can contain %-sequences that will be expanded: %b to buffer
+file name, %s to SGML Declaration file, either the value of
+sgml-declaration variable or SGML Declaration file for parent document
+or DOCTYPE file or SGMLDECL from catalog. %d value of `sgml-doctype'.
+
+** `sgml-set-face'
+
+Now automatically sets faces for all visible text, with a delay of 1s.
+
+** `sgml-exposed-tags'
+
+The list of tag names that remain visible, despite `M-x
+sgml-hide-tags'. Each name is a lowercase string, and start-tags and
+end-tags must be listed individually.
+
+** `sgml-auto-activate-dtd'
+
+PSGML was behaving inconsistent when a new file was loaded. If the
+variable `sgml-set-face' was true the DTD would automatically be
+activated (loaded or parsed), but only if psgml-parse already loaded.
+
+Rather than let `sgml-set-face' decide if the DTD is activated, there
+is now a distinct option for this. This option works even the first
+time.
+
+If non-nil, loading a sgml-file will automatically try to activate its
+DTD. Activation means either to parse the document type declaration or
+to load a previously saved parsed DTD. The name of the activated DTD
+will be shown in the mode line.
+
+* Various
+
+** Tracing catalog lookup
+
+To help debug entity lookup there is a new option
+`sgml-trace-entity-lookup'. If this option is t messages will be logged
+in *SGML LOG* buffer when external entities are looked up. These
+messages shows entity, catalogs searched, and entry type in catalog
+where entity was found.
+
+** Translating between characters and entity references
+
+Set the variable `sgml-display-char-list-filename' to a file that
+contains mappings between all characters present in the presentation
+character set, and their "standard replacement text" names, e.g. "�" ->
+"[aring ]", e.t.c. The default value for this variable is
+`iso88591.map'.
+
+Use the functions (also in the Modify menu)
+`sgml-charent-to-display-char' and `sgml-display-char-to-charent' to
+translate between entities and characters.
+
+** Handling of missing DOCTYPE
+
+If the document prolog does not contain a document type declaration,
+PSGML will try to supply one on the form `<!DOCTYPE DocTypeName
+SYSTEM>' If the variable `sgml-default-doctype-name' is defined this
+will be used for the document type name, otherwise the GI of the first
+start tag will be used. I.e., if the document starts with `<book>', a
+document type declaration `<!DOCTYPE book SYSTEM>' will be assumed.
+
+** Handling of tags for undefined elements
+
+*** Start-tags for undefined elements will either be ignored, if
+`sgml-ignore-undefined-elements' is `t', or assumed to be acceptable in
+the current element and defined with `O O ANY'.
+
+*** An end-tag for an element that is not currently open will be
+ignored.
+
+** Cleaned up Markup menu
+
+The removed entries can be added with sgml-custom-markup:
+
+(setq sgml-custom-markup
+      '(("<!entity ... >" "<!entity \r>\n")
+        ("<!attlist ... >" "<!attlist \r>\n")
+        ("<!element ... >" "<!element \r>\n")
+        ("<!doctype ...>" "<!doctype \r -- public or system --\n[\n]>\n")
+        ("Local variables comment" "<!--\nLocal variables:\n\rEnd:\n-->\n")
+        ("Comment" "<!-- \r -->\n") ))
+
+** New commands
+
+Thanks to David Megginson the custom menus are now reachable from the
+keyboard:
+
+`C-c C-u C-d' (`sgml-custom-dtd')
+
+`C-c C-u C-m' (`sgml-custom-markup')
+
+* Changes to API
+
+** New hooks
+
+*** `sgml-close-element-hook'
+
+The hook run by `sgml-close-element'. These functions are invoked with
+`sgml-current-tree' bound to the element just parsed.
+
+*** `sgml-new-attribute-list-function'
+
+This hook is run when a new element is inserted to construct the
+attribute specification list. The default function prompts for the
+required attributes.
+
+*** `sgml-doctype-parsed-hook'
+
+This hook is called after the doctype has been parsed. It can be used
+to load any additional information into the DTD structure.
+
+Example: add description to element types
+
+(defun set-help-info ()
+  (let ((help '(("para" "A Paragraph")
+		("q"    "A Quotation")
+		("date" "A Date")))
+	(dtd (sgml-pstate-dtd sgml-buffer-parse-state)))
+    (loop for h in help do
+	  (setf (sgml-eltype-appdata (sgml-lookup-eltype (first h) dtd)
+				     'help-string)
+		(second h)))))
+(add-hook 'sgml-doctype-parsed-hook 'set-help-info)
+(defun sgml-help-for-element ()
+  (interactive)
+  (let* ((el (sgml-find-element-of (point)))
+	 (help (sgml-element-appdata el 'help-string)))
+    (and help
+	 (message "%s" help))))
+
+*** sgml-sysid-resolve-functions
+
+This variable should contain a list of functions. Each function should
+take one argument, the system identifier of an entity. If the function
+can handle that identifier, it should insert the text of the entity
+into the current buffer at point and return t. If the system identifier
+is not handled the function should return nil.
+
+Example use: Support URLs as system identifiers
+
+(defun sgml-url-sysid (sysid)
+  (cond ((string-match "^\\([a-z]+\\):" sysid) ; looks like url
+	 (require 'url)
+	 (set-buffer (prog1 (current-buffer)
+		       (url-retrieve sysid)))
+	 (insert-buffer url-working-buffer)
+	 t)))
+(add-hook 'sgml-sysid-resolve-functions 'sgml-url-sysid)
+
+** New file psgml-api.el
+
+This file contain API-functions that are not used by other parts of
+psgml. Use `(require 'psgml-api)' to use the API functions (psgml-api
+includes the rest of the psgml files).
+
+Local variables:
+mode: text
+mode: outline
+end:
+PUBLIC	"-//IETF//ENTITIES Added Latin 1 for HTML//EN"	html-latin.sgml
+PUBLIC  "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML" html-latin.sgml
+PUBLIC	"-//IETF//ENTITIES icons for HTML//EN"          html-icons.sgml
+PUBLIC  "-//IETF//ENTITIES Math and Greek for HTML//EN"  html-math.sgml
+PUBLIC "-//W3C//DTD HTML 3.2//EN" html-3.2.dtd
+PUBLIC  "-//IETF//DTD HTML//EN//3.0"		html-3.dtd
+PUBLIC  "-//W3O//DTD W3 HTML 3.0//EN//"         html-3.dtd
+PUBLIC  "-//W3O//DTD W3 HTML 3.0//EN"           html-3.dtd
+PUBLIC  "-//IETF//DTD HTML 3.0//EN"             html-3.dtd
+PUBLIC  "-//IETF//DTD HTML 3.0//EN//"           html-3.dtd
+PUBLIC  "-//IETF//DTD HTML Level 3//EN"		html-3.dtd
+PUBLIC  "-//IETF//DTD HTML Level 3//EN//3.0"	html-3.dtd
+PUBLIC  "-//IETF//DTD HTML Strict//EN//3.0"		html-3s.dtd
+PUBLIC  "-//W3O//DTD W3 HTML Strict 3.0//EN//" 		html-3s.dtd
+PUBLIC  "-//IETF//DTD HTML Strict Level 3//EN"		html-3s.dtd
+PUBLIC  "-//IETF//DTD HTML Strict Level 3//EN//3.0"	html-3s.dtd
+PUBLIC  "HTML"					html.dtd
+PUBLIC  "-//IETF//DTD HTML//EN"			html.dtd
+PUBLIC  "-//IETF//DTD HTML//EN//2.0"		html.dtd
+PUBLIC  "-//IETF//DTD HTML 2.0//EN"		html.dtd
+PUBLIC  "-//IETF//DTD HTML Level 2//EN"		html.dtd
+PUBLIC  "-//IETF//DTD HTML Level 2//EN//2.0"	html.dtd
+PUBLIC  "-//IETF//DTD HTML Level 1//EN"		html-1.dtd
+PUBLIC  "-//IETF//DTD HTML Level 1//EN//2.0"	html-1.dtd
+PUBLIC  "-//IETF//DTD HTML Level 0//EN"		html-0.dtd
+PUBLIC  "-//IETF//DTD HTML Level 0//EN//2.0"	html-0.dtd
+PUBLIC  "-//IETF//DTD HTML Strict//EN"			html-s.dtd
+PUBLIC  "-//IETF//DTD HTML Strict//EN//2.0"		html-s.dtd
+PUBLIC  "-//IETF//DTD HTML Strict Level 2//EN"		html-s.dtd
+PUBLIC  "-//IETF//DTD HTML Strict Level 2//EN//2.0"	html-s.dtd
+PUBLIC  "-//IETF//DTD HTML Strict Level 1//EN"		html-1s.dtd
+PUBLIC  "-//IETF//DTD HTML Strict Level 1//EN//2.0"	html-1s.dtd
+PUBLIC  "-//IETF//DTD HTML Strict Level 0//EN"		html-0s.dtd
+PUBLIC  "-//IETF//DTD HTML Strict Level 0//EN//2.0"	html-0s.dtd
+PUBLIC "-//Netscape Comm. Corp.//DTD HTML//EN"		html-mcom.dtd
+PUBLIC "-//WebTechs//DTD Mozilla HTML//EN"		html-mcom.dtd
+PUBLIC "-//WebTechs//DTD Mozilla HTML 2.0//EN"		html-mcom.dtd
+PUBLIC "-//Netscape Comm. Corp.//DTD Strict HTML//EN"	html-mcoms.dtd
+PUBLIC "-//WebTechs//DTD Strict HTML//EN"		html-mcoms.dtd
+PUBLIC "-//WebTechs//DTD Strict HTML 2.0//EN"		html-mcoms.dtd
+PUBLIC "-//Sun Microsystems Corp.//DTD HotJava HTML//EN" html-hj.dtd
+PUBLIC "-//Sun Microsystems Corp.//DTD HotJava Strict HTML//EN" html-hjs.dtd
+PUBLIC "-//WebTechs//DTD PUML 1.0//EN" 	puml.dtd
+PUBLIC "-//SQ//DTD HTML 2.0 HoTMetaL + extensions//EN"  SQ.dtd
+PUBLIC "-//Microsoft//DTD Internet Explorer 2.0 HTML//EN"       iehtml.dtd
+PUBLIC "-//Microsoft//DTD Internet Explorer 2.0 HTML Strict//EN" iehtml-s.dtd
+PUBLIC "-//Microsoft//DTD Internet Explorer 2.0 Tables//EN"     ietables.dtd
+PUBLIC "-//W3C//DTD HTML 3.2//EN"                       html-3.2.dtd
+PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"			html-3.2f.dtd
+PUBLIC "-//W3C//DTD HTML Experimental 19960712//EN"	html-cougar.dtd
+PUBLIC "-//Microsoft//DTD Internet Explorer 3.0 Tables//EN"     ie3tables.dtd
+PUBLIC "-//Microsoft//DTD Internet Explorer 3.0 HTML//EN"       ie30.dtd
+PUBLIC "+//Silmaril//DTD HTML Pro v0r11 19970101//EN"	htmlpro.dtd
+DOCTYPE HTML						html-3.2f.dtd
+DOCTYPE HTML-3						html-3.dtd
+FILE html.dtd   [ HTML.Recommended "INCLUDE" ]  cdtd/html-r
+FILE html.dtd	[ ]				cdtd/html
+FILE html-2.dtd	[ ]				cdtd/html-2
+FILE html-3.dtd	[ ]				cdtd/html-3
+FILE html-mcom.dtd	[ ]			cdtd/html-mcom
+FILE html-3.2.dtd	[ ]			cdtd/html-3.2
+FILE html-hj.dtd	[ ]			cdtd/html-hj
+FILE iehtml.dtd		[ ]			cdtd/iehtml
+FILE html-3.2f.dtd	[]			cdtd/html-3.2f

etc/ISO_8879-1986/entities/Added_Latin_1

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOlat1 PUBLIC
+       "ISO 8879:1986//ENTITIES Added Latin 1//EN">
+     %ISOlat1;
+-->
+<!ENTITY aacute SDATA "[aacute]"--=small a, acute accent-->
+<!ENTITY Aacute SDATA "[Aacute]"--=capital A, acute accent-->
+<!ENTITY acirc  SDATA "[acirc ]"--=small a, circumflex accent-->
+<!ENTITY Acirc  SDATA "[Acirc ]"--=capital A, circumflex accent-->
+<!ENTITY agrave SDATA "[agrave]"--=small a, grave accent-->
+<!ENTITY Agrave SDATA "[Agrave]"--=capital A, grave accent-->
+<!ENTITY aring  SDATA "[aring ]"--=small a, ring-->
+<!ENTITY Aring  SDATA "[Aring ]"--=capital A, ring-->
+<!ENTITY atilde SDATA "[atilde]"--=small a, tilde-->
+<!ENTITY Atilde SDATA "[Atilde]"--=capital A, tilde-->
+<!ENTITY auml   SDATA "[auml  ]"--=small a, dieresis or umlaut mark-->
+<!ENTITY Auml   SDATA "[Auml  ]"--=capital A, dieresis or umlaut mark-->
+<!ENTITY aelig  SDATA "[aelig ]"--=small ae diphthong (ligature)-->
+<!ENTITY AElig  SDATA "[AElig ]"--=capital AE diphthong (ligature)-->
+<!ENTITY ccedil SDATA "[ccedil]"--=small c, cedilla-->
+<!ENTITY Ccedil SDATA "[Ccedil]"--=capital C, cedilla-->
+<!ENTITY eth    SDATA "[eth   ]"--=small eth, Icelandic-->
+<!ENTITY ETH    SDATA "[ETH   ]"--=capital Eth, Icelandic-->
+<!ENTITY eacute SDATA "[eacute]"--=small e, acute accent-->
+<!ENTITY Eacute SDATA "[Eacute]"--=capital E, acute accent-->
+<!ENTITY ecirc  SDATA "[ecirc ]"--=small e, circumflex accent-->
+<!ENTITY Ecirc  SDATA "[Ecirc ]"--=capital E, circumflex accent-->
+<!ENTITY egrave SDATA "[egrave]"--=small e, grave accent-->
+<!ENTITY Egrave SDATA "[Egrave]"--=capital E, grave accent-->
+<!ENTITY euml   SDATA "[euml  ]"--=small e, dieresis or umlaut mark-->
+<!ENTITY Euml   SDATA "[Euml  ]"--=capital E, dieresis or umlaut mark-->
+<!ENTITY iacute SDATA "[iacute]"--=small i, acute accent-->
+<!ENTITY Iacute SDATA "[Iacute]"--=capital I, acute accent-->
+<!ENTITY icirc  SDATA "[icirc ]"--=small i, circumflex accent-->
+<!ENTITY Icirc  SDATA "[Icirc ]"--=capital I, circumflex accent-->
+<!ENTITY igrave SDATA "[igrave]"--=small i, grave accent-->
+<!ENTITY Igrave SDATA "[Igrave]"--=capital I, grave accent-->
+<!ENTITY iuml   SDATA "[iuml  ]"--=small i, dieresis or umlaut mark-->
+<!ENTITY Iuml   SDATA "[Iuml  ]"--=capital I, dieresis or umlaut mark-->
+<!ENTITY ntilde SDATA "[ntilde]"--=small n, tilde-->
+<!ENTITY Ntilde SDATA "[Ntilde]"--=capital N, tilde-->
+<!ENTITY oacute SDATA "[oacute]"--=small o, acute accent-->
+<!ENTITY Oacute SDATA "[Oacute]"--=capital O, acute accent-->
+<!ENTITY ocirc  SDATA "[ocirc ]"--=small o, circumflex accent-->
+<!ENTITY Ocirc  SDATA "[Ocirc ]"--=capital O, circumflex accent-->
+<!ENTITY ograve SDATA "[ograve]"--=small o, grave accent-->
+<!ENTITY Ograve SDATA "[Ograve]"--=capital O, grave accent-->
+<!ENTITY oslash SDATA "[oslash]"--=small o, slash-->
+<!ENTITY Oslash SDATA "[Oslash]"--=capital O, slash-->
+<!ENTITY otilde SDATA "[otilde]"--=small o, tilde-->
+<!ENTITY Otilde SDATA "[Otilde]"--=capital O, tilde-->
+<!ENTITY ouml   SDATA "[ouml  ]"--=small o, dieresis or umlaut mark-->
+<!ENTITY Ouml   SDATA "[Ouml  ]"--=capital O, dieresis or umlaut mark-->
+<!ENTITY szlig  SDATA "[szlig ]"--=small sharp s, German (sz ligature)-->
+<!ENTITY thorn  SDATA "[thorn ]"--=small thorn, Icelandic-->
+<!ENTITY THORN  SDATA "[THORN ]"--=capital THORN, Icelandic-->
+<!ENTITY uacute SDATA "[uacute]"--=small u, acute accent-->
+<!ENTITY Uacute SDATA "[Uacute]"--=capital U, acute accent-->
+<!ENTITY ucirc  SDATA "[ucirc ]"--=small u, circumflex accent-->
+<!ENTITY Ucirc  SDATA "[Ucirc ]"--=capital U, circumflex accent-->
+<!ENTITY ugrave SDATA "[ugrave]"--=small u, grave accent-->
+<!ENTITY Ugrave SDATA "[Ugrave]"--=capital U, grave accent-->
+<!ENTITY uuml   SDATA "[uuml  ]"--=small u, dieresis or umlaut mark-->
+<!ENTITY Uuml   SDATA "[Uuml  ]"--=capital U, dieresis or umlaut mark-->
+<!ENTITY yacute SDATA "[yacute]"--=small y, acute accent-->
+<!ENTITY Yacute SDATA "[Yacute]"--=capital Y, acute accent-->
+<!ENTITY yuml   SDATA "[yuml  ]"--=small y, dieresis or umlaut mark-->

etc/ISO_8879-1986/entities/Added_Latin_1_for_HTML

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOlat1 PUBLIC
+       "ISO 8879:1986//ENTITIES Added Latin 1//EN">
+     %ISOlat1;
+-->
+<!ENTITY aacute SDATA "[aacute]"--=small a, acute accent-->
+<!ENTITY Aacute SDATA "[Aacute]"--=capital A, acute accent-->
+<!ENTITY acirc  SDATA "[acirc ]"--=small a, circumflex accent-->
+<!ENTITY Acirc  SDATA "[Acirc ]"--=capital A, circumflex accent-->
+<!ENTITY agrave SDATA "[agrave]"--=small a, grave accent-->
+<!ENTITY Agrave SDATA "[Agrave]"--=capital A, grave accent-->
+<!ENTITY aring  SDATA "[aring ]"--=small a, ring-->
+<!ENTITY Aring  SDATA "[Aring ]"--=capital A, ring-->
+<!ENTITY atilde SDATA "[atilde]"--=small a, tilde-->
+<!ENTITY Atilde SDATA "[Atilde]"--=capital A, tilde-->
+<!ENTITY auml   SDATA "[auml  ]"--=small a, dieresis or umlaut mark-->
+<!ENTITY Auml   SDATA "[Auml  ]"--=capital A, dieresis or umlaut mark-->
+<!ENTITY aelig  SDATA "[aelig ]"--=small ae diphthong (ligature)-->
+<!ENTITY AElig  SDATA "[AElig ]"--=capital AE diphthong (ligature)-->
+<!ENTITY ccedil SDATA "[ccedil]"--=small c, cedilla-->
+<!ENTITY Ccedil SDATA "[Ccedil]"--=capital C, cedilla-->
+<!ENTITY eth    SDATA "[eth   ]"--=small eth, Icelandic-->
+<!ENTITY ETH    SDATA "[ETH   ]"--=capital Eth, Icelandic-->
+<!ENTITY eacute SDATA "[eacute]"--=small e, acute accent-->
+<!ENTITY Eacute SDATA "[Eacute]"--=capital E, acute accent-->
+<!ENTITY ecirc  SDATA "[ecirc ]"--=small e, circumflex accent-->
+<!ENTITY Ecirc  SDATA "[Ecirc ]"--=capital E, circumflex accent-->
+<!ENTITY egrave SDATA "[egrave]"--=small e, grave accent-->
+<!ENTITY Egrave SDATA "[Egrave]"--=capital E, grave accent-->
+<!ENTITY euml   SDATA "[euml  ]"--=small e, dieresis or umlaut mark-->
+<!ENTITY Euml   SDATA "[Euml  ]"--=capital E, dieresis or umlaut mark-->
+<!ENTITY iacute SDATA "[iacute]"--=small i, acute accent-->
+<!ENTITY Iacute SDATA "[Iacute]"--=capital I, acute accent-->
+<!ENTITY icirc  SDATA "[icirc ]"--=small i, circumflex accent-->
+<!ENTITY Icirc  SDATA "[Icirc ]"--=capital I, circumflex accent-->
+<!ENTITY igrave SDATA "[igrave]"--=small i, grave accent-->
+<!ENTITY Igrave SDATA "[Igrave]"--=capital I, grave accent-->
+<!ENTITY iuml   SDATA "[iuml  ]"--=small i, dieresis or umlaut mark-->
+<!ENTITY Iuml   SDATA "[Iuml  ]"--=capital I, dieresis or umlaut mark-->
+<!ENTITY ntilde SDATA "[ntilde]"--=small n, tilde-->
+<!ENTITY Ntilde SDATA "[Ntilde]"--=capital N, tilde-->
+<!ENTITY oacute SDATA "[oacute]"--=small o, acute accent-->
+<!ENTITY Oacute SDATA "[Oacute]"--=capital O, acute accent-->
+<!ENTITY ocirc  SDATA "[ocirc ]"--=small o, circumflex accent-->
+<!ENTITY Ocirc  SDATA "[Ocirc ]"--=capital O, circumflex accent-->
+<!ENTITY ograve SDATA "[ograve]"--=small o, grave accent-->
+<!ENTITY Ograve SDATA "[Ograve]"--=capital O, grave accent-->
+<!ENTITY oslash SDATA "[oslash]"--=small o, slash-->
+<!ENTITY Oslash SDATA "[Oslash]"--=capital O, slash-->
+<!ENTITY otilde SDATA "[otilde]"--=small o, tilde-->
+<!ENTITY Otilde SDATA "[Otilde]"--=capital O, tilde-->
+<!ENTITY ouml   SDATA "[ouml  ]"--=small o, dieresis or umlaut mark-->
+<!ENTITY Ouml   SDATA "[Ouml  ]"--=capital O, dieresis or umlaut mark-->
+<!ENTITY szlig  SDATA "[szlig ]"--=small sharp s, German (sz ligature)-->
+<!ENTITY thorn  SDATA "[thorn ]"--=small thorn, Icelandic-->
+<!ENTITY THORN  SDATA "[THORN ]"--=capital THORN, Icelandic-->
+<!ENTITY uacute SDATA "[uacute]"--=small u, acute accent-->
+<!ENTITY Uacute SDATA "[Uacute]"--=capital U, acute accent-->
+<!ENTITY ucirc  SDATA "[ucirc ]"--=small u, circumflex accent-->
+<!ENTITY Ucirc  SDATA "[Ucirc ]"--=capital U, circumflex accent-->
+<!ENTITY ugrave SDATA "[ugrave]"--=small u, grave accent-->
+<!ENTITY Ugrave SDATA "[Ugrave]"--=capital U, grave accent-->
+<!ENTITY uuml   SDATA "[uuml  ]"--=small u, dieresis or umlaut mark-->
+<!ENTITY Uuml   SDATA "[Uuml  ]"--=capital U, dieresis or umlaut mark-->
+<!ENTITY yacute SDATA "[yacute]"--=small y, acute accent-->
+<!ENTITY Yacute SDATA "[Yacute]"--=capital Y, acute accent-->
+<!ENTITY yuml   SDATA "[yuml  ]"--=small y, dieresis or umlaut mark-->

etc/ISO_8879-1986/entities/Added_Math_Symbols-_Delimiters

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOamsc PUBLIC
+       "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN">
+     %ISOamsc;
+-->
+<!ENTITY rceil  SDATA "[rceil ]"--/rceil C: right ceiling-->
+<!ENTITY rfloor SDATA "[rfloor]"--/rfloor C: right floor-->
+<!ENTITY rpargt SDATA "[rpargt]"--/rightparengtr C: right paren, gt-->
+<!ENTITY urcorn SDATA "[urcorn]"--/urcorner C: upper right corner-->
+<!ENTITY drcorn SDATA "[drcorn]"--/lrcorner C: downward right corner-->
+<!ENTITY lceil  SDATA "[lceil ]"--/lceil O: left ceiling-->
+<!ENTITY lfloor SDATA "[lfloor]"--/lfloor O: left floor-->
+<!ENTITY lpargt SDATA "[lpargt]"--/leftparengtr O: left parenthesis, gt-->
+<!ENTITY ulcorn SDATA "[ulcorn]"--/ulcorner O: upper left corner-->
+<!ENTITY dlcorn SDATA "[dlcorn]"--/llcorner O: downward left corner-->

etc/ISO_8879-1986/entities/Added_Math_Symbols-_Ordinary

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOamso PUBLIC
+       "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN">
+     %ISOamso;
+-->
+<!ENTITY ang    SDATA "[ang   ]"--/angle - angle-->
+<!ENTITY angmsd SDATA "[angmsd]"--/measuredangle - angle-measured-->
+<!ENTITY beth   SDATA "[beth  ]"--/beth - beth, Hebrew-->
+<!ENTITY bprime SDATA "[bprime]"--/backprime - reverse prime-->
+<!ENTITY comp   SDATA "[comp  ]"--/complement - complement sign-->
+<!ENTITY daleth SDATA "[daleth]"--/daleth - daleth, Hebrew-->
+<!ENTITY ell    SDATA "[ell   ]"--/ell - cursive small l-->
+<!ENTITY empty  SDATA "[empty ]"--/emptyset /varnothing =small o, slash-->
+<!ENTITY gimel  SDATA "[gimel ]"--/gimel - gimel, Hebrew-->
+<!ENTITY image  SDATA "[image ]"--/Im - imaginary-->
+<!ENTITY inodot SDATA "[inodot]"--/imath =small i, no dot-->
+<!ENTITY jnodot SDATA "[jnodot]"--/jmath - small j, no dot-->
+<!ENTITY nexist SDATA "[nexist]"--/nexists - negated exists-->
+<!ENTITY oS     SDATA "[oS    ]"--/circledS - capital S in circle-->
+<!ENTITY planck SDATA "[planck]"--/hbar /hslash - Planck's over 2pi-->
+<!ENTITY real   SDATA "[real  ]"--/Re - real-->
+<!ENTITY sbsol  SDATA "[sbsol ]"--/sbs - short reverse solidus-->
+<!ENTITY vprime SDATA "[vprime]"--/varprime - prime, variant-->
+<!ENTITY weierp SDATA "[weierp]"--/wp - Weierstrass p-->

etc/ISO_8879-1986/entities/Added_Math_Symbols-_Relations

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOamsr PUBLIC
+       "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN">
+     %ISOamsr;
+-->
+<!ENTITY ape    SDATA "[ape   ]"--/approxeq R: approximate, equals-->
+<!ENTITY asymp  SDATA "[asymp ]"--/asymp R: asymptotically equal to-->
+<!ENTITY bcong  SDATA "[bcong ]"--/backcong R: reverse congruent-->
+<!ENTITY bepsi  SDATA "[bepsi ]"--/backepsilon R: such that-->
+<!ENTITY bowtie SDATA "[bowtie]"--/bowtie R:-->
+<!ENTITY bsim   SDATA "[bsim  ]"--/backsim R: reverse similar-->
+<!ENTITY bsime  SDATA "[bsime ]"--/backsimeq R: reverse similar, eq-->
+<!ENTITY bump   SDATA "[bump  ]"--/Bumpeq R: bumpy equals-->
+<!ENTITY bumpe  SDATA "[bumpe ]"--/bumpeq R: bumpy equals, equals-->
+<!ENTITY cire   SDATA "[cire  ]"--/circeq R: circle, equals-->
+<!ENTITY colone SDATA "[colone]"--/coloneq R: colon, equals-->
+<!ENTITY cuepr  SDATA "[cuepr ]"--/curlyeqprec R: curly eq, precedes-->
+<!ENTITY cuesc  SDATA "[cuesc ]"--/curlyeqsucc R: curly eq, succeeds-->
+<!ENTITY cupre  SDATA "[cupre ]"--/curlypreceq R: curly precedes, eq-->
+<!ENTITY dashv  SDATA "[dashv ]"--/dashv R: dash, vertical-->
+<!ENTITY ecir   SDATA "[ecir  ]"--/eqcirc R: circle on equals sign-->
+<!ENTITY ecolon SDATA "[ecolon]"--/eqcolon R: equals, colon-->
+<!ENTITY eDot   SDATA "[eDot  ]"--/doteqdot /Doteq R: eq, even dots-->
+<!ENTITY esdot  SDATA "[esdot ]"--/doteq R: equals, single dot above-->
+<!ENTITY efDot  SDATA "[efDot ]"--/fallingdotseq R: eq, falling dots-->
+<!ENTITY egs    SDATA "[egs   ]"--/eqslantgtr R: equal-or-gtr, slanted-->
+<!ENTITY els    SDATA "[els   ]"--/eqslantless R: eq-or-less, slanted-->
+<!ENTITY erDot  SDATA "[erDot ]"--/risingdotseq R: eq, rising dots-->
+<!ENTITY fork   SDATA "[fork  ]"--/pitchfork R: pitchfork-->
+<!ENTITY frown  SDATA "[frown ]"--/frown R: down curve-->
+<!ENTITY gap    SDATA "[gap   ]"--/gtrapprox R: greater, approximate-->
+<!ENTITY gsdot  SDATA "[gsdot ]"--/gtrdot R: greater than, single dot-->
+<!ENTITY gE     SDATA "[gE    ]"--/geqq R: greater, double equals-->
+<!ENTITY gel    SDATA "[gel   ]"--/gtreqless R: greater, equals, less-->
+<!ENTITY gEl    SDATA "[gEl   ]"--/gtreqqless R: gt, dbl equals, less-->
+<!ENTITY ges    SDATA "[ges   ]"--/geqslant R: gt-or-equal, slanted-->
+<!ENTITY Gg     SDATA "[Gg    ]"--/ggg /Gg /gggtr R: triple gtr-than-->
+<!ENTITY gl     SDATA "[gl    ]"--/gtrless R: greater, less-->
+<!ENTITY gsim   SDATA "[gsim  ]"--/gtrsim R: greater, similar-->
+<!ENTITY Gt     SDATA "[Gt    ]"--/gg R: dbl greater-than sign-->
+<!ENTITY lap    SDATA "[lap   ]"--/lessapprox R: less, approximate-->
+<!ENTITY ldot   SDATA "[ldot  ]"--/lessdot R: less than, with dot-->
+<!ENTITY lE     SDATA "[lE    ]"--/leqq R: less, double equals-->
+<!ENTITY lEg    SDATA "[lEg   ]"--/lesseqqgtr R: less, dbl eq, greater-->
+<!ENTITY leg    SDATA "[leg   ]"--/lesseqgtr R: less, eq, greater-->
+<!ENTITY les    SDATA "[les   ]"--/leqslant R: less-than-or-eq, slant-->
+<!ENTITY lg     SDATA "[lg    ]"--/lessgtr R: less, greater-->
+<!ENTITY Ll     SDATA "[Ll    ]"--/Ll /lll /llless R: triple less-than-->
+<!ENTITY lsim   SDATA "[lsim  ]"--/lesssim R: less, similar-->
+<!ENTITY Lt     SDATA "[Lt    ]"--/ll R: double less-than sign-->
+<!ENTITY ltrie  SDATA "[ltrie ]"--/trianglelefteq R: left triangle, eq-->
+<!ENTITY mid    SDATA "[mid   ]"--/mid R:-->
+<!ENTITY models SDATA "[models]"--/models R:-->
+<!ENTITY pr     SDATA "[pr    ]"--/prec R: precedes-->
+<!ENTITY prap   SDATA "[prap  ]"--/precapprox R: precedes, approximate-->
+<!ENTITY pre    SDATA "[pre   ]"--/preceq R: precedes, equals-->
+<!ENTITY prsim  SDATA "[prsim ]"--/precsim R: precedes, similar-->
+<!ENTITY rtrie  SDATA "[rtrie ]"--/trianglerighteq R: right tri, eq-->
+<!ENTITY samalg SDATA "[samalg]"--/smallamalg R: small amalg-->
+<!ENTITY sc     SDATA "[sc    ]"--/succ R: succeeds-->
+<!ENTITY scap   SDATA "[scap  ]"--/succapprox R: succeeds, approximate-->
+<!ENTITY sccue  SDATA "[sccue ]"--/succcurlyeq R: succeeds, curly eq-->
+<!ENTITY sce    SDATA "[sce   ]"--/succeq R: succeeds, equals-->
+<!ENTITY scsim  SDATA "[scsim ]"--/succsim R: succeeds, similar-->
+<!ENTITY sfrown SDATA "[sfrown]"--/smallfrown R: small down curve-->
+<!ENTITY smid   SDATA "[smid  ]"--/shortmid R:-->
+<!ENTITY smile  SDATA "[smile ]"--/smile R: up curve-->
+<!ENTITY spar   SDATA "[spar  ]"--/shortparallel R: short parallel-->
+<!ENTITY sqsub  SDATA "[sqsub ]"--/sqsubset R: square subset-->
+<!ENTITY sqsube SDATA "[sqsube]"--/sqsubseteq R: square subset, equals-->
+<!ENTITY sqsup  SDATA "[sqsup ]"--/sqsupset R: square superset-->
+<!ENTITY sqsupe SDATA "[sqsupe]"--/sqsupseteq R: square superset, eq-->
+<!ENTITY ssmile SDATA "[ssmile]"--/smallsmile R: small up curve-->
+<!ENTITY Sub    SDATA "[Sub   ]"--/Subset R: double subset-->
+<!ENTITY subE   SDATA "[subE  ]"--/subseteqq R: subset, dbl equals-->
+<!ENTITY Sup    SDATA "[Sup   ]"--/Supset R: dbl superset-->
+<!ENTITY supE   SDATA "[supE  ]"--/supseteqq R: superset, dbl equals-->
+<!ENTITY thkap  SDATA "[thkap ]"--/thickapprox R: thick approximate-->
+<!ENTITY thksim SDATA "[thksim]"--/thicksim R: thick similar-->
+<!ENTITY trie   SDATA "[trie  ]"--/triangleq R: triangle, equals-->
+<!ENTITY twixt  SDATA "[twixt ]"--/between R: between-->
+<!ENTITY vdash  SDATA "[vdash ]"--/vdash R: vertical, dash-->
+<!ENTITY Vdash  SDATA "[Vdash ]"--/Vdash R: dbl vertical, dash-->
+<!ENTITY vDash  SDATA "[vDash ]"--/vDash R: vertical, dbl dash-->
+<!ENTITY veebar SDATA "[veebar]"--/veebar R: logical or, bar below-->
+<!ENTITY vltri  SDATA "[vltri ]"--/vartriangleleft R: l tri, open, var-->
+<!ENTITY vprop  SDATA "[vprop ]"--/varpropto R: proportional, variant-->
+<!ENTITY vrtri  SDATA "[vrtri ]"--/vartriangleright R: r tri, open, var-->
+<!ENTITY Vvdash SDATA "[Vvdash]"--/Vvdash R: triple vertical, dash-->

etc/ISO_8879-1986/entities/Diacritical_Marks

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOdia PUBLIC
+       "ISO 8879:1986//ENTITIES Diacritical Marks//EN">
+     %ISOdia;
+-->
+<!ENTITY acute  SDATA "[acute ]"--=acute accent-->
+<!ENTITY breve  SDATA "[breve ]"--=breve-->
+<!ENTITY caron  SDATA "[caron ]"--=caron-->
+<!ENTITY cedil  SDATA "[cedil ]"--=cedilla-->
+<!ENTITY circ   SDATA "[circ  ]"--=circumflex accent-->
+<!ENTITY dblac  SDATA "[dblac ]"--=double acute accent-->
+<!ENTITY die    SDATA "[die   ]"--=dieresis-->
+<!ENTITY dot    SDATA "[dot   ]"--=dot above-->
+<!ENTITY grave  SDATA "[grave ]"--=grave accent-->
+<!ENTITY macr   SDATA "[macr  ]"--=macron-->
+<!ENTITY ogon   SDATA "[ogon  ]"--=ogonek-->
+<!ENTITY ring   SDATA "[ring  ]"--=ring-->
+<!ENTITY tilde  SDATA "[tilde ]"--=tilde-->
+<!ENTITY uml    SDATA "[uml   ]"--=umlaut mark-->

etc/ISO_8879-1986/entities/General_Technical

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOtech PUBLIC
+       "ISO 8879:1986//ENTITIES General Technical//EN">
+     %ISOtech;
+-->
+<!ENTITY aleph  SDATA "[aleph ]"--/aleph =aleph, Hebrew-->
+<!ENTITY and    SDATA "[and   ]"--/wedge /land B: =logical and-->
+<!ENTITY ang90  SDATA "[ang90 ]"--=right (90 degree) angle-->
+<!ENTITY angsph SDATA "[angsph]"--/sphericalangle =angle-spherical-->
+<!ENTITY ap     SDATA "[ap    ]"--/approx R: =approximate-->
+<!ENTITY becaus SDATA "[becaus]"--/because R: =because-->
+<!ENTITY bottom SDATA "[bottom]"--/bot B: =perpendicular-->
+<!ENTITY cap    SDATA "[cap   ]"--/cap B: =intersection-->
+<!ENTITY cong   SDATA "[cong  ]"--/cong R: =congruent with-->
+<!ENTITY conint SDATA "[conint]"--/oint L: =contour integral operator-->
+<!ENTITY cup    SDATA "[cup   ]"--/cup B: =union or logical sum-->
+<!ENTITY equiv  SDATA "[equiv ]"--/equiv R: =identical with-->
+<!ENTITY exist  SDATA "[exist ]"--/exists =at least one exists-->
+<!ENTITY forall SDATA "[forall]"--/forall =for all-->
+<!ENTITY fnof   SDATA "[fnof  ]"--=function of (italic small f)-->
+<!ENTITY ge     SDATA "[ge    ]"--/geq /ge R: =greater-than-or-equal-->
+<!ENTITY iff    SDATA "[iff   ]"--/iff =if and only if-->
+<!ENTITY infin  SDATA "[infin ]"--/infty =infinity-->
+<!ENTITY int    SDATA "[int   ]"--/int L: =integral operator-->
+<!ENTITY isin   SDATA "[isin  ]"--/in R: =set membership-->
+<!ENTITY lang   SDATA "[lang  ]"--/langle O: =left angle bracket-->
+<!ENTITY lArr   SDATA "[lArr  ]"--/Leftarrow A: =is implied by-->
+<!ENTITY le     SDATA "[le    ]"--/leq /le R: =less-than-or-equal-->
+<!ENTITY minus  SDATA "[minus ]"--B: =minus sign-->
+<!ENTITY mnplus SDATA "[mnplus]"--/mp B: =minus-or-plus sign-->
+<!ENTITY nabla  SDATA "[nabla ]"--/nabla =del, Hamilton operator-->
+<!ENTITY ne     SDATA "[ne    ]"--/ne /neq R: =not equal-->
+<!ENTITY ni     SDATA "[ni    ]"--/ni /owns R: =contains-->
+<!ENTITY or     SDATA "[or    ]"--/vee /lor B: =logical or-->
+<!ENTITY par    SDATA "[par   ]"--/parallel R: =parallel-->
+<!ENTITY part   SDATA "[part  ]"--/partial =partial differential-->
+<!ENTITY permil SDATA "[permil]"--=per thousand-->
+<!ENTITY perp   SDATA "[perp  ]"--/perp R: =perpendicular-->
+<!ENTITY prime  SDATA "[prime ]"--/prime =prime or minute-->
+<!ENTITY Prime  SDATA "[Prime ]"--=double prime or second-->
+<!ENTITY prop   SDATA "[prop  ]"--/propto R: =is proportional to-->
+<!ENTITY radic  SDATA "[radic ]"--/surd =radical-->
+<!ENTITY rang   SDATA "[rang  ]"--/rangle C: =right angle bracket-->
+<!ENTITY rArr   SDATA "[rArr  ]"--/Rightarrow A: =implies-->
+<!ENTITY sim    SDATA "[sim   ]"--/sim R: =similar-->
+<!ENTITY sime   SDATA "[sime  ]"--/simeq R: =similar, equals-->
+<!ENTITY square SDATA "[square]"--/square B: =square-->
+<!ENTITY sub    SDATA "[sub   ]"--/subset R: =subset or is implied by-->
+<!ENTITY sube   SDATA "[sube  ]"--/subseteq R: =subset, equals-->
+<!ENTITY sup    SDATA "[sup   ]"--/supset R: =superset or implies-->
+<!ENTITY supe   SDATA "[supe  ]"--/supseteq R: =superset, equals-->
+<!ENTITY there4 SDATA "[there4]"--/therefore R: =therefore-->
+<!ENTITY Verbar SDATA "[Verbar]"--/Vert =dbl vertical bar-->
+
+<!ENTITY angst  SDATA "[angst ]"--Angstrom =capital A, ring-->
+<!ENTITY bernou SDATA "[bernou]"--Bernoulli function (script capital B)-->
+<!ENTITY compfn SDATA "[compfn]"--B: composite function (small circle)-->
+<!ENTITY Dot    SDATA "[Dot   ]"--=dieresis or umlaut mark-->
+<!ENTITY DotDot SDATA "[DotDot]"--four dots above-->
+<!ENTITY hamilt SDATA "[hamilt]"--Hamiltonian (script capital H)-->
+<!ENTITY lagran SDATA "[lagran]"--Lagrangian (script capital L)-->
+<!ENTITY lowast SDATA "[lowast]"--low asterisk-->
+<!ENTITY notin  SDATA "[notin ]"--N: negated set membership-->
+<!ENTITY order  SDATA "[order ]"--order of (script small o)-->
+<!ENTITY phmmat SDATA "[phmmat]"--physics M-matrix (script capital M)-->
+<!ENTITY tdot   SDATA "[tdot  ]"--three dots above-->
+<!ENTITY tprime SDATA "[tprime]"--triple prime-->
+<!ENTITY wedgeq SDATA "[wedgeq]"--R: corresponds to (wedge, equals)-->

etc/ISO_8879-1986/entities/Greek_Symbols

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOgrk3 PUBLIC
+       "ISO 8879:1986//ENTITIES Greek Symbols//EN">
+     %ISOgrk3;
+-->
+<!ENTITY alpha    SDATA "[alpha ]"--=small alpha, Greek-->
+<!ENTITY beta     SDATA "[beta  ]"--=small beta, Greek-->
+<!ENTITY gamma    SDATA "[gamma ]"--=small gamma, Greek-->
+<!ENTITY Gamma    SDATA "[Gamma ]"--=capital Gamma, Greek-->
+<!ENTITY gammad   SDATA "[gammad]"--/digamma-->
+<!ENTITY delta    SDATA "[delta ]"--=small delta, Greek-->
+<!ENTITY Delta    SDATA "[Delta ]"--=capital Delta, Greek-->
+<!ENTITY epsi     SDATA "[epsi  ]"--=small epsilon, Greek-->
+<!ENTITY epsiv    SDATA "[epsiv ]"--/varepsilon-->
+<!ENTITY epsis    SDATA "[epsis ]"--/straightepsilon-->
+<!ENTITY zeta     SDATA "[zeta  ]"--=small zeta, Greek-->
+<!ENTITY eta      SDATA "[eta   ]"--=small eta, Greek-->
+<!ENTITY thetas   SDATA "[thetas]"--straight theta-->
+<!ENTITY Theta    SDATA "[Theta ]"--=capital Theta, Greek-->
+<!ENTITY thetav   SDATA "[thetav]"--/vartheta - curly or open theta-->
+<!ENTITY iota     SDATA "[iota  ]"--=small iota, Greek-->
+<!ENTITY kappa    SDATA "[kappa ]"--=small kappa, Greek-->
+<!ENTITY kappav   SDATA "[kappav]"--/varkappa-->
+<!ENTITY lambda   SDATA "[lambda]"--=small lambda, Greek-->
+<!ENTITY Lambda   SDATA "[Lambda]"--=capital Lambda, Greek-->
+<!ENTITY mu       SDATA "[mu    ]"--=small mu, Greek-->
+<!ENTITY nu       SDATA "[nu    ]"--=small nu, Greek-->
+<!ENTITY xi       SDATA "[xi    ]"--=small xi, Greek-->
+<!ENTITY Xi       SDATA "[Xi    ]"--=capital Xi, Greek-->
+<!ENTITY pi       SDATA "[pi    ]"--=small pi, Greek-->
+<!ENTITY piv      SDATA "[piv   ]"--/varpi-->
+<!ENTITY Pi       SDATA "[Pi    ]"--=capital Pi, Greek-->
+<!ENTITY rho      SDATA "[rho   ]"--=small rho, Greek-->
+<!ENTITY rhov     SDATA "[rhov  ]"--/varrho-->
+<!ENTITY sigma    SDATA "[sigma ]"--=small sigma, Greek-->
+<!ENTITY Sigma    SDATA "[Sigma ]"--=capital Sigma, Greek-->
+<!ENTITY sigmav   SDATA "[sigmav]"--/varsigma-->
+<!ENTITY tau      SDATA "[tau   ]"--=small tau, Greek-->
+<!ENTITY upsi     SDATA "[upsi  ]"--=small upsilon, Greek-->
+<!ENTITY Upsi     SDATA "[Upsi  ]"--=capital Upsilon, Greek-->
+<!ENTITY phis     SDATA "[phis  ]"--/straightphi - straight phi-->
+<!ENTITY Phi      SDATA "[Phi   ]"--=capital Phi, Greek-->
+<!ENTITY phiv     SDATA "[phiv  ]"--/varphi - curly or open phi-->
+<!ENTITY chi      SDATA "[chi   ]"--=small chi, Greek-->
+<!ENTITY psi      SDATA "[psi   ]"--=small psi, Greek-->
+<!ENTITY Psi      SDATA "[Psi   ]"--=capital Psi, Greek-->
+<!ENTITY omega    SDATA "[omega ]"--=small omega, Greek-->
+<!ENTITY Omega    SDATA "[Omega ]"--=capital Omega, Greek-->

etc/ISO_8879-1986/entities/ISOamsa

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOamsa PUBLIC
+       "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN">
+     %ISOamsa;
+-->
+<!ENTITY cularr SDATA "[cularr]"--/curvearrowleft A: left curved arrow -->
+<!ENTITY curarr SDATA "[curarr]"--/curvearrowright A: rt curved arrow -->
+<!ENTITY dArr   SDATA "[dArr  ]"--/Downarrow A: down dbl arrow -->
+<!ENTITY darr2  SDATA "[darr2 ]"--/downdownarrows A: two down arrows -->
+<!ENTITY dharl  SDATA "[dharl ]"--/downleftharpoon A: dn harpoon-left -->
+<!ENTITY dharr  SDATA "[dharr ]"--/downrightharpoon A: down harpoon-rt -->
+<!ENTITY lAarr  SDATA "[lAarr ]"--/Lleftarrow A: left triple arrow -->
+<!ENTITY Larr   SDATA "[Larr  ]"--/twoheadleftarrow A:-->
+<!ENTITY larr2  SDATA "[larr2 ]"--/leftleftarrows A: two left arrows -->
+<!ENTITY larrhk SDATA "[larrhk]"--/hookleftarrow A: left arrow-hooked -->
+<!ENTITY larrlp SDATA "[larrlp]"--/looparrowleft A: left arrow-looped -->
+<!ENTITY larrtl SDATA "[larrtl]"--/leftarrowtail A: left arrow-tailed -->
+<!ENTITY lhard  SDATA "[lhard ]"--/leftharpoondown A: l harpoon-down -->
+<!ENTITY lharu  SDATA "[lharu ]"--/leftharpoonup A: left harpoon-up -->
+<!ENTITY hArr   SDATA "[hArr  ]"--/Leftrightarrow A: l&r dbl arrow -->
+<!ENTITY harr   SDATA "[harr  ]"--/leftrightarrow A: l&r arrow -->
+<!ENTITY lrarr2 SDATA "[lrarr2]"--/leftrightarrows A: l arr over r arr -->
+<!ENTITY rlarr2 SDATA "[rlarr2]"--/rightleftarrows A: r arr over l arr -->
+<!ENTITY harrw  SDATA "[harrw ]"--/leftrightsquigarrow A: l&r arr-wavy -->
+<!ENTITY rlhar2 SDATA "[rlhar2]"--/rightleftharpoons A: r harp over l -->
+<!ENTITY lrhar2 SDATA "[lrhar2]"--/leftrightharpoons A: l harp over r -->
+<!ENTITY lsh    SDATA "[lsh   ]"--/Lsh A:-->
+<!ENTITY map    SDATA "[map   ]"--/mapsto A:-->
+<!ENTITY mumap  SDATA "[mumap ]"--/multimap A:-->
+<!ENTITY nearr  SDATA "[nearr ]"--/nearrow A: NE pointing arrow -->
+<!ENTITY nlArr  SDATA "[nlArr ]"--/nLeftarrow A: not implied by -->
+<!ENTITY nlarr  SDATA "[nlarr ]"--/nleftarrow A: not left arrow -->
+<!ENTITY nhArr  SDATA "[nhArr ]"--/nLeftrightarrow A: not l&r dbl arr -->
+<!ENTITY nharr  SDATA "[nharr ]"--/nleftrightarrow A: not l&r arrow -->
+<!ENTITY nrarr  SDATA "[nrarr ]"--/nrightarrow A: not right arrow -->
+<!ENTITY nrArr  SDATA "[nrArr ]"--/nRightarrow A: not implies -->
+<!ENTITY nwarr  SDATA "[nwarr ]"--/nwarrow A: NW pointing arrow -->
+<!ENTITY olarr  SDATA "[olarr ]"--/circlearrowleft A: l arr in circle -->
+<!ENTITY orarr  SDATA "[orarr ]"--/circlearrowright A: r arr in circle -->
+<!ENTITY rAarr  SDATA "[rAarr ]"--/Rrightarrow A: right triple arrow -->
+<!ENTITY Rarr   SDATA "[Rarr  ]"--/twoheadrightarrow A:-->
+<!ENTITY rarr2  SDATA "[rarr2 ]"--/rightrightarrows A: two rt arrows -->
+<!ENTITY rarrhk SDATA "[rarrhk]"--/hookrightarrow A: rt arrow-hooked -->
+<!ENTITY rarrlp SDATA "[rarrlp]"--/looparrowright A: rt arrow-looped -->
+<!ENTITY rarrtl SDATA "[rarrtl]"--/rightarrowtail A: rt arrow-tailed -->
+<!ENTITY rarrw  SDATA "[rarrw ]"--/squigarrowright A: rt arrow-wavy -->
+<!ENTITY rhard  SDATA "[rhard ]"--/rightharpoondown A: rt harpoon-down -->
+<!ENTITY rharu  SDATA "[rharu ]"--/rightharpoonup A: rt harpoon-up -->
+<!ENTITY rsh    SDATA "[rsh   ]"--/Rsh A:-->
+<!ENTITY drarr  SDATA "[drarr ]"--/searrow A: downward rt arrow -->
+<!ENTITY dlarr  SDATA "[dlarr ]"--/swarrow A: downward l arrow -->
+<!ENTITY uArr   SDATA "[uArr  ]"--/Uparrow A: up dbl arrow -->
+<!ENTITY uarr2  SDATA "[uarr2 ]"--/upuparrows A: two up arrows -->
+<!ENTITY vArr   SDATA "[vArr  ]"--/Updownarrow A: up&down dbl arrow -->
+<!ENTITY varr   SDATA "[varr  ]"--/updownarrow A: up&down arrow -->
+<!ENTITY uharl  SDATA "[uharl ]"--/upleftharpoon A: up harpoon-left -->
+<!ENTITY uharr  SDATA "[uharr ]"--/uprightharpoon A: up harp-r-->
+<!ENTITY xlArr  SDATA "[xlArr ]"--/Longleftarrow A: long l dbl arrow -->
+<!ENTITY xhArr  SDATA "[xhArr ]"--/Longleftrightarrow A: long l&r dbl arr-->
+<!ENTITY xharr  SDATA "[xharr ]"--/longleftrightarrow A: long l&r arr -->
+<!ENTITY xrArr  SDATA "[xrArr ]"--/Longrightarrow A: long rt dbl arr -->

etc/ISO_8879-1986/entities/ISOamsb

+<!-- (C) International Organization for Standardization 1986
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+     <!ENTITY % ISOamsb PUBLIC
+       "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN">
+     %ISOamsb;
+-->
+<!ENTITY amalg  SDATA "[amalg ]"--/amalg B: amalgamation or coproduct-->
+<!ENTITY Barwed SDATA "[Barwed]"--/doublebarwedge B: log and, dbl bar-->
+<!ENTITY barwed SDATA "[barwed]"--/barwedge B: logical and, bar above-->
+<!ENTITY Cap    SDATA "[Cap   ]"--/Cap /doublecap B: dbl intersection-->
+<!ENTITY Cup    SDATA "[Cup   ]"--/Cup /doublecup B: dbl union-->
+<!ENTITY cuvee  SDATA "[cuvee ]"--/curlyvee B: curly logical or-->
+<!ENTITY cuwed  SDATA "[cuwed ]"--/curlywedge B: curly logical and-->
+<!ENTITY diam   SDATA "[diam  ]"--/diamond B: open diamond-->
+<!ENTITY divonx SDATA "[divonx]"--/divideontimes B: division on times-->
+<!ENTITY intcal SDATA "[intcal]"--/intercal B: intercal-->
+<!ENTITY lthree SDATA "[lthree]"--/leftthreetimes B:-->
+<!ENTITY ltimes SDATA "[ltimes]"--/ltimes B: times sign, left closed-->
+<!ENTITY minusb SDATA "[minusb]"--/boxminus B: minus sign in box-->
+<!ENTITY oast   SDATA "[oast  ]"--/circledast B: asterisk in circle-->
+<!ENTITY ocir   SDATA "[ocir  ]"--/circledcirc B: open dot in circle-->
+<!ENTITY odash  SDATA "[odash ]"--/circleddash B: hyphen in circle-->
+<!ENTITY odot   SDATA "[odot  ]"--/odot B: middle dot in circle-->
+<!ENTITY ominus SDATA "[ominus]"--/ominus B: minus sign in circle-->
+<!ENTITY oplus  SDATA "[oplus ]"--/oplus B: plus sign in circle-->
+<!ENTITY osol   SDATA "[osol  ]"--/oslash B: solidus in circle-->
+<!ENTITY otimes SDATA "[otimes]"--/otimes B: multiply sign in circle-->
+<!ENTITY plusb  SDATA "[plusb ]"--/boxplus B: plus sign in box-->
+<!ENTITY plusdo SDATA "[plusdo]"--/dotplus B: plus sign, dot above-->
+<!ENTITY rthree SDATA "[rthree]"--/rightthreetimes B:-->
+<!ENTITY rtimes SDATA "[rtimes]"--/rtimes B: times sign, right closed-->
+<!ENTITY sdot   SDATA "[sdot  ]"--/cdot B: small middle dot-->
+<!ENTITY sdotb  SDATA "[sdotb ]"--/dotsquare /boxdot B: small dot in box-->
+<!ENTITY setmn  SDATA "[setmn ]"--/setminus B: reverse solidus-->
+<!ENTITY sqcap  SDATA "[sqcap ]"--/sqcap B: square intersection-->
+<!ENTITY sqcup  SDATA "[sqcup ]"--/sqcup B: square union-->
+<!ENTITY ssetmn SDATA "[ssetmn]"--/smallsetminus B: sm reverse solidus-->
+<!ENTITY sstarf SDATA "[sstarf]"--/star B: small star, filled-->
+<!ENTITY timesb SDATA "[timesb]"--/boxtimes B: multiply sign in box-->
+<!ENTITY top    SDATA "[top   ]"--/top B: inverted perpendicular-->
+<!ENTITY uplus  SDATA "[uplus ]"--/uplus B: plus sign in union-->
+<!ENTITY wreath SDATA "[wreath]"--/wr B: wreath product-->
+<!ENTITY xcirc  SDATA "[xcirc ]"--/bigcirc B: large circle-->
+<!ENTITY xdtri  SDATA "[xdtri ]"--/bigtriangledown B: big dn tri, open-->
+<!ENTITY xutri  SDATA "[xutri ]"--/bigtriangleup B: big up tri, open-->
+<!ENTITY coprod SDATA "[coprod]"--/coprod L: coproduct operator-->
+<!ENTITY prod   SDATA "[prod  ]"--/prod L: product operator-->
+<!ENTITY sum    SDATA "[sum   ]"--/sum L: summation operator-->