1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-26 18:01:13 -08:00
Commit graph

166358 commits

Author SHA1 Message Date
Michael Albinus
abb11eb3a3 Support existing sshfs and rclone mount points in Tramp
* lisp/net/tramp-fuse.el (tramp-fuse-mount-point, tramp-fuse-mounted-p):
Support existing mount points.
2023-05-22 16:08:23 +02:00
Michael Albinus
438b1205c5 Mark failing filenotify test as :unstable
* test/lisp/filenotify-tests.el (file-notify-test04-autorevert-remote):
Tag as :unstable.
2023-05-22 12:56:45 +02:00
Po Lu
6f940c6a11 Plug various leaks and fix input method initialization
* src/image.c (free_bitmap_record): Free bm->name correctly even
if the display connection has been closed.
* src/xfns.c (x_window): Use dpyinfo-specific `use_xim' flag.
* src/xterm.c (use_xim): Remove global variable.
(xim_destroy_callback): Free `xim_styles' if present, and set it
to NULL to be on the safe side.
(xim_open_dpy): Consult dpyinfo->use_xim instead.  Don't leak
`xim_styles' if an IM was previously opened.
(xim_initialize): Use dpyinfo-specific `use_xim' flag.
(xim_close_dpy): Check if `dpyinfo->xim_callback_data' is set
before unregistering the instantiation callback.
(x_term_init): Determine whether or not to use XIM for each
display opened, instead of using the resources of the last
display opened to toggle a global flag.
(x_delete_terminal): Always call `image_destroy_all_bitmaps' and
`xim_close_dpy'.  Free storage used to hold bitmap records.
* src/xterm.h (struct x_display_info): New field `use_xim'.
2023-05-22 11:54:00 +08:00
F. Jason Park
c297b828bb Fix custom type of erc-autojoin-channels-alist
* lisp/erc/erc-join.el (erc-autojoin-channels-alist): In ERC 5.4, the
type of this option changed to accept symbols signifying IRC network
names.  However, the option's definition was not updated to reflect
that.  See commit 9bb8d90cdd "Allow irc network symbols in
erc-autojoin-channels-alist".
2023-05-21 20:44:06 -07:00
F. Jason Park
8120f5156c ; Silence byte compiler in erc-netsplit-JOIN
* etc/ERC-NEWS: Partially revert edit from c9f1ad2a87 "Revive option
erc-query-on-unjoined-chan-privmsg".
* lisp/erc/erc-netsplit.el (erc-netsplit-JOIN): Silence byte compiler
warning re ignored return value from `delete' when removing nicks.
Could probably suppress rather than reconstitute since the CAR of an
`erc-netsplit-list' entry originates from the trailing "reason" param
of the instigating "QUIT" command and should look something like
"irc.example.org chat.example.org", which cannot be confused for a
nickname.
* test/lisp/erc/resources/erc-scenarios-common.el: Fix wording in
Commentary.
2023-05-21 18:59:33 -07:00
Eli Zaretskii
71622d70e8 New Rmail commands for reading mailing-lists
* lisp/mail/rmail.el (rmail--mailing-list-message): New internal
function.
(rmail-mailing-list-help, rmail-mailing-list-post)
(rmail-mailing-list-unsubscribe, rmail-mailing-list-archive): New
commands.
(rmail-mode-map): Add menu items for the new commands.

* etc/NEWS: Announce the new Rmail commands.
2023-05-21 13:57:14 +03:00
Mattias Engdegård
f8cdb9e050 Declare more mutating functions
* lisp/emacs-lisp/bytecomp.el (mutating-fns):
Add assoc-delete-all, assq-delete-all and rassq-delete-all.
* lisp/emacs-lisp/shortdoc.el (alist, list):
Don't mutate constants in examples illustrating use of
assoc-delete-all, assq-delete-all and rassq-delete-all.
2023-05-20 20:34:55 +02:00
Mattias Engdegård
88d1e9b436 Declare more functions as having important-return-value
* lisp/subr.el (assoc-delete-all, assq-delete-all, rassq-delete-all)
(alist-get): Declare as important-return-value.
* lisp/emacs-lisp/bytecomp.el (important-return-value-fns):
Add `assoc-string`.
2023-05-20 18:38:33 +02:00
Mattias Engdegård
5d15818b94 Minor optimisation of string-trim-left and string-trim-right
* lisp/subr.el (string-trim-left, string-trim-right):
Use a constant string when no REGEXP argument is given.
2023-05-20 18:05:18 +02:00
Eli Zaretskii
d8d3d78e58 Fix async invocations in Dired with 'fish' shell
* lisp/dired-aux.el (dired-shell-stuff-it): Separate '&' and ';'
by blanks, for the sake of shells such as 'fish'.  Suggested by
Lycomedes 1814 <lycomedes1814@yandex.com>.
2023-05-20 17:26:52 +03:00
Michael Albinus
870a078c06 Improve handling of ANSI control sequences in Tramp
* lisp/net/tramp-compat.el (ansi-color): Require.

* lisp/net/tramp-sh.el (tramp-display-escape-sequence-regexp)
(tramp-device-escape-sequence-regexp): Delete.
(tramp-sh-handle-insert-directory, tramp-barf-if-no-shell-prompt)
(tramp-wait-for-output): Use `ansi-color-control-seq-regexp'.

* lisp/net/tramp.el (tramp-shell-prompt-pattern): Remove escape
characters.
(tramp-process-one-action, tramp-convert-file-attributes):
Use `ansi-color-control-seq-regexp'.  (Bug#63539)

* test/lisp/net/tramp-tests.el (tramp-display-escape-sequence-regexp):
Dont't declare.
(tramp-test28-process-file, tramp-test32-shell-command):
Use `ansi-color-control-seq-regexp'.
(tramp-test45-asynchronous-requests): Adapt test.
2023-05-20 12:13:09 +02:00
Mattias Engdegård
0de472e04f Use delq return value (bug#61730)
* lisp/calc/calc-graph.el (calc-graph-compute-2d):
* lisp/calendar/appt.el (appt-activate):
* lisp/progmodes/cc-styles.el (c-make-styles-buffer-local):
Make use of what `delq` returns, to stave off possible mistakes or at
least make clear that there isn't any.
2023-05-20 11:05:57 +02:00
Mattias Engdegård
bd6bba4780 Improved copy-tree documentation and test (bug#63509)
* etc/NEWS: Move entry since it's an incompatible change.
* lisp/emacs-lisp/shortdoc.el (vector): Make the example relevant.
* lisp/subr.el (copy-tree): Rename second argument,
since 'vector-like' is a term with a specific meaning in Emacs
but not the one intended here.
* doc/lispref/lists.texi (Building Lists): Rename second argument,
and make it clear that the input must be acyclic.
* doc/lispref/records.texi (Record Functions):
Be more precise: `copy-sequence` is used to copy records,
`copy-tree` copies trees made of records etc.
* test/lisp/subr-tests.el (subr--copy-tree): Extend and strengthen the
test considerably, using the print-circle trick to detect structure
sharing precisely.
2023-05-19 15:50:42 +02:00
Yuan Fu
156973639c
Implement treesit-forward-sexp correctly (bug#63487)
* lisp/treesit.el (treesit-forward-sexp): Signal scan-error when we
can't move across sexps further.
2023-05-19 00:20:33 -07:00
Eli Zaretskii
7ef20e0c81 Minor fixes of last change
* etc/NEWS:
* doc/lispref/records.texi (Record Functions): Improve wording.
(Bug#63509)
2023-05-19 09:05:45 +03:00
Joseph Turner
3a1285caba Make 'copy-tree' work with records
* doc/lispref/lists.texi (Building Cons Cells and Lists): Document
new behavior of 'copy-tree'.
* doc/lispref/records.texi (Record Functions): Cross-reference to
lists.texi.
* etc/NEWS: Mention change.  (Bug#63509)
* lisp/emacs-lisp/shortdoc.el: Add 'copy-tree' example to vector
group.
* lisp/subr.el (copy-tree): Recurse into records as well as
vectors when optional second argument is non-nil. Rename second
argument from VECP to VECTOR-LIKE-P.
* test/lisp/subr-tests.el: Test new behavior.
2023-05-19 09:00:27 +03:00
Mattias Engdegård
8c9377b6c4 Try declaring delq and delete important-return-value (bug#61730)
* lisp/emacs-lisp/bytecomp.el (important-return-value-fns):
Add (uncomment) `delq` and `delete`.
2023-05-18 17:22:41 +02:00
Basil L. Contovounesios
d1404d3a11 Simplify python.el completion-predicate
* lisp/progmodes/python.el:
(python-skeleton-define): Use command-modes as a shorthand for
completion-predicate (bug#63552).
(python--completion-predicate, python-shell--completion-predicate):
Remove accordingly; no longer used.
(python-define-auxiliary-skeleton): Prefer function-put over put.
2023-05-18 13:10:09 +01:00
Eli Zaretskii
f518543aa4 Merge from origin/emacs-29
f8d9e40d2c Attempt to fix redisplay problems on macOS
4daa6f7049 ; * lisp/simple.el (async-shell-command): Add commentary ...
dc1a437d46 Clarify misleading comment in isearch.el
af3b0dc53f Improve documentation of package-menu commands
d879847cd4 Fix M-x completion-predicate under python-ts-mode
1e57b2b4c7 * Account for `byte-compile-warnings' during native compi...
b5bfd808c6 Avoid duplicate VC packages in 'package-selected-packages'
c18f9f155f * lisp/tab-bar.el (tab-bar-new-tab-to): Set 'window-side'...
33485fe8f7 ; Better warning message when loading tree-sitter fails
95a724abaa Update to Org 9.6.6
c665ca79ff ; * admin/make-tarball.txt: Minor copyedits.
3aef46e466 Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs ...
229af8e4b3 ; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-...
2023-05-18 07:49:49 -04:00
Eli Zaretskii
92a00de5c5 ; Merge from origin/emacs-29
The following commits were skipped:

88ca37b858 ; Regenerate files for emacs-29.0.91
4627ede36b ; * lisp/ldefs-boot.el: Regenerate for emacs-29.0.91.
c90d47619e Bump Emacs version for next pretest
2023-05-18 07:49:49 -04:00
Eli Zaretskii
d4295285d7 Merge from origin/emacs-29
229af8e4b3 ; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-...
ce7d18cbc0 ; Minor fixes in ELisp manual
5c8864fab4 ; * lisp/simple.el (async-shell-command): Doc fix.  (Bug#...
b96dc472bc Ignore current-prefix-arg in async-shell-command
1e6a759436 Fix building of VC package manuals with relative includes
61659f36c8 Another fix for VHDL mode highlighting
2023-05-18 07:49:49 -04:00
Aaron Jensen
f8d9e40d2c Attempt to fix redisplay problems on macOS
* src/nsterm.m (ns_scroll_run): Attempt to fix redisplay
artifacts.  (Bug#63187)
2023-05-18 14:20:18 +03:00
Eli Zaretskii
4daa6f7049 ; * lisp/simple.el (async-shell-command): Add commentary about 3rd arg. 2023-05-18 14:03:10 +03:00
Jens Schmidt
dc1a437d46 Clarify misleading comment in isearch.el
Clarify a misleading comment in isearch.el as to whether frame events
should exit an isearch or not (Bug#62032, Bug#41338 for background
information).
* lisp/isearch.el (isearch-mode-map): Replace the misleading comment.
(Bug#62032)

Copyright-paperwork-exempt: yes
2023-05-18 13:43:12 +03:00
Mattias Engdegård
0b722a74a5 * lisp/erc/erc-fill.el (erc-fill-spaced-commands): Fix typing errors
The type (set integer symbol) matches a list of at most one integer
and one symbol, not multiple distinct symbols.
2023-05-18 09:49:53 +02:00
Eli Zaretskii
af3b0dc53f Improve documentation of package-menu commands
* doc/emacs/package.texi (Package Menu): Document that some
package-menu filters accept lists of values interactively.

* lisp/emacs-lisp/package.el (package-menu-execute)
(package-menu-hide-package, package-menu-describe-package)
(package-menu-mark-delete, package-menu-mark-install)
(package-menu-mark-unmark, package-menu-backup-unmark)
(package-menu-quick-help, package-menu-get-status)
(package-menu--find-upgrades, package-menu-mark-upgrades)
(package-menu-filter-by-archive)
(package-menu-filter-by-description)
(package-menu-filter-by-keyword)
(package-menu-filter-by-name-or-description)
(package-menu-filter-by-name, package-menu-filter-by-status)
(package-menu-filter-by-version, package-menu-filter-marked)
(package-menu-describe-package): Doc fixes.
2023-05-18 09:41:59 +03:00
F. Jason Park
5df9d2311b ; * lisp/erc/erc.el (erc-accidental-paste-threshold-seconds): Doc fix. 2023-05-17 18:21:17 -07:00
Paul Eggert
5ef169ed70 Prefer C23 ckd_* to Gnulib *_WRAPV macros
C23 has added ckd_add etc. macros with functionality equivalent to
the older Gnulib INT_ADD_WRAPV macros, so switch to the
more-standard names.
* admin/merge-gnulib (GNULIB_MODULES): Add stdckdint.
This merely makes the dependency explicit, as we were already
using this Gnulib module indirectly.
* lib-src/etags.c, src/lisp.h: Include stdckdint.h.
* lib-src/etags.c (xnmalloc, xnrealloc):
* src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string)
(mark_memory):
* src/bignum.c (emacs_mpz_pow_ui):
* src/buffer.c (record_overlay_string, overlay_strings):
* src/bytecode.c (exec_byte_code):
* src/casefiddle.c (do_casify_multibyte_string):
* src/ccl.c (ccl_driver, Fccl_execute_on_string):
* src/character.c (char_width, c_string_width)
(lisp_string_width, count_size_as_multibyte)
(string_escape_byte8):
* src/cmds.c (internal_self_insert):
* src/coding.c (coding_alloc_by_realloc, produce_chars):
* src/data.c (arith_driver):
* src/dispnew.c (realloc_glyph_pool, init_display_interactive):
* src/doprnt.c (parse_format_integer):
* src/editfns.c (Freplace_buffer_contents, str2num)
(styled_format):
* src/emacs-module.c (module_global_reference_p)
(module_make_global_ref, module_funcall):
* src/eval.c (max_ensure_room):
* src/fileio.c (blocks_to_bytes):
* src/fns.c (Ffillarray):
* src/font.c (font_intern_prop):
* src/frame.c (check_frame_pixels):
* src/gnutls.c (gnutls_hex_string, gnutls_symmetric_aead):
* src/gtkutil.c (get_utf8_string):
* src/haikuterm.c (haiku_term_init):
* src/image.c (xbm_scan, image_to_emacs_colors)
(image_detect_edges, png_load_body):
* src/keyboard.c (Frecursion_depth):
* src/keymap.c (Flookup_key, Fkey_description):
* src/lisp.h (modiff_incr, SAFE_ALLOCA_LISP_EXTRA):
* src/lread.c (read_bool_vector):
* src/pgtkterm.c (pgtk_term_init):
* src/regex-emacs.c (regex_compile):
* src/term.c (encode_terminal_code):
* src/termcap.c (tputs):
* src/textconv.c (textconv_query):
* src/timefns.c (timespec_ticks, lisp_time_hz_ticks)
(Fdecode_time, check_tm_member):
* src/tparam.c (tparam1):
* src/w32term.c (w32_initialize_display_info):
* src/xdisp.c (fill_column_indicator_column, decode_mode_spec):
* src/xselect.c (selection_data_size, x_property_data_to_lisp):
* src/xsmfns.c (smc_save_yourself_CB):
* src/xterm.c (xm_setup_dnd_targets, x_sync_get_monotonic_time)
(x_sync_current_monotonic_time, x_sync_note_frame_times)
(x_display_set_last_user_time, x_term_init):
Prefer the C23 stdckdint macros to their
Gnulib intprops.h counterparts, since C23 is standard.
2023-05-17 15:41:00 -07:00
Paul Eggert
afbdae00ab Update from Gnulib by running admin/merge-gnulib 2023-05-17 15:41:00 -07:00
Paul Eggert
0bba1b8c3d Port modiff changes to GCC 4.8.5
Problem reported by Spencer Baugh.
* src/lisp.h (elogb): Now simply a function on unsigned long long int.
This avoids problems porting to GCC 4.8.5 20150623 (Red Hat 4.8.5-44).
There may be a minor runtime cost on 32-bit platforms but it’s
not worth worrying about.
2023-05-17 10:55:50 -07:00
Basil L. Contovounesios
d879847cd4 Fix M-x completion-predicate under python-ts-mode
* lisp/progmodes/python.el (python--completion-predicate)
(python-shell--completion-predicate): Filter M-x completion based on
python-base-mode instead of python-mode.  This allows for
python-ts-mode as well (bug#63552).
2023-05-17 15:14:09 +01:00
Andrea Corallo
8a92d00470 * Fix missing `comp-files-queue' update (bug#63415).
* lisp/emacs-lisp/comp.el (native--compile-async): Update
`comp-files-queue' for real.
2023-05-17 16:09:25 +02:00
Andrea Corallo
1e57b2b4c7 * Account for `byte-compile-warnings' during native compilation (bug#63302).
* lisp/emacs-lisp/comp.el (comp-final, comp-run-async-workers):
Forward `byte-compile-warnings' to child processes.
2023-05-17 15:13:17 +02:00
Eli Zaretskii
fc8931d646 ; * ChangeLog.4: Fix gitmerge snafu. 2023-05-17 14:23:53 +03:00
Thomas Fitzsimmons
b2f88a3b44 EUDC: Fix eudc-ldap-no-wildcard-attributes docstring
* lisp/net/eudc-vars.el (eudc-ldap-no-wildcard-attributes): Fix
docstring.  (Bug#62721)
2023-05-17 07:00:42 -04:00
Mattias Engdegård
2aee38d826 Mark proced-refine-with-update-test :unstable (bug#63550)
* test/lisp/proced-tests.el (proced-refine-with-update-test):
This test seems racy and often fails randomly in parallel
`make check`.
2023-05-17 11:39:25 +02:00
Mattias Engdegård
670174a6d5 Eliminate some mutation of program constants
* lisp/foldout.el:
* lisp/gnus/mml2015.el (mml2015-epg-key-image-to-string):
* lisp/international/ja-dic-cnv.el (skkdic-set-postfix)
(skkdic-set-prefix):
* lisp/international/quail.el (quail-insert-kbd-layout):
* lisp/mail/rmail.el (rmail-set-attribute-1):
* lisp/net/tramp.el (tramp-handle-memory-info):
* lisp/org/org-macs.el (org-replace-escapes):
Work on newly created objects, or use non-destructive operations.
2023-05-17 11:00:25 +02:00
Philip Kaludercic
6cb963b73c ; Add missing markup to new documentation
* doc/emacs/package.texi (Fetching Package Sources): Mark code as
code.
2023-05-16 21:28:56 +02:00
Tony Zorman
2ce279680b Add :vc keyword to use-package for VC package support
* lisp/use-package/use-package-core.el (use-package-keywords): Add :vc.
(use-package-handler/:load-path): Insert 'load-path' into 'state'.
(use-package-vc-install): Install the package with package-vc.el.
(use-package-handler/:vc): Handler for the :vc keyword.
(use-package-normalize--vc-arg): Normalization for more complex
arguments to 'use-package-normalize/:vc', in order to make them
compatible with the specification of 'package-vc-selected-packages'.
(use-package-normalize/:vc): Normalizer for the :vc keyword.
(use-package): Document :vc.
* lisp/use-package/use-package-ensure.el (use-package-handler/:ensure):
Do not ensure a package when :vc is used in the declaration.
* test/lisp/use-package/use-package-tests.el (use-package-test/:vc-1):
(use-package-test/:vc-2):
(use-package-test/:vc-3):
(use-package-test/:vc-4):
(use-package-test/:vc-5):
(use-package-test-normalize/:vc):
Add tests for :vc.
* etc/NEWS: Mention change.  (Bug#60418)
2023-05-16 21:22:05 +02:00
Joseph Turner
5ac08768aa Support side-effects while building VC packages
* doc/emacs/package.texi (Specifying Package Sources): Document new
specification attributes.
* lisp/emacs-lisp/package-vc.el (package-vc-allow-side-effects): Add
new user option.
(package-vc--make): Add handler for processing :make and
:shell-command.
(package-vc--unpack-1): Check 'package-vc-allow-side-effects' and
invoke 'package-vc--make'.
* etc/NEWS: Mention change.  (Bug#63336)
2023-05-16 21:22:02 +02:00
Philip Kaludercic
b5bfd808c6 Avoid duplicate VC packages in 'package-selected-packages'
* lisp/emacs-lisp/package-vc.el (package-vc--unpack-1): Check if
'package-selected-packages' already contains the package name.
(bug#63338)
2023-05-16 20:47:34 +02:00
João Távora
d3a17a58fb Eglot: rework eglot-handle-request (bug#62116)
Address comments in the bug tracker regarding widening, and
prematurely reporting success to the server before knowing if the file
can indeed be shown.

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62116#70
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62116#79

* lisp/progmodes/eglot.el (eglot-handle-request): Rework.
2023-05-16 19:23:57 +01:00
Juri Linkov
a8f2009d03 * lisp/windmove.el (windmove-swap-states-in-direction): Don't swap minibuffer.
Guard against swapping the minibuffer when the minibuffer is in the selected
window (bug#62427).  The function was already protected when the minibuffer
is in other-window.
2023-05-16 20:32:34 +03:00
Michael Albinus
2b1e81df06 Tweak tramp-test45-asynchronous-requests
* test/lisp/net/tramp-tests.el (tramp-use-connection-share): Declare.
(tramp--test-putty-p): New defun.
(tramp-test45-asynchronous-requests): Tweak test.
2023-05-16 17:19:20 +02:00
Paul Eggert
f836452beb Update from Gnulib by running admin/merge-gnulib 2023-05-15 23:44:29 -07:00
Thomas Fitzsimmons
5289c2b3eb EUDC: Document disabling default LDAP wildcard expansion
* lisp/net/eudc-vars.el (eudc-ldap-no-wildcard-attributes): Cover
`eudc-query-form' and `eudc-expand-inline' behavior in the
customization docstring.  (Bug#62721)
2023-05-15 17:53:45 -04:00
Juri Linkov
c18f9f155f * lisp/tab-bar.el (tab-bar-new-tab-to): Set 'window-side' to nil (bug#62427).
This is still needed for the case when tab-bar-new-tab-choice is 'window'.
2023-05-15 20:32:04 +03:00
Eli Zaretskii
33485fe8f7 ; Better warning message when loading tree-sitter fails
* lisp/treesit.el (treesit-ready-p): Improve diagnostics on
MS-Windows when the tree-sitter library cannot be loaded at run
time.
2023-05-15 18:39:49 +03:00
Michael Albinus
8eb129a2ca Fix some minor Tramp problems
* lisp/net/tramp-crypt.el (tramp-crypt-handle-file-exists-p): New defun.
(tramp-crypt-file-name-handler-alist): Add it.

* lisp/net/tramp-smb.el (tramp-smb-handle-copy-file): Flush proper file
properties.

* test/lisp/net/tramp-archive-tests.el (tramp-archive--test-emacs28-p):
New defun.
(tramp-archive-test48-auto-load): Extend test.
2023-05-15 16:25:23 +02:00
Eli Zaretskii
98e8c0b248 Fix 'locale-info' on MS-Windows
* nt/mingw-cfg.site (am_cv_langinfo_codeset): Rename from
'emacs_cv_langinfo_codeset', to follow configure.ac.
2023-05-15 15:21:43 +03:00