summaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorAndrea Alberti <a.alberti82@gmail.com>2026-05-03 21:25:14 +0200
committerEli Zaretskii <eliz@gnu.org>2026-05-05 11:21:57 +0300
commitd24b10ca75f49217f8585ce9c0fb53209693f882 (patch)
tree83ca2b3e89c0863575939fd9f122a38fe4d09f31 /etc
parentc878753d39641510329c37dc169311f6bbfb4926 (diff)
Introduce 'margin' face for window margin background
A new basic face 'margin' is used for text displayed in the left and right margin areas, i.e., the areas typically used by VCS and LSP packages for per-line annotations. Its background defaults to the frame default, preserving existing behavior for users who do not customize it. * etc/NEWS: Document the new 'margin' face. * lisp/faces.el (margin): Add 'margin' face, inheriting from 'default'. * src/dispextern.h (face_id): Add MARGIN_FACE_ID. * src/xdisp.c (face_at_pos): Use 'margin' as the base face for strings displayed in margin areas so that they inherit the gutter background by default. (extend_face_to_end_of_line): Compute 'margin_fill_face_id' from the 'margin' face. Use while loops to explicitly fill all empty character slots in both left and right margins for both GUI and TTY branches. (display_line): Call 'extend_face_to_end_of_line' for beyond-EOB rows when the window has margins. Also extend the existing condition for text rows with empty margins to trigger when the 'margin' face background differs from the frame default, not only when the default face is remapped. * src/xfaces.c (realize_basic_faces): Realize 'margin' as a basic face to support face-remapping and efficient lookup. (Bug#80693)
Diffstat (limited to 'etc')
-rw-r--r--etc/NEWS8
1 files changed, 8 insertions, 0 deletions
diff --git a/etc/NEWS b/etc/NEWS
index f8d3fc9960e..0e1268f4c9a 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -25,6 +25,14 @@ applies, and please also update docstrings as needed.
* Installation Changes in Emacs 31.1
+++
+** New face 'margin' for the window margin background.
+A new basic face 'margin' is used by default for text displayed in the
+left and right margin areas, i.e., the areas reserved by packages such as
+git-gutter, lsp-mode, and hl-diff for per-line annotations. Its
+background defaults to the frame default, so existing behavior is
+unchanged for users who do not customize it.
+
++++
** Unexec dumper removed.
The traditional unexec dumper, deprecated since Emacs 27, has been
removed.