Only insert XML declarations in nxml-mode when the buffer is empty
* lisp/nxml/nxml-mode.el (nxml-mode): Don't insert the XML declaration unless it's an empty buffer (bug#24978). This avoids the problem of the declaration being inserted by mistake when opening XML files from archives and the like -- the file doesn't exist on the file system there, either, so it would typically lead to doubled XML declarations.
This commit is contained in:
parent
60511bd89d
commit
d4fce73943
1 changed files with 3 additions and 6 deletions
|
@ -530,16 +530,13 @@ Many aspects this mode can be customized using
|
|||
(setq-local syntax-propertize-function #'nxml-syntax-propertize)
|
||||
(add-hook 'change-major-mode-hook #'nxml-cleanup nil t)
|
||||
|
||||
;; Emacs 23 handles the encoding attribute on the xml declaration
|
||||
;; transparently to nxml-mode, so there is no longer a need for the below
|
||||
;; hook. The hook also had the drawback of overriding explicit user
|
||||
;; instruction to save as some encoding other than utf-8.
|
||||
;;(add-hook 'write-contents-hooks #'nxml-prepare-to-save)
|
||||
(when (not (and (buffer-file-name) (file-exists-p (buffer-file-name))))
|
||||
(when (and nxml-default-buffer-file-coding-system
|
||||
(not (local-variable-p 'buffer-file-coding-system)))
|
||||
(setq buffer-file-coding-system nxml-default-buffer-file-coding-system))
|
||||
(when nxml-auto-insert-xml-declaration-flag
|
||||
;; When starting a new file, insert the XML declaraction.
|
||||
(when (and nxml-auto-insert-xml-declaration-flag
|
||||
(zerop (buffer-size)))
|
||||
(nxml-insert-xml-declaration)))
|
||||
|
||||
(setq font-lock-defaults
|
||||
|
|
Loading…
Add table
Reference in a new issue