Avoid unused argument warnings in lambda compiler macros
* lisp/emacs-lisp/byte-run.el (byte-run--set-compiler-macro):
Don't warn when a compiler macro with lambda-form expander does not
use all the arguments of the function. Nobody expected any warning
since the arguments look like free variables inside the lambda form.
Michael Albinus [Sun, 28 Nov 2021 12:45:43 +0000 (13:45 +0100)]
Adapt gitlab-ci.yml
* test/infra/gitlab-ci.yml (variables): Set EMACS_TEST_TIMEOUT to 3600.
(.job-template, .test-template): Another approach to catch test
artifacts on emba.
Mike Kupfer [Fri, 26 Nov 2021 21:59:14 +0000 (13:59 -0800)]
Fix Subject when forwarding message with 2-line From
* lisp/mh-e/mh-comp.el (mh-forwarded-letter-subject): Collapse
two-line From headers into a single line (SF#266). Based on a
suggestion from Lester Buck (many thanks!).
Stefan Monnier [Sat, 27 Nov 2021 15:10:26 +0000 (10:10 -0500)]
* test/src/comp-tests.el: Rework last patch
Move `require`s out of `eval-when-compile` if the functions are called
at run-time.
Don't use #' to quote symbols (i.e. at those places where a lambda
expression couldn't be used).
Don't pre-load comp-test-45603.el and comp-test-pure.el any more.
(comp-deftest pure): Use `declare-function` after loading `comp-test-pure.el`
to silence the byte-compiler.
Eli Zaretskii [Sat, 27 Nov 2021 15:09:51 +0000 (17:09 +0200)]
Avoid assertion violations in --enable-checking builds
* src/xdisp.c (gui_produce_glyphs): Make sure character glyphs
don't trigger assertion violation due to negative ascent or
descent. This was reporte dto happen with some fonts used by the
xfont backend.
Po Lu [Sat, 27 Nov 2021 05:02:10 +0000 (13:02 +0800)]
Make `pixel-scroll-precision-scroll-up' use existing logic
* lisp/pixel-scroll.el (pixel-point-at-unseen-line): Rewrite
to use `pixel-point-and-height-at-unseen-line'.
(pixel-point-and-height-at-unseen-line): New function.
(pixel-scroll-precision-scroll-up): Use existing logic
to determine unseen line position.
Stephen Gildea [Sat, 27 Nov 2021 04:48:45 +0000 (20:48 -0800)]
time-stamp-tests.el: Test more formats
* test/lisp/time-stamp-tests.el (time-stamp-format-ignored-modifiers):
Additional testing with illegal formats, including "%".
(time-stamp-format-multiple-conversions): Add a test with "%%%".
* lisp/gnus/gnus-art.el (gnus-header): New face.
(gnus-header-from, gnus-header-subject, gnus-header-newsgroups)
(gnus-header-name, gnus-header-content): Inherit from this new face.
Robert Pluim [Fri, 26 Nov 2021 13:08:24 +0000 (14:08 +0100)]
Adjust custom-face-attributes for 'regular' weight
Following the changes to support "medium" weight fonts, the weight for
"normal" fonts is now reported as 'regular', which caused
customize-face to display faces as lisp-expressions, since it didn't
recognize that. This has been corrected.
* lisp/cus-face.el (custom-face-attributes): Recognize 'regular' as a
weight.
Po Lu [Fri, 26 Nov 2021 09:42:45 +0000 (17:42 +0800)]
Move the precision pixel scrolling feature to pixel-scroll.el
* etc/NEWS: Update NEWS entry for 'pixel-scroll-precision-mode'
* lisp/better-pixel-scroll.el: Remove file.
* src/pixel-scroll.el (x-coalesce-scroll-events): New variable
declaration.
(pixel-scroll-precision-mode-map): New variable.
(pixel-scroll-precision-scroll-down):
(pixel-scroll-precision-scroll-up):
(pixel-scroll-precision): New functions.
(pixel-scroll-precision-mode): New minor mode.
Stefan Kangas [Fri, 26 Nov 2021 06:17:21 +0000 (07:17 +0100)]
Merge from origin/emacs-28
cfaf681d3d ; * src/emacs.c (main): Add commentary about command-line ... 4d16a2f737 Fix pdf generation with Texinfo 6.7 a22c9a34bd Fix 'posn-at-point' near some overlays d1aa552d11 ; * CONTRIBUTE: No cleanups on release branches, even in d... 588caf0b27 * lisp/repeat.el (repeat-post-hook): Add check symbolp rep...
Alan Third [Thu, 25 Nov 2021 20:58:37 +0000 (20:58 +0000)]
Fix selection for old GNUstep and GCC
* src/nsselect.m (ns_get_foreign_selection): Remove language features
not yet supported by GCC. Be more selective with which pasteboard
types we use.
* src/nsterm.h: Set up some more #defines for deprecated variables.
Stephen Gildea [Thu, 25 Nov 2021 18:12:30 +0000 (10:12 -0800)]
MH-E: support Mailutils "folders +/"
* lisp/mh-e/mh-utils.el (mh-sub-folders-parse):
Support Mailutils style of "folders +/" output.
* test/lisp/mh-e/mh-utils.el:
Test "folders +/" with GNU Mailutils 3.13.91 and later.
* lisp/bindings.el (mode-line-position): Add interim solution to
make `min-width' work here; this should be fixed for real in the
display_line machinery somewhere.
Stephen Gildea [Thu, 25 Nov 2021 02:38:24 +0000 (18:38 -0800)]
mh-utils-tests: 'mh-sub-folders-actual' coverage
* test/lisp/mh-e/mh-utils.el (mh-sub-folders-parse-no-folder)
(mh-sub-folders-parse-relative-folder, mh-sub-folders-parse-root-folder):
New tests.
* lisp/mh-e/mh-utils.el (mh-sub-folders-parse): New function,
refactored out of 'mh-sub-folders-actual' to create a testing seam.
Matt Kramer [Wed, 24 Nov 2021 19:41:52 +0000 (21:41 +0200)]
Fix tab-line cycling when using buffer groups (bug#52050)
* lisp/tab-line.el (tab-line-switch-to-prev-tab, tab-line-switch-to-next-tab):
Remove tabs that aren't associated with a buffer, such as the `group-tab' that
exists when `tab-line-tabs-function' is `tab-line-tabs-buffer-groups'.
Juri Linkov [Wed, 24 Nov 2021 18:46:53 +0000 (20:46 +0200)]
* lisp/outline.el (outline-font-lock-keywords): Replace ‘.+’ with ‘.*’.
Make the regexp less restrictive and don't require the outline heading
to have more text after outline-regexp until the end of the heading line
(bug#51016).
Stephen Gildea [Wed, 24 Nov 2021 15:27:18 +0000 (07:27 -0800)]
mh-utils-tests: Add new tests of "folders +/"
* test/lisp/mh-e/mh-utils-tests.el
(mh-sub-folders-actual, mh-sub-folders): Add new tests of "folders +/".
Rewrite tests that were using 'assoc' to use 'member' instead, so that
on failure, ERT logs the list of which the element was not a member,
rather than the 'nil' returned by 'assoc'.
(mh-test-variant-handles-plus-slash): Factor out new helper function.
(mh-folder-completion-function-08-plus-slash)
(mh-folder-completion-function-09-plus-slash-tmp):
Use new helper function.
* test/lisp/mh-e/test-all-mh-variants.sh: LD_LIBRARY_PATH unnecessary.
Po Lu [Wed, 24 Nov 2021 12:48:01 +0000 (12:48 +0000)]
Make `yank-media' work on Haiku
This works with what WebPositive does with images, at least. I don't
know about other programs, but Haiku doesn't seem to standardize this
very well.
* lisp/term/haiku-win.el (haiku--selection-type-to-mime): Handle
regular symbols.
(gui-backend-get-selection): Handle special type `TARGETS'.
(gui-backend-set-selection): Always clear clipboard.
* src/haiku_select.cc (BClipboard_get_targets): New function.
(BClipboard_set_data): New argument `clear'. All callers
changed.
(BClipboard_set_system_data)
(BClipboard_set_primary_selection_data)
(BClipboard_set_secondary_selection_data): New argument `clear'.
(BClipboard_system_targets, BClipboard_primary_targets)
(BClipboard_secondary_targets): New functions.
* src/haikuselect.c (haiku_selection_data_1): New function.
(Fhaiku_selection_targets): New function.
(Fhaiku_selection_put): Allow controlling if the clipboard is
cleared.
(syms_of_haikuselect): New symbols and subrs.
* src/haikuselect.h (BClipboard_set_system_data)
(BClipboard_set_primary_selection_data)
(BClipboard_set_secondary_selection_data): New argument `clear'.
(BClipboard_system_targets, BClipboard_primary_targets)
(BClipboard_secondary_targets): New functions.