diff options
Diffstat (limited to 'lisp/nxml/nxml-util.el')
| -rw-r--r-- | lisp/nxml/nxml-util.el | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/lisp/nxml/nxml-util.el b/lisp/nxml/nxml-util.el index b2d9cdde183..6ba6d21f7ed 100644 --- a/lisp/nxml/nxml-util.el +++ b/lisp/nxml/nxml-util.el | |||
| @@ -78,27 +78,6 @@ This is the inverse of `nxml-make-namespace'." | |||
| 78 | (nxml-degrade ,context ,error-symbol)))) | 78 | (nxml-degrade ,context ,error-symbol)))) |
| 79 | `(progn ,@body))) | 79 | `(progn ,@body))) |
| 80 | 80 | ||
| 81 | (defmacro nxml-with-unmodifying-text-property-changes (&rest body) | ||
| 82 | "Evaluate BODY without any text property changes modifying the buffer. | ||
| 83 | Any text properties changes happen as usual but the changes are not treated as | ||
| 84 | modifications to the buffer." | ||
| 85 | (let ((modified (make-symbol "modified"))) | ||
| 86 | `(let ((,modified (buffer-modified-p)) | ||
| 87 | (inhibit-read-only t) | ||
| 88 | (inhibit-modification-hooks t) | ||
| 89 | (buffer-undo-list t) | ||
| 90 | (deactivate-mark nil) | ||
| 91 | ;; Apparently these avoid file locking problems. | ||
| 92 | (buffer-file-name nil) | ||
| 93 | (buffer-file-truename nil)) | ||
| 94 | (unwind-protect | ||
| 95 | (progn ,@body) | ||
| 96 | (unless ,modified | ||
| 97 | (restore-buffer-modified-p nil)))))) | ||
| 98 | |||
| 99 | (put 'nxml-with-unmodifying-text-property-changes 'lisp-indent-function 0) | ||
| 100 | (def-edebug-spec nxml-with-unmodifying-text-property-changes t) | ||
| 101 | |||
| 102 | (defmacro nxml-with-invisible-motion (&rest body) | 81 | (defmacro nxml-with-invisible-motion (&rest body) |
| 103 | "Evaluate body without calling any point motion hooks." | 82 | "Evaluate body without calling any point motion hooks." |
| 104 | `(let ((inhibit-point-motion-hooks t)) | 83 | `(let ((inhibit-point-motion-hooks t)) |