1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-26 08:41:47 -07:00
Commit graph

13533 commits

Author SHA1 Message Date
Eli Zaretskii
ee42c392d2 ; Fix documentation of window-dimension functions
* doc/lispref/windows.texi (Window Sizes):
* src/window.c (Fwindow_body_height, Fwindow_total_height)
(Fwindow_total_width, Fwindow_body_width): Clarify that window
dimensions are returned in canonical columns and lines.
(Bug#80620)
2026-03-19 17:40:31 +02:00
Elias Gabriel Perez
5c961f4903 hideshow: Fix 'hs-hide-block-behavior' set to 'after-cursor'.
Bug#80455.

* etc/NEWS: Document changed behavior.

* lisp/progmodes/hideshow.el (hs-get-near-block): Remove
'forward-line'.
(hs-hide-block-behavior): Update docstring.

* doc/emacs/programs.texi (Hideshow): Update.

Suggested-by: Dima Kogan <dima@secretsauce.net>
2026-03-19 17:27:57 +02:00
Elías Gabriel Pérez
c911495fb1 hideshow: New minor mode 'hs-indentation-mode'. (Bug#80179)
This minor mode configures hs-minor-mode to use
indentation-based folding.

* lisp/progmodes/hideshow.el (hs-hideable-block-p): New
function.
(hs-indentation-respect-end-block): New option.
(hs-indentation--store-vars): New variable.
(hs-cycle-filter, hs-get-first-block-on-line, hs-get-near-block)
(hs-find-block-beg-fn--default): Adapt code to use
'hs-hideable-block-p'.
(hs-block-positions): Update.
(hs-indentation-mode): New minor mode.

* doc/emacs/programs.texi (Hideshow): Update documentation.

* etc/NEWS: Announce changes

* test/lisp/progmodes/hideshow-tests.el: Add 'require'.
(hideshow-check-indentation-folding): New test.
2026-03-19 17:11:54 +02:00
Stefan Monnier
e2004eb56f Merge remote-tracking branch 'origin/scratch/error-API' 2026-03-15 17:17:21 -04:00
Sean Whitton
fe9f6a5872 ; Tweak wording of newcomer instructions. 2026-03-15 20:29:08 +00:00
Sean Whitton
e770ddb5e8 ; Tweak documentation for ensure-proper-list. 2026-03-15 20:27:41 +00:00
Eshel Yaron
3921af5e5e
; Minor doc improvements for 'let-alist'.
* doc/lispref/lists.texi:
* lisp/emacs-lisp/let-alist.el (let-alist): Improve docs.
Namely, clarify that 'let-alist' does not "see" symbols
introduced by macro-expansion in its body, and that the
generated code looks up symbols in the alist whether or not
they are actually used in runtime.

See also bug#79706 for some relevant discussion.
2026-03-15 13:15:36 +01:00
Philip Kaludercic
55f0f2056c
Add new function 'ensure-proper-list' (bug#80598)
* doc/lispref/lists.texi (Building Lists): Document it.
* etc/NEWS: Mention it.
* lisp/emacs-lisp/shortdoc.el (list): Demonstrate it.
* lisp/subr.el (ensure-proper-list): Add it.
2026-03-15 10:52:01 +01:00
Philip Kaludercic
6901173e44
; Ensure hint to close "Newcomers Theme" is visible
* doc/emacs/custom.texi (Newcomers Theme): Move to the beginning
of the node, so as to be visible even when the Emacs frame is
too small and wrap it in a conditional to not print the message
in non-Info outputs.
2026-03-15 10:52:01 +01:00
Philip Kaludercic
c7d4056539
Give an example of how to use use-package+:vc without :rev
* doc/misc/use-package.texi (Install package): Add an example
block that doesn't use :rev, and instead shows that you can just
pass a URL as a string to :vc.
2026-03-13 23:50:05 +01:00
Philip Kaludercic
d019b5ec71
Add 'xref-mouse-mode' minor mode
* doc/emacs/maintaining.texi (Looking Up Identifiers): Document
it.
* etc/NEWS (bindings): Mention it.
* etc/themes/newcomers-presets-theme.el (newcomers-presets): Add
it.
* lisp/progmodes/xref.el (xref-mouse-mode-map, xref-mouse-mode)
(global-xref-mouse-mode): Implement it.
2026-03-12 09:01:08 +01:00
Philip Kaludercic
6f337499e6
; Add missing documentation for new 'cus-edit' bindings
* doc/emacs/custom.texi (Changing a Variable):
* etc/NEWS: Mention them.
2026-03-11 22:12:55 +01:00
Stefan Monnier
fa6f2cb63c (error-data): Delete function
Remove `error-data` from the new error API: it is not really
compatible with a more abstract view of error descriptors, and
in practice it seems to be used only in two ways (both of them rare):

- To add some contextual info to an error.  We should maybe add
  a dedicated support for that, but it's not clear what shape it
  should take, ideally (there was a discussion about with Alan
  and myself in emacs-devel a few years ago).
- To do some other massaging whose correctness is dubious anyway.

* doc/lispref/control.texi (Handling Errors): Remove `error-data`.

* lisp/epa-file.el (epa-file--find-file-not-found-function): Don't use
`error-data`.
(epa-file--error-add-context): New function, extracted from
`epa-file-insert-file-contents`.
(epa-file-insert-file-contents): Use it instead of `error-data`.

* lisp/subr.el (error-data): Delete function.
2026-03-10 10:48:22 -04:00
Stefan Monnier
a1358530f5 Improve the error API
Define new functions to manipulate error descriptors and
add support for `signal` to *re*signal a previous error.

 * src/eval.c (Fsignal): Make the second arg optional and document
the possibility of passing a whole error descriptor to re-signal it.
(signal_or_quit): Fix a few corner case issues when
DATA is `nil` and ERROR_SYMBOL is an error descriptor.

* lisp/subr.el (error-type-p, error--p, error-type, error-data)
(error-has-type-p, error-slot-value): New function.

* doc/lispref/control.texi (Handling Errors): Prefer "error descriptor"
to "error description".  Use the new single-arg call to `signal` to
re-throw an error.
Document `error-type`, `error-data` and `error-slot-value`.
(Error Symbols): Document the new functions `error-type-p` and
`error-has-type-p`.
2026-03-10 10:48:10 -04:00
Eli Zaretskii
618653aed0 ; * doc/lispintro/emacs-lisp-intro.texi (Lists diagrammed): Fix last change. 2026-03-08 14:57:34 +02:00
Eli Zaretskii
468dad2c5a Use images in Emacs Lisp Intro manual (bug#80519)
* doc/lispintro/emacs-lisp-intro.texi (Lists diagrammed)
(Symbols as Chest, kill-ring-yank-pointer, lambda): Use @image and
remove ASCII-art diagrams, which are now on separate *.txt files.
(header): Remove print-postscript-figures and its commentary.

* doc/lispintro/Makefile.in (auxfiles): New file list.
(${buildinfodir}/%.txt, ${buildinfodir}/%.png): New targets.
(${buildinfodir}/eintr.info): Depend on ${auxfiles}.
(infoclean): Remove ${auxfiles}.

* doc/lispintro/cons-1.png:
* doc/lispintro/cons-1.txt:
* doc/lispintro/cons-2.png:
* doc/lispintro/cons-2.txt:
* doc/lispintro/cons-2a.png:
* doc/lispintro/cons-2a.txt:
* doc/lispintro/cons-3.png:
* doc/lispintro/cons-3.txt:
* doc/lispintro/cons-4.png:
* doc/lispintro/cons-4.txt:
* doc/lispintro/cons-5.png:
* doc/lispintro/cons-5.txt:
* doc/lispintro/drawers.png:
* doc/lispintro/drawers.txt:
* doc/lispintro/lambda-1.png:
* doc/lispintro/lambda-1.txt:
* doc/lispintro/lambda-2.png:
* doc/lispintro/lambda-2.txt:
* doc/lispintro/lambda-3.png:
* doc/lispintro/lambda-3.txt: New files, from Matto Fransen
<matto@matto.nl>.
2026-03-08 14:51:13 +02:00
Eli Zaretskii
caca15a42d ; * doc/emacs/vc1-xtra.texi (General VC Options): Fix a typo. 2026-03-05 19:43:16 +02:00
Sean Whitton
39abb7ec8f ; Move unfill-paragraph to fill.el. Document it in (elisp)Filling. 2026-03-05 15:48:03 +00:00
Sean Whitton
a54e10baeb ; * doc/lispref/control.texi (Conditionals): Improve explanation. 2026-03-05 13:31:10 +00:00
Sean Whitton
b12190778c ; * doc/emacs/vc1-xtra.texi (General VC Options): Fix last change. 2026-03-05 13:29:31 +00:00
Sean Whitton
8d16a0557d New user option vc-display-failed-async-commands
* lisp/vc/vc-dispatcher.el (vc-display-failed-async-commands):
New user option.
(vc-do-async-command): Use it.
* doc/emacs/vc1-xtra.texi (General VC Options):
* etc/NEWS: Document it.
* lisp/vc/vc-dispatcher.el (vc-do-command): Adjust message to
begin "Failed" not "Done" when command exits non-zero.
* lisp/vc/vc.el (vc-checkin): Adjust message to end in
"...failed" not "...done" when async command exits non-zero.
2026-03-05 13:24:27 +00:00
Eli Zaretskii
f398a4d299 ; Fix indexing in viper.texi.
* doc/misc/viper.texi: Fix weird use of indexing, whereby many
index entries were placed _after_ the table which described the
functions or variables or keys, or even in the end of a @node
describing some subject.  The index entries were moved to _before_
the text to which they pertain.  Also, fix some incorrect
cross-references.
2026-03-05 15:17:50 +02:00
Sean Whitton
bdc4a93535 ; Fix documentation of vc-command-messages. 2026-03-05 12:06:12 +00:00
Stéphane Marks
192d4fc1f7 Make 'frame-use-time' more reliable. (bug#80397)
Walking the window tree is more reliable than using the selected
window.  Implement 'get-mru-frame' on top of 'get-mru-frames'
using 'frame-use-time'.

* lisp/frame.el (frame-use-time): Change to walk the window tree
for the specified frame.
(get-mru-frames): New defun.
(get-mru-frame): Change to call 'get-mru-frames'.
* doc/lispref/frames.texi: Update documentation.
* etc/NEWS: Update announcement.
2026-03-05 09:58:03 +01:00
Sean Whitton
7d63d267f2 Rename 'any' to 'member-if' and deprecate 'cl-member-if'
* lisp/subr.el (any): Rename from this ...
(member-if): ... to this.  All uses changed.
(any): New function alias.
* lisp/emacs-lisp/cl-seq.el (cl-member-if): Mark obsolete.
* lisp/obsolete/cl.el (member-if): Delete obsolete function
alias.
* doc/lispref/lists.texi (List Elements):
* doc/misc/cl.texi (Lists as Sets):
* etc/NEWS: Document the change.
2026-03-04 14:43:05 +00:00
Sean Whitton
4ce94139ae New command 'unfill-paragraph'
* lisp/simple.el (unfill-paragraph): New command.
* doc/emacs/indent.texi (Indentation Commands):
* etc/NEWS: Document it.
2026-03-04 14:20:47 +00:00
Stephen Gildea
ae45bb10e0 ; * doc/emacs/files.texi (Time Stamps): Small wording fix. 2026-03-03 11:02:22 -08:00
Mattias Engdegård
7eba545a4e Revert "Rename 'any' to 'member-if' and deprecate 'cl-member-if'"
This reverts commit 2bdf15f6d8.

There is no consensus for this change.
2026-03-03 17:21:35 +01:00
Sean Whitton
9563101c47 ; * doc/lispref/control.texi (Conditionals): Improve example. 2026-03-03 14:02:49 +00:00
Sean Whitton
2bdf15f6d8 Rename 'any' to 'member-if' and deprecate 'cl-member-if'
* lisp/subr.el (any): Rename from this ...
(member-if): ... to this.  All uses changed.
Implement '&key KEY-FN' for backwards compatibility.
(any): New function alias.
* lisp/emacs-lisp/cl-seq.el (cl-member-if): Make an alias for
'member-if'.
* lisp/obsolete/cl.el (member-if): Delete obsolete function
alias.
* doc/lispref/lists.texi (List Elements):
* doc/misc/cl.texi (Lists as Sets):
* etc/NEWS: Document the change.
2026-03-03 13:57:07 +00:00
Eli Zaretskii
73a2a5cd05 ; Fix documentation of recent changes in treesit.el
* etc/NEWS:
* doc/lispref/parsing.texi (User-defined Things): Fix punctuation,
markup and typos.
2026-03-03 15:21:12 +02:00
Eli Zaretskii
75f6b5fe09 ; * doc/emacs/frames.texi (Multiple Displays): Improve markup. 2026-03-03 15:08:42 +02:00
Sean Whitton
1fb515e79f ; Suggest not using if-let* and friends to bind never-nil values. 2026-03-03 12:58:08 +00:00
Sean Whitton
d9611a7686 ; Tweak splash screen some more. Fix some punctuation. 2026-03-03 12:06:39 +00:00
Sean Whitton
1f9b6223e1 ; Move documentation for multiple-terminals-merge-keyboards. 2026-03-03 11:14:10 +00:00
Yuan Fu
18c24866af
Make tree-sitter thing navigation handle nested parsers
Not a bug report, but this is from the emacs-devel thread
"Tree-sitter: Transcendental things".

Improve tree-sitter thing navigation functions to handle the
case where there are multiple nested parsers in the
buffer. Previously these functions just grab the node at point
and are limited to the parser of that node.  Now these functions
will thoUrouly search through all parsers that covers point
before giving up.

* doc/lispref/parsing.texi: Mention the change.
* lisp/treesit.el (treesit--some): New macro.
(treesit--thing-sibling): Use the new macro, add a new PARSER
parameter.
(treesit-thing-prev):
(treesit-thing-next): Add PARSER parameter.
(treesit-thing-at):
(treesit-navigate-thing): Use the new macro, add a new PARSER
parameter.  Also pass the PARSER arg to recursive calls and
calls to treesit-thing-prev, etc.
2026-03-02 23:59:46 -08:00
Eli Zaretskii
331e2e3787 ; * doc/misc/forms.texi (Credits): Added Johan Vromans (bug#80517). 2026-03-01 16:30:42 +02:00
Paul Eggert
aed1c8b536 Don’t stuff keyboard input uselessly
Also, document stuffing better.
* src/keyboard.c (stuff_buffered_input):
Give up on stuffing if it fails.
* src/sysdep.c (stuff_char): Return failure indication.
2026-02-28 09:09:22 -08:00
Mattias Engdegård
a3411c8b86 Correct manual entry for string-lessp
* doc/lispref/strings.texi (Text Comparison):
The old text was wrong: non-ASCII unibyte chars overlap part of Unicode.
2026-02-28 16:38:27 +01:00
Eli Zaretskii
b540c45bc5 Document that string ARG of 'kill-emacs' might not work
* src/emacs.c (Fkill_emacs):
* doc/lispref/os.texi (Killing Emacs): Document that EXIT-DATA
being a string doesn't always work.  (Bug#80435)
2026-02-28 16:10:08 +02:00
Eli Zaretskii
0d017fc7ce ; Fix the documentation of 'overlays-in' etc.
* src/buffer.c (Foverlays_in):
* lisp/subr.el (remove-overlays):
* doc/lispref/display.texi (Finding Overlays, Managing Overlays):
* etc/NEWS: Improve the documentation of recent changes in
behavior of 'overlays-in' and 'remove-overlays'.  (Bug#80242)
2026-02-28 15:36:07 +02:00
Sean Whitton
2c7f33e186 ; Hint for new users in manual. New comment. 2026-02-28 12:35:14 +00:00
Philip Kaludercic
668c42c4ac
Allow more fine configuration of package retention
* lisp/emacs-lisp/package.el (package-upgrade-keep-previous):
Rename user option to 'package-retention-policy'.
(package--policy-type): New constant for policy types.
(package-retention-policy): New option.
(package-review-policy): Use new type constant.
(package--review-p): Rename and generalise to
'package-matches-selector-p'.
(package-matches-selector-p): New function.
(package-upgrade, package-menu--mark-upgrades-1): Respect
'package-retention-policy'.
* doc/emacs/package.texi (Package Installation): Document new option.
* etc/NEWS: Update NEWS entry.  (Bug#79957)
2026-02-28 10:50:55 +01:00
Stefan Monnier
0068215e53 emacs-lisp-intro.texi: Eliminate duplicate ASCII art
* doc/lispintro/emacs-lisp-intro.texi (print-postscript-figures):
Set it only if we're outputting TeX.
(Lists diagrammed, Lists diagrammed, Lists diagrammed)
(Lists diagrammed, Lists diagrammed, Symbols as Chest)
(kill-ring-yank-pointer, lambda): Presume that
`print-postscript-figures` is set only for TeX output and remove
the `@tex...@end tex` around `@image` which do not seem relevant any more.
2026-02-27 13:42:40 -05:00
Sean Whitton
215e07d9d3 New function multiple-command-partition-arguments
* lisp/subr.el (command-line-max-length): New variable.
(multiple-command-partition-arguments): New function.
* doc/lispref/processes.texi (Shell Arguments):
* etc/NEWS: Document them.
* test/lisp/subr-tests.el
(subr-multiple-command-partition-arguments): New test.
2026-02-25 16:29:05 +00:00
Sean Whitton
f3aff938fa ; Revise short descriptions of EDE. 2026-02-25 13:21:58 +00:00
Mattias Engdegård
2505af27c6 Compare circular lists in 'equal' without error (bug#80456)
* src/lisp.h (FOR_EACH_TAIL_INTERNAL): Divvy up the code into...
(FOR_EACH_TAIL_BASIC, FOR_EACH_TAIL_STEP_CYCLEP): ...these macros,
so that they can be used in more flexible ways.
* src/fns.c (internal_equal_1): Detect circular lists and call...
(internal_equal_cycle): ...this function that keeps comparing
but now detecting cycles in the other argument.

* lisp/emacs-lisp/testcover.el (testcover-after):
Remove unnecessary error handling.
* test/src/fns-tests.el (test-cycle-equal): Adapt and extend.
* test/lisp/emacs-lisp/testcover-resources/testcases.el
(testcover-testcase-cyc1): Remove case that no longer applies.

* doc/lispref/objects.texi (Equality Predicates): Update.
* etc/NEWS: Announce.
2026-02-24 12:47:52 +01:00
Collin Funk
29440eedac Add SHA-3 support to secure-hash
* admin/merge-gnulib (GNULIB_MODULES): Add crypto/sha3-buffer.
* lib/sha3.c: New file, imported by running admin/merge-gnulib.
* lib/sha3.h: Likewise.
* m4/sha3.m4: Likewise.
* lib/gnulib.mk.in: Updated by admin/merge-gnulib.
* m4/gnulib-comp.m4: Likewise.
* src/fns.c: Include sha3.h
(Fsecure_hash_algorithms): Add Qsha3_224, Qsha3_256, Qsha3_384, and
Qsha3_512.
(secure_hash): Likewise.
(Fsecure_hash): List the SHA-3 algorithms in the docstring.
(syms_of_fns): Define Qsha3_224, Qsha3_256, Qsha3_384, and Qsha3_512.
* test/lisp/net/gnutls-tests.el (gnutls-tests-internal-macs-upcased):
Filter out the new SHA-3 algorithms since they are currently not
implemented in gnutls.
* test/src/fns-tests.el (test-secure-hash): Add test cases for the new
algorithms.
* doc/lispref/text.texi (Checksum/Hash): List the SHA-3 algorithms.
Mention that they are considered secure.
* etc/NEWS: Mention the new feature.
2026-02-23 00:22:17 -08:00
Liu Hui
e6350bb179 Support displaying more months in the calendar
* lisp/calendar/calendar.el (calendar-month-edges): Fix typo.
(calendar-total-months): New variable.
(calendar-get-month-range, calendar-get-date-range)
(calendar--month-overlap-p, calendar-month-visible-p)
(calendar-nongregorian-date-visible-p): New functions.
(calendar-nongregorian-visible-p): Declare obsolete.
(calendar-recompute-layout-variables, calendar-generate):
Replace fixed month numbers with 'calendar-total-months'.
(calendar-cursor-to-date, calendar-date-is-visible-p): Support
the calendar with more than three months.
(calendar-mode): Make some variables buffer-local to allow
calendar-mode buffers showing different number of months.
(calendar-mode-map): Use new command names.

* lisp/calendar/cal-move.el (calendar-goto-today): Always move
the cursor to today's date.
(calendar--show-month-at-edge): New function.
(calendar-recenter, calendar-forward-day): Support the calendar
with more than three months.
(calendar-forward-month, calendar-end-of-month)
(calendar-beginning-of-year, calendar-end-of-year): Place the
new month at the edge instead of the second month segment, to
prevent the cursor from jumping back and forth.  This is
consistent with the behavior of calendar-forward-day/week.
(calendar-scroll-left): Maintain the relative position of the
cursor with respect to the window, when the old date is out of
view.
(calendar-scroll-left-three-months)
(calendar-scroll-right-three-months): Replace the fixed month
number with the actual number of months.  Rename ...
(calendar-scroll-calendar-left, calendar-scroll-calendar-right):
... to new commands.  Make old names as aliases and mark them
obsolete.
(calendar-show-more-months, calendar-show-fewer-months): New
commands.

* lisp/calendar/cal-menu.el (cal-menu-holiday-window-suffix):
Use the actual date range instead of three months.
(cal-menu-scroll-menu, cal-menu-global-mouse-menu): Use new
command names and update description.

* lisp/calendar/holidays.el (holidays, list-holidays)
(calendar-check-holidays, holiday-in-range): Use
calendar-total-months.
(calendar-list-holidays, holiday-fixed, holiday-float)
(holiday-sexp): Replace displayed-year/month with the actual
calendar range.
(holiday-after, holiday-easter-etc-abs)
(holiday-greek-orthodox-easter-abs): New functions.
(holiday-advent, holiday-easter-etc)
(holiday-greek-orthodox-easter): Look up holidays in all visible
years instead of current displayed-year.

* lisp/calendar/solar.el (solar-equinoxes-solstices): Search
equinoxes and solstices in all visible months.
(solar-equinoxes-solstices-1): New function.

* lisp/calendar/lunar.el (lunar-phase-list): Add optional
argument.
(calendar-lunar-phases): Use visible calendar range.

* lisp/calendar/cal-china.el (holiday-chinese-new-year)
(holiday-chinese-winter-solstice, holiday-chinese-qingming)
(holiday-chinese): Replace displayed-year/month with the actual
calendar range, and look up holidays in all visible years.

* lisp/calendar/cal-julian.el (holiday-julian): Use
calendar-nongregorian-date-visible-p because there may exist
more than one corresponding dates when the calendar shows more
months.

* lisp/calendar/cal-bahai.el (holiday-bahai): Support calendar
with more than three months.
(holiday-bahai-new-year, holiday-bahai-twin-holy-birthdays):
Look up holidays in all visible years.
(holiday-bahai-new-year-1, holiday-bahai-twin-holy-birthdays-1):
New functions.

* lisp/calendar/cal-hebrew.el (calendar-hebrew-date-is-visible-p)
(holiday-hebrew, calendar-hebrew-mark-date-pattern): Support
calendar with more than three months, in which more than one
holidays may exist.
(holiday-hebrew-rosh-hashanah-1, holiday-hebrew-hanukkah-1)
(holiday-hebrew-passover-1): New functions.
(holiday-hebrew-rosh-hashanah, holiday-hebrew-hanukkah)
(holiday-hebrew-passover, holiday-hebrew-tisha-b-av): Look up
holidays in all visible years.

* lisp/calendar/cal-islam.el (holiday-islamic): Support calendar
with more than three months.
(holiday-islamic-new-year): Find holidays in all visible years.

* lisp/calendar/diary-lib.el (diary-mark-sexp-entries)
(calendar-mark-days-named, calendar-mark-date-pattern)
(calendar-mark-complex): Use the displayed range instead of the
three-month range.
(calendar-mark-1): Fix marking dates in calendar with more than
three months.

* test/lisp/calendar/holidays-tests.el
(holidays-test-holiday-easter-etc, holidays-test--get-holidays)
(holidays-test-more-months): New test file.

* doc/emacs/calendar.texi: Mention new commands and update
related description.
* etc/NEWS: Announce new commands.  (bug#80099)
2026-02-22 16:21:13 +02:00
Paul Nelson
ab4be3cc1f Make Rmail summary address display customizable
* lisp/mail/rmailsum.el (rmail-summary-sender-function)
(rmail-summary-recipient-function, rmail-summary-address-width):
New user options.
(rmail-summary--address-display, rmail-summary-name-or-address)
(rmail-summary-recipient-strip-quoted-names)
(rmail-summary-recipient-names): New functions.
(rmail-header-summary): Use them when formatting sender and
recipient fields (bug#80406).

* doc/emacs/rmail.texi (Rmail Make Summary): Document them.

* test/lisp/mail/rmailsum-tests.el: New file.
(rmailsum-tests-name-or-address-prefers-name)
(rmailsum-tests-name-or-address-fallback-to-address)
(rmailsum-tests-recipient-strip-quoted-names-first-line)
(rmailsum-tests-recipient-names-folded)
(rmailsum-tests-recipient-names-fallback-to-address): New tests.
2026-02-21 19:30:25 +02:00