# HG changeset patch # User Karl Heuer # Date 858124524 0 # Node ID b8536e42d4eff850102b86fef57dea0cbea5c155 # Parent d342009009c7ce98c80196d789f9423d43d77178 (combine-after-change-calls): Doc fix. (add-to-invisibility-spec, remove-from-invisibility-spec): New functions. diff -r d342009009c7 -r b8536e42d4ef lisp/subr.el --- a/lisp/subr.el Tue Mar 11 22:42:37 1997 +0000 +++ b/lisp/subr.el Tue Mar 11 23:55:24 1997 +0000 @@ -792,7 +792,7 @@ If BODY makes changes in the buffer, they are recorded and the functions on `after-change-functions' are called several times when BODY is finished. -The return value is rthe value of the last form in BODY. +The return value is the value of the last form in BODY. If `before-change-functions' is non-nil, then calls to the after-change functions can't be deferred, so in that case this macro has no effect. @@ -892,6 +892,22 @@ (aset table i nil) (setq i (1+ i))) table))) + +(defun add-to-invisibility-spec (arg) + "Add elements to `buffer-invisibility-spec'. +See documentation for `buffer-invisibility-spec' for the kind of elements +that can be added." + (cond + ((or (null buffer-invisibility-spec) (eq buffer-invisibility-spec t)) + (setq buffer-invisibility-spec (list arg))) + (t + (setq buffer-invisibility-spec + (nconc buffer-invisibility-spec (list arg)))))) + +(defun remove-from-invisibility-spec (arg) + "Remove elements from `buffer-invisibility-spec'." + (if buffer-invisibility-spec + (setq buffer-invisibility-spec (delete* arg buffer-invisibility-spec)))) (defun global-set-key (key command) "Give KEY a global binding as COMMAND. @@ -968,4 +984,3 @@ ; alist) ;;; subr.el ends here -