summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2026-05-30 07:43:08 -0400
committerEli Zaretskii <eliz@gnu.org>2026-05-30 07:43:08 -0400
commitd70c646894addec51b4948425b4a3779f761317f (patch)
treec46729da383bb4dfd752abf78a07ae9cd002a930
parenta2379402fc9d4aed342d85c171cbddea8be37862 (diff)
parent72d890c43e70477d496a9a0ef36a61357dde1023 (diff)
Merge from origin/emacs-31
72d890c43e7 ; Update the documentation of 'debug' 69fd4b87f4d Don't make buffer read-only when reverting if 'view-mode'... 2955b51e80c ; * etc/NEWS: Document the change in mode-line faces. # Conflicts: # etc/NEWS
-rw-r--r--doc/lispref/debugging.texi8
-rw-r--r--etc/NEWS.3113
-rw-r--r--lisp/view.el4
3 files changed, 20 insertions, 5 deletions
diff --git a/doc/lispref/debugging.texi b/doc/lispref/debugging.texi
index 8d498608da4..48f3c3f8257 100644
--- a/doc/lispref/debugging.texi
+++ b/doc/lispref/debugging.texi
@@ -638,11 +638,9 @@ debugger, etc.), and fills it with information about the stack of Lisp
function calls. It then enters a recursive edit, showing the
backtrace buffer in Debugger mode. In batch mode (more generally,
when @code{noninteractive} is non-@code{nil}, @pxref{Batch Mode}),
-this function shows the Lisp backtrace on the standard error stream,
-and then kills Emacs, causing it to exit with a non-zero exit code
-(@pxref{Killing Emacs}). Binding
-@code{backtrace-on-error-noninteractive} to @code{nil} suppresses the
-backtrace in batch mode, see below.
+this function shows the Lisp backtrace on the standard error stream.
+Binding @code{backtrace-on-error-noninteractive} to @code{nil}
+suppresses the backtrace in batch mode, see below.
The Debugger mode @kbd{c}, @kbd{d}, @kbd{j}, and @kbd{r} commands exit
the recursive edit; then @code{debug} switches back to the previous
diff --git a/etc/NEWS.31 b/etc/NEWS.31
index 7fc998ff547..95bc966d47d 100644
--- a/etc/NEWS.31
+++ b/etc/NEWS.31
@@ -572,6 +572,14 @@ ID. When called interactively, both functions prompt for an ID.
** Mode Line
+---
+*** New definitions for mode-line faces under dark background mode.
+The faces 'mode-line' and 'mode-line-highlight' now have separate
+definitions for the dark background mode. Previously, these two faces
+looked the same in both the light and dark background modes. To get the
+previous visuals for these two faces, customize them to have the colors
+"grey75" and "grey40", respectively, regardless of the background mode.
+
+++
*** New user option 'mode-line-collapse-minor-modes'.
If non-nil, minor mode lighters on the mode line are collapsed into a
@@ -4214,6 +4222,11 @@ suggestions. So the 'M-?' command now works without a tags table. And
the 'M-.' will show a message describing the several built-in options
that will provide an Xref backend when used.
++++
+** Calling 'debug' in batch sessions no longer kills Emacs.
+If you want Emacs to exit, your program will now have to call
+'kill-emacs' explicitly.
+
* Lisp Changes in Emacs 31.1
diff --git a/lisp/view.el b/lisp/view.el
index ec69699108a..4e2e1f54c76 100644
--- a/lisp/view.el
+++ b/lisp/view.el
@@ -464,6 +464,10 @@ Entry to view-mode runs the normal hook `view-mode-hook'."
;; so that View mode stays off if read-only-mode is called.
(if (local-variable-p 'view-read-only)
(kill-local-variable 'view-read-only))
+ ;; Reset the read-only state memory as well, so that 'revert-buffer'
+ ;; won't make the buffer read-only again.
+ (if (local-variable-p 'read-only-mode--state)
+ (setq-local read-only-mode--state nil))
(if buffer-read-only
(setq buffer-read-only view-old-buffer-read-only)))