From 7a310b047720a244478a9991f96a86901cf897de Mon Sep 17 00:00:00 2001 From: Federico Tedin Date: Fri, 3 Aug 2018 21:26:58 -0300 Subject: [PATCH] Add variable auto-save-quiet * src/keyboarc.c (auto_save_quiet): New variable, allows suppressing auto-saving message. * lisp/cus-start.el (standard): Add auto-save-quiet variable. * doc/emacs/files.texi: Update manual. --- doc/emacs/files.texi | 11 ++++++----- lisp/cus-start.el | 1 + src/keyboard.c | 8 ++++++-- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi index a7cc57e4e9..0635aeba71 100644 --- a/doc/emacs/files.texi +++ b/doc/emacs/files.texi @@ -1023,11 +1023,12 @@ Auto Save When Emacs determines that it is time for auto-saving, it considers each buffer, and each is auto-saved if auto-saving is enabled for it -and it has been changed since the last time it was auto-saved. The -message @samp{Auto-saving...} is displayed in the echo area during -auto-saving, if any files are actually auto-saved. Errors occurring -during auto-saving are caught so that they do not interfere with the -execution of commands you have been typing. +and it has been changed since the last time it was auto-saved. When +the @code{auto-save-quiet} variable is set to @code{nil}, the message +@samp{Auto-saving...} is displayed in the echo area during auto-saving, +if any files are actually auto-saved. Errors occurring during auto-saving +are caught so that they do not interfere with the execution of commands +you have been typing. @menu * Files: Auto Save Files. The file where auto-saved changes are diff --git a/lisp/cus-start.el b/lisp/cus-start.el index f31d1df309..53c051a4c0 100644 --- a/lisp/cus-start.el +++ b/lisp/cus-start.el @@ -345,6 +345,7 @@ minibuffer-prompt-properties--setter ;; keyboard.c (meta-prefix-char keyboard character) (auto-save-interval auto-save integer) + (auto-save-quiet auto-save boolean) (auto-save-timeout auto-save (choice (const :tag "off" nil) (integer :format "%v"))) (echo-keystrokes minibuffer number) diff --git a/src/keyboard.c b/src/keyboard.c index 7ab9a6069a..0eb74c6dc7 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -2626,7 +2626,7 @@ read_char (int commandflag, Lisp_Object map, && num_nonmacro_input_events - last_auto_save > max (auto_save_interval, 20) && !detect_input_pending_run_timers (0)) { - Fdo_auto_save (Qnil, Qnil); + Fdo_auto_save (auto_save_quiet, Qnil); /* Hooks can actually change some buffers in auto save. */ redisplay (); } @@ -2691,7 +2691,7 @@ read_char (int commandflag, Lisp_Object map, if (EQ (tem0, Qt) && ! CONSP (Vunread_command_events)) { - Fdo_auto_save (Qnil, Qnil); + Fdo_auto_save (auto_save_quiet, Qnil); redisplay (); } } @@ -11391,6 +11391,10 @@ result of looking up the original command in the active keymaps. */); Zero means disable autosaving due to number of characters typed. */); auto_save_interval = 300; + DEFVAR_LISP ("auto-save-quiet", auto_save_quiet, + doc: /* Non-nil means do not print any message when auto-saving. */); + auto_save_quiet = Qnil; + DEFVAR_LISP ("auto-save-timeout", Vauto_save_timeout, doc: /* Number of seconds idle time before auto-save. Zero or nil means disable auto-saving due to idleness. -- 2.17.1