--- ./psgml-debug.el.orig Sun Mar 6 01:23:40 2005 +++ ./psgml-debug.el Tue May 3 15:49:29 2005 @@ -18,9 +18,9 @@ ;;;; Debugging -(define-key sgml-mode-map "\C-c," 'sgml-goto-cache) -(define-key sgml-mode-map "\C-c\C-x" 'sgml-dump-tree) -(define-key sgml-mode-map "\C-c." 'sgml-shortref-identify) +(define-key psgml-mode-map "\C-c," 'sgml-goto-cache) +(define-key psgml-mode-map "\C-c\C-x" 'sgml-dump-tree) +(define-key psgml-mode-map "\C-c." 'sgml-shortref-identify) (defun sgml-this-element () (interactive) --- ./psgml-edit.el.orig Sun Mar 6 01:23:40 2005 +++ ./psgml-edit.el Tue May 3 15:49:29 2005 @@ -2002,7 +2002,7 @@ (sgml-entity-type entity) (sgml-entity-name entity))) (goto-char (point-min)) - (sgml-mode) + (psgml-mode) (setq sgml-parent-document (cons parent ppos)) ;; update the live element indicator of the new window (sgml-parse-to-here))) --- ./psgml-lucid.el.orig Sun Mar 6 01:23:40 2005 +++ ./psgml-lucid.el Tue May 3 15:49:29 2005 @@ -157,7 +157,7 @@ ;;;; Key definitions -(define-key sgml-mode-map [button3] 'sgml-tags-menu) +(define-key psgml-mode-map [button3] 'sgml-tags-menu) ;;;; Insert with properties --- ./psgml-other.el.orig Sun Mar 6 01:23:40 2005 +++ ./psgml-other.el Tue May 3 15:51:58 2005 @@ -40,10 +40,10 @@ ;;;; Key Commands ;; Doesn't this work in Lucid? *** -(define-key sgml-mode-map [?\M-\C-\ ] 'sgml-mark-element) +(define-key psgml-mode-map [?\M-\C-\ ] 'sgml-mark-element) -;;(define-key sgml-mode-map [S-mouse-3] 'sgml-tags-menu) -(define-key sgml-mode-map [S-mouse-3] 'sgml-right-menu) +;;(define-key psgml-mode-map [S-mouse-3] 'sgml-tags-menu) +(define-key psgml-mode-map [S-mouse-3] 'sgml-right-menu) ;;;; Pop Up Menus @@ -148,8 +148,8 @@ (sgml-use-text-properties (sgml-with-modification-state (put-text-property start end 'face face) - (when (and sgml-default-nonsticky (< start end)) - (put-text-property (1- end) end 'rear-nonsticky '(face))))) + (when (and (not modified) (buffer-modified-p)) + (set-buffer-modified-p nil)))) (t (let ((current (overlays-at start)) (pos start) --- ./psgml-parse.el.orig Sun Mar 6 01:23:40 2005 +++ ./psgml-parse.el Tue May 3 15:49:29 2005 @@ -40,7 +40,6 @@ (autoload 'sgml-do-usemap-element "psgml-dtd") (autoload 'sgml-write-dtd "psgml-dtd") (autoload 'sgml-check-dtd-subset "psgml-dtd") ) - (eval-when-compile (require 'cl)) @@ -1553,7 +1552,7 @@ (and (not (eobp)) (sgml-startnm-char (following-char)))) -(defun sgml-name-char (c) +(defun psgml-name-char (c) (and c (or (sgml-startnm-char c) (eq ?_ (char-syntax c))))) @@ -1709,7 +1708,7 @@ (defun sgml-parse-nametoken (&optional entity-name) "Parses a name token and returns a string or nil if no nametoken." - (if (sgml-name-char (following-char)) + (if (psgml-name-char (following-char)) (let ((name (buffer-substring-no-properties (point) (progn (skip-syntax-forward "w_") --- ./psgml.el.orig Sun Mar 6 01:23:40 2005 +++ ./psgml.el Tue May 3 15:56:44 2005 @@ -203,7 +203,7 @@ (put 'sgml-auto-activate-dtd 'sgml-desc "Auto Activate DTD") (defvar sgml-offer-save t - "*If non-nil, ask about saving modified buffers before \\[sgml-validate] is run.") + "*If non-nil, ask about saving modified buffers before \\[psgml-validate] is run.") (defvar sgml-parent-document nil "*How to handle the current file as part of a bigger document. @@ -432,7 +432,7 @@ (defvar sgml-default-dtd-file nil "*This is the default file name for saved DTD. -This is set by sgml-mode from the buffer file name. +This is set by psgml-mode from the buffer file name. Can be changed in the Local variables section of the file.") (put 'sgml-default-dtd-file 'sgml-type 'string) (put 'sgml-default-dtd-file 'sgml-desc "Default (saved) DTD File") @@ -498,7 +498,7 @@ ;;; Its error messages can be parsed by next-error. ;;; The -s option suppresses output. -(defvar sgml-validate-command "nsgmls -s %s %s" +(defvar psgml-validate-command "nsgmls -s %s %s" "*The shell command to validate an SGML document. This is a `format' control string that by default should contain two @@ -510,7 +510,7 @@ If `sgml-validate-files' is non-nil, the format string should contain one `%s' conversion specification for each element of its result. -If sgml-validate-command is a list, then every element should be a +If psgml-validate-command is a list, then every element should be a string. The strings will be tried in order and %-sequences in the string will be replaced according to the list below, if the string contains %-sequences with no replacement value the next string will be tried. @@ -519,14 +519,14 @@ %s means the SGML declaration specified in the sgml-declaration variable %d means the file containing the DOCTYPE declaration, if not in the buffer ") -(make-variable-buffer-local 'sgml-validate-command) +(make-variable-buffer-local 'psgml-validate-command) (defvar sgml-xml-validate-command "nsgmls -wxml -s %s %s" "*The default for `sgml-validate-command' in XML mode.") (defvar sgml-validate-files nil "If non-nil, a function of no arguments that returns a list of file names. -These file names will serve as the arguments to the `sgml-validate-command' +These file names will serve as the arguments to the `psgml-validate-command' format control string instead of the defaults.") (defvar sgml-validate-error-regexps @@ -534,7 +534,7 @@ ("\\(error\\|warning\\) at \\([^,]+\\), line \\([0-9]+\\)" 2 3) ("\n[a-zA-Z]?:?[^0-9 \n\t:]+:[ \t]*\\([^ \n\t:]+\\):\ \\([0-9]+\\):\\(\\([0-9]+\\)[: \t]\\)?" 1 2 4)) - "Alist of regexps to recognize error messages from `sgml-validate'. + "Alist of regexps to recognize error messages from `psgml-validate'. See `compilation-error-regexp-alist'.") (defvar sgml-declaration nil @@ -545,10 +545,10 @@ "*If non-nil, the name of the SGML declaration for XML files.") (put 'sgml-xml-declaration 'sgml-type 'file-or-nil) -(defvar sgml-mode-hook nil - "A hook or list of hooks to be run when entering sgml-mode") +(defvar psgml-mode-hook nil + "A hook or list of hooks to be run when entering psgml-mode") -(defvar sgml-mode-map nil +(defvar psgml-mode-map nil "Keymap for SGML mode") (defvar sgml-show-context-function @@ -596,7 +596,7 @@ sgml-recompile-out-of-date-cdtd sgml-default-doctype-name sgml-declaration - sgml-validate-command + psgml-validate-command sgml-markup-faces sgml-system-identifiers-are-preferred sgml-trace-entity-lookup @@ -611,7 +611,7 @@ ;;; Internal variables (defvar sgml-validate-command-history nil - "The minibuffer history list for `sgml-validate''s COMMAND argument.") + "The minibuffer history list for `psgml-validate''s COMMAND argument.") (defvar sgml-active-dtd-indicator nil "Displayed in the mode line") @@ -687,7 +687,7 @@ t)))) (defun sgml-save-options () - "Save user options for SGML mode that have buffer local values." + "Save user options for PSGML mode that have buffer local values." (interactive) (loop for var in sgml-file-options do (when (sgml-valid-option var) @@ -819,7 +819,7 @@ ;;;; SGML mode: syntax table -(defvar sgml-mode-syntax-table +(defvar psgml-mode-syntax-table (let ((s (copy-syntax-table text-mode-syntax-table))) (modify-syntax-entry ?< "." s) (modify-syntax-entry ?> "." s) @@ -828,73 +828,73 @@ ;;;; SGML mode: keys and menus -(if sgml-mode-map +(if psgml-mode-map () - (setq sgml-mode-map (make-sparse-keymap))) + (setq psgml-mode-map (make-sparse-keymap))) -(defvar sgml-prefix-f-map (make-sparse-keymap)) -(defvar sgml-prefix-u-map (make-sparse-keymap)) +(defvar psgml-prefix-f-map (make-sparse-keymap)) +(defvar psgml-prefix-u-map (make-sparse-keymap)) -(define-key sgml-mode-map "\C-c\C-f" sgml-prefix-f-map) -(define-key sgml-mode-map "\C-c\C-u" sgml-prefix-u-map) +(define-key psgml-mode-map "\C-c\C-f" psgml-prefix-f-map) +(define-key psgml-mode-map "\C-c\C-u" psgml-prefix-u-map) ;;; Key commands -(define-key sgml-mode-map "\t" 'sgml-indent-or-tab) -;(define-key sgml-mode-map "<" 'sgml-insert-tag) -(define-key sgml-mode-map ">" 'sgml-close-angle) -(define-key sgml-mode-map "/" 'sgml-slash) -(define-key sgml-mode-map "\C-c#" 'sgml-make-character-reference) -(define-key sgml-mode-map "\C-c-" 'sgml-untag-element) -(define-key sgml-mode-map "\C-c+" 'sgml-insert-attribute) -(define-key sgml-mode-map "\C-c/" 'sgml-insert-end-tag) -(define-key sgml-mode-map "\C-c<" 'sgml-insert-tag) -(define-key sgml-mode-map "\C-c=" 'sgml-change-element-name) -(define-key sgml-mode-map "\C-c\C-a" 'sgml-edit-attributes) -(define-key sgml-mode-map "\C-c\C-c" 'sgml-show-context) -(define-key sgml-mode-map "\C-c\C-d" 'sgml-next-data-field) -(define-key sgml-mode-map "\C-c\C-e" 'sgml-insert-element) -(define-key sgml-mode-map "\C-c\C-f\C-e" 'sgml-fold-element) -(define-key sgml-mode-map "\C-c\C-f\C-r" 'sgml-fold-region) -(define-key sgml-mode-map "\C-c\C-f\C-s" 'sgml-fold-subelement) -(define-key sgml-mode-map "\C-c\C-f\C-x" 'sgml-expand-element) -(define-key sgml-mode-map "\C-c\C-i" 'sgml-add-element-to-element) -(define-key sgml-mode-map "\C-c\C-k" 'sgml-kill-markup) -(define-key sgml-mode-map "\C-c\r" 'sgml-split-element) -(define-key sgml-mode-map "\C-c\C-n" 'sgml-up-element) -(define-key sgml-mode-map "\C-c\C-o" 'sgml-next-trouble-spot) -(define-key sgml-mode-map "\C-c\C-p" 'sgml-load-doctype) -(define-key sgml-mode-map "\C-c\C-q" 'sgml-fill-element) -(define-key sgml-mode-map "\C-c\C-r" 'sgml-tag-region) -(define-key sgml-mode-map "\C-c\C-s" 'sgml-show-structure) -;(define-key sgml-mode-map "\C-c\C-t" 'sgml-list-valid-tags) -(define-key sgml-mode-map "\C-c\C-t" 'sgml-show-current-element-type) -(define-key sgml-mode-map "\C-c\C-u\C-a" 'sgml-unfold-all) -(define-key sgml-mode-map "\C-c\C-u\C-d" 'sgml-custom-dtd) -(define-key sgml-mode-map "\C-c\C-u\C-e" 'sgml-unfold-element) -(define-key sgml-mode-map "\C-c\C-u\C-l" 'sgml-unfold-line) -(define-key sgml-mode-map "\C-c\C-u\C-m" 'sgml-custom-markup) -(define-key sgml-mode-map "\C-c\C-v" 'sgml-validate) -(define-key sgml-mode-map "\C-c\C-w" 'sgml-what-element) -(define-key sgml-mode-map "\C-c\C-z" 'sgml-trim-and-leave-element) - -(define-key sgml-mode-map "\e\C-a" 'sgml-beginning-of-element) -(define-key sgml-mode-map "\e\C-e" 'sgml-end-of-element) -(define-key sgml-mode-map "\e\C-f" 'sgml-forward-element) -(define-key sgml-mode-map "\e\C-b" 'sgml-backward-element) -(define-key sgml-mode-map "\e\C-d" 'sgml-down-element) -(define-key sgml-mode-map "\e\C-u" 'sgml-backward-up-element) -(define-key sgml-mode-map "\e\C-k" 'sgml-kill-element) -(define-key sgml-mode-map "\e\C-@" 'sgml-mark-element) -;;(define-key sgml-mode-map [?\M-\C-\ ] 'sgml-mark-element) -(define-key sgml-mode-map [(meta control h)] 'sgml-mark-current-element) -(define-key sgml-mode-map "\e\C-t" 'sgml-transpose-element) -(define-key sgml-mode-map "\M-\t" 'sgml-complete) +(define-key psgml-mode-map "\t" 'sgml-indent-or-tab) +;(define-key psgml-mode-map "<" 'sgml-insert-tag) +(define-key psgml-mode-map ">" 'sgml-close-angle) +(define-key psgml-mode-map "/" 'psgml-slash) +(define-key psgml-mode-map "\C-c#" 'sgml-make-character-reference) +(define-key psgml-mode-map "\C-c-" 'sgml-untag-element) +(define-key psgml-mode-map "\C-c+" 'sgml-insert-attribute) +(define-key psgml-mode-map "\C-c/" 'sgml-insert-end-tag) +(define-key psgml-mode-map "\C-c<" 'sgml-insert-tag) +(define-key psgml-mode-map "\C-c=" 'sgml-change-element-name) +(define-key psgml-mode-map "\C-c\C-a" 'sgml-edit-attributes) +(define-key psgml-mode-map "\C-c\C-c" 'sgml-show-context) +(define-key psgml-mode-map "\C-c\C-d" 'sgml-next-data-field) +(define-key psgml-mode-map "\C-c\C-e" 'sgml-insert-element) +(define-key psgml-mode-map "\C-c\C-f\C-e" 'sgml-fold-element) +(define-key psgml-mode-map "\C-c\C-f\C-r" 'sgml-fold-region) +(define-key psgml-mode-map "\C-c\C-f\C-s" 'sgml-fold-subelement) +(define-key psgml-mode-map "\C-c\C-f\C-x" 'sgml-expand-element) +(define-key psgml-mode-map "\C-c\C-i" 'sgml-add-element-to-element) +(define-key psgml-mode-map "\C-c\C-k" 'sgml-kill-markup) +(define-key psgml-mode-map "\C-c\r" 'sgml-split-element) +(define-key psgml-mode-map "\C-c\C-n" 'sgml-up-element) +(define-key psgml-mode-map "\C-c\C-o" 'sgml-next-trouble-spot) +(define-key psgml-mode-map "\C-c\C-p" 'sgml-load-doctype) +(define-key psgml-mode-map "\C-c\C-q" 'sgml-fill-element) +(define-key psgml-mode-map "\C-c\C-r" 'sgml-tag-region) +(define-key psgml-mode-map "\C-c\C-s" 'sgml-show-structure) +;(define-key psgml-mode-map "\C-c\C-t" 'sgml-list-valid-tags) +(define-key psgml-mode-map "\C-c\C-t" 'sgml-show-current-element-type) +(define-key psgml-mode-map "\C-c\C-u\C-a" 'sgml-unfold-all) +(define-key psgml-mode-map "\C-c\C-u\C-d" 'sgml-custom-dtd) +(define-key psgml-mode-map "\C-c\C-u\C-e" 'sgml-unfold-element) +(define-key psgml-mode-map "\C-c\C-u\C-l" 'sgml-unfold-line) +(define-key psgml-mode-map "\C-c\C-u\C-m" 'sgml-custom-markup) +(define-key psgml-mode-map "\C-c\C-v" 'psgml-validate) +(define-key psgml-mode-map "\C-c\C-w" 'sgml-what-element) +(define-key psgml-mode-map "\C-c\C-z" 'sgml-trim-and-leave-element) + +(define-key psgml-mode-map "\e\C-a" 'sgml-beginning-of-element) +(define-key psgml-mode-map "\e\C-e" 'sgml-end-of-element) +(define-key psgml-mode-map "\e\C-f" 'sgml-forward-element) +(define-key psgml-mode-map "\e\C-b" 'sgml-backward-element) +(define-key psgml-mode-map "\e\C-d" 'sgml-down-element) +(define-key psgml-mode-map "\e\C-u" 'sgml-backward-up-element) +(define-key psgml-mode-map "\e\C-k" 'sgml-kill-element) +(define-key psgml-mode-map "\e\C-@" 'sgml-mark-element) +;;(define-key psgml-mode-map [?\M-\C-\ ] 'sgml-mark-element) +(define-key psgml-mode-map [(meta control h)] 'sgml-mark-current-element) +(define-key psgml-mode-map "\e\C-t" 'sgml-transpose-element) +(define-key psgml-mode-map "\M-\t" 'sgml-complete) ;;;; Menu bar (easy-menu-define - sgml-main-menu sgml-mode-map "Main menu" + sgml-main-menu psgml-mode-map "Main menu" '("SGML" ["Parse DTD" sgml-parse-prolog t] ("DTD Info" @@ -921,7 +921,7 @@ ["Show Context" sgml-show-context t] ["What Element" sgml-what-element t] ["List Valid Tags" sgml-list-valid-tags t] - ["Validate" sgml-validate t] + ["Validate" psgml-validate t] "--" ("Move" ["Next trouble spot" sgml-next-trouble-spot t] @@ -1100,12 +1100,12 @@ ;;;; SGML mode: major mode definition -;;; This section is mostly from sgml-mode by James Clark. +;;; This section is mostly from psgml-mode by James Clark. ;;;###autoload -(defun sgml-mode () +(defun psgml-mode () "Major mode for editing SGML. -\\Makes > display the matching <. Makes / display matching /. +\\Makes > display the matching <. Makes / display matching /. Use \\[sgml-validate] to validate your document with an SGML parser. You can find information with: @@ -1170,14 +1170,14 @@ \\[sgml-validate] is run. All bindings: -\\{sgml-mode-map}" +\\{psgml-mode-map}" (interactive) (kill-all-local-variables) (setq sgml-xml-p nil) (setq local-abbrev-table sgml-mode-abbrev-table) - (use-local-map sgml-mode-map) + (use-local-map psgml-mode-map) (setq mode-name "SGML") - (setq major-mode 'sgml-mode) + (setq major-mode 'psgml-mode) ;; A start or end tag by itself on a line separates a paragraph. ;; This is desirable because SGML discards a newline that appears @@ -1194,13 +1194,13 @@ (set (make-local-variable 'paragraph-start) paragraph-separate) - (set-syntax-table sgml-mode-syntax-table) + (set-syntax-table psgml-mode-syntax-table) (make-local-variable 'comment-start) (setq comment-start "") (make-local-variable 'comment-indent-function) - (setq comment-indent-function 'sgml-comment-indent) + (setq comment-indent-function 'psgml-comment-indent) (make-local-variable 'comment-start-skip) ;; This will allow existing comments within declarations to be ;; recognized. [Does not work well with auto-fill, Lst/940205] @@ -1237,7 +1237,7 @@ (make-local-hook 'activate-menubar-hook)) (add-hook 'activate-menubar-hook 'sgml-update-all-options-menus nil 'local) - (run-hooks 'text-mode-hook 'sgml-mode-hook) + (run-hooks 'text-mode-hook 'psgml-mode-hook) (easy-menu-add sgml-main-menu) (sgml-build-custom-menus)) @@ -1246,7 +1246,7 @@ ;; leading xml PI. -- fx ;;;###autoload -(define-derived-mode xml-mode sgml-mode "XML" +(define-derived-mode pxml-mode psgml-mode "XML" "Major mode for editing XML, specialized from SGML mode. Sets various variables appropriately for XML. @@ -1265,7 +1265,7 @@ (setq sgml-namecase-general nil) (setq sgml-minimize-attributes nil) (setq sgml-always-quote-attributes t) - (setq sgml-validate-command sgml-xml-validate-command) + (setq psgml-validate-command sgml-xml-validate-command) (make-local-variable 'sgml-declaration) (setq sgml-declaration sgml-xml-declaration)) @@ -1280,7 +1280,7 @@ base)) ".ced")))) -(defun sgml-comment-indent () +(defun psgml-comment-indent () (if (and (looking-at "--") (not (and (eq (char-after (1- (point))) ?!) (eq (char-after (- (point) 2)) ?<)))) @@ -1289,7 +1289,7 @@ (max comment-column (1+ (current-column)))) 0)) -(defconst sgml-start-tag-regex +(defconst psgml-start-tag-regex (if sgml-have-re-char-clases "<[_[:alpha:]]\\([-:.[:alnum:]= \n\t]\\|\"[^\"]*\"\\|'[^']*'\\)*" "<[_A-Za-z]\\([-:.A-Za-z0-9= \n\t]\\|\"[^\"]*\"\\|'[^']*'\\)*") @@ -1363,7 +1363,7 @@ "<\\(\\?\\|/?[A-Za-z>]\\|!\\([[A-Za-z]\\|--\\)\\)"))) ;; Check that it's not a net-enabling start tag ;; nor an unclosed start-tag. - (looking-at (concat sgml-start-tag-regex "[/<]")) + (looking-at (concat psgml-start-tag-regex "[/<]")) ;; Nor an unclosed end-tag. (looking-at (if sgml-have-re-char-clases "