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.
	

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)

Mon Jul  4 00:27:06 1994  Lennart Staflin  (lenst@lysita)

	* Version 0.4 beta

	* psgml-parse.el (sgml-show-context): Don't trust sgml-markup-type
	if explicit element is given as argument

	* psgml.el (sgml-submit-bug-report): add some variables.
	(psgml-version): set version 0.4b

Wed Jun 15 16:50:44 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-validate-command): fix typo

	* psgml-parse.el (sgml-find-attribute-element): use primitive
	sgml-parse-to instead of sgml-parse-to-here.
	(sgml-load-dtd): Install patch to search for file in
	sgml-system-path.  Make sure current directory is searched first
	and the file name is expanded.

Thu Jun  9 23:28:48 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-attrib-menu): Fix bug when no non-tokenlist
	attributes. 
	(sgml-tags-menu): use sgml-markup-type to check for start tag not
	sgml-current-state

Wed Jun  8 20:47:47 1994  Lennart Staflin  (lenst@lysita)

	* Version 0.4a4

	* psgml-parse.el (sgml-need-dtd): Do all that is needed to set up
	a dtd, don't call parse.  Break loop if a sgml-parent-document
	points to the current file.
	(sgml-parse-to): call sgml-need-dtd

Tue Jun  7 12:44:54 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el: fixing some typos

	* psgml-parse.el (sgml-last-element): set markup-type to nil,
	unless actually parsing.
	(sgml-find-context-of): set sgml-markup-type to nil if pos not in
	the markup.  Don't set sgml-current-state to markup type.
	(sgml-show-context): Display markup type also

Mon Jun  6 18:38:58 1994  Lennart Staflin  (lenst@konrad)

	* psgml-parse.el (sgml-non-fixed-attributes): new func.
	(sgml-insert-attribute): use new func.
	(sgml-attrib-menu): use new func.
	(sgml-attrib-menu): Include #IMPLIED in menus for token types
	(sgml-insert-attribute): accept nil as value

Tue May 24 01:23:33 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-fold-region): set inhibit-read-only to t.

Sun May 22 22:44:33 1994  Lennart Staflin  (lenst@kajsa)

	* psgml-parse.el (sgml-make-character-reference): fix typo.
	(sgml-insert-attribute): save-execursion around
	sgml-change-star-tag.

Sun May 22 03:07:42 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el: 
	(sgml-validate-error-regexps): new variable
	(sgml-validate): use it.

Sat May 21 03:00:02 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-buggy-subst-char-in-region): only set it by
	default in pre 19.23 emacs.
	(sgml-system-path): fixed typo.

Fri May 20 04:32:56 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-hide-region): undo intangible setting,
	confuses the parser.

Fri May 20 00:25:36 1994  Lennart Staflin  (lenst@dell)

	* psgml-parse.el (sgml-operate-on-tags): remove intangible property
	(sgml-hide-region): make hidden text intangible

	* psgml-other.el: Remove short-cuts from the menus.
	(sgml-write-protect-intagible): new var.
	(sgml-insert): add a read-onlyt t if intangible and
	sgml-write-protect-intagible is t.

Wed May 18 03:47:27 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-mode-map): bind C-c + to sgml-insert-attribute

Tue May 17 22:49:57 1994  Lennart Staflin  (lenst@lysita)

	* nefarious.el: change to work with new name for element type data
	type.

Mon May 16 19:56:27 1994  Lennart Staflin  (lenst@astrid)

	* psgml-parse.el (sgml-load-dtd): error if file does not exist
	(sgml-insert-tag): use sgml-element-data-p
	(sgml-skip-tag): new function.
	(sgml-kill-markup): use sgml-skip-tag
	(sgml-last-element): new function
	(sgml-normalize-content): use only integers

Thu May 12 02:31:07 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-find-attribute-element): use element after
	cursor if not after start-tag.
	(sgml-menu-ask): Capitalize title

Sun May  8 01:18:09 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el: ci 1.48

	* psgml-dtd.el: ci 1.15

	* psgml-parse.el: 
	change element structure to sgml-eltype
	(sgml-element-etag-optional): make macro
	(sgml-element-stag-optional): make macro

	* psgml-dtd.el:
	change element structure to sgml-eltype

	* psgml-parse.el: ci 1.47
	* psgml-dtd.el: ci 1.14

	* psgml-parse.el (sgml-normalize-start-tag): use
	sgml-change-start-tag 
	(sgml-make-character-reference): new command

	* psgml-dtd.el (sgml-parse-minimum-literal and
	sgml-parse-external):  moved from psgml-parse.

	* psgml-parse.el (sgml-split-element): New command

Sat May  7 17:41:22 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-options-menu): uses sgml-user-options in a
	general way.
	(sgml-insert-start-tag): new function
	(sgml-change-start-tag): new function
	(sgml-find-attribute-element): new function
	(sgml-attrib-menu): new function
	(sgml-tags-menu): pop up a attribute menu if called when point is
	inside a start-tag.
	(sgml-element-attval): new function.
	(sgml-set-live-element-indicator): bind deactivate-mark.

	* psgml.el (sgml-variable-description): new function
	(sgml-variable-type): new function
	(sgml-save-options): use sgml-user-options

	* psgml-parse.el (sgml-find-context-of): don't change point.

Sat May  7 00:24:32 1994  Lennart Staflin  (lenst@dell)

	* psgml-parse.el (sgml-set-parse-state): fix bug that that set
	markup type of start tag for empty element to end-tag.

Fri May  6 22:06:52 1994  Lennart Staflin  (lenst@dell)

	* psgml-parse.el (sgml-parse-minimum-literal): New function
	(sgml-parse-external): use parse-minimum-literal for public
	identifier.
	(sgml-formal-pubid-regexp): simplify, now that
	parse-minimum-literal does the right thing.

	* psgml-dtd.el (sgml-parse-cro): new function
	(sgml-parse-character-reference): new function
	(sgml-parse-parameter-literal): recognize character references

Thu May  5 23:01:17 1994  Lennart Staflin  (lenst@dell)

	* psgml-parse.el (sgml-pubid-parts): %% => %

Mon May  2 21:30:25 1994  Lennart Staflin  (lenst@dell)

	* psgml-parse.el (sgml-find-previous-element): takes optional
	argument: IN-ELEMENT, the enclosing element.
	(sgml-backward-element): use sgml-last-element
	(sgml-find-element-after): take IN-ELEMENT argument
	(sgml-backward-element): use sgml-last-element
	(sgml-beginning-of-element): use sgml-last-element
	(sgml-end-of-element): use sgml-last-element
	(sgml-down-element): use sgml-last-element
	(sgml-users-of-last-element): add new commancds

Thu Apr 28 05:59:13 1994  Lennart Staflin  (lenst@rune)

	* psgml-lucid.el 
	installing patch from Bill P.

Thu Apr 28 05:11:08 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-mode): fix paragraph regexps.

Sun Apr 24 02:00:02 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el: ci 1.46

	* psgml-other.el: ci 1.6

	* psgml-lucid.el: ci 1.7

	* psgml-parse.el (sgml-set-live-element-indicator): new format for
	sgml-active-dtd-indicator. 
	(sgml-options-menu): add a force-mode-line-update.

	* psgml-lucid.el (sgml-build-custom-menus): quote arguments to
	sgml-doctype-insert. 

	* psgml-parse.el (sgml-doctype-insert): insert doctype on empty line.

	* psgml-other.el (sgml-build-custom-menus): quote arguments to
	sgml-doctype-insert.

	* psgml-parse.el (sgml-options-menu): add
	sgml-live-element-indicator.

	* psgml-lucid.el: installing patch from bill p.
	fixing face setting code

	* psgml-parse.el (sgml-fold-region): bind after-change-hook to
	nil.
	Move face setting to emacs specific file.
	Move sgml-insert to emacs specific file.

Sat Apr 23 00:51:10 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el: 
	(sgml-set-parse-state): don't set markup-type to start-tag if
	element has empty start-tag.
	(sgml-fold-element): generalize to markup declaration outside the
	document element.
	(sgml-last-element): new variable.
	(sgml-users-of-last-element): new variable.
	(sgml-set-live-element-indicator): use sgml-last-element if the
	command is one of sgml-users-of-last-element.
	(sgml-backward-up-element): set and use sgml-last-element.
	(sgml-up-element): dito.

	* psgml-parse.el: ci 1.45
	Changing to use overlays for setting face.
	(sgml-set-face-after-change): use overlay
	(sgml-set-face-for): use overlay
	(sgml-clear-faces): new command.
	(sgml-parse-to and sgml-next-trouble-spot): undo changes in 1.44

	* psgml-dtd.el: ci 1.13

	* psgml-parse.el  (ci v 1.44)
        (sgml-set-face-for): set face of region.
	(sgml-set-face-after-change): remove face prop.
	(sgml-set-doctype): set after-change-function.
	(sgml-parse-to): restore buffer modification status after parse,
	in case face changes has modified buffer.
	(sgml-parser-loop): call sgml-set-face-for.
	(sgml-next-trouble-spot): clear faces with sgml-set-face-after-change.
	

Fri Apr 22 03:32:37 1994  Lennart Staflin  (lenst@lysita)

	* psgml-dtd.el (sgml-parse-parameter-literal): fix bug: should not
	recognize delimiter inside parameter reference.

Thu Apr 21 18:42:14 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-operate-on-tags): replaces
	sgml-identify-attributes.
	(sgml-hide-region): new function.
	(sgml-hide-tags): new command.
	(sgml-show-tags): new command.
	(sgml-parse-to): add-hook to pre-command-hook, no longer
	buffer-local.
	(sgml-set-live-element-indicator): new function.
	(sgml-set-active-dtd-indicator): new function.

	* psgml.el (sgml-mode-map): C-M-h sgml-mark-current-element

	* psgml-parse.el (sgml-mark-element): Only set mark after next
	element.
	(sgml-kill-element): Kill from point to after next element.
	(sgml-find-element-after): rewritten.
	(sgml-mark-current-element): new command.

Sun Apr 17 02:35:56 1994  Lennart Staflin  (lenst@dell)

	* psgml-parse.el (sgml-element-attribute-specification-end): new
	function. 

Sat Apr 16 00:59:14 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-is-goal-after-start): undoes change done
	apr 13 for no start-tag.
	(sgml-note-change-at): Prune element with no start-tag if changed
	before first content element.

Thu Apr 14 00:30:47 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-open-element): fixed bug. If new element
	should replace first element in current tree.


Wed Apr 13 20:09:05 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-doctype-insert): allow setting any variable.
	(sgml-find-start-point): set parse state to start of element
	content only if element has a start tag and point is after.

	* psgml.el (sgml-set-local-variable): Also set buffer local variable.
	(psgml-version): bump version.

	* psgml-parse.el: move debugging code to psgml-debug.el.
	(sgml-insert-tag): change white-space fixing.
	(sgml-insert-element): let sgml-insert-tag insert a newline after
	the start-tag.

Tue Apr 12 02:16:42 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-print-valid-tags): new function.
	(sgml-print-list-of-tags): new function.
	(sgml-list-valid-tags): Better display.

Mon Apr 11 00:42:34 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-normalize-start-tag): leave cursor before
	inserted tag
	(sgml-normalize-end-tag): dito.
	(sgml-is-enabled-net): new function.
	(sgml-skip-cdata): check for NET.
	(sgml-parser-loop): check for NET when (R)CDATA.

Sat Apr  9 16:16:59 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-edit-attrib-specification-list): fix
	skipping to next attribute
	(sgml-quote-attribute-value): Anchor regexp at buffer limits
	instead of line.

	* psgml-dtd.el (sgml-check-model-group): set mixed flag when
	parsing a data tag group.
	(sgml-check-model-group): add a skip-ts

	* psgml-parse.el (sgml-do-pcdata): Force instances of #PCDATA
	token be #PCDATA*.
	(sgml-parse-start-tag): remove exludes from includes.

Fri Apr  1 00:01:47 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-parse-start-tag): Let exclusions modify
	acceptance of tokens in the model rather the give a error.

Mon Mar 28 01:16:23 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-untag-element): new command.
	(sgml-kill-markup): new command.
	(sgml-change-element-name): now translates the attribute list.
	(sgml-translate-attribute-specification-list): new function.
	(sgml-attribute-with-declared-value): new function.

	* psgml-dtd.el: Now recognises shortref and usemap.
	Cleaning up how declarations are handled.
	Changing some names.

	* psgml-parse.el (sgml-list-valid-tags): Be more informative.
	(sgml-normalize-content): Factor out tag normalizing.
	(sgml-normalize-start-tag): New function. Insert new attspec.
	(sgml-normalize-end-tag): New function.
	(sgml-check-marked-section): changed name from ..parse..
	(sgml-check-attribute-value-specification): new name.

Sun Mar 27 00:18:43 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-normalize-content): fix bug in closing
	unclosed tag.
	(sgml-pubid-parts): New part %P, whole pubid.
	sgml-tree: net-enabled is t if for current element, non-nil if for
	some parent element.  Constructor now has net-enabled as argument.
	Changed some functions to support new defintion.
	(sgml-load-dtd): don't save expanded file name in
	sgml-default-dtd-file. 
	(sgml-setup-dtd): Don't check if default-dtd-file exists.  Let
	load-dtd give error if it don't.
	(sgml-set-doctype): set sgml-activce-dtd-indicator

	* psgml-dtd.el (sgml-check-model-group): Changed name from
	sgml-parse-mode-group.  Now handles data tag groups.
	(sgml-check-data-tag-pattern): new function.

	* psgml-parse.el: Remove sgml-reset-parse and sgml-setup-buffer.
	(sgml-implied-end-tag): Error if implying end of document with
	anything but the buffer end.

	* psgml-dtd.el (sgml-check-element-type): new function.  Parses
	name or ranked name or name/ranked group.
	(sgml-parse-element-dcl): Use above.

Sat Mar 26 00:57:08 1994  Lennart Staflin  (lenst@lysita)

	* psgml-other.el: New menu entries.

	* psgml-parse.el (sgml-element-attribute-specification-start): new
	function.
	(sgml-element-attribute-specification-list): new function.
	(sgml-edit-attributes): use
	sgml-element-attribute-specification-start.
	(sgml-parser-loop): check sgml-shorttag.
	(sgml-parse-start-tag): check shorttag also choose move before
	included element.
	(sgml-parse-end-tag): check shorttag.
	(sgml-do-implied): check omittag.
	(sgml-implied-end-tag): check omittag.
	(sgml-check-tag-close): new function.
	(sgml-parse-end-tag): use above.  If NET, search for net-enabled=t.
	(sgml-next-trouble-spot): 

	* psgml-dtd.el (sgml-parse-declared-value): Use new attribute types.
	(sgml-parse-default-value): dito.

	* psgml-parse.el (sgml-options-menu): add shorttag.
	Creating Types for Attribute Declaration and 
	Attribute Specification.
	New functions:
	sgml-attdecl-declared-value sgml-attdecl-default-value
	sgml-attdecl-name sgml-attspec-attval sgml-attspec-name
	sgml-declared-value-notation sgml-declared-value-token-group
	sgml-default-value-attval sgml-default-value-type-p
	sgml-lookup-attdecl sgml-make-attdecl sgml-make-attspec
	sgml-make-declared-value sgml-make-default-value  

	(sgml-edit-attrib-specification-list): use new types

	(sgml-edit-attrib-finish): new definition

	(sgml-edit-attrib-specification-list): new function.

	(sgml-attribute-buffer): updated for new types.

	(sgml-find-name-for-value): use sgml-attdecl-xx, etc.

	(sgml-insert-attributes): New function.

	(sgml-quote-attribute-value): Modified..

	(sgml-parse-attribute-specification-list): use sgml-make-attspec.

Wed Mar 23 20:13:21 1994  Lennart Staflin  (lenst@konrad)

	* psgml.el (sgml-save-options): Add sgml-shorttag.

Tue Mar 22 18:28:05 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (psgml-version): bump to 0.4a1
	Make some variables local.

Sun Mar 13 03:52:02 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el
	Bump version.
	(sgml-submit-bug-report): new function. 

	* psgml-parse.el (sgml-edit-attrib-field-end): use
	sgml-edit-attrib-field-start and then check point+1, this to work
	in Lucid Emacs 19.9.
	(sgml-attribute-buffer): remove some properties
	(sgml-insert): fix Lucid extents.

Sat Mar 12 02:07:52 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-change-element-name): remove "*".
	(sgml-attribute-buffer): make category rear-nonsticky

Fri Mar 11 01:40:44 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-validate): save some buffers.
	(sgml-offer-save): option for above.

Thu Mar 10 02:40:44 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-last-closed-element): find the last closed
	element, for use by empty start-tag when OMITTAG NO.
	(sgml-parse-start-tag): check sgml-omittag and call
	sgml-last-closed-element.
	(sgml-complete): add declaration names.

Mon Mar  7 06:39:25 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-fill-region): make it give up if it can`t
	fill.

Sat Mar  5 12:38:58 1994  unknown  (lenst@lysita)

	* psgml-lucid.el (x-popup-menu): reverse constructed menu.

	* psgml-parse.el (sgml-doctype-insert): moved it here from
	psgml.el.  Set sgml-top-tree to nil, as there is now a new DTD.

Fri Mar  4 00:52:15 1994  Lennart Staflin  (lenst@lysita)

	* psgml-lucid.el (sgml-sgml-menu): Adding fill-element and
	normalize to menu.

Thu Mar  3 23:20:17 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-set-local-variable): set case fold search to t.

Sat Feb 26 19:14:25 1994  Lennart Staflin  (lenst@dell)

	* psgml-parse.el (sgml-parse-attribute-specification-list): check
	that name is not nil, as it may be returned by
	sgml-find-name-for-value.

Wed Feb 23 19:03:24 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-normalize-content): fix unclosed end tags.
	(sgml-parse-end-tag): skip SPACE after name.
	(sgml-do-fill): get fresh parse trees after posible change.  Don't
	use sgml-map-content.

Tue Feb 22 16:27:26 1994  Lennart Staflin  (lenst@lysita)

	* psgml-lucid.el: new file.

	* psgml-other.el: new file.

	* psgml-parse.el: 
 	Installing changes for lucid compatibility (patches from William
	Perry).

	* psgml.el (sgml-parent-document): Moved here.
 	Installing changes for lucid compatibility (patches from William
	Perry).

Fri Feb 18 16:14:01 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-set-global): new function.
	(sgml-set-local): new function.
	(sgml-read-dtd): use sgml-set-global.
	(sgml-load-dtd): use the two new functions.
	(sgml-setup-dtd): new function, does some things previously done
	in sgml-parse-to.
	(sgml-parse-to): call above function.

Wed Feb 16 18:38:14 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-indent-or-tab): moved from psgml-parse.

Sat Feb 12 00:04:21 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-find-previous-element): don't try to parse
	to pos+1, use sgml-element-end insted.  pos+1 is no good if pos is
	point-max.  sgml-element-end may parse more than needed.

Fri Feb 11 01:01:35 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-normalize-content): expand empty start tag.
	(sgml-load-dtd): fix problem with wrong slected buffer when
	expanding file name.

	* psgml-dtd.el (sgml-save-dtd): set sgml-loaded-dtd.
	(sgml-code-dtd): use sgml-buffer-doctype variable.

	* psgml-parse.el (sgml-load-dtd): reuse loaded dtd from other
	buffer if possible.
	(sgml-skip-doctype): remove call to parse-prolog.
	(sgml-parse-to): if not top tree, load dtd or parse prolog.
	(sgml-buffer-doctype-state): remove.
	(sgml-buffer-doctyp): new variable, copy of argument to set-doctype.
	(sgml-doctype-state): remove.
	(sgml-set-doctype): set sgml-buffer-doctype.
	(sgml-entities-menu): add a call to (sgml-need-dtd).
	(sgml-need-dtd): new function.

Thu Feb 10 05:04:58 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-tags-menu): use new option.

	* psgml.el (sgml-tag-region-if-active): new option.

Thu Feb 10 00:19:33 1994  Lennart Staflin  (lenst@ruben)

	* psgml.el (sgml-mode-map): bind TAB

	* psgml-parse.el (sgml-indent-or-tab): new command, bind to TAB.

	* psgml-dtd.el (sgml-parse-nametoken-group): don't assume
	sgml-check-nametoken skips leading PS.
	(sgml-parse-entity-text): fix marked section type.

	* psgml-parse.el (sgml-parse-nametoken-string): new function.
	(sgml-gname-symbol): new function.
	(sgml-check-nametoken): use above functions.
	(sgml-parse-attribute-specification-list): use
	sgml-parse-nametoken-string. 
	(sgml-parse-attribute-value-specification): dito.
	(sgml-find-name-for-value): take and return string.
	(sgml-quote-attribute-value): new function.
	(sgml-extract-attribute-value): take TYPE argument; don't do
	quoting.
	(sgml-edit-attrib-finish): use sgml-gname-symbol insted of intern
	and use sgml-quote-attribute-value when inserting value.

Wed Feb  9 23:03:54 1994  Lennart Staflin  (lenst@ruben)

	* psgml-parse.el (sgml-note-change-at): don't set end of element
	to nil if the element is empty.

Wed Feb  9 07:28:05 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-note-change-at): fix bug if change in
	tag/data implying end tag.
	(sgml-parser-loop): pass empty start tag to sgml-parse-start-tag.
	(sgml-set-doctype): save document-element in a variable.
	(sgml-is-start-tag): recognize empty start tag.
	(sgml-parse-start-tag): handel empty start tag.

Sun Feb  6 19:01:32 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-insert): new function.
	(sgml-attribute-buffer): use insert insted of print, also sets
	properties for inserted text.
	(sgml-attribute-value-list): use properties.
	(sgml-extract-attribute-value): dito.
	(sgml-edit-attrib-default): new function.
	(sgml-edit-attrib-field-start): new function.
	(sgml-edit-attrib-next): new fuction.
	(sgml-suppress-warning): fix spelling.

	* psgml.el (sgml-mode): handle the case that sgml-default-dtd-file
	returns nil.
	('sgml-default): set property for face.
	('sgml-fixed): dito.

Sat Feb  5 05:35:16 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-mode): change comment-start-skip.

	* psgml-parse.el (sgml-what-element): new function.
	(sgml-map-content): new function.

	* psgml.el (sgml-normalize-trims): new option.

	* psgml-parse.el (sgml-element-next): fix bug in condition.

Sat Feb  5 03:06:45 1994  Lennart Staflin  (lenst@robin)

	* psgml-parse.el (sgml-log-message): use set-buffer and insert
	insted of print.
	(sgml-insert-element): Leave point at first innermost element,
	also indicate required elements and suppress warnings.
	(sgml-find-name-for-value): add missing car.

Fri Feb  4 21:27:17 1994  Lennart Staflin  (lenst@robin)

	* xtra.el (sgml-normalize-element): new command to normalize an
	element. 
	(sgml-normalize): takes optional argument, element to normalize.
	(sgml-normalize-content): takes third argument, ONLY-FIRST, if
	true only normalize first element.

Fri Feb  4 00:25:03 1994  Lennart Staflin  (lenst@lysita)

 	* psgml-parse.el (sgml-element-content): new function.
	(sgml-element-context-string): new function, will replace
	sgml-context-as-rec.
	(sgml-indent-line): take extra argument ELEMENT, to take level
	from element.  Also som code rewritten.
	(sgml-start-tag-of): take parse tree also
	(sgml-end-tag-of): dito.
	lot of changes to make a sgml-element view of parse tree.
	(sgml-indent-line): check data status of parent if at start tag.

Thu Feb  3 01:27:30 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-element-empty): new function, will replace
	sgml-element-empty-p. 
	(sgml-set-parse-state): use sgml-element-empty.
	(sgml-open-element): use sgml-element-empty.
	(sgml-alias-fields): alias some sgml-tree- fields as sgml-element-
	fields. 
	(sgml-element-model): new function.
	(sgml-element-data-p): new fucntion.

	* xtra.el (sgml-normalize-content): make it less recursive.

	* psgml-dtd.el (sgml-code-number): fix misspelling of single.

Wed Feb  2 19:27:50 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-read-number): use following-char insted of
	binding a variable.
	(sgml-buffer-entities): make buffer local.

	* psgml.el (psgml-version): new var.

Mon Jan 31 02:23:14 1994  Lennart Staflin  (lenst@lysita)

	* xtra.el (sgml-normalize): new function.
	(sgml-normalize-content): new function.

Sun Jan 30 23:49:08 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-read-number): change to defsubst.

	* psgml.el (sgml-default-dtd-file): handle (buffer-file-name) is
	nil.

Wed Jan 26 23:17:51 1994  Lennart Staflin  (lenst@astrid)

	* psgml-dtd.el (sgml-make-alt): avoid multiple moves for same
	token. 

Sun Jan 23 20:57:15 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-parse-to): set pre-command-hook.
	(sgml-fold-element): ignore blanks at end of element

Fri Jan 14 05:29:44 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-external-file): fixing typo in error
	message and clearifying it.

Thu Jan 13 00:02:11 1994  Lennart Staflin  (lenst@dell)

	* psgml-parse.el (sgml-find-element-of): signal error if pos is
	end of buffer.
	(sgml-pubid-parts): allow \t and \n as SPACE after text class.
	(sgml-parse-to): remove setting before-change-hook.
	(sgml-set-doctype): add setq before-change-hook.
	(sgml-push-to-param): record file name for external parameters.
	Warn about undefined parameters.

Wed Jan 12 22:36:36 1994  Lennart Staflin  (lenst@dell)

	* psgml-parse.el (sgml-options-menu): add new option.
	(sgml-find-element-after): rewritten.

	* psgml.el (sgml-doctype-insert): new function.
	(sgml-mode): build DTD menu also.
	(sgml-always-quote-attributes): new option.

Tue Jan 11 04:49:18 1994  Lennart Staflin  (lenst@dell)

	* psgml.el (sgml-max-menu-size): new user option.

	* psgml-dtd.el (sgml-parse-prolog): set sgml-entities and
	sgml-buffer-entities.  Sort entities also.
	(sgml-code-dtd): code entites also.
	(sgml-parse-entity-dcl): save entity names on sgml-entities.

	* psgml-parse.el (sgml-entities-menu): new function.
	(sgml-split-menu): new function.
	(sgml-read-dtd): set sgml-entities and sgml-buffer-entities. 

	* psgml-dtd.el (sgml-save-dtd): set default dtd file.

Tue Jan 11 00:11:36 1994  Lennart Staflin  (lenst@lysita)

	* psgml-parse.el (sgml-parse-attribute-specification-list): Now
	takes the element-type as argument.
	(sgml-find-name-for-value): dito.
	(sgml-edit-attributes): use sgml-find-element-of, will
	automatically load DTD if needed.
	(sgml-parser-loop): remove code to close elements at end of buffer.
	(sgml-parse-until-end-of): close elements at end of buffer.

Mon Jan 10 22:56:02 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el: move all code for parsing and commands using parsing
	to psgml-parse.el.  Added autoloads for moved commands.

	* psgml-parse.el: new file with the parsing stuff and commands
	that use parsing from psgml.el.
	(sgml-check-nametoken): moved here from psgml-dtd.el

Sun Jan  9 01:59:20 1994  Lennart Staflin  (lenst@dell)

	* psgml.el: A lot of changes.
	File has been split, psgml-dtd.el handles DTD parsing and saving.
	Code to load a saved DTD added.  Some optimizations are now done
	while building the DFAs.
	(sgml-close-element): allow ending top-tree if at end of buffer.
	(sgml-insert-element): leave point after last start tag.
	(sgml-log-message): record log size if buffer has a window.
	(sgml-log-warning): use log-message.
	(sgml-error): use log-warning.
	(sgml-mode): don't set pre-command-hook


Sat Jan  8 03:02:19 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-skip-markup-declaration): new function.
	(sgml-skip-sgml-dcl): use above function.
	(sgml-parse-prolog): use sgml-skip-dcl
	(sgml-parse-dtd-subset): use sgml-skip-markup-declaration
	(sgml-fold-element): Use sgml-skip-markup-declaration
	(sgml-current-list-of-valid-elements): sort the list.

Sat Jan  8 00:30:53 1994  Lennart Staflin  (lenst@konrad)

	* psgml.el (sgml-make-alt): use f to test insted of s1.

Wed Jan  5 23:39:58 1994  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-parse-parameter-literal): installing patch from
	James Clark; fixing contextual constraints for %.
	(sgml-&node-next): now as macro.
	(sgml-&node-dfas): dito.

Mon Dec 20 23:17:39 1993  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-with-parser-syntax): put a progn around the body.
	(sgml-parse-dtd-subset): Patch from James Clark; spelling
	correction.
	(sgml-parse-entity-text): Patch from James Clark; parsing external
	entitys. 


Sun Dec 19 18:56:09 1993  Lennart Staflin  (lenst@lysita)

	* psgml.el (sgml-find-element-after): rewritten not to loop at end
	of buffer and to also look for element after in parent if pos is
	at the end of its containing element.
	(sgml-element-end): return point-max if end of tree is undefined
	even after parsing.
	(sgml-element-next): new function, as sgml-tree-next but may parse
	to return a value.
	(sgml-insert-end-tag): insert NET if element opend with
	net-enabling start tag.
	(sgml-reset-log): new function to be called from pre-command-hook
	(sgml-parse-attlist): only reverse attlist once


Thu Dec 16 23:37:22 1993  Lennart Staflin  (lenst@astrid)

	* psgml.el (sgml-tag-region): don't change point in interactive.
	And don't bother to parse.
