]> git.eshelyaron.com Git - emacs.git/commitdiff
Improve documentation of hooks related to saving buffers
authorEli Zaretskii <eliz@gnu.org>
Fri, 20 Jan 2017 08:57:14 +0000 (10:57 +0200)
committerEli Zaretskii <eliz@gnu.org>
Fri, 20 Jan 2017 08:57:14 +0000 (10:57 +0200)
* lisp/files.el (write-file-functions, write-contents-functions)
(before-save-hook, after-save-hook): Note that these are only used
by save-buffer.

* doc/lispref/backups.texi (Auto-Saving):
* doc/lispref/files.texi (Saving Buffers): Mention that
save-related hooks are not run by auto-saving.  (Bug#25460)

doc/lispref/backups.texi
doc/lispref/files.texi
lisp/files.el

index 83d826018cac1ddf90faf9b1a78a6c81ad24a8e8..361fa81099b9d91e562cb491d3cb4c3e2c9638fb 100644 (file)
@@ -545,6 +545,11 @@ effect in an existing buffer until the next time auto-save mode is
 reenabled in it.  If auto-save mode is already enabled, auto-saves
 continue to go in the same file name until @code{auto-save-mode} is
 called again.
+
+Note that setting this variable to a non-@code{nil} value does not
+change the fact that auto-saving is different from saving the buffer;
+e.g., the hooks described in @ref{Saving Buffers} are @emph{not} run
+when a buffer is auto-saved.
 @end defopt
 
 @defun recent-auto-save-p
index 6f015e2d64355c2c7e6d8ad0afe8c1e161822aed..49cb150dc64909c942b6e740e628c8205d4adaf5 100644 (file)
@@ -403,7 +403,11 @@ buffer name instead.
 @end deffn
 
   Saving a buffer runs several hooks.  It also performs format
-conversion (@pxref{Format Conversion}).
+conversion (@pxref{Format Conversion}).  Note that these hooks,
+described below, are only run by @code{save-buffer}, they are not run
+by other primitives and functions that write buffer text to files, and
+in particular auto-saving (@pxref{Auto-Saving}) doesn't run these
+hooks.
 
 @defvar write-file-functions
 The value of this variable is a list of functions to be called before
index a6fe381a50a3b57c24e0bbe9b5833c665268f4af..83ef4e271cdad06008a09d378b62a72747c71ebf 100644 (file)
@@ -440,7 +440,8 @@ functions are called."
 
 (define-obsolete-variable-alias 'write-file-hooks 'write-file-functions "22.1")
 (defvar write-file-functions nil
-  "List of functions to be called before writing out a buffer to a file.
+  "List of functions to be called before saving a buffer to a file.
+Only used by `save-buffer'.
 If one of them returns non-nil, the file is considered already written
 and the rest are not called.
 These hooks are considered to pertain to the visited file.
@@ -465,6 +466,7 @@ updates before the buffer is saved, use `before-save-hook'.")
     'write-contents-functions "22.1")
 (defvar write-contents-functions nil
   "List of functions to be called before writing out a buffer to a file.
+Only used by `save-buffer'.
 If one of them returns non-nil, the file is considered already written
 and the rest are not called and neither are the functions in
 `write-file-functions'.
@@ -4721,13 +4723,15 @@ the last real save, but optional arg FORCE non-nil means delete anyway."
   "Normal hook run just before auto-saving.")
 
 (defcustom before-save-hook nil
-  "Normal hook that is run before a buffer is saved to its file."
+  "Normal hook that is run before a buffer is saved to its file.
+Only used by `save-buffer'."
   :options '(copyright-update time-stamp)
   :type 'hook
   :group 'files)
 
 (defcustom after-save-hook nil
-  "Normal hook that is run after a buffer is saved to its file."
+  "Normal hook that is run after a buffer is saved to its file.
+Only used by `save-buffer'."
   :options '(executable-make-buffer-file-executable-if-script-p)
   :type 'hook
   :group 'files)