* lisp/edmacro.el (edmacro-fix-menu-commands): Load mwheel to pacify
free variable warnings in without-x builds.
* lisp/mh-e/mh-compat.el: Declare image.el functions that are not
preloaded in without-x builds.
* lisp/mh-e/mh-utils.el (mh--with-image-load-path): New macro.
(mh-logo-display):
* lisp/mh-e/mh-tool-bar.el (mh-tool-bar-folder-buttons-init)
(mh-tool-bar-letter-buttons-init): Use it to pacify byte-compilation
warnings about image.el definitions not preloaded without-x.
Eric Abrahamsen [Mon, 11 Oct 2021 15:45:09 +0000 (08:45 -0700)]
Clean up nnimap buffers with dead processes
* lisp/gnus/nnimap.el (nnimap-keepalive): If the keepalive "NOOP"
fails, remove the buffer with the dead process from
`nnimap-process-buffers' and `nnimap-connection-alist'.
(nnimap-find-connection): Do the same here, when the connection can't
be found.
(nnimap-close-server): Remove process buffer from lists when closing
server.
Glenn Morris [Tue, 12 Oct 2021 14:50:19 +0000 (07:50 -0700)]
Merge from origin/emacs-28
66b8dfd060 (origin/emacs-28) ; Fix last change related to shorthands 3832b983cf In Fdelete_other_windows_internal fix new total window siz... 5deb0ec14f * lisp/mh-e/mh-show.el (mh-junk-whitelist): Custom obsoles... cf1409db71 Don't apply shorthands to punctuation-only symbols (bug#51... b3d0f53b29 * lisp/progmodes/python.el: Bump package version to 0.28.
* lisp/net/dbus.el (dbus--init): Make into a defun.
(after-pdump-load-hook): Put it onto the new pdump hook so that
it's run after startup (bug#37331).
Stefan Kangas [Tue, 12 Oct 2021 11:29:28 +0000 (13:29 +0200)]
Make mh-do-in-gnu-emacs obsolete
* lisp/mh-e/mh-acros.el (mh-do-in-gnu-emacs): Make obsolete.
* lisp/mh-e/mh-tool-bar.el: Don't use above obsolete macro.
(mh-acros): Require to avoid warnings.
Thanks to Lars Ingebrigtsen <larsi@gnus.org>.
Andreas Schwab [Tue, 12 Oct 2021 08:47:33 +0000 (10:47 +0200)]
Change --fingerprint to output to stdout
* src/pdumper.c (dump_fingerprint): Add argument OUTPUT, use it
instead of stderr, update all uses. Don't print colon if LABEL is
empty.
* src/pdumper.h (dump_fingerprint): Adjust.
* src/emacs.c (main): Print fingerprint to stdout, without label.
* Makefile.in (EMACS_PDMP): Adjust.
Martin Rudalics [Tue, 12 Oct 2021 07:53:57 +0000 (09:53 +0200)]
Have 'while-no-input-ignore-events' handle idle timers too (Bug#49997)
* src/keyboard.c (read_char): Use Vwhile_no_input_ignore_events to
check which idle timers should be resumed (Bug#49997).
(init_while_no_input_ignore_events): New function to
initialize Vwhile_no_input_ignore_events.
(Vwhile_no_input_ignore_events): Say in doc-string that events in
this list do not stop idle timers.
* lisp/subr.el (while-no-input): Remove initialization of
'while-no-input-ignore-events'; do that in keyboard.c now.
Stefan Kangas [Tue, 12 Oct 2021 00:35:23 +0000 (02:35 +0200)]
Remove last XEmacs compat code from ERC
* lisp/erc/erc-dcc.el (erc-dcc-member): Remove XEmacs compat code.
* lisp/erc/erc-goodies.el (erc-move-to-prompt-setup): Doc fix;
remove spurious reference to XEmacs; this is needed also for
Emacs.
Stefan Kangas [Mon, 11 Oct 2021 21:58:24 +0000 (23:58 +0200)]
Remove some more MH-E compat code
* lisp/mh-e/mh-acros.el (defun-mh, defmacro-mh): Make obsolete.
* lisp/mh-e/mh-gnus.el (mh-gnus-local-map-property): Make obsolete.
* lisp/mh-e/mh-mime.el (mh-insert-mime-security-button)
(mh-insert-mime-button): Don't use above obsolete function.
* lisp/mh-e/mh-gnus.el (mh-mm-text-html-renderer): Make obsolete.
* lisp/mh-e/mh-mime.el (mh-mm-inline-media-tests)
(mh-signature-highlight): Remove references to removed Gnus
variable 'mm-inline-text-html-renderer'.
* lisp/mh-e/mh-letter.el (mh-letter-complete): Make into obsolete
function alias for 'completion-at-point'. Update callers.
* lisp/mh-e/mh-e.el (mh-inc-spool-list, mh-show-use-xface-flag):
* lisp/mh-e/mh-comp.el (mh-ascii-buffer-p):
* lisp/mh-e/mh-show.el:
* lisp/mh-e/mh-utils.el: Remove some references to XEmacs.
* lisp/mh-e/mh-comp.el (mh-send-letter): Remove XEmacs and Emacs
compat code.
* lisp/mh-e/mh-compat.el (mh-display-completion-list): Remove
compat code for Emacs 22 and earlier.
* lisp/mh-e/mh-e.el (mh-inherit-face-flag)
(mh-min-colors-defined-flag): Make XEmacs and Emacs 21 compat
variables obsolete.
(mh-face-data): Adjust to assume above variables are always t.
* lisp/mh-e/mh-mime.el (mh-mime-button-map): Remove XEmacs and
Emacs 20 compat code.
* lisp/mh-e/mh-utils.el (mh-mapc): Make Emacs 20 compat function
into obsolete function alias for mapc. Update callers.
Stefan Kangas [Mon, 11 Oct 2021 13:10:26 +0000 (15:10 +0200)]
Fontify "print" and "exec" as functions in python-mode
This change was first made on master, but on closer consideration it
is better to fix this bug already in Emacs 28.1.
* lisp/progmodes/python.el (python-font-lock-keywords-level-2):
Fontify "print" and "exec" as functions, which is the case in
Python 3. (Bug#43298) Do not merge to master.
Juri Linkov [Mon, 11 Oct 2021 18:27:50 +0000 (21:27 +0300)]
Copy parent face attributes to tab-line-tab-current instead of inheriting face
* lisp/tab-line.el (tab-line-tab-current): Don't inherit face from
'tab-line-tab' to not inherit the face attribute :height from 'tab-line',
because :height of mouse-face is added to the base face.
Copy here most of the parent face attributes (bug#50798).
Glenn Morris [Mon, 11 Oct 2021 15:22:00 +0000 (08:22 -0700)]
Fix merge error for elisp-mode-tests.el
* test/lisp/progmodes/elisp-mode-tests.el (test-cl-flet-indentation):
Delete test mistakenly restored by merge conflict.
It seems this was deleted 2021-10-01 with incomplete log message
"Add more indentation tests".
Glenn Morris [Mon, 11 Oct 2021 15:04:57 +0000 (08:04 -0700)]
Merge from origin/emacs-28
ac06608878 (origin/emacs-28) Release ERC 5.4 a1a589d07b * etc/ERC-NEWS: Announce ERC's addition to GNU ELPA. 6c7947f0a1 * etc/ERC-NEWS: Fix outline level for the recent additions. c480b68644 Add ERC entries for 'customize-package-emacs-version-alist' 4afff515c8 Expand the full file name 36a485a1af Obsolete XEmacs compat convention in 'erc-button-press-but...
Glenn Morris [Mon, 11 Oct 2021 15:04:57 +0000 (08:04 -0700)]
Merge from origin/emacs-28
1a1b206a8b Adapt the recent 'num_processors' change to MS-Windows 7cb4637923 Minor fix to clarify a sentence in emacs-lisp-intro ab60144ea3 ; Pacify recent shorthand unused lexarg warnings. e9df86004f Make tty-run-terminal-initialization load the .elc file (i... 07edc28bdb Fix ert errors when there's a test that binds `debug-on-er... 96278de8ac New function num-processors 575e626105 Add symbol property 'save-some-buffers-function' (bug#46374) a3e10af95c Keep reading when typed RET in read-char-from-minibuffer a... 013e3be832 * lisp/userlock.el (ask-user-about-supersession-threat): A... ae61d7a57d Fix point positioning on mouse clicks with non-zero line-h... 4c7e74c386 Complete shorthands to longhands for symbol-completing tables c2513c5d0d Add new failing test for bug#51089 1d1e96377c ; * lisp/emacs-lisp/shortdoc.el: Fix typo. 6bf29072e9 Avoid mapping file names through 'substring' bcce93f04c Update to Org 9.5-46-gb71474 5d408f1a24 Expanded testing of MH-E with multiple MH variants b497add971 Fix Seccomp filter for newer GNU/Linux systems (Bug#51073). 75d9fbec88 Tramp code cleanup
* lisp/emulation/cua-base.el (cua-cut-handler):
(cua-copy-handler): New aliases (bug#28930).
(cua--init-keymaps): Use them for `C-x' and `C-c' to be able to
distinguish the commands when looking them up in reverse.
Paul Eggert [Sun, 10 Oct 2021 20:59:16 +0000 (13:59 -0700)]
New function num-processors
This addresses a FIXME comment in lisp/emacs-lisp/comp.el,
relating to the number of subsidiary processes used by
comp-run-async-workers in native compilation.
* admin/merge-gnulib (GNULIB_MODULES): Add nproc.
* doc/lispref/processes.texi (Process Information), etc/NEWS:
Document num-processors.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/nproc.c, lib/nproc.h, m4/nproc.m4:
New files, copied from Gnulib by admin/merge-gnulib.
* lisp/emacs-lisp/comp.el (w32-get-nproc): Remove decl.
(comp-effective-async-max-jobs): Use num-processors.
* src/process.c: Include nproc.h.
(Fnum_processors): New function.
(syms_of_process): Define ‘all’, ‘current’, ‘num-processors’.
* src/w32proc.c (Fw32_get_nproc): Add FIXME comment.
* test/src/process-tests.el (process-num-processors): New test.
Juri Linkov [Sun, 10 Oct 2021 17:38:12 +0000 (20:38 +0300)]
Add symbol property 'save-some-buffers-function' (bug#46374)
* lisp/files.el (save-some-buffers-root): Put non-nil
symbol property 'save-some-buffers-function'.
(save-some-buffers): Check pred for the
symbol property 'save-some-buffers-function'.
(save-some-buffers-default-predicate): Mention
symbol property 'save-some-buffers-function'.
Juri Linkov [Sun, 10 Oct 2021 17:31:15 +0000 (20:31 +0300)]
Keep reading when typed RET in read-char-from-minibuffer and y-or-n-p
* lisp/subr.el (read-char-from-minibuffer-map):
Remap exit-minibuffer to read-char-from-minibuffer-insert-other.
(y-or-n-p-map): Remap 'exit' to y-or-n-p-insert-other.
(y-or-n-p): Don't mention RET in docstring. (Bug#51101)
João Távora [Wed, 6 Oct 2021 10:30:29 +0000 (11:30 +0100)]
Complete shorthands to longhands for symbol-completing tables
Shorthands aren't symbols, they're text forms that 'read' into
symbols. As such, shorthands aren't candidates in these tables of
symbols. But in some situations, if no other candidates match the
pattern, we can e.g. complete "x-foo" to "xavier-foo" if the shorthand
* lisp/minibuffer.el (completion-styles-alist): New 'shorthand'
style.
(completion-category-defaults): Link 'symbol-help' category with
'shorthand' style.
(minibuffer--original-buffer): New variable.
(completing-read-default): Setup minibuffer--original-buffer.
(completion-shorthand-try-completion)
(completion-shorthand-all-completions): New helpers.
Dmitry Gutov [Sun, 10 Oct 2021 01:14:35 +0000 (04:14 +0300)]
Avoid mapping file names through 'substring'
* lisp/progmodes/project.el (project--files-in-directory):
Avoid mapping file names through 'substring'. Reducing the amount
of garbage generated. Better perf by up to 20%.
Bump the package version.
Stephen Gildea [Sat, 9 Oct 2021 18:36:03 +0000 (11:36 -0700)]
Expanded testing of MH-E with multiple MH variants
* test/lisp/mh-e/mh-utils-tests.el: Environment variable TEST_MH_PATH
controls which installed MH variant to test with. Moved the commentary
about testing with different MH variants from above 'with-mh-test-env'
definition to "Commentary" section at the top of the file.
* test/lisp/mh-e/test-all-mh-variants.sh: New script to test all
installed MH variants.
Glenn Morris [Sat, 9 Oct 2021 14:50:36 +0000 (07:50 -0700)]
Merge from origin/emacs-28
394209c1a0 (origin/emacs-28) ; Fix indentation in etc/NEWS 81f20e8b89 Fix thinko in ls-lisp--insert-directory ec9f25bd35 Mention that RET means "yes" in y-or-n-p 00eb21c897 ; * src/dispextern.h (struct glyph_string): Comment on NCH... 20eb3644ba Rewrite Antinews for Emacs 28 3a9b881603 ; * etc/NEWS: Rearrange the "incompatible changes" sections. ebb7e26013 ; * etc/NEWS: Fix a typo. 315fe20086 ; * src/Makefile.in (../native-lisp): Add comment. 47cbd103f5 * lisp/bindings.el (mode-line-position): Improve tooltip. 35a752863a * lisp/progmodes/xref.el: Bump the version. bbcd8cc1a9 Slight simplificaiton e139dd1b1e Fix doc strings of 2 categories 59782839cb (xref--collect-matches-1): Remove some intermediate alloca... 1c7d056f4d ; Fix two typos where em dash was written as en dash
Stefan Kangas [Fri, 8 Oct 2021 18:41:50 +0000 (20:41 +0200)]
Remove some additional XEmacs compat code from viper
* lisp/emulation/viper-util.el (viper-memq-char): Make into
obsolete function alias for 'memq'. Update callers.
(viper-char-equal): Make into obsolete function alias for 'eq'.
Update callers.
(viper-color-display-p): Make into obsolete function alias for
'x-display-color-p'. Update callers.