]> git.eshelyaron.com Git - emacs.git/log
emacs.git
7 weeks ago* lisp/dired-aux.el (dired-do-open): Optimize (bug#73004).
Juri Linkov [Thu, 19 Sep 2024 06:14:34 +0000 (09:14 +0300)]
* lisp/dired-aux.el (dired-do-open): Optimize (bug#73004).

Detect system-type only once, then iterate over files
for every system type separately.

(cherry picked from commit 8816b4f342983468d49f93decf216151e9c6ffbc)

7 weeks ago; Improve doc strings of options related to numbered backups
Eli Zaretskii [Thu, 19 Sep 2024 05:20:04 +0000 (08:20 +0300)]
; Improve doc strings of options related to numbered backups

* lisp/files.el (version-control, dired-kept-versions)
(delete-old-versions, kept-old-versions, kept-new-versions): Doc
fixes.

(cherry picked from commit 0f0f21b7f27265e7c9c3a47dc6c9042324f2b031)

7 weeks agoSupport numeric indexing in let-alist
Spencer Baugh [Thu, 12 Oct 2023 22:01:46 +0000 (18:01 -0400)]
Support numeric indexing in let-alist

let-alist is very useful.  But sometimes an alist contains a list in
the middle, which contains yet more alists.  Previously, this was
somewhat painful to deal with, and required something like:

(let-alist alist
  (let-alist (nth 0 .a)
    (let-alist (nth 3 .b)
       .c)))

Now, the following works:

(let-alist alist
  .a.0.b.3.c)

* lisp/emacs-lisp/let-alist.el (let-alist--access-sexp): Properly
parse numbers to handle lists.  (Bug#66509)
(let-alist--list-to-sexp): Use nth to handle numbers.
(let-alist): Update docs.

(cherry picked from commit ae4171efdc60dfa53aa404e5926f5165dbf98d59)

7 weeks ago; Use c-ctype.h in w32*.c
Eli Zaretskii [Wed, 18 Sep 2024 18:22:04 +0000 (21:22 +0300)]
; Use c-ctype.h in w32*.c

* src/w32.c:
* src/w32fns.c: Replace ctype.h functions by equivalent
c-ctype.h functions.

(cherry picked from commit 252ed22d62fc80e2af6f37cf55c62848f6bc8e29)

7 weeks ago; Skip commit 03a991931863486436193f3e8edd0fd7d7d271c3
Eshel Yaron [Sat, 21 Sep 2024 18:48:21 +0000 (20:48 +0200)]
; Skip commit 03a991931863486436193f3e8edd0fd7d7d271c3

7 weeks ago; Skip commit 9026bfb5716de7a6d8ea5df60da942204c32feff
Eshel Yaron [Sat, 21 Sep 2024 18:48:14 +0000 (20:48 +0200)]
; Skip commit 9026bfb5716de7a6d8ea5df60da942204c32feff

7 weeks ago; Small fix for 'grep-change-to-grep-edit-mode'
Juri Linkov [Wed, 18 Sep 2024 16:59:35 +0000 (19:59 +0300)]
; Small fix for 'grep-change-to-grep-edit-mode'

* lisp/progmodes/grep.el (grep-change-to-grep-edit-mode):
Use 'substitute-command-keys' like in 'occur-edit-mode'.

(cherry picked from commit 3924730200ccb79361ceac176e22731e862dbdd7)

7 weeks agoMake `dired-do-open' work on more *nix systems
Manuel Giraud [Fri, 6 Sep 2024 07:47:33 +0000 (09:47 +0200)]
Make `dired-do-open' work on more *nix systems

* lisp/dired-aux.el (dired-do-open): Make `dired-do-open' work
on more *nix systems (bug#73004).

(cherry picked from commit 5e377f4fcc0626065f930f68cff7a11f31c40ffe)

7 weeks agoyes-or-no-p now uses blankp rather than SYNTAX
Paul Eggert [Wed, 18 Sep 2024 16:18:29 +0000 (09:18 -0700)]
yes-or-no-p now uses blankp rather than SYNTAX

* src/fns.c: Do not include syntax.h; no longer needed.
(Fyes_or_no_p): Use blankp rather than SYNTAX to check whether the
prompt ends in nonspace.  That way, the test doesn’t depend on the
current buffer.

(cherry picked from commit 6d507d586a7ae2ab2caf32e32f2ae6134a90b1bd)

7 weeks agoConservative heuristic for tree-sitter parser ranges (bug#73324)
Yuan Fu [Wed, 18 Sep 2024 04:17:13 +0000 (21:17 -0700)]
Conservative heuristic for tree-sitter parser ranges (bug#73324)

* src/treesit.c (treesit_sync_visible_region): If the parser's original
ranges don't overlap with visible region, give it a zero range, rather
than don't set any range.
* test/src/treesit-tests.el (treesit-range-fixup-after-edit): Test new
behavior.

(cherry picked from commit f0daa2f2153a9d250d32ac1261a6fffb30860e31)

7 weeks ago; Fix treesit.c printing
Yuan Fu [Wed, 18 Sep 2024 03:53:36 +0000 (20:53 -0700)]
; Fix treesit.c printing

* src/treesit.c (treesit_debug_print_parser_list): Use PRIuPTR so 32bit
systems compile without warnings.

(cherry picked from commit 035024b4e5a8eb759e30ce72ed3b83036f35525e)

7 weeks ago; * admin/notes/unicode: Need to run textsec-tests (bug#73312).
Eli Zaretskii [Tue, 17 Sep 2024 13:18:08 +0000 (16:18 +0300)]
; * admin/notes/unicode: Need to run textsec-tests (bug#73312).

(cherry picked from commit 8771310a10d528e01e1ff853c6b180af39b60620)

7 weeks agoRe-enable GC mark trace buffer by default
Mattias Engdegård [Tue, 17 Sep 2024 11:07:01 +0000 (13:07 +0200)]
Re-enable GC mark trace buffer by default

Enable GC_REMEMBER_LAST_MARKED by default (it was disabled in Emacs 29)
to make it easier to debug difficult-to-reproduce GC problems
encountered by users.  This increases GC costs by about 5 %, which can
be avoided by turning the mark trace buffer back off using the new
--disable-gc-mark-trace option.

See discussion at
https://lists.gnu.org/archive/html/emacs-devel/2024-09/msg00240.html

* configure.ac (--disable-gc-mark-trace): New config option.
* etc/NEWS: Mention it.
* src/alloc.c: Enable it by default and avoid a compiler warning.

(cherry picked from commit 4c6f45fa8eef1a15d5790c1f3d3e608b548015db)

7 weeks ago; * src/haiku_support.cc: Correct last change.
Po Lu [Sun, 15 Sep 2024 08:28:38 +0000 (16:28 +0800)]
; * src/haiku_support.cc: Correct last change.

(cherry picked from commit c6077015894dd89c5aa3811bf55d3124394874d0)

7 weeks ago; Add even more tests for previous commit
Yuan Fu [Sun, 15 Sep 2024 07:42:41 +0000 (00:42 -0700)]
; Add even more tests for previous commit

* test/src/treesit-tests.el:
(treesit-range-fixup-after-edit): Make the tests trickier.

(cherry picked from commit ae22ad7f624afa5e974059b8f2e78959402d8b3a)

7 weeks agoFix treesit_sync_visible_region's range fixup code (bug#73264)
Yuan Fu [Sun, 15 Sep 2024 07:24:03 +0000 (00:24 -0700)]
Fix treesit_sync_visible_region's range fixup code (bug#73264)

      new_ranges_head
      |
      v
( )->( )->( )->( )->( )
           ^    ^
           |    |
           |    lisp_ranges (loop head)
           |
           prev_cons -> set cdr to nil to cut of the rest

result:

     ( )->( )

* src/treesit.c (treesit_sync_visible_region): Cut off this cons and the
rest, not set the current range's end to nil.
* test/src/treesit-tests.el:
(treesit-range-fixup-after-edit): Add tests for all cases.

(cherry picked from commit 460b9d705ab482003fabe75b0fd1df223abe467c)

7 weeks ago; * etc/PROBLEMS: Fix last change (bug#73207).
Eli Zaretskii [Sun, 15 Sep 2024 04:55:20 +0000 (07:55 +0300)]
; * etc/PROBLEMS: Fix last change (bug#73207).

(cherry picked from commit 81347c1aaf25b27e78e8beee4bc818ad2c4e1b71)

7 weeks agoDocument unavailability of frame geometry on Wayland
Po Lu [Sun, 15 Sep 2024 01:01:25 +0000 (09:01 +0800)]
Document unavailability of frame geometry on Wayland

* etc/PROBLEMS (Runtime problems specific to PGTK build):
Document that frame-edges and company are liable not to return
valid coordinates.  (bug#73207)

(cherry picked from commit a82b7f3e8233905f924493180bcdaf29c42a39b9)

7 weeks ago(elisp-completion-at-point): Simplify
Eshel Yaron [Sat, 21 Sep 2024 18:44:33 +0000 (20:44 +0200)]
(elisp-completion-at-point): Simplify

8 weeks agoFix layout of preferences activity on Android 35
Po Lu [Wed, 18 Sep 2024 02:08:26 +0000 (10:08 +0800)]
Fix layout of preferences activity on Android 35

* java/org/gnu/emacs/EmacsPreferencesActivity.java (onCreate):
Align list view to system windows.

(cherry picked from commit eace68a325b96d12188ea8d673f30bad1354b916)

8 weeks agoOnly conditionally resolve hosts in nsm-should-check
F. Jason Park [Mon, 14 Feb 2022 10:36:57 +0000 (02:36 -0800)]
Only conditionally resolve hosts in nsm-should-check

Libraries like `socks' need to run `nsm-verify-connection' without
performing DNS lookups.  This change allows them to achieve this by
binding `nsm-trust-local-network' to nil around calls to that function.

* lisp/net/nsm.el (nsm-should-check): Rework in a functionally
equivalent way, except forgo calling both `network-lookup-address-info'
and `network-interface-list' unless the various conditions regarding
`nsm-trust-local-network' are first satisfied.  Replace `mapc' with
`dolist' to align with modern sensibilities.   (Bug#53941)

(cherry picked from commit 50deb59aaee2a8d773e95a53c91da7bdb2c5cabd)

8 weeks agoUse c-ctype.h in lib-src
Paul Eggert [Tue, 17 Sep 2024 23:54:17 +0000 (16:54 -0700)]
Use c-ctype.h in lib-src

This fixes some unlikely bugs and removes the temptation
of using ctype.h.  Although some uses were correct,
many weren't.
* lib-src/ebrowse.c: Include c-ctype.h, not ctype.h.
* lib-src/emacsclient.c: Include c-ctype.h, not ctype.h.
* lib-src/update-game-score.c: Include c-ctype.h, not ctype.h.
All uses changed.

(cherry picked from commit 865b54e2acea4fdaa3f302ed225f50281b371d6e)

8 weeks agoFix some #! misparsing in check_interpreter
Paul Eggert [Tue, 17 Sep 2024 23:38:53 +0000 (16:38 -0700)]
Fix some #! misparsing in check_interpreter

* exec/exec.c: Do not include ctype.h, as the kernel
does not care about the locale.
(check_interpreter): Treat only spaces and tabs as white space.
Do not inspect more bytes than were read.
Although the resulting code does not exactly match what
the Android kernel does, it’s closer than what it was before.

(cherry picked from commit e0b027d1215ed32fe0f3d0956d2d7a81552274f2)

8 weeks agoFix misuse of toupper in sfnt_parse_style
Paul Eggert [Tue, 17 Sep 2024 22:23:47 +0000 (15:23 -0700)]
Fix misuse of toupper in sfnt_parse_style

* src/sfntfont.c: Include c-ctype.h, not ctype.h.
(sfnt_parse_style): Upcase just initial ASCII letters;
that’s good enough here.

(cherry picked from commit 58a44b6ac317c9a17bcdd208e4ec33ff9772429e)

8 weeks agoFix yes-or-no-p with multibyte spaces
Paul Eggert [Tue, 17 Sep 2024 22:22:02 +0000 (15:22 -0700)]
Fix yes-or-no-p with multibyte spaces

Problem reported by Thomas Klausner (Bug#73307).
Emacs shouldn’t use ctype.h, as it doesn’t work for multibyte
chars and it doesn’t work with Emacs’s locale model anyway.
* src/fns.c: Include syntax.h, not ctype.h.
(Fyes_or_no_p): Check the character category with SYNTAX, not
with isspace, which assumes the current locale and works only
with single-byte characters.

(cherry picked from commit 43cde03fa5a663a1509a762077c11eb57a60cee8)

8 weeks ago; Skip commit f1794a17b629f8ad2a85dbf9877e17dcdd9b9ee7
Eshel Yaron [Wed, 18 Sep 2024 10:49:08 +0000 (12:49 +0200)]
; Skip commit f1794a17b629f8ad2a85dbf9877e17dcdd9b9ee7

8 weeks agoFix idna-mapping-table following Unicode 16 changes
Robert Pluim [Tue, 17 Sep 2024 13:19:01 +0000 (15:19 +0200)]
Fix idna-mapping-table following Unicode 16 changes

The latest version of UTS #46 in Unicode 16 has changed the way it
indicates which codepoints are invalid in domain names, causing
'idna-mapping-table' to contain incorrect information, which then breaks
'textsec-domain-suspicious-p' and our test suite.  (Bug#73312)

* admin/unidata/unidata-gen.el (unidata-gen-idna-mapping): Check the
IDNA validity field in "IdnaMappingTable.txt" in addition to checking
the status field, as the latter can now be 'valid' for disallowed
codepoints.

(cherry picked from commit 7d365a2d72d8e656262205827cc5fdf423c3a41f)

8 weeks agoRename project-{find-file-in-root,root-find-file}
Dmitry Gutov [Mon, 16 Sep 2024 23:11:52 +0000 (02:11 +0300)]
Rename project-{find-file-in-root,root-find-file}

* lisp/progmodes/project.el (project-root-find-file):
Rename from 'project-find-file-in-root' (bug#73044).

(cherry picked from commit 8eb66cca78dca27d58a8881b587b3340043a74f7)

8 weeks agoUpdate from Gnulib by running admin/merge-gnulib
Paul Eggert [Tue, 17 Sep 2024 07:32:39 +0000 (00:32 -0700)]
Update from Gnulib by running admin/merge-gnulib

(cherry picked from commit 73427887d63c086fb88449dce79bf2f8e58183fa)

8 weeks agoRemove unnecessary #include
Paul Eggert [Mon, 16 Sep 2024 23:48:33 +0000 (16:48 -0700)]
Remove unnecessary #include

* src/sysdep.c: Don’t include utimens.h; hasn’t been
needed for a while.

(cherry picked from commit cbe8683410a117698606b929532d4a3e692729d7)

8 weeks agoNew user option 'completion-preview-ignore-case'
Eshel Yaron [Tue, 17 Sep 2024 18:26:23 +0000 (20:26 +0200)]
New user option 'completion-preview-ignore-case'

Completion Preview mode implicitly assumed that
'completion-ignore-case' is nil, and while it can also work
with 'completion-ignore-case' non-nil, the results are a bit
different than what you get with 'completion-at-point'.  Add
an option that controls case sensitivity explicitly and
specifically for Completion Preview mode, and clarify the
behavior when case differences are ignored.  (Bug#73234)

* lisp/completion-preview.el
(completion-preview-ignore-case): New user option.

8 weeks agoAdd make-directory to symbol-releases.eld
Stefan Kangas [Sun, 15 Sep 2024 11:58:53 +0000 (13:58 +0200)]
Add make-directory to symbol-releases.eld

This avoids saying (incorrectly) that it was introduced in Emacs 23.1.

* etc/symbol-releases.eld: Add 'make-directory'.

(cherry picked from commit f27553c30a772a0103d2e6762e4d7f588f302e4b)

8 weeks agoRemove some XEmacs compat code from cperl-mode.el
Stefan Kangas [Sun, 15 Sep 2024 02:02:25 +0000 (04:02 +0200)]
Remove some XEmacs compat code from cperl-mode.el

The 'initialize-new-tags-table' function is unconditionally available
after 'etags' has been loaded, which is done further up.

* lisp/progmodes/cperl-mode.el (cperl-write-tags): Remove XEmacs compat
code.

(cherry picked from commit 4464062f4e4fe29aea237eec82cd5ddaaeac4052)

8 weeks ago;; Fix typo in Grep Edit mode manual description (bug#73274).
Daniel Martín [Sun, 15 Sep 2024 10:23:21 +0000 (12:23 +0200)]
;; Fix typo in Grep Edit mode manual description (bug#73274).

(cherry picked from commit 16a142c2b2203a2b18743ff27208dace756d86b2)

8 weeks ago; Skip commit 2cd5774689f96522709250b7805370522dcd4334
Eshel Yaron [Mon, 16 Sep 2024 10:00:57 +0000 (12:00 +0200)]
; Skip commit 2cd5774689f96522709250b7805370522dcd4334

8 weeks agoPort to Haiku R1/beta5
Po Lu [Sun, 15 Sep 2024 00:52:46 +0000 (08:52 +0800)]
Port to Haiku R1/beta5

* src/haiku_support.cc (keysym_from_raw_char): Use revised names
for B_HANGUL and B_HANGUL_HANJA.

(cherry picked from commit 709ce2aff146a8c09c191f818cda70b269902348)

8 weeks agoFix c++-ts-mode font-lock for latest c++ grammar (bug#73191)
Yuan Fu [Sat, 14 Sep 2024 18:07:28 +0000 (11:07 -0700)]
Fix c++-ts-mode font-lock for latest c++ grammar (bug#73191)

* lisp/progmodes/c-ts-mode.el:
(c-ts-mode--keywords): Add "thread_local" keyword.
(c-ts-mode--test-virtual-named-p): New function.
(c-ts-mode--font-lock-settings): Use named/anonymous "virtual" depending
on the grammar.

(cherry picked from commit 21efdd5ef31febc8fd59bf483a39bba512d50f45)

8 weeks ago; Skip commit ffc00eac53d88296e234d274ad1dd95bdf3cf065
Eshel Yaron [Mon, 16 Sep 2024 09:59:56 +0000 (11:59 +0200)]
; Skip commit ffc00eac53d88296e234d274ad1dd95bdf3cf065

8 weeks ago; Skip commit 3822a5e5d12781fb1cd6d075fc5fa3ae1b103f1e
Eshel Yaron [Mon, 16 Sep 2024 09:59:31 +0000 (11:59 +0200)]
; Skip commit 3822a5e5d12781fb1cd6d075fc5fa3ae1b103f1e

8 weeks ago; Skip commit 43b678d3d26b62d112fde286d0bf077954b28afa
Eshel Yaron [Mon, 16 Sep 2024 09:59:22 +0000 (11:59 +0200)]
; Skip commit 43b678d3d26b62d112fde286d0bf077954b28afa

8 weeks ago* etc/TODO: New item "support indentation guides".
Stefan Kangas [Sat, 14 Sep 2024 14:34:11 +0000 (16:34 +0200)]
* etc/TODO: New item "support indentation guides".

Ref:
https://lists.gnu.org/r/emacs-devel/2024-07/msg01062.html
(cherry picked from commit 38de992a5a3ff13c6c727fd519b3f016f15264ea)

2 months ago; Update ldefs-boot.el
Eshel Yaron [Sun, 15 Sep 2024 08:29:15 +0000 (10:29 +0200)]
; Update ldefs-boot.el

2 months agoSimplify 'kill-region'
Eshel Yaron [Sun, 15 Sep 2024 08:26:10 +0000 (10:26 +0200)]
Simplify 'kill-region'

2 months ago; Sync treesit.[ch] with upstream
Eshel Yaron [Sun, 15 Sep 2024 07:33:34 +0000 (09:33 +0200)]
; Sync treesit.[ch] with upstream

2 months ago; * etc/NEWS: Fix variable name.
Sean Whitton [Sat, 14 Sep 2024 16:35:45 +0000 (17:35 +0100)]
; * etc/NEWS: Fix variable name.

(cherry picked from commit 691f441717e968b1a497ed5d7792dbbe02cba609)

2 months ago; * lisp/simple.el (kill-region-dwim): Try to simplify docstring.
Sean Whitton [Sat, 14 Sep 2024 16:09:48 +0000 (17:09 +0100)]
; * lisp/simple.el (kill-region-dwim): Try to simplify docstring.

(cherry picked from commit a6631eaec3c9eba7fd495b33377574bbe44ba215)

2 months agoAllow 'kill-region' to kill the last word when there is no region
Philip Kaludercic [Tue, 3 Sep 2024 16:29:56 +0000 (18:29 +0200)]
Allow 'kill-region' to kill the last word when there is no region

* etc/NEWS: Document the new user option.
* lisp/simple.el (kill-region-dwim): New option.
(kill-region): Respect 'kill-region-dwim'.  (Bug#69097)

(cherry picked from commit 7451bd6e398f3dd8a3acc99df46d238d161463cb)

2 months ago; Skip commit efde34f422e85c777482affff74dbb562008dcbd
Eshel Yaron [Sat, 14 Sep 2024 20:35:26 +0000 (22:35 +0200)]
; Skip commit efde34f422e85c777482affff74dbb562008dcbd

2 months ago; Skip commit 3090b2304e715da5cb1286d9166ee8dcc8db0a24
Eshel Yaron [Sat, 14 Sep 2024 20:35:20 +0000 (22:35 +0200)]
; Skip commit 3090b2304e715da5cb1286d9166ee8dcc8db0a24

2 months agoProvide a modified xref backend for TeX buffers
David Fussner [Mon, 10 Jun 2024 13:16:04 +0000 (14:16 +0100)]
Provide a modified xref backend for TeX buffers

In addition to providing a new `xref' backend, the patch also improves
the general handling of expl3 syntax.  Expl3 is the next-generation
LaTeX specification, and has for some time been available by default in
the LaTeX kernel.  The new syntax co-exists in many files with the
standard LaTeX2e syntax, so we try at least minimally to separate the
way modes handle the two specifications, both to reduce
visually-disturbing interference between them and also to improve the
`xref' backend.  (Bug#53749)

* lib-src/etags.c (TeX_commands): Improve parsing of commands in TeX
buffers.
(TEX_defenv): Expand list of commands to tag by default in TeX buffers.
(TeX_help):
* doc/emacs/maintaining.texi (Tag Syntax): Document new tagged commands.
(Identifier Search): Add note about semantic-symref-filepattern-alist,
auto-mode-alist, and xref-find-references.

* lisp/textmodes/tex-mode.el (tex-font-lock-suscript): Test for
underscore in expl3 files and regions, disable subscript face there.
(tex-common-initialization): Set up xref backend for in-tree TeX modes.
Detect expl3 files, and in others set up a list of expl3 regions.
(tex-expl-buffer-parse): New function called in previous.
(tex-expl-buffer-p): New variable to hold the result of previous.
(tex-expl-region-set): New function added to
'syntax-propertize-extend-region-functions' hook.
(tex-expl-region-list): New variable to hold the result of previous.
(tex--xref-backend): New function to identify the xref backend.
(tex--thing-at-point, tex-thingatpt--beginning-of-symbol)
(tex-thingatpt--end-of-symbol, tex--bounds-of-symbol-at-point):
New functions to return 'thing-at-point' for xref backend.
(tex-thingatpt-exclude-chars): New variable to do the same.
(xref-backend-identifier-at-point): New TeX backend method to provide
symbols for processing by xref.
(xref-backend-identifier-completion-table)
(xref-backend-identifier-completion-ignore-case)
(xref-backend-definitions, xref-backend-apropos): Placeholders to
call the standard 'etags' xref backend methods.
(xref-backend-references): Wrapper to call the default xref backend
method, finding as many relevant files as possible and using a bespoke
syntax-propertize-function when required.
(tex--collect-file-extensions, tex-xref-syntax-function): Helper
functions for previous.
(tex-find-references-syntax-table, tex--buffers-list)
(tex--xref-syntax-fun, tex--old-syntax-function): New variables for
the same.

(cherry picked from commit b44c00669ace7b9e6a90aecb5f4e9f4edf6ed25a)

2 months agoFix indentation of Fortran do-loops
Eli Zaretskii [Sat, 14 Sep 2024 14:18:57 +0000 (17:18 +0300)]
Fix indentation of Fortran do-loops

* lisp/progmodes/fortran.el (fortran-calculate-indent): Fix regexp
for do-loops.  Reported by Ken Mankoff <km@kenmankoff.com>.
(Bug#73218)

(cherry picked from commit 98e582e74a2bbc2c7fdef02b8cd90036fa217712)

2 months ago; * etc/NEWS: Fix last change.
Eli Zaretskii [Sat, 14 Sep 2024 12:42:15 +0000 (15:42 +0300)]
; * etc/NEWS: Fix last change.

(cherry picked from commit 3e98ad3063a6dfc96676d297ee6ea3c96a3e049f)

2 months agoNew commands unix-word-rubout, unix-filename-rubout
Sean Whitton [Fri, 6 Sep 2024 10:35:46 +0000 (11:35 +0100)]
New commands unix-word-rubout, unix-filename-rubout

* lisp/simple.el (forward-unix-word): New function.
(unix-word-rubout, unix-filename-rubout): New commands.
* etc/NEWS: Announce the new commands.

(cherry picked from commit f6417ba91b3fdffc5af43bc4a7ad0b7ed007f442)

2 months ago; * etc/NEWS: Announce the improvements in w32 GUI dialogs.
Eli Zaretskii [Sat, 14 Sep 2024 11:02:51 +0000 (14:02 +0300)]
; * etc/NEWS: Announce the improvements in w32 GUI dialogs.

(cherry picked from commit 0a6e988b8d2d610d824d84a176fe9c5e86e02a87)

2 months agoSupport GUI dialogs and message boxes better on MS-Windows
Cecilio Pardo [Wed, 11 Sep 2024 13:44:28 +0000 (15:44 +0200)]
Support GUI dialogs and message boxes better on MS-Windows

* src/w32menu.c (TASKDIALOG_COMMON_BUTTON_FLAGS, TASKDIALOG_FLAGS)
(PFTASKDIALOGCALLBACK, TASKDIALOG_BUTTON, TASKDIALOGCONFIG)
(TDN_CREATED, TDM_ENABLE_BUTTON, TDF_ALLOW_DIALOG_CANCELLATION)
(TD_INFORMATION_ICON) [!MINGW_W64]: Define.
(TaskDialogIndirect_Proc): Declare function type.
(TASK_DIALOG_MAX_BUTTONS): New macro.
(task_dialog_callback): New callback function.
(w32_popup_dialog): Add dialog implementation using TaskDialog.
(globals_of_w32menu): Load TaskDialogIndirect from comctl32.dll.
(Bug#20481)

(cherry picked from commit aa7dee58d81817285208471074f1af598ebf0c98)

2 months agoFix regression in widget-move (bug#72995)
Stephen Berman [Sat, 14 Sep 2024 10:42:49 +0000 (12:42 +0200)]
Fix regression in widget-move (bug#72995)

* lisp/wid-edit.el (widget-move): Avoid advancing point only if it
is at the start of a widget at BOB.

* test/lisp/wid-edit-tests.el (widget-test-widget-move-bug72995): New test.

(cherry picked from commit d509a35699738519d42a35d72827b1111425669c)

2 months agoMake the *grep* buffer editable
Visuwesh [Mon, 9 Sep 2024 14:38:04 +0000 (20:08 +0530)]
Make the *grep* buffer editable

* lisp/progmodes/compile.el (compilation--update-markers):
Factor out function...
(compilation-next-error-function): ...from here.  Adjust
to use the above.
* lisp/progmodes/grep.el (grep-edit--prepare-buffer)
(grep-edit-mode-map, grep-edit-mode-hook, grep-edit-mode)
(grep-change-to-grep-edit-mode, grep-edit-save-changes): Add
new 'grep-edit-mode' to make the grep results editable like
in 'occur-edit-mode' by using the 'occur' framework.
(grep-mode-map): Bind 'e' to the new command
'grep-change-to-grep-edit-mode'.
* doc/emacs/building.texi (Grep Searching): Update Info
manual to include the above command.
* etc/NEWS: Announce the change.  (Bug#70820)

(cherry picked from commit db1eb8a282c1832fd34be049e80dcb1a3b59ade2)

2 months ago; * lisp/cus-edit.el (setopt): Doc fix. (Bug#73098)
Eli Zaretskii [Sat, 14 Sep 2024 09:33:36 +0000 (12:33 +0300)]
; * lisp/cus-edit.el (setopt): Doc fix.  (Bug#73098)

(cherry picked from commit ef0276de82b8ac517ea8c15ee504f290c6528c73)

2 months ago; * lisp/minibuffer.el (completion-pcm--merge-completions): Fix comments.
Eli Zaretskii [Sat, 14 Sep 2024 09:26:54 +0000 (12:26 +0300)]
; * lisp/minibuffer.el (completion-pcm--merge-completions): Fix comments.

(cherry picked from commit b115c2d5ebaa9819fc0a12b0df75f9b1080d53e6)

2 months agoCorrectly include fixed strings before a prefix wildcard in PCM
Spencer Baugh [Mon, 26 Aug 2024 14:12:51 +0000 (10:12 -0400)]
Correctly include fixed strings before a prefix wildcard in PCM

In 03ac16ece40ba3e3ba805d6a61cc457d84bf3792 I fixed a bug with the
PCM implementation of substring completion, relating to the handling
of PCM wildcards.
However, this fix was incomplete.  This change completes the fix by
also including a fixed string if it appears before a 'prefix'
wildcard, even if 'try-completion' doesn't discover that fixed
string grows to a unique completion.
I discovered this bug while working on enhancements to PCM
completion related to 'completion-pcm-leading-wildcard'.
* lisp/minibuffer.el (completion-pcm--merge-completions): Include
fixed strings before 'prefix wildcard.  (Bug#72819)
* test/lisp/minibuffer-tests.el (completion-substring-test-5): Add a
test for this behavior.

(cherry picked from commit 3cda1fdc3b755dd329617cabc266e2b86894d0cb)

2 months ago; * lisp/treesit.el (treesit-major-mode-setup): Doc fix.
Eli Zaretskii [Sat, 14 Sep 2024 09:02:56 +0000 (12:02 +0300)]
; * lisp/treesit.el (treesit-major-mode-setup): Doc fix.

(cherry picked from commit 57d93d0259a3cc9a180b1bcb3cec3f670485f82c)

2 months ago; Improve documentation of 'easy-menu-define'
Eli Zaretskii [Sat, 14 Sep 2024 08:55:08 +0000 (11:55 +0300)]
; Improve documentation of 'easy-menu-define'

* doc/lispref/keymaps.texi (Easy Menu):
* lisp/emacs-lisp/easymenu.el (easy-menu-define): Document that
SYMBOL is also defined as a variable.  (Bug#73108)

(cherry picked from commit ad289f364e5c508d6f5d6ae530ee919c5fa43335)

2 months ago; Skip commit 7c767ec781fdba02d073b79113b1d8d89548bb08
Eshel Yaron [Sat, 14 Sep 2024 20:34:03 +0000 (22:34 +0200)]
; Skip commit 7c767ec781fdba02d073b79113b1d8d89548bb08

2 months agoSet treesit-primary-parser for c and elixir ts mode
Yuan Fu [Sat, 14 Sep 2024 07:46:05 +0000 (00:46 -0700)]
Set treesit-primary-parser for c and elixir ts mode

For buffers with multiple parsers, it's important to set this variable
so font-lock invalidation works smoothly.

* lisp/progmodes/c-ts-mode.el (c-ts-mode): Set treesit-primary-parser.
* lisp/progmodes/elixir-ts-mode.el (elixir-ts-mode): Set
treesit-primary-parser.

(cherry picked from commit 3cad7cc8dc823b8b1dd66d7777a01778e1a4defe)

2 months ago; Minor doc fix in treesit.el
Yuan Fu [Sat, 14 Sep 2024 07:19:47 +0000 (00:19 -0700)]
; Minor doc fix in treesit.el

* lisp/treesit.el (treesit-outline-search): Mention parameters.
(treesit-major-mode-setup): Mention outline setup.

(cherry picked from commit 2f243fb91d6d2c4c4e4a6dbbd94ef5b13d543732)

2 months ago; Skip commit 6a6d7925c9ddbf558f70932661ee943262aea4ca
Eshel Yaron [Sat, 14 Sep 2024 20:33:43 +0000 (22:33 +0200)]
; Skip commit 6a6d7925c9ddbf558f70932661ee943262aea4ca

2 months agoRevert "Read more on each call to treesit's buffer reader"
Yuan Fu [Sat, 14 Sep 2024 05:53:06 +0000 (22:53 -0700)]
Revert "Read more on each call to treesit's buffer reader"

This reverts commit bf23382f1f2d6ea072db4e4750f8a345f77a3ef2.

We move around the gap, narrow regions, ralloc, etc, and don't have a
way to invalidate previously given range.  So tree-sitter can't be given
the full range.

(cherry picked from commit 76faf7e60910ffc29b134fa4d16e3d8c176097a7)

2 months agoFix tree-sitter indent preset prev-adaptive-prefix
Yuan Fu [Fri, 13 Sep 2024 07:23:13 +0000 (00:23 -0700)]
Fix tree-sitter indent preset prev-adaptive-prefix

* lisp/treesit.el (treesit-simple-indent-presets): Use looking-at so the
call to match-string has the match data to work with.

(cherry picked from commit c70bd0e3fe9c2f5b1fcdce7939c07449f8a5ec4c)

2 months ago* lisp/net/tramp.el (tramp-wait-for-regexp): Deactivate (sit-for 0.005).
Michael Albinus [Sat, 14 Sep 2024 06:57:19 +0000 (08:57 +0200)]
* lisp/net/tramp.el (tramp-wait-for-regexp): Deactivate (sit-for 0.005).

(cherry picked from commit 0d07bc1a2d27a5e1dd41035e64612315d82c517b)

2 months ago; * CONTRIBUTE: Minor copyedits.
Eli Zaretskii [Sat, 14 Sep 2024 06:52:59 +0000 (09:52 +0300)]
; * CONTRIBUTE: Minor copyedits.

(cherry picked from commit 272df33fb8bde41887bfa4b03ed8223b9c03c572)

2 months ago* etc/symbol-releases.eld: Fix URL.
Stefan Kangas [Fri, 13 Sep 2024 22:51:08 +0000 (00:51 +0200)]
* etc/symbol-releases.eld: Fix URL.

(cherry picked from commit f3bb84e53b0cd24da9f7175f3d10b36ccf882849)

2 months agoUse stable URLs for files imported from Unicode
Robert Pluim [Fri, 13 Sep 2024 14:08:56 +0000 (16:08 +0200)]
Use stable URLs for files imported from Unicode

* admin/notes/unicode: Point people at "admin/unidata/README" for URLs
for Unicode files.
* admin/unidata/README: Use stable URLs for the various files.  Remove
dates, the files self-describe their dates anyway.

(cherry picked from commit ece47e5a2181cb36fd8f0e532d050caefb92504b)

2 months ago; Skip commit 8e1187e336f6763f03cc8c03cf6c02e97c34dac7
Eshel Yaron [Sat, 14 Sep 2024 20:31:39 +0000 (22:31 +0200)]
; Skip commit 8e1187e336f6763f03cc8c03cf6c02e97c34dac7

2 months ago; * etc/NEWS: Improve 'dired-check-symlinks' entry.
Robert Pluim [Wed, 11 Sep 2024 16:15:35 +0000 (18:15 +0200)]
; * etc/NEWS: Improve 'dired-check-symlinks' entry.

(cherry picked from commit 48d2d616f733fc9cb92e7507ef1583473af24f32)

2 months agoAdd notes about documenting default values
Robert Pluim [Wed, 11 Sep 2024 16:09:29 +0000 (18:09 +0200)]
Add notes about documenting default values

* CONTRIBUTE: Ask people to document default values when adding new user
  options.

(cherry picked from commit b4863908623b739b0771a70c7cc4f4a57d07a841)

2 months agoImprove accuracy of character categories
Eli Zaretskii [Fri, 13 Sep 2024 11:31:28 +0000 (14:31 +0300)]
Improve accuracy of character categories

* lisp/international/characters.el: Assign 'digit' category to all
the characters whose Unicode 'general-category' is Nd.

* admin/unidata/blocks.awk: Add code to assign 'symbol' category
to all characters belonging to the 'symbol' script.

* etc/NEWS: Announce the above changes

(cherry picked from commit 7376623a244a91d1de5245645b4b3e8c9469d422)

2 months agoDon't fail uniquify-tests in non-version-controlled source trees
Mattias Engdegård [Fri, 13 Sep 2024 10:13:53 +0000 (12:13 +0200)]
Don't fail uniquify-tests in non-version-controlled source trees

* test/lisp/uniquify-tests.el (uniquify-project-transform):
Skip test if there is no project (bug#73205).

(cherry picked from commit ca3932121a893df3c4b08dbe11f2c002da4a421f)

2 months ago; * etc/ORG-NEWS: Fix typo.
Robert Pluim [Fri, 13 Sep 2024 07:50:01 +0000 (09:50 +0200)]
; * etc/ORG-NEWS: Fix typo.

(cherry picked from commit 79f68597abade27939397e0c2a50eec833e64daf)

2 months ago* doc/misc/auth.texi: Minor copy edits.
Stefan Kangas [Thu, 12 Sep 2024 22:17:35 +0000 (00:17 +0200)]
* doc/misc/auth.texi: Minor copy edits.

(cherry picked from commit d66b70f3607c7cce99f8d67c18c1a4b13af1970c)

2 months ago; * admin/MAINTAINERS: Remove some entries for Artur Malabarba.
Stefan Kangas [Thu, 12 Sep 2024 21:01:08 +0000 (23:01 +0200)]
; * admin/MAINTAINERS: Remove some entries for Artur Malabarba.

Change agreed with Artur Malabarba <arturmalabarba@gmail.com>.

(cherry picked from commit 2c6b7b2da9f011c6aaf38e5dd24f137b0c033945)

2 months agoUpdate Emacs sources for Unicode 16.0
Eli Zaretskii [Thu, 12 Sep 2024 18:12:09 +0000 (21:12 +0300)]
Update Emacs sources for Unicode 16.0

* lisp/international/ucs-normalize.el (check-range): Update ranges
of character codes with decompositions.
* lisp/international/mule-cmds.el (ucs-names): Update unused
ranges.
* lisp/international/fontset.el (script-representative-chars)
(otf-script-alist, setup-default-fontset): Add new scripts.
* lisp/international/characters.el:
* admin/unidata/blocks.awk:
* test/manual/BidiCharacterTest.txt:
* test/lisp/international/ucs-normalize-tests.el
(ucs-normalize-tests--failing-lines-part2): Update for Unicode
16.0.

* etc/NEWS: Announce support for Unicode 16.0.

(cherry picked from commit 04e8ad6489ebec121ace7ea6d582429a96af8f04)

2 months agoImport updated Unicode files from Unicode 16.0
Eli Zaretskii [Thu, 12 Sep 2024 14:25:36 +0000 (17:25 +0300)]
Import updated Unicode files from Unicode 16.0

* admin/unidata/BidiBrackets.txt:
* admin/unidata/BidiMirroring.txt:
* admin/unidata/Blocks.txt:
* admin/unidata/IdnaMappingTable.txt:
* admin/unidata/NormalizationTest.txt:
* admin/unidata/PropertyValueAliases.txt:
* admin/unidata/ScriptExtensions.txt:
* admin/unidata/Scripts.txt:
* admin/unidata/SpecialCasing.txt:
* admin/unidata/UnicodeData.txt:
* admin/unidata/copyright.html:
* admin/unidata/emoji-data.txt:
* admin/unidata/emoji-sequences.txt:
* admin/unidata/emoji-test.txt:
* admin/unidata/emoji-variation-sequences.txt:
* admin/unidata/emoji-zwj-sequences.txt: Update from Unicode 16.0

(cherry picked from commit 5e16d846896c0f3f8115581a2e392ebef3f3e58b)

2 months agoHuman readable last display time of killed buffer
Manuel Giraud [Mon, 9 Sep 2024 15:16:32 +0000 (17:16 +0200)]
Human readable last display time of killed buffer

* lisp/midnight.el (clean-buffer-list): Upon killing a buffer,
add a human readable last displayed information.  (Bug#73150)

(cherry picked from commit 31e8500b061b6963708e66468fc89db1006226d7)

2 months agoSimple typo in `clean-buffer-list'
Manuel Giraud [Mon, 9 Sep 2024 13:42:56 +0000 (15:42 +0200)]
Simple typo in `clean-buffer-list'

* lisp/midnight.el (clean-buffer-list): `delay' is always an
integer here.  (Bug#73144)

(cherry picked from commit 06de3ae412e70d414cb9e149ca49aac8697309bb)

2 months ago; * doc/emacs/dired.texi (Misc Dired Features): Fix wording.
Eli Zaretskii [Thu, 12 Sep 2024 09:26:44 +0000 (12:26 +0300)]
; * doc/emacs/dired.texi (Misc Dired Features): Fix wording.

(cherry picked from commit ddd3752b9442ba0528403822a5bb1b2e5e0ae985)

2 months agoAdd Ftreesit_grammar_location
Yuan Fu [Wed, 28 Aug 2024 05:31:42 +0000 (22:31 -0700)]
Add Ftreesit_grammar_location

* src/treesit.c (treesit_loaded_lang): New struct.
(treesit_load_language): Return a struct instead of just the language
object.  The struct contains both the language object and the path to
the shared library.
(Ftreesit_language_available_p, Ftreesit_language_abi_version)
(treesit_ensure_query_compiled, Ftreesit_parser_create): Update
call of treesit_load_language.
(Ftreesit_grammar_location): New function.

(cherry picked from commit 2a75693f24a631b0a2a366bdce1ca5cb0c38d215)

2 months agoFix bug#72254
Po Lu [Thu, 12 Sep 2024 00:22:25 +0000 (08:22 +0800)]
Fix bug#72254

* src/pgtkselect.c (Fpgtk_get_selection_internal): If requesting
TARGETS with just one result, return it as a vector.
(bug#72254)

(cherry picked from commit 11e7ae3964e192b0e4bcc437a04278ee727e720b)

2 months ago; Skip commit 9a1c76bf7ff49d886cc8e1a3f360d71e62544802
Eshel Yaron [Sat, 14 Sep 2024 20:28:57 +0000 (22:28 +0200)]
; Skip commit 9a1c76bf7ff49d886cc8e1a3f360d71e62544802

2 months ago; Skip commit 68530860ae998e7364c550e7eddadda31c37eab7
Eshel Yaron [Sat, 14 Sep 2024 20:28:50 +0000 (22:28 +0200)]
; Skip commit 68530860ae998e7364c550e7eddadda31c37eab7

2 months ago; Skip commit fb1db366b98f21d8a39c7d68c978844558474264
Eshel Yaron [Sat, 14 Sep 2024 20:28:46 +0000 (22:28 +0200)]
; Skip commit fb1db366b98f21d8a39c7d68c978844558474264

2 months agoAllow to disable symbolic links check in Dired
Michael Albinus [Wed, 11 Sep 2024 15:42:24 +0000 (17:42 +0200)]
Allow to disable symbolic links check in Dired

* doc/emacs/dired.texi (Misc Dired Features):
* doc/misc/tramp.texi (Frequently Asked Questions):
Explain dired-check-symlinks.

* etc/NEWS: Describe dired-check-symlinks.
Fix typos.

* lisp/dired.el (dired-check-symlinks): New defcustom.
(dired-font-lock-keywords): Use it.  (Bug#73046)

(cherry picked from commit f283144658259f209efdef78c576b43832c9c479)

2 months agoAdd Ediff feature for copying all differences
Paul Nelson [Wed, 4 Sep 2024 07:24:25 +0000 (09:24 +0200)]
Add Ediff feature for copying all differences

* lisp/vc/ediff-util.el (ediff-diff-to-diff): With universal
prefix, copy all differences.

* doc/misc/ediff.texi (Quick Help Commands): Document the new feature.
* etc/NEWS: Announce the new feature.

(Bug#72866)

(cherry picked from commit 833158c0b78c6dbeacb169076a9899ba7bf45bff)

2 months agoFor minibuffer windows record minibuffers only (Bug#72487)
Martin Rudalics [Wed, 11 Sep 2024 08:36:14 +0000 (10:36 +0200)]
For minibuffer windows record minibuffers only (Bug#72487)

* src/minibuf.c (zip_minibuffer_stacks): Use wset type
functions.  Call 'record-window-buffer' instead of
'push-window-buffer-onto-prev' to handle all sorts of buffers
shown in minibuffer windows in a uniform way.
(read_minibuf): Call 'record-window-buffer' instead of
'push-window-buffer-onto-prev' for same reason as previous.
* lisp/calculator.el (calculator-update-display)
(calculator-save-and-quit): Make sure calculator buffer is live
before operating on it.
* lisp/window.el (record-window-buffer): Handle case where
WINDOW is a minibuffer window: Unconditionally remove WINDOW's
buffer from WINDOW's list of previous buffers and push it if
and only if it is a live minibuffer (Bug#72487).  Do not run
'buffer-list-update-hook' if WINDOW is a minibuffer window.
(push-window-buffer-onto-prev): Make it an alias of
'record-window-buffer' so it will run the latter's checks.
(replace-buffer-in-windows): Handle minibuffer windows and
rewrite doc-string accordingly.
* doc/lispref/windows.texi (Buffers and Windows): Explain
handling of minibuffer windows in 'replace-buffer-in-windows'.

(cherry picked from commit fc3a7f45292b9a7be95fdefd24fedb7e8f564d1c)

2 months ago; * test/lisp/gnus/gnus-icalendar-tests.el: remove unneeded unwind-protect
Robert Pluim [Wed, 11 Sep 2024 08:00:34 +0000 (10:00 +0200)]
; * test/lisp/gnus/gnus-icalendar-tests.el: remove unneeded unwind-protect

(cherry picked from commit 74ea24233ca281b19c3e3d2552621ceac30dfc48)

2 months agoAllow comments to organizer in icalendar event replies (Bug#72831)
fpi [Wed, 28 Aug 2024 16:33:20 +0000 (18:33 +0200)]
Allow comments to organizer in icalendar event replies (Bug#72831)

* lisp/gnus/gnus-icalendar.el
(gnus-icalendar-event--build-reply-event-body): Add optional COMMENT
argument to be inserted into the reply.
(gnus-icalendar-event-reply-from-buffer): Add COMMENT argument to be
passed through to gnus-icalendar-event--build-reply-event-body
(gnus-icalendar-reply-accept, gnus-icalendar-reply-tentative,
gnus-icalendar-reply-decline): If interactively called with a prefix
argument ask user for a COMMENT to add to the reply.

* test/lisp/gnus/gnus-icalendar-tests.el
(gnus-icalendar-accept-with-comment,
gnus-icalendar-decline-without-changing-comment): New tests.

(cherry picked from commit 8332b4dd07a43d09ff8eed7097873d9ac4d5afc8)

2 months ago; * exec/configure.ac: Update version.
Po Lu [Wed, 11 Sep 2024 05:26:17 +0000 (13:26 +0800)]
; * exec/configure.ac: Update version.

(cherry picked from commit 69e1aca041c57ba425425d31471e1c8f86d3bf04)

2 months ago* src/treesit.h (struct Lisp_TS_Parser): Correct merge error.
Po Lu [Wed, 11 Sep 2024 05:25:48 +0000 (13:25 +0800)]
* src/treesit.h (struct Lisp_TS_Parser): Correct merge error.

(cherry picked from commit a139c3d6d888219bb3cb3c0c5a3eb6268c9b7a29)

2 months ago; Update version number of exec/configure.ac
Po Lu [Wed, 11 Sep 2024 04:53:29 +0000 (12:53 +0800)]
; Update version number of exec/configure.ac

* admin/admin.el (set-version): Update AC_INIT expansion in
exec/configure.ac.

* exec/configure.ac: Update version to 30.0.90.

(cherry picked from commit ee3e3a6311196129104881d6e9097bb54d8843af)

2 months agoFix heex-ts-mode indentation following previews elixir-mode change
Yuan Fu [Wed, 11 Sep 2024 02:29:31 +0000 (19:29 -0700)]
Fix heex-ts-mode indentation following previews elixir-mode change

After the previous fix in elixir-ts-mode (0fd259d166c), embedded heex
code are indented like this:

1 defmodule Foo do
2   def foo(assigns) do
3     ~H"""
4 <span>
5   text
6 </span>
7     """
8   end
9 end

The indent rule finds the beginning of the parent heex node, and uses
the indentation of that line as anchor with an offset of 0.  Previously
the parent heex node (fragment) starts at EOL of line 3; after the
previous commit, it now starts at BOL of line 4.  To fix the
indentation, I changed the anchor to the beginning of the elixir
(rather than heex) node at point, which is at EOL at line 3.

* lisp/progmodes/heex-ts-mode.el (heex-ts--indent-rules): Use the elixir
node that contains the heex code as the anchor, instead of the heex root
node.

(cherry picked from commit c5925b6ba5f7821ea72ebd26b76e405cecaabb8e)

2 months ago; * admin/make-tarball.txt: Improve last change.
Andrea Corallo [Tue, 10 Sep 2024 22:43:47 +0000 (00:43 +0200)]
; * admin/make-tarball.txt: Improve last change.

(cherry picked from commit c3383be5f043a1efe6f9650e8d0a6d4616ca4eeb)