]> code.delx.au - gnu-emacs/commitdiff
Mention context when resume from emergency escape
authorPaul Eggert <eggert@cs.ucla.edu>
Wed, 3 Feb 2016 21:21:10 +0000 (13:21 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 3 Feb 2016 21:26:52 +0000 (13:26 -0800)
That way, if the user has been doing something else for a while,
they are reminded of the situation when restarting Emacs,
and are more likely to understand the two questions.
* doc/emacs/trouble.texi (Emergency Escape): Document this.
* src/keyboard.c (handle_interrupt): Implement this.

doc/emacs/trouble.texi
src/keyboard.c

index 326806337694977577f4363a943be24a8847f8af..bd347b076d419e1835b77eddf7e9d2c6788f4dc7 100644 (file)
@@ -417,19 +417,22 @@ first @kbd{C-g} properly, then the second one will get you back to the
 shell.
 
   When you resume Emacs after a suspension caused by emergency escape,
-it asks two questions before going back to what it had been doing:
+it reports the resumption and asks a question or two before going back
+to what it had been doing:
 
 @example
+Emacs is resuming after an emergency escape.
 Auto-save? (y or n)
 Abort (and dump core)? (y or n)
 @end example
 
 @noindent
-Answer each one with @kbd{y} or @kbd{n} followed by @key{RET}.
+Answer each question with @kbd{y} or @kbd{n} followed by @key{RET}.
 
   Saying @kbd{y} to @samp{Auto-save?} causes immediate auto-saving of
 all modified buffers in which auto-saving is enabled.  Saying @kbd{n}
-skips this.
+skips this.  This question is omitted if Emacs is in a state where
+auto-saving cannot be done safely.
 
   Saying @kbd{y} to @samp{Abort (and dump core)?} causes Emacs to
 crash, dumping core.  This is to enable a wizard to figure out why
index 64d7b139ed05612286260cae49ff33320a0002e5..7e95ad7ad16de39cc1ce0b647d4247f804e9f0a7 100644 (file)
@@ -10295,6 +10295,9 @@ handle_interrupt (bool in_signal_handler)
         is used.  Note that [Enter] is not echoed by dos.  */
       cursor_to (SELECTED_FRAME (), 0, 0);
 #endif
+
+      write_stdout ("Emacs is resuming after an emergency escape.\n");
+
       /* It doesn't work to autosave while GC is in progress;
         the code used for auto-saving doesn't cope with the mark bit.  */
       if (!gc_in_progress)