diff options
| author | Andrea Alberti <a.alberti82@gmail.com> | 2026-05-03 21:25:14 +0200 |
|---|---|---|
| committer | Eli Zaretskii <eliz@gnu.org> | 2026-05-05 11:21:57 +0300 |
| commit | d24b10ca75f49217f8585ce9c0fb53209693f882 (patch) | |
| tree | 83ca2b3e89c0863575939fd9f122a38fe4d09f31 /etc | |
| parent | c878753d39641510329c37dc169311f6bbfb4926 (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/NEWS | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -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. |
