From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Philipp Stephani
> From: Glenn Morris <rgm@gnu.org>
> Date: Thu, 19 Jan 2017 15:29:04 -0500
> Cc: 25478@debbugs.gnu.org
>
> Philipp Stephani wrote:
>
> > The Emacs manual states:
> >
> > "If you want auto-saving to be done in the visited file rath= er than in
> > a separate auto-save file, set the variable
> > 'auto-save-visited-file-name' to a non-'nil' valu= e.=C2=A0 In this mode, there
> > is no real difference between auto-saving and explicit saving.&qu= ot;
> >
> > However, there is a significant difference between auto-saving an= d
> > explicit saving, even in this mode: auto-saving doesn't run > > before-save-hook, after-save-hook, write-contents-functions, or > > write-file-functions.=C2=A0 Either some of these hooks should be = run during
> > auto-saving if auto-save-visited-file-name is t, or new hooks sho= uld be
> > created to run in this case.
>
> The phrasing of the manual can easily be changed if it's creating<= br class=3D"gmail_msg"> > unreasonable expectations.
I've done that now on the release branch.
> Do you have a use case for autosave running hooks?
> One could argue that it is a low-level
> operation that should not be modifiable in this way.
Auto-save has its own hook.=C2=A0 But that's just the tip of an iceberg= ,
because nowadays various modes can completely change what happens at
save-buffer time by using the hooks mentioned above, and those hooks
run only when basic-save-buffer is invoked; they won't be run during
auto-saving.
And there are other differences, too.=C2=A0 E.g., if save-buffer asks the user for a suitable encoding, it will record the value used in
buffer-file-coding-system, so that future saves reuse that
automatically.=C2=A0 Auto-saving doesn't record the value, so if the us= er
doesn't change the buffer's file encoding manually, she will be
prompted to provide an encoding on every auto-save.
All in all, I think this option is subtly dangerous and should be
either deprecated or completely reimplemented to invoke
basic-save-buffer instead.=C2=A0 I'm quite sure this option made sense = in
the past, when complications with encoding and save-related hooks
didn't exist, but that is no longer the case in Emacs these days.
If someone thinks using this option will allow them not to bother with
saving their edits, they are in for an unpleasant surprise.