Po Lu [Mon, 12 Sep 2022 06:01:52 +0000 (14:01 +0800)]
Fix focus restoration upon x_mouse_leave again
* src/xterm.c (x_mouse_leave): Call xi_handle_focus_change after
changing the implicit focus.
Dmitry Gutov [Sun, 11 Sep 2022 21:45:12 +0000 (00:45 +0300)]
* lisp/progmodes/xref.el: Bump the version.
Kévin Le Gouguec [Sun, 11 Sep 2022 17:55:01 +0000 (19:55 +0200)]
Restrict replace-*-in-region to the bounds defined by caller
* lisp/subr.el (replace-string-in-region, replace-regexp-in-region):
Narrow to region before iterating over matches, instead of giving a
bound to the search functions.
* test/lisp/subr-tests.el (test-replace-string-in-region): Add
regression tests (bug#57733).
Michael Albinus [Sun, 11 Sep 2022 12:53:14 +0000 (14:53 +0200)]
Disable Tramp cache for relative file names
* lisp/net/tramp.el (tramp-file-name-unify):
Return `tramp-cache-undefined' if LOCALNAME is a relative file name.
* lisp/net/tramp-cache.el (tramp-get-file-property)
(tramp-set-file-property, tramp-file-property-p)
(tramp-flush-file-property, tramp-flush-file-upper-properties)
(tramp-flush-file-properties): Handle KEY being
`tramp-cache-undefined'.
(tramp-flush-file-function): Revert last change.
Richard Hansen [Tue, 28 Jun 2022 20:25:43 +0000 (16:25 -0400)]
whitespace: Redo BoB/EoB empty line highlighting
* lisp/whitespace.el (whitespace--empty-at-bob-matcher,
whitespace--empty-at-eob-matcher, whitespace--update-bob-eob,
whitespace-color-off, whitespace-color-on,
whitespace-empty-at-bob-regexp, whitespace-empty-at-eob-regexp,
whitespace-looking-back, whitespace-post-command-hook): Redo the
`empty' line highlighting logic to ensure that a buffer change causes
all affected `empty' lines to become (un)highlighted (bug#37467).
Also, for improved UX, don't highlight BoB empty lines at or below
point (not just when point is at 1), or EoB empty lines at or above
point (not just when point is `eobp').
(whitespace-bob-marker, whitespace-eob-marker): Clarify documentation.
* test/lisp/whitespace-tests.el (whitespace--with-test-buffer,
whitespace--fu, whitespace-tests--empty-bob,
whitespace-tests--empty-eob): Add tests.
Richard Hansen [Tue, 28 Jun 2022 19:05:04 +0000 (15:05 -0400)]
whitespace: Include empty final line in BoB empty match
* lisp/whitespace.el (whitespace-empty-at-bob-regexp): Include any
last line trailing whitespace in the BoB empty line match to ensure
that those characters get highlighted.
Richard Hansen [Wed, 22 Jun 2022 21:29:39 +0000 (17:29 -0400)]
whitespace: Reset `whitespace-buffer-changed' when refontifying
* lisp/whitespace.el (whitespace-post-command-hook): Add missing reset
of `whitespace-buffer-changed' back to nil between commands.
Richard Hansen [Wed, 22 Jun 2022 23:02:42 +0000 (19:02 -0400)]
; whitespace: Use `defvar-local' for buffer-local vars
Richard Hansen [Wed, 22 Jun 2022 22:06:49 +0000 (18:06 -0400)]
; whitespace: Delete unused `whitespace-font-lock-refontify' var
Richard Hansen [Tue, 28 Jun 2022 05:10:48 +0000 (01:10 -0400)]
ert-x: New `ert-with-test-buffer-selected' convenience macro
* lisp/emacs-lisp/ert-x.el (ert-with-test-buffer-selected): New
convenience macro that extends `ert-with-test-buffer' by displaying
the test buffer in a temporary selected window. This makes it easier
to simulate user input in the body via `execute-kbd-macro'.
* test/lisp/emacs-lisp/ert-x-tests.el
(ert-test-test-buffer-selected/*): Add tests.
Philip Kaludercic [Sun, 11 Sep 2022 11:28:38 +0000 (13:28 +0200)]
Revert "Add new command 'toggle-theme'"
This reverts commit
f31b9d86a67f1b3fd70339f277dff52478890351.
Philip Kaludercic [Sun, 11 Sep 2022 11:28:36 +0000 (13:28 +0200)]
Revert "Add new user option 'custom-ensure-single-theme'"
This reverts commit
b4dbf7184cd68ecd8d1a27fbc1407be0eae7e64c.
Philip Kaludercic [Sun, 11 Sep 2022 11:12:39 +0000 (13:12 +0200)]
; Use US spelling docstring
* lisp/vc/diff-mode.el (diff-add-log-use-relative-names): Update docstring.
Philip Kaludercic [Tue, 6 Sep 2022 19:04:08 +0000 (21:04 +0200)]
Add new user option 'custom-ensure-single-theme'
* etc/NEWS: Mention it.
* lisp/custom.el (custom-ensure-single-active-theme): Add it.
(load-theme): Use it.
Philip Kaludercic [Tue, 6 Sep 2022 18:53:35 +0000 (20:53 +0200)]
Add new command 'toggle-theme'
* doc/emacs/custom.texi (Custom Themes): Mention it.
* etc/themes/leuven-dark-theme.el (leuven-dark): Add dual theme.
* etc/themes/leuven-theme.el (leuven): Add dual theme.
* etc/themes/tango-dark-theme.el (tango-dark): Add dual theme.
* etc/themes/tango-theme.el (tango): Add dual theme.
* etc/themes/tsdh-dark-theme.el (tsdh-dark): Add dual theme.
* etc/themes/tsdh-light-theme.el (tsdh-light): Add dual theme.
* lisp/cus-theme.el (describe-theme-1): Say if a theme has a dual.
* lisp/custom.el (toggle-theme): Add new command.
Miha Rihtaršič [Sun, 11 Sep 2022 10:59:02 +0000 (12:59 +0200)]
Improve some shell highlight doc strings
* lisp/shell.el (shell-highlight-undef-mode-restart): Rename function.
* lisp/shell.el (shell-comint-fl-enable):
(shell--highlight-undef-indirect)
* lisp/ielm.el (ielm-comint-fl-enable):
* lisp/comint.el: (comint--fl-fontify-region): Improve doc strings.
Po Lu [Sun, 11 Sep 2022 08:50:16 +0000 (16:50 +0800)]
Make it easier to clear the Motif drag window for debugging
* src/xterm.c (xm_get_drag_window_1): Add comment explaining
side effect of x_special_window_exists_p.
(handle_one_xevent): Clear Motif drag window upon DestroyNotify.
In addition to debugging, it also reduces syncs necessary to
communicate via the Motif protocol after a defective/old client
sets the drag window without setting the disconnect mode.
Juri Linkov [Sun, 11 Sep 2022 08:22:11 +0000 (11:22 +0300)]
* lisp/vc/vc.el (vc-diff-patch-string): Fix arg in revert-buffer-function.
Sean Whitton [Sun, 11 Sep 2022 06:10:45 +0000 (23:10 -0700)]
* lisp/vc/vc.el (vc-deduce-backend): Handle eshell-mode.
ookami [Sat, 10 Sep 2022 12:56:08 +0000 (14:56 +0200)]
Fix project-remember-projects-under when recursing
* lisp/progmodes/project.el (project-remember-projects-under):
Actually recurse into directories (bug#57714).
Copyright-paperwork-exempt: yes
Michael Albinus [Sat, 10 Sep 2022 11:10:47 +0000 (13:10 +0200)]
Ensure, that Tramp cache works over absolute file names
* lisp/net/tramp.el (tramp-skeleton-directory-files)
(tramp-skeleton-directory-files-and-attributes)
(tramp-skeleton-set-file-modes-times-uid-gid)
(tramp-handle-add-name-to-file, tramp-handle-file-exists-p)
(tramp-handle-file-readable-p, tramp-handle-file-writable-p):
* lisp/net/tramp-adb.el (tramp-adb-handle-file-executable-p)
(tramp-adb-handle-file-exists-p)
(tramp-adb-handle-file-readable-p)
(tramp-adb-handle-file-writable-p)
* lisp/net/tramp-gvfs.el (tramp-gvfs-info, tramp-gvfs-handle-delete-file)
(tramp-gvfs-get-directory-attributes)
(tramp-gvfs-get-root-attributes)
(tramp-gvfs-handle-file-executable-p):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
(tramp-sh-handle-file-exists-p)
(tramp-sh-handle-set-visited-file-modtime)
(tramp-sh-handle-file-selinux-context)
(tramp-sh-handle-set-file-selinux-context)
(tramp-sh-handle-file-acl, tramp-sh-handle-file-executable-p)
(tramp-sh-handle-file-readable-p)
(tramp-sh-handle-file-directory-p)
(tramp-sh-handle-file-writable-p)
(tramp-sh-handle-file-ownership-preserved-p)
(tramp-sh-handle-add-name-to-file)
(tramp-sh-handle-copy-directory, tramp-sh-handle-delete-file)
(tramp-sh-handle-dired-compress-file):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-add-name-to-file)
(tramp-sudoedit-handle-delete-file)
(tramp-sudoedit-handle-file-acl)
(tramp-sudoedit-handle-file-executable-p)
(tramp-sudoedit-handle-file-exists-p)
(tramp-sudoedit-handle-file-readable-p)
(tramp-sudoedit-handle-file-selinux-context)
(tramp-sudoedit-handle-file-writable-p)
(tramp-sudoedit-handle-make-symbolic-link)
(tramp-sudoedit-handle-set-file-selinux-context):
Use `expand-file-name'. (Bug#57572)
* lisp/net/tramp-cache.el (tramp-flush-file-function):
Expand `buffer-file-name'. (Bug#57676)
* lisp/net/tramp.el (tramp-file-name-unify): Extend error message.
* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link):
* lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-make-symbolic-link):
Do not check remoteness of TARGET anymore.
Po Lu [Sat, 10 Sep 2022 10:49:53 +0000 (18:49 +0800)]
Fix compliance with the XDND specification when dropping on a proxy
* src/xterm.c (x_dnd_send_enter, x_dnd_send_position)
(x_dnd_send_leave, x_dnd_send_drop, x_dnd_do_drop): New
parameter `toplevel'. Use it as the window in sent client
messages.
(x_dnd_cancel_dnd_early, x_dnd_cleanup_drag_and_drop)
(x_dnd_process_quit, x_dnd_update_state, handle_one_xevent)
(x_connection_closed): Give the right toplevel to the client
message sending functions.
Eli Zaretskii [Sat, 10 Sep 2022 08:48:11 +0000 (11:48 +0300)]
; * lisp/minibuffer.el (format-prompt): Doc fix.
Paul Eggert [Sat, 10 Sep 2022 06:20:31 +0000 (08:20 +0200)]
Make wdired match dired with symlink permissions
* lisp/wdired.el (wdired-do-perm-changes): Do not follow symlinks,
to be consistent with plain dired (bug#50189).
Lars Ingebrigtsen [Sat, 10 Sep 2022 06:13:21 +0000 (08:13 +0200)]
Make `format-prompt' use `substitute-command-keys'
* doc/lispref/minibuf.texi (Text from Minibuffer): Mention it.
* lisp/minibuffer.el (format-prompt): Run through
`substitute-command-keys' (bug#51040).
Lars Ingebrigtsen [Sat, 10 Sep 2022 06:01:55 +0000 (08:01 +0200)]
Fix diff-mode.el compilation warnings
* lisp/vc/diff-mode.el (diff-auto-refine-mode): Suppress
byte-compile warnings.
Stefan Kangas [Sat, 10 Sep 2022 05:37:36 +0000 (07:37 +0200)]
New function substitute-quotes
* lisp/help.el (substitute-quotes): New function. (Bug#51040)
* doc/lispref/help.texi (Keys in Documentation): Document
substitute-quotes.
* test/lisp/help-tests.el (help-tests-substitute-quotes): New test.
* lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
* lisp/cus-theme.el (describe-theme-1):
* lisp/emacs-lisp/cl-extra.el (cl--describe-class):
* lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
* lisp/emacs-lisp/package.el (describe-package-1):
* lisp/help-fns.el (help-fns--parent-mode, help-fns--var-risky)
(help-fns--var-file-local, help-fns--var-bufferlocal)
(describe-face):
* lisp/help.el (substitute-command-keys):
* lisp/progmodes/octave.el (octave-help): Use the new function
instead of 'substitute-command-keys'.
Stefan Kangas [Sat, 10 Sep 2022 05:29:48 +0000 (07:29 +0200)]
Doc fixes for 'text-quoting-style'
* doc/lispref/help.texi (Keys in Documentation): Remove duplicate
entry for 'text-quoting-style'. Document the function with the same
name instead.
* src/doc.c (Ftext_quoting_style): Doc fix: clarify the return values.
(syms_of_doc) <Vtext_quoting_style>: Doc fix: clarify that you should
not read the value of this variable directly; use Ftext_quoting_style
instead (bug#51040).
Lars Ingebrigtsen [Sat, 10 Sep 2022 04:52:39 +0000 (06:52 +0200)]
Make a flymake.texi code example more resilient
* doc/misc/flymake.texi (An annotated example backend): Make the
example code resilient wrt. narrowed buffers (bug#51437).
Stefan Kangas [Sat, 10 Sep 2022 03:29:54 +0000 (05:29 +0200)]
* src/w32image.c (w32_can_use_native_image_api): Fix comment.
Stefan Kangas [Sat, 10 Sep 2022 03:03:58 +0000 (05:03 +0200)]
Support outline-minor-mode in emacs-authors-mode
* lisp/textmodes/emacs-authors-mode.el (emacs-authors-mode):
Support and enable outline-minor-mode.
Po Lu [Sat, 10 Sep 2022 01:39:14 +0000 (09:39 +0800)]
; * src/alloc.c (check_pure_size): Fix last change.
Po Lu [Sat, 10 Sep 2022 01:35:49 +0000 (09:35 +0800)]
Fix several printfs for 32 bit systems
* lib-src/emacsclient.c (main): Use right length modifier when
printing uintmax_t.
* src/alloc.c (check_pure_size): Use right length modifier when
printing ptrdiff_t.
Stefan Kangas [Fri, 9 Sep 2022 21:51:05 +0000 (23:51 +0200)]
* lisp/subr.el (string-split): New alias for split-string.
Stefan Kangas [Fri, 9 Sep 2022 21:39:24 +0000 (23:39 +0200)]
Set vc-git-annotate-switches to "-w" in .dir-locals.el
* .dir-locals.el: Set vc-git-annotate-switches to "-w".
Ref: https://lists.gnu.org/r/emacs-devel/2022-09/msg00453.html
Stefan Kangas [Fri, 9 Sep 2022 21:56:24 +0000 (23:56 +0200)]
Accept "-w" as safe value for vc-git-annotate-switches
* lisp/vc/vc-git.el
(vc-git-annotate-switches-safe-p): New predicate function.
(vc-git-annotate-switches): Use above new predicate function to
check if it's :safe.
Paul Eggert [Fri, 9 Sep 2022 20:22:16 +0000 (15:22 -0500)]
Fix problem with Glib 2.73.2+ and SIGCHLD handler
This code fix is by Stefan Monnier (Bug#57699).
* src/process.c (init_process_emacs) [HAVE_GLIB && !WINDOWSNT]:
Adjust to Glib 2.73.2 behavior change on Linux kernel 5.3+.
Eli Zaretskii [Fri, 9 Sep 2022 19:10:00 +0000 (22:10 +0300)]
; Fix doc strings in shell.el
* lisp/shell.el (shell-highlight-undef-defined-face)
(shell-highlight-undef-remote-file-name-inhibit-cache)
(shell--highlight-undef-exec-cache): Fix wording and typos.
Miha Rihtaršič [Fri, 9 Sep 2022 18:13:13 +0000 (20:13 +0200)]
Input indentation for M-x shell
* lisp/comint.el
(comint-indent-input-line):
(comint-indent-input-line-default):
(comint-indent-input-region):
(comint-indent-input-region-default): New functions that implement a
general mechanism for input indentation through an indirect buffer in
comint derived major modes.
* lisp/shell.el (shell-mode): Set up input indentation according to
sh-mode (bug#51940).
Miha Rihtaršič [Fri, 9 Sep 2022 18:12:26 +0000 (20:12 +0200)]
Highlight non-existent commands in M-x shell
* lisp/shell.el (shell-mode): Enable highlighting of non-existent
commands if requested.
(shell-highlight-undef-aliases):
(shell-highlight-undef-remote-file-name-inhibit-cache): New user
options.
(shell-highlight-undef-mode): New minor mode.
(shell-highlight-undef-defined-face):
(shell-highlight-undef-undefined-face):
(shell-highlight-undef-alias-face): New faces.
(shell-highlight-undef--exec-cache):
(shell-highlight-undef--face):
(shell-highlight-undef-keywords):
(shell-highlight-undef-regexp):
(shell-highlight-undef--executable-find):
(shell-highlight-undef-matcher):
(shell-highlight-undef--indirect):
(shell-highlight--setup):
(shell-highlight-undef-reset-mode): New functions and buffer local
variables (bug#51940).
Miha Rihtaršič [Fri, 9 Sep 2022 18:11:33 +0000 (20:11 +0200)]
Input fontification for M-x ielm
* lisp/ielm.el (ielm-comint-fl-enable): New user option to control
input fontification.
(ielm-indirect-setup-hook): New hook.
(inferior-emacs-lisp-mode): Set up and enable input fontification.
Miha Rihtaršič [Fri, 9 Sep 2022 18:10:01 +0000 (20:10 +0200)]
Input fontification for M-x shell
* lisp/comint.el
(comint-indent-input-line):
(comint-indent-input-line-default):
(comint-indent-input-region):
(comint-indent-input-region-default): New functions that implement a
general mechanism for input indentation through an indirect buffer in
comint derived major modes.
* lisp/shell.el (shell-mode): Set up input indentation according to
sh-mode (bug#51940).
* lisp/comint.el
(comint-indent-input-line):
(comint-indent-input-line-default):
(comint-indent-input-region):
(comint-indent-input-region-default): New functions that implement a
general mechanism for input indentation through an indirect buffer in
comint derived major modes.
* lisp/shell.el (shell-mode): Set up input indentation according to
sh-mode (bug#51940).
Miha Rihtaršič [Fri, 9 Sep 2022 18:08:19 +0000 (20:08 +0200)]
Implement a general input fontification mechanism for comint modes
* lisp/comint.el
(comint-indent-input-line):
(comint-indent-input-line-default):
(comint-indent-input-region):
(comint-indent-input-region-default): New functions that implement a
general mechanism for input indentation through an indirect buffer in
comint derived major modes.
* lisp/shell.el (shell-mode): Set up input indentation according to
sh-mode (bug#51940).
Lars Ingebrigtsen [Fri, 9 Sep 2022 17:43:28 +0000 (19:43 +0200)]
Fix "warn-lambda-malformed-interactive-spec.el" even more
* test/lisp/emacs-lisp/bytecomp-tests.el
("warn-lambda-malformed-interactive-spec.el"): Adjust test further.
Lars Ingebrigtsen [Fri, 9 Sep 2022 17:29:21 +0000 (19:29 +0200)]
Don't bind `s' in the normal backtrace map
* lisp/emacs-lisp/backtrace.el (backtrace-mode-map): Don't bind
the "s" command, because it's meaningless outside modes that have
set the backtrace-goto-source-functions variable (and only edebug
does that) (bug#57674).
* lisp/emacs-lisp/edebug.el (edebug-pop-to-backtrace): Use it.
(edebug-backtrace-mode-map, edebug-backtrace-mode): New mode.
Lars Ingebrigtsen [Fri, 9 Sep 2022 17:18:02 +0000 (19:18 +0200)]
Update a bytecomp test
* test/lisp/emacs-lisp/bytecomp-tests.el
("warn-lambda-malformed-interactive-spec.el"): Update test to code
change.
Lars Ingebrigtsen [Fri, 9 Sep 2022 17:16:01 +0000 (19:16 +0200)]
Fix typo in byte-compile-lambda warning
* lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Fix typo in
message (bug#57690).
Lars Ingebrigtsen [Fri, 9 Sep 2022 16:09:36 +0000 (18:09 +0200)]
Fix --without-x compilation warnings
* lisp/image/image-dired.el (clear-image-cache):
* lisp/image/image-dired-external.el (clear-image-cache): Fix
compilation warning (bug#57695).
Lars Ingebrigtsen [Fri, 9 Sep 2022 15:57:32 +0000 (17:57 +0200)]
Revert "Fix tramp-loaddefs compilation"
This reverts commit
43e9c8e9d28dcb659a43e58778e2745d1279051f.
The cookie seemed to go to lisp/loaddefs.el for a reason, but a bootstrap is needed.
Lars Ingebrigtsen [Fri, 9 Sep 2022 15:54:40 +0000 (17:54 +0200)]
Fix tramp-loaddefs compilation
* lisp/net/tramp-compat.el: Fix build by putting tramp-compat-rx
in the right loaddefs file.
Michael Albinus [Fri, 9 Sep 2022 15:10:28 +0000 (17:10 +0200)]
Make use of rx in Tramp backward compatoble
* lisp/net/tramp-compat.el (tramp-compat-rx--runtime-params): New defvar.
(tramp-compat-rx--transform-items)
(tramp-compat-rx--transform-item, tramp-compat-rx--transform):
New defuns. Suggested by Mattias Engdegård <mattiase@acm.org>.
(tramp-compat-rx): New defalias or defmacro.
(tramp-compat-string-replace, tramp-compat-string-search):
Use regexp-quote.
* lisp/net/tramp.el:
* lisp/net/tramp-adb.el:
* lisp/net/tramp-archive.el:
* lisp/net/tramp-cmds.el:
* lisp/net/tramp-crypt.el:
* lisp/net/tramp-fuse.el:
* lisp/net/tramp-gvfs.el:
* lisp/net/tramp-sh.el:
* lisp/net/tramp-smb.el:
* lisp/net/tramp-sudoedit.el: Use `tramp-compat-rx' where indicated.
* test/lisp/net/tramp-archive-tests.el:
* test/lisp/net/tramp-tests.el: Use `tramp-compat-rx' where indicated.
Stefan Kangas [Fri, 9 Sep 2022 12:19:32 +0000 (14:19 +0200)]
Fix SVG loading test for old librsvg 2.40.1
* test/manual/image-tests.el (image-tests-load-image/svg-invalid): Fix
test for old librsvg 2.40.1. (Bug#57691)
Stefan Kangas [Fri, 9 Sep 2022 08:31:25 +0000 (10:31 +0200)]
; Clean up recently added SVG test
* test/manual/image-tests.el (image-tests-load-image/svg-invalid):
Clean up.
Stefan Kangas [Tue, 16 Aug 2022 14:04:03 +0000 (16:04 +0200)]
Don't warn about some deleted variables in rst.el
* lisp/textmodes/rst.el (rst-level-face-max)
(rst-level-face-base-color, rst-level-face-base-light)
(rst-level-face-format-light, rst-level-face-step-light)
(rst-level-1-face, rst-level-2-face, rst-level-3-face)
(rst-level-4-face, rst-level-5-face, rst-level-6-face): Don't issue
obsoletion warnings for variables deleted in 24.3.
Stefan Kangas [Sat, 9 Jul 2022 11:05:49 +0000 (13:05 +0200)]
Delete variable window-system-version obsolete since 24.3
* lisp/frame.el (window-system-version): Delete variable.
* src/dispnew.c (syms_of_display) <Vwindow_system_version>:
Delete DEFVAR, obsolete since 24.3.
(init_display_interactive, syms_of_display_for_pdumper):
* src/msdos.c (internal_terminal_init):
* src/nsterm.m (ns_term_init):
* src/pgtkfns.c (pgtk_display_info_for_name):
* src/w32fns.c (w32_display_info_for_name, Fx_open_connection):
* src/xfns.c (x_display_info_for_name, Fx_open_connection): Don't
set above deleted variable.
* admin/admin.el (set-version): Don't update above deleted
variable in msdos.c.
* lisp/textmodes/artist.el (artist-submit-bug-report): Don't use
above deleted variable.
Stefan Kangas [Sun, 10 Jul 2022 11:27:36 +0000 (13:27 +0200)]
Delete many items obsolete since 24.3
* lisp/allout.el (allout-exposure-change-hook)
(allout-structure-added-hook, allout-structure-deleted-hook)
(allout-structure-shifted-hook):
* lisp/arc-mode.el (archive-extract-hooks):
* lisp/buff-menu.el (Buffer-menu-buffer+size-width):
* lisp/calendar/timeclock.el (timeclock-modeline-display)
(timeclock-modeline-display, timeclock-update-modeline):
* lisp/cedet/semantic/db-el.el
(semanticdb-elisp-sym-function-arglist):
* lisp/cedet/semantic/db-file.el (semanticdb-save-database-hooks):
* lisp/cedet/semantic/edit.el (semantic-change-hooks)
(semantic-edits-new-change-hooks)
(semantic-edits-delete-change-hooks)
(semantic-edits-reparse-change-hooks):
* lisp/cedet/semantic/lex.el (semantic-lex-reset-hooks):
* lisp/comint.el (comint--unquote&expand-filename)
(comint-unquote-filename):
* lisp/custom.el (user-variable-p):
* lisp/dired.el (dired-shrink-to-fit, dired-pop-to-buffer)
(dired-sort-set-modeline):
* lisp/ebuff-menu.el (Electric-buffer-menu-mode):
* lisp/emacs-lisp/byte-run.el (macro-declaration-function):
* lisp/emacs-lisp/checkdoc.el (custom-print-functions)
(checkdoc-comment-style-hooks):
* lisp/emacs-lisp/cl-lib.el (custom-print-functions):
* lisp/emacs-lisp/edebug.el (gud-inhibit-global-bindings):
* lisp/erc/erc-dcc.el (erc-dcc-chat-filter-hook):
* lisp/eshell/esh-mode.el (eshell-status-in-modeline):
* lisp/eshell/eshell.el (eshell-add-to-window-buffer-names)
(eshell-remove-from-window-buffer-names):
* lisp/faces.el (set-face-underline-p, font-list-limit):
* lisp/files.el (automount-dir-prefix, toggle-read-only):
* lisp/filesets.el (filesets-cache-fill-content-hooks):
* lisp/frame.el (automatic-hscrolling):
* lisp/generic-x.el (javascript-generic-mode)
(javascript-generic-mode-hook):
* lisp/gnus/gnus-start.el (gnus-subscribe-newsgroup-hooks):
* lisp/gnus/nndiary.el (nndiary-request-create-group-hooks)
(nndiary-request-update-info-hooks)
(nndiary-request-accept-article-hooks):
* lisp/htmlfontify.el (hfy-post-html-hooks):
* lisp/international/mule-cmds.el
(inactivate-current-input-method-function)
(inactivate-input-method, input-method-inactivate-hook)
(ucs-insert):
* lisp/international/quail.el (quail-inactivate)
(quail-inactivate-hook):
* lisp/international/robin.el (robin-inactivate)
(robin-inactivate-hook):
* lisp/leim/quail/hangul.el (hangul-input-method-inactivate):
* lisp/leim/quail/uni-input.el (ucs-input-inactivate):
* lisp/mail/emacsbug.el (report-emacs-bug-info):
* lisp/mh-e/mh-e.el (mh-kill-folder-suppress-prompt-hooks):
* lisp/mpc.el (mpc-string-prefix-p):
* lisp/net/rcirc.el (rcirc-print-hooks, rcirc-sentinel-hooks)
(rcirc-receive-message-hooks, rcirc-activity-hooks):
* lisp/obsolete/crisp.el (crisp-mode-modeline-string):
* lisp/pcomplete.el (pcomplete-arg-quote-list)
(pcomplete-quote-argument):
* lisp/progmodes/cc-mode.el (c-prepare-bug-report-hooks):
* lisp/progmodes/python.el (python-info-ppss-context)
(python-info-ppss-context-type)
(python-info-ppss-comment-or-string-p, python-indent)
(python-guess-indent, python-buffer, python-preoutput-result)
(python-proc, python-send-receive, python-send-string)
(python-use-skeletons):
* lisp/progmodes/sh-script.el (sh-maybe-here-document):
* lisp/replace.el (query-replace-interactive):
* lisp/strokes.el (strokes-modeline-string):
* lisp/subr.el (redraw-modeline):
* lisp/term.el (term-default-fg-color, term-default-bg-color):
* lisp/textmodes/tex-mode.el (latex-string-prefix-p)
(tex-string-prefix-p):
* lisp/url/url-parse.el (url-recreate-url-attributes):
* lisp/vc/add-log.el (change-log-acknowledgement):
* lisp/vc/ediff-wind.el
(ediff-choose-window-setup-function-automatically):
* lisp/vc/pcvs-util.el (cvs-string-prefix-p):
* lisp/vc/vc.el (vc-string-prefix-p):
* lisp/window.el (display-buffer-function):
* lisp/winner.el (winner-mode-leave-hook): Remove many functions and
variables obsolete since 24.3.
* lisp/buff-menu.el (list-buffers--refresh):
* lisp/dired.el (dired-mode-map):
* lisp/files.el (abbreviate-file-name):
* lisp/generic-x.el (generic-default-modes):
* lisp/mh-e/mh-funcs.el (mh-kill-folder):
* lisp/progmodes/hideif.el (hide-ifdef-mode-submap):
* lisp/replace.el (query-replace-read-from):
* lisp/term.el (term):
* lisp/window.el (display-buffer): Don't use above deleted
functions and variables.
* src/marker.c (Fbuffer_has_markers_at): Delete DEFUN obsolete
since 24.3.
(syms_of_marker) <Sbuffer_has_markers_at>: Delete defsubr.
* lisp/subr.el (buffer-has-markers-at): Remove obsoletion
of above deleted DEFUN.
* etc/TODO: Doc fix; don't mention above deleted function.
* admin/cus-test.el (cus-test-get-options):
* lisp/pcomplete.el: Doc fixes; don't mention removed items.
; * etc/NEWS: List removed items.
Stefan Kangas [Fri, 9 Sep 2022 09:19:21 +0000 (11:19 +0200)]
Display error in emacsclient if setsockopt failed
* lib-src/emacsclient.c (set_tcp_socket, set_socket_timeout): Display
an error message if setsockopt failed.
Po Lu [Fri, 9 Sep 2022 08:27:02 +0000 (16:27 +0800)]
Remove some redundant calls to x_ignore_errors_for_next_request
* src/xterm.c (x_dnd_do_unsupported_drop, x_set_frame_alpha):
Wrap some requests in x_ignore_errors_for_next_request instead
of calling it each time.
Po Lu [Fri, 9 Sep 2022 01:54:01 +0000 (09:54 +0800)]
Remove long-broken TESTRM interface
* src/xrdb.c: [TESTRM]:
(fatal, main): Delete functions and code block. They don't work
and rely on XLIB_ILLEGAL_ACCESS.
Stefan Kangas [Fri, 9 Sep 2022 01:38:42 +0000 (03:38 +0200)]
Prefer defvar-keymap in proced.el
* lisp/proced.el (proced-mode-map): Prefer defvar-keymap.
Stefan Kangas [Fri, 9 Sep 2022 01:05:00 +0000 (03:05 +0200)]
Set indent-tabs-mode for lisp-data-mode in .dir-locals.el
* .dir-locals.el (lisp-data-mode): Enforce existing indent-tabs-mode
policy.
Stefan Kangas [Fri, 9 Sep 2022 00:32:08 +0000 (02:32 +0200)]
Display librsvg error when loading bad SVG
* src/image.c (svg_load_image): Display the error message from librsvg
when parsing a bad SVG image file.
* test/manual/image-tests.el
(image-tests-load-image/svg-invalid): New test.
Jim Porter [Wed, 7 Sep 2022 20:58:31 +0000 (13:58 -0700)]
; Fix a race condition in an Eshell test
* test/lisp/eshell/esh-proc-tests.el
(esh-proc-test/sigpipe-exits-process): Use "|&" when creating the
pipeline to prevent an extra pipe process from being started.
Richard Stallman [Thu, 8 Sep 2022 22:10:12 +0000 (18:10 -0400)]
Decode base64 attachments revealed by decryption.
* lisp/mail/rmail.el (rmail-epa-decode): New function.
(rmail-epa-decrypt): Call rmail-epa-decode.
Stefan Kangas [Thu, 8 Sep 2022 21:35:04 +0000 (23:35 +0200)]
; Merge from origin/emacs-28
The following commit was skipped:
9acb278af5 Bump Emacs version to 28.2
Stefan Kangas [Thu, 8 Sep 2022 21:35:04 +0000 (23:35 +0200)]
Merge from origin/emacs-28
395760dcd3 Update ChangeLog and AUTHORS for Emacs 28.2
ddabb03a01 * doc/misc/idlwave.texi (Troubleshooting): Don't say "Emac...
724444f3d5 ; * doc/emacs/misc.texi (emacsclient Options): Fix typo.
b96257162d Don't mention very old Emacs versions in docs
# Conflicts:
# doc/emacs/misc.texi
# etc/NEWS
Stefan Monnier [Thu, 8 Sep 2022 20:15:04 +0000 (16:15 -0400)]
* src/keyboard.c (safe_run_hook_funcall): Fix thinko
Stefan Monnier [Thu, 8 Sep 2022 20:12:01 +0000 (16:12 -0400)]
* src/keyboard.c (safe_run_hook_funcall): Fix recent regression
The mutation of `args` was unsafe because that array was
later reused (and assumed unchanged) by the caller.
https://lists.gnu.org/archive/html/emacs-devel/2022-09/msg00329.html
Stefan Monnier [Thu, 8 Sep 2022 20:08:42 +0000 (16:08 -0400)]
test: Remove redundant "" arg to `mapconcat`
* test/src/process-tests.el (process-test-stderr-filter):
* test/src/print-tests.el (print-tests-continuous-numbering):
* test/src/fns-tests.el (fns-tests-mapconcat):
* test/src/data-tests.el (test-bool-vector-to-hex-string):
* test/src/casefiddle-tests.el (casefiddle-tests-char-properties)
(casefiddle-tests-case-table, casefiddle-tests-casing-character):
* test/lisp/tabify-tests.el (tabify-tests--test-changes):
* test/lisp/subr-tests.el (subr-tests-bug22027):
* test/lisp/sort-tests.el (sort-tests-random-word):
* test/lisp/net/hmac-md5-tests.el (hmac-md5-test-encode-string):
* test/lisp/md4-tests.el (md4-tests-digest->hex):
* test/lisp/emacs-lisp/cl-extra-tests.el (cl-extra-test-map):
* test/lisp/dired-tests.el (dired-test-directory-files):
* test/lisp/char-fold-tests.el (char-fold--random-word):
* test/lisp/ansi-color-tests.el (ansi-color-incomplete-sequences-test):
Remove redundant "" arg to `mapconcat`.
Eli Zaretskii [Thu, 8 Sep 2022 19:50:41 +0000 (22:50 +0300)]
; * src/editfns.c (syms_of_editfns) <restrictions-locked>: Doc fix.
Phil Sainty [Thu, 8 Sep 2022 12:53:00 +0000 (14:53 +0200)]
Add new user option ecomplete-auto-select
* lisp/ecomplete.el (ecomplete-auto-select): New user option
(bug#53935).
(ecomplete-display-matches): Use it.
Augusto Stoffel [Thu, 8 Sep 2022 07:56:59 +0000 (09:56 +0200)]
Add prefix argument to outline-cycle-buffer
* lisp/outline.el (outline-cycle-buffer): Add prefix argument to show
headings up to a given level. Handle the case where the top
heading level is not 1.
Lars Ingebrigtsen [Thu, 8 Sep 2022 12:23:12 +0000 (14:23 +0200)]
Fix diff-add-log-use-relative-names prompting
* lisp/vc/diff-mode.el (diff-add-log-use-relative-names): Autoload
to avoid prompting when set via dir-locals.
Stefan Kangas [Thu, 8 Sep 2022 10:42:50 +0000 (12:42 +0200)]
* src/xrdb.c (main) [TESTRM]: Replace gets with fgets.
Eli Zaretskii [Thu, 8 Sep 2022 08:49:17 +0000 (11:49 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Sam James [Wed, 7 Sep 2022 03:57:33 +0000 (04:57 +0100)]
Recognize zstandard (.zst) compressed Info files
* lisp/info.el (Info-suffix-list): Recognize .zst file extension
from the zstd compression tool. This allows reading Info pages
compressed with 'zstd'. (Bug#57636)
Copyright-paperwork-exempt: yes
Michael Albinus [Thu, 8 Sep 2022 08:36:08 +0000 (10:36 +0200)]
Make call of remote `id' more performant in Tramp
* lisp/net/tramp-adb.el (tramp-adb-handle-file-exists-p): New defun.
(tramp-adb-file-name-handler-alist): Use it.
(tramp-adb-handle-file-executable-p)
(tramp-adb-handle-file-readable-p)
(tramp-adb-handle-file-writable-p)
(tramp-adb-handle-get-remote-uid)
(tramp-adb-handle-get-remote-gid)
(tramp-adb-handle-get-remote-groups): Use caches consequently.
* lisp/net/tramp-sh.el (tramp-perl-id, tramp-python-id): New defconsts.
(tramp-sh-handle-get-remote-uid, tramp-sh-handle-get-remote-gid)
(tramp-sh-handle-get-remote-groups): Use caches consequently.
(tramp-sh-handle-file-writable-p): Use `file-writable-p'.
(tramp-expand-script): Handle also "python" expansion.
(tramp-get-remote-id): Do not set connection property anymore,
this is done differently now.
(tramp-get-remote-uid-with-id, tramp-get-remote-uid-with-perl)
(tramp-get-remote-uid-with-python, tramp-get-remote-gid-with-id)
(tramp-get-remote-gid-with-perl)
(tramp-get-remote-gid-with-python): Remove.
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-executable-p)
(tramp-sudoedit-handle-file-exists-p)
(tramp-sudoedit-handle-file-readable-p)
(tramp-sudoedit-handle-file-writable-p):
(tramp-sudoedit-handle-get-remote-uid)
(tramp-sudoedit-handle-get-remote-gid)
(tramp-sudoedit-handle-get-remote-groups): Use caches consequently.
* lisp/net/tramp.el (tramp-check-cached-permissions):
Call `tramp-get-remote-groups' only if needed.
(tramp-get-remote-groups): Do not return default value.
(tramp-read-id-output): New defun.
* test/lisp/net/tramp-tests.el (tramp--test-deftest-with-perl):
Suppress also remote `id'.
Eli Zaretskii [Thu, 8 Sep 2022 07:14:10 +0000 (10:14 +0300)]
; Minor improvements in 'standard-display-by-replacement-char'
* lisp/disp-table.el (standard-display-by-replacement-char): Minor
improvements. Suggested by Richard Stallman <rms@gnu.org>.
Philip Kaludercic [Tue, 6 Sep 2022 20:06:29 +0000 (22:06 +0200)]
Add new user option 'diff-add-log-use-relative-names'
* .dir-locals.el: Set new option to t
* etc/NEWS: Mention new option.
* lisp/vc/diff-mode.el (diff-add-log-use-relative-names): Add new option.
(diff-add-log-current-defuns): Use new option.
* doc/emacs/maintaining.texi (Log Buffer): Mention new option.
Po Lu [Thu, 8 Sep 2022 05:20:33 +0000 (13:20 +0800)]
Avoid selecting for excessive output configuration events
* src/xterm.c (x_term_init): Only select for
RROutputPropertyNotify if GTK is in use. Emacs doesn't need it
itself, and output property changes will otherwise lead to 2
second freezes over connections with high network latency.
Stefan Kangas [Thu, 8 Sep 2022 00:48:46 +0000 (02:48 +0200)]
dired-guess: Support zstandard archives
* lisp/dired-aux.el (dired-guess-shell-alist-default): Support
zstandard archives.
Stefan Kangas [Thu, 8 Sep 2022 00:35:37 +0000 (02:35 +0200)]
Move some tests to test/manual/image-tests.el
* test/src/image-tests.el: Move several tests from here...
* test/manual/image-tests.el: ...to here.
Suggested by Eli Zaretskii <eliz@gnu.org>.
Morgan Smith [Thu, 8 Sep 2022 00:12:44 +0000 (02:12 +0200)]
image-dired: Fix moving forward when marking files
* lisp/image/image-dired.el (image-dired--do-mark-command): Make
movement consistent regardless of the value of
image-dired-marking-shows-next. (Bug#57651)
Morgan Smith [Thu, 8 Sep 2022 00:09:52 +0000 (02:09 +0200)]
Make image-dired-rotate-original-{left,right} respect marks
* lisp/image/image-dired.el (image-dired-rotate-original-left)
(image-dired-rotate-original-right): Rotate all marked
files. (Bug#57651)
Stefan Kangas [Wed, 7 Sep 2022 21:37:24 +0000 (23:37 +0200)]
; Make emacsclient.c more quiet again
* lib-src/emacsclient.c (main): Remove status message after getting a
response from the server. (Bug#57650)
Stefan Kangas [Wed, 7 Sep 2022 10:25:41 +0000 (12:25 +0200)]
Prefer defvar-keymap in icomplete.el
* lisp/icomplete.el (icomplete-minibuffer-map)
(icomplete-fido-mode-map)
(icomplete-vertical-mode-minibuffer-map): Prefer defvar-keymap.
Mattias Engdegård [Wed, 7 Sep 2022 15:55:44 +0000 (17:55 +0200)]
Improve save-match-data hygiene
* lisp/subr.el (save-match-data): Use uninterned variable symbol.
Remove outdated comments.
Eli Zaretskii [Wed, 7 Sep 2022 13:20:29 +0000 (16:20 +0300)]
Add instructions to 'standard-display-by-replacement-char'
* lisp/disp-table.el (standard-display-by-replacement-char): Add a
preamble to the generated code with instructions. Suggested by
Richard Stallman <rms@gnu.org>.
Eli Zaretskii [Wed, 7 Sep 2022 12:18:54 +0000 (15:18 +0300)]
Don't follow symlinks in w32notify file watches
* src/w32notify.c (add_watch): On filesystems that support
symlinks, don't follow symlinks. (Bug#57536)
* src/w32.c (symlinks_supported): New function.
* src/w32.h (symlinks_supported): Add prototype.
Mattias Engdegård [Wed, 7 Sep 2022 11:48:20 +0000 (13:48 +0200)]
Simplify dolist and dotimes
We no longer care enough about non-lexbind code generation for it
to merit special attention; better to keep the code simple.
Suggested by Philip Kaludercic in
https://lists.gnu.org/archive/html/emacs-devel/2022-09/msg00354.html .
* lisp/subr.el (dolist, dotimes): Use uninterned symbols for variable
bindings generated by the macros, and discard the alternative code
versions for non-lexbind code. Use sensible variable names.
Philip Kaludercic [Tue, 6 Sep 2022 15:07:12 +0000 (17:07 +0200)]
Untabify rcirc.el
Gerd Möllmann [Wed, 7 Sep 2022 04:54:49 +0000 (06:54 +0200)]
; TODO for writing to the bottom-right corner of a TTY (bug#57607)
Po Lu [Wed, 7 Sep 2022 01:52:01 +0000 (09:52 +0800)]
Fix nsfont breakage since
6b1ed2f2c99a1c2da56c5f434570c438cad6576d
* nsfont.m (ns_spec_to_descriptor): Fix coding style, also
handle `monospace' special family.
(ns_descriptor_to_entity): Fix reporting of spacing on fonts.
(ns_findfonts): Fix coding style.
Po Lu [Wed, 7 Sep 2022 01:07:59 +0000 (09:07 +0800)]
Reenable reporting of frame movement on NS
* src/nsterm.m ([EmacsView windowDidMove:]): Restore code to
generate MOVE_FRAME_EVENTS, and use kbd_buffer_store_event
instead.
Stefan Kangas [Wed, 7 Sep 2022 01:22:15 +0000 (03:22 +0200)]
Improve image-tests.el Commentary
* test/src/image-tests.el: Doc fix; explain how to run from
command line.
Stefan Kangas [Wed, 7 Sep 2022 00:59:50 +0000 (02:59 +0200)]
; * lib-src/emacsclient.c (main): Fix previous change.
Stefan Kangas [Tue, 6 Sep 2022 22:25:16 +0000 (00:25 +0200)]
Bump Emacs version to 28.2
* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version to 28.2.
Stefan Kangas [Tue, 6 Sep 2022 22:20:57 +0000 (00:20 +0200)]
Update ChangeLog and AUTHORS for Emacs 28.2
* ChangeLog.3:
* etc/AUTHORS:
* etc/NEWS: Update for Emacs 28.2.
Stefan Monnier [Tue, 6 Sep 2022 21:29:25 +0000 (17:29 -0400)]
* lisp/jit-lock.el (jit-lock-function): Update comment
Stefan Kangas [Tue, 6 Sep 2022 21:27:01 +0000 (23:27 +0200)]
* doc/misc/idlwave.texi (Troubleshooting): Don't say "Emacsen".