Glenn Morris [Thu, 14 Oct 2021 14:50:29 +0000 (07:50 -0700)]
Merge from origin/emacs-28
9ff6999a06 (origin/emacs-28) Accept process-filter t in Tramp cf95962092 ; * doc/lispref/processes.texi (Filter Functions): Fix las... 1ad4ad0c11 Document the t value for set-process-filter in the manual b014efa1e5 * doc/misc/tramp.texi (Frequently Asked Questions): Add re... b9b78b2631 Fix Help functions for clicks on tool bar and tab bar 74deafe921 ; * etc/DEBUG: Add a section about debugging native-compil... 8153f70b9c In make_lispy_position fix Bug#50993 in rudimentary fashion 0aa52e94f3 Mark vc-switch-backend as obsolete 568e479c59 Add missing parentheses in the Emacs manual 44ce50b0df Improve tooltip of mode-line-position again 9b1adf8b4f Use browse-url-button-regexp for rcirc-url-regexp 9ed53b022d * lisp/help.el (help--analyze-key): Avoid mouse-set-point ...
Michael Albinus [Thu, 14 Oct 2021 12:32:47 +0000 (14:32 +0200)]
Accept process-filter t in Tramp
* lisp/net/tramp.el (tramp-handle-make-process):
* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-process): Filter can be t.
* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process)
(tramp-test30-make-process): Test filter equal t.
Eli Zaretskii [Thu, 14 Oct 2021 08:57:07 +0000 (11:57 +0300)]
Fix display of cursor in mouse-highlighted face with ':box'
* src/xdisp.c (erase_phys_cursor, show_mouse_face): Adjust
phys_cursor.x as needed if the cursor is inside mouse-highlight.
(get_cursor_offset_for_mouse_face): New function.
* src/dispnew.c (gui_update_window_end): Set
'mouse_face_overwritten_p' if the cursor is in mouse-face, to
trigger more thorough redisplay of the cursor.
(Bug#50660)
Martin Rudalics [Thu, 14 Oct 2021 08:21:17 +0000 (10:21 +0200)]
In 'window--display-buffer' handle nil size values as intended (Bug#51062)
* lisp/window.el (window--display-buffer): Make sure
that (window-height . nil), (window-width . nil)
and (window-size . nil) action alist entries are processed
as intended.
Dmitry Gutov [Thu, 14 Oct 2021 00:43:42 +0000 (03:43 +0300)]
Add new argument INCLUDE-ALL to project-find-file
* lisp/progmodes/project.el (project-find-file):
Add new argument INCLUDE-ALL. Have 'C-u' make it non-nil.
(project-or-external-find-file): Ditto.
(project-find-file-in): Add new argument INCLUDE-ALL.
(https://lists.gnu.org/archive/html/emacs-devel/2021-10/msg00209.html)
Stefan Kangas [Tue, 12 Oct 2021 16:23:46 +0000 (18:23 +0200)]
Double the default value of kill-ring-max
* lisp/simple.el (kill-ring-max): Double the default to 120.
* lisp/menu-bar.el (yank-menu-length): Doc fix.
(yank-menu-max-items): New variable.
(menu-bar-update-yank-menu): Don't display more than
'yank-menu-max-items' in the yank menu.
* doc/emacs/custom.texi (Changing a Variable):
* doc/emacs/killing.texi (Kill Ring):
* doc/lispintro/emacs-lisp-intro.texi (kill-new function):
* doc/lispref/text.texi (Internals of Kill Ring): Doc fix to use
the new value.
Mark all def* functions that should indent as `defun'
* lisp/abbrev.el (define-abbrev):
(define-abbrev-table): Mark all functions that have names that
start with "def" that should indent according to the current
heuristics (bug#43329).
* lisp/autoinsert.el (define-auto-insert):
Paul Eggert [Wed, 13 Oct 2021 18:16:33 +0000 (11:16 -0700)]
Pacify GCC -Wanalyzer-possible-null-dereference
This fixes the only remaining GCC diagnostics when emacs-28 is
configured with --enable-gcc-warnings. It does so by adding
ATTRIBUTE_RETURNS_NONNULL so that GCC knows certain functions
return nonnull. It also arranges for three of those functions to
always return nonnull; I thought these functions already were
doing so, but apparently not, and it is conceivable (though I
haven’t checked this) that changing these functions to always
return nonnull even on non-GNU platforms may fix unlikely
portability bugs elsewhere in Emacs. I used GCC 11.2.1 20210728
(Red Hat 11.2.1-1) on x86-64 when checking the diagnostics.
* configure.ac: Invoke gl_EEMALLOC before gl_INIT, in case
the regex code doesn't invoke gl_EEMALLOC; needed for src/alloc.c’s
use of MALLOC_0_IS_NONNULL.
* src/alloc.c (xmalloc, xzalloc, xrealloc): Don’t worry about the
special case where SIZE == 0, since lmalloc and lrealloc now
return null only on allocation failure.
(lmalloc, lrealloc): Return null only on allocation failure,
instead of having special cases that treat malloc (0) and
realloc (X, 0) as successes even when they return null.
* src/lisp.h: Add ATTRIBUTE_RETURNS_NONNULL to a few functions
that always return nonnull pointers, so that gcc -fanalyzer
does not issue diagnostics like “alloc.c: In function
‘allocate_vector_block’: alloc.c:2985:15: warning: dereference of
possibly-NULL ‘block’ [CWE-690] [-Wanalyzer-possible-null-dereference]”
as per <https://cwe.mitre.org/data/definitions/690.html>.
Paul Eggert [Wed, 13 Oct 2021 18:19:12 +0000 (11:19 -0700)]
Merge from origin/emacs-28
efb1cd7fa9 ; * etc/charsets/README: Update the format documentation. cc796b7409 Tramp doc cleanup a338d46060 Make emacs-lisp-byte-compile-and-load load the .elc file a... 3eac7dc780 Fix point movement in image-dired 4e9452a399 Improve shortdoc for vector f223ac6ef9 Fix test bug when calloc returns null ebeaa54f19 Pacify GCC 11 -fanalyzer on x86-64 56d1f42f30 Improve handling of non-character events in input methods 3fbe6fd367 ; Fix mistakes in last doc rewording about shorthands
* lisp/emacs-lisp/bytecomp.el (byte-compile-warning-types): Allow
inhibiting the `not-unused' warning (bug#31641). (There has been
some discussion about removing the `not-unused' warning, but it's
still in there, so making it possible to inhibit it seems like the
right thing to do.)
* lisp/emacs-lisp/cconv.el (cconv--analyze-use): Don't warn about
`not-unused'.
Fix problem with multiline fontification in interactive Python
* lisp/progmodes/python.el
(python-shell-font-lock-post-command-hook): When doing multi-line
(`C-c SPC') inputs, remove all the preceding lines when doing
fontification (bug#47657).
Peter Münster [Tue, 12 Oct 2021 12:31:58 +0000 (14:31 +0200)]
Fix point movement in image-dired
* lisp/image-dired.el (image-dired-thumb-file-marked-p): Don't
move point in associated dired buffer.
(image-dired-delete-marked): Revert "Fix deletion of associated image"
because it was wrong and introduced another problem (bug#51152).
* doc/lispref/display.texi (Temporary Displays): Explain how
to override the effect of 'temp-buffer-resize-mode' with a
suitable 'display-buffer' action alist entry.
* doc/lispref/windows.texi (Buffer Display Action Alists):
Mention that an 'inhibit-switch-frame' entry might not work
with every WM. Describe the 'window-size' entry. Describe
how automatic window resizing can be overridden.
* lisp/help.el (resize-temp-buffer-window-inhibit): New variable.
(resize-temp-buffer-window): Handle case where user overrides
automatic resizing.
* lisp/window.el (temp-buffer-window-show): Bind
'resize-temp-buffer-window-inhibit' to nil around
'display-buffer'. Do not raise frame automatically to avoid
defeating 'inhibit-switch-frame'.
(window--display-buffer): Set 'resize-temp-buffer-window-inhibit'
to t when the action alist contains a 'window-height',
'window-width' or 'window-size' entry. Use
'modify-frame-parameters' instead of 'set-frame-height' and
'set-frame-width' to avoid that the latter step on each others
toes.
(display-buffer): Fix 'inhibit-switch-frame' part in and add
'window-size' part to doc-string.
Stephen Gildea [Wed, 13 Oct 2021 01:29:30 +0000 (18:29 -0700)]
MH-E: restore message about obsolete key binding
* lisp/mh-e/mh-show.el:
* lisp/mh-e/mh-folder.el: Restore "obsolete key" message for "J w" that
was lost in the conversion from gnus-define-keys to define-keymap.
* 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.