]> git.eshelyaron.com Git - emacs.git/log
emacs.git
4 months agoAllow using multiple buffers in 'eshell-command'
Thierry Volpiatto [Wed, 19 Jun 2024 10:02:59 +0000 (12:02 +0200)]
Allow using multiple buffers in 'eshell-command'

Provide the same functionality as 'async-shell-command-buffer' but for
'eshell-command'.

Co-Authored-By: Jim Porter <jporterbugs@gmail.com>
* lisp/eshell/eshell.el (eshell-command-async-buffer): New option...
(eshell-command): ... use it.

* lisp/eshell/esh-proc.el (eshell-sentinel): Check for buffer liveness
in 'finish-io'.

* test/lisp/eshell/eshell-tests.el
(eshell-test/eshell-command/output-buffer/async-kill): New test.

* etc/NEWS: Announce this change (bug#71554).

(cherry picked from commit 7f631a3e2aca97e95b8659c902c25ab21f084e08)

4 months agoImprove warnings from native compiler
Eli Zaretskii [Fri, 5 Jul 2024 19:00:08 +0000 (22:00 +0300)]
Improve warnings from native compiler

* src/comp.c (syms_of_comp) <native-compiler>: Rename from 'comp'.

* src/lread.c (maybe_swap_for_eln):
* lisp/emacs-lisp/comp.el (comp--fwprop):
* lisp/emacs-lisp/comp-run.el
(comp--accept-and-process-async-output, native--compile-async):
Adjust to the new symbol.

(cherry picked from commit 814710067f0558e308c7020b22e455fe0ece7878)

4 months agoperl-mode.el: Improve indent after hanging open-paren
Stefan Monnier [Fri, 5 Jul 2024 14:02:39 +0000 (10:02 -0400)]
perl-mode.el: Improve indent after hanging open-paren

Make the indentation of the code right after an open paren/brace
use the same rule as already used to indent the corresponding
matching paren/brace.

* lisp/progmodes/perl-mode.el (perl-calculate-indent):
Use `perl-indent-new-calculate`s "virtual" indentation instead of
approximating it with `current-indentation`.

(cherry picked from commit bd86a6c4fde1aa42ea9e8b5434f0cb63f8d52684)

4 months agoDocument adding package dependency on Emacs version
Stefan Kangas [Fri, 5 Jul 2024 11:58:07 +0000 (13:58 +0200)]
Document adding package dependency on Emacs version

* doc/lispref/package.texi (Simple Packages, Multi-file Packages):
Document how to make a package depend on a specific version of Emacs.

(cherry picked from commit cefec59df7b24887496dafc32eae69083dfa60f2)

4 months agoFix file-name detection in Dired under -F
Eli Zaretskii [Fri, 5 Jul 2024 10:58:11 +0000 (13:58 +0300)]
Fix file-name detection in Dired under -F

* lisp/files.el (insert-directory-clean): Support all the symbols
appended to file names by the -F/--classify option of 'ls'.  See
https://lists.gnu.org/archive/html/emacs-devel/2024-07/msg00366.html
for the details.

(cherry picked from commit d190cb0e886f3d748ddbb8bf915c19149d00c0c4)

4 months agoEnable Gnulib substitute on Android systems with defective strnlen
Po Lu [Fri, 5 Jul 2024 04:09:52 +0000 (12:09 +0800)]
Enable Gnulib substitute on Android systems with defective strnlen

* configure.ac (AC_FUNC_STRNLEN): Detect a bug where strnlen is
liable to integer overflows if addition of the search limit to
the string would also overflow.

* src/xdisp.c (store_mode_line_string): Remove stopgap measure.

(cherry picked from commit 04d7318efa20cce3aa369fdfd563d8364feb6e78)

4 months agoFix dumping finalizers with pdumper
Pip Cet [Thu, 4 Jul 2024 22:09:55 +0000 (22:09 +0000)]
Fix dumping finalizers with pdumper

* src/pdumper.c (dump_finalizer): Use `out' (a pointer to a finalizer)
rather than `&out' (a pointer to a pointer to a finalizer).

(cherry picked from commit d76eb23232bffdf2505b13ec9216c6d0487a0ccb)

4 months agoRemove redundant `require`s
Stefan Kangas [Thu, 4 Jul 2024 21:55:16 +0000 (23:55 +0200)]
Remove redundant `require`s

* lisp/gnus/canlock.el (sha1):
* lisp/international/utf7.el (base64):
* lisp/net/hmac-md5.el (md5):
* lisp/org/ob-processing.el (sha1):
* lisp/org/org-feed.el (sha1):
* test/lisp/net/rfc2104-tests.el (sha1, md5): Don't require features
that are built-in, and always provided.

(cherry picked from commit 0e591a9112c15bfe7bd19c06fa117cfc9e87f8b5)

4 months agoIn SHR, load from URL cache if possible when zooming images
Jim Porter [Sun, 23 Jun 2024 21:53:49 +0000 (14:53 -0700)]
In SHR, load from URL cache if possible when zooming images

* lisp/net/shr.el (shr-replace-image): New function extracted from...
(shr-image-fetched): ... here.
(shr-zoom-image): Check URL cache and call 'shr-replace-image' if we
can.

(cherry picked from commit f91387cce8f6f1dced427ad44686ffcc69574ef6)

4 months agoFix the different image zoom levels in SHR to work as expected
Jim Porter [Sun, 23 Jun 2024 21:48:32 +0000 (14:48 -0700)]
Fix the different image zoom levels in SHR to work as expected

* lisp/net/shr.el (shr-image-zoom-levels): New option.
(shr-image-zoom-level-alist): New variable.
(shr-zoom-image): Take POSITION and ZOOM-LEVEL arguments.  Consult
'shr-image-zoom-levels'.
(shr-put-image): Use 'shr-image-zoom-level-alist'.
(shr-rescale-image): Only reset width *or* height when either is too
large.
(shr--image-zoom-original-size, shr--image-zoom-image-size)
(shr--image-zoom-fill-height): New functions.

* etc/NEWS: Announce this change.

(cherry picked from commit 208207c1c07fb4669c6b7d64c27236074f996ae4)

4 months agoIn SHR, keep track of image sizes as specified by the HTML
Jim Porter [Sun, 23 Jun 2024 19:25:25 +0000 (12:25 -0700)]
In SHR, keep track of image sizes as specified by the HTML

Previously, these values got lost when zooming the image.

* lisp/net/shr.el (shr-tag-img): Set 'image-dom-size'...
(shr-zoom-image): ... use it.  Rename 'size' to 'zoom'.
(shr-image-fetched): Rename 'image-size' to 'image-zoom'.
(shr-put-image): Accept the zoom level as ':zoom' and document it.
Previously, FLAGS was a mix of alist and plist(!).

* test/lisp/net/shr-tests.el (shr-test/zoom-image): Rename "size" to
"zoom".

(cherry picked from commit 6d082f3c79269f00308d6e8b7d31d6a119376fe2)

4 months agoSlice images based on their height in SHR, not their zoom level
Jim Porter [Sun, 23 Jun 2024 19:18:57 +0000 (12:18 -0700)]
Slice images based on their height in SHR, not their zoom level

* lisp/net/shr.el (shr-sliced-image-height): New option...
(shr-put-image): ... use it.  Compute the number of slices in relation
to the image height; this way, each slice is roughly the height of a
line of ordinary text.

* test/lisp/net/shr-tests.el (shr-test/zoom-image): Update test, since
zooming no longer necessarily triggers slicing.

* doc/misc/eww.texi (Advanced): Document 'shr-sliced-image-proportion'.

* etc/NEWS: Announce this change.

(cherry picked from commit 3ce7e4ee3f1f8bf85c2c455ac624bec6c7cd10a8)

4 months ago; * src/fns.c (fixnum_float_cmp): Explain argument constraint.
Mattias Engdegård [Thu, 4 Jul 2024 15:48:16 +0000 (17:48 +0200)]
; * src/fns.c (fixnum_float_cmp): Explain argument constraint.

Suggested by Pip Cet.

(cherry picked from commit fa6f088a483f1f2e19863800c6215a8136288b8f)

4 months ago(edebug--called-interactively-skip): Fix bug#71934
Stefan Monnier [Thu, 4 Jul 2024 15:47:01 +0000 (11:47 -0400)]
(edebug--called-interactively-skip): Fix bug#71934

* lisp/emacs-lisp/edebug.el (edebug--called-interactively-skip):
Adjust to new interpreted functions.

(cherry picked from commit 334d51322072caea8283f3735864bb83afeaabce)

4 months ago; Strengthen value< tests slightly
Mattias Engdegård [Thu, 4 Jul 2024 13:39:32 +0000 (15:39 +0200)]
; Strengthen value< tests slightly

* test/src/fns-tests.el (fns-value<-ordered, fns-value<-unordered):
Check equality and/or unordered results using lexicographic constructs.

(cherry picked from commit 0b061ab2ed250f068e4fd36ed6c1c8cb2102b83c)

4 months agoCompare fixnums and floats accurately in value<
Mattias Engdegård [Thu, 4 Jul 2024 12:46:54 +0000 (14:46 +0200)]
Compare fixnums and floats accurately in value<

Make `value<` compare fixnums and floats by value, as `<` does, instead
of coercing the fixnum to a float first which is what C would do.
This matters when the fixnum cannot be represented as a float. For
example, C would evaluate

  72057594037927935 < 72057594037927936.0

to false since the operands are converted to the same floating-point
number.

* src/fns.c (fixnum_float_cmp): New.
(value_cmp): Use it.
* test/src/fns-tests.el (fns-value<-ordered, fns-value<-unordered):
New test cases.

(cherry picked from commit f9f4f054bc15791ff63252e101dbf08bb4eb33c1)

4 months ago; * lisp/ibuffer.el (ibuffer-mode): Doc fix.
Eli Zaretskii [Thu, 4 Jul 2024 07:59:45 +0000 (10:59 +0300)]
; * lisp/ibuffer.el (ibuffer-mode): Doc fix.

(cherry picked from commit 6e8b9ccaec284f934d990f6442cb3b9458a11bf5)

4 months ago; Delete redundant comment in rst.el
Stefan Kangas [Wed, 3 Jul 2024 19:36:00 +0000 (21:36 +0200)]
; Delete redundant comment in rst.el

* lisp/textmodes/rst.el: Delete redundant comment.

(cherry picked from commit 565f4e4ad17c929159d646bfeff7d1adb4c9b727)

4 months agoFix MS-Windows build with native-compilation
Eli Zaretskii [Wed, 3 Jul 2024 19:13:42 +0000 (22:13 +0300)]
Fix MS-Windows build with native-compilation

* src/w32.c (globals_of_w32): Move re-initialization of
Vlibrary_cache from here...
* src/emacs.c (main): ...to here, as it must be after load_pdump.
(Bug#71916)

(cherry picked from commit 3eaf1abbff8347c43fb0949bbe3806ab909cb54e)

4 months agoTag dbus-test05-register-signal-with-nils as unstable
Andrea Corallo [Wed, 3 Jul 2024 15:06:40 +0000 (17:06 +0200)]
Tag dbus-test05-register-signal-with-nils as unstable

* test/lisp/net/dbus-tests.el (dbus-test05-register-signal-with-nils):
Tag it as unstable.

(cherry picked from commit fc375359edd514801816078e24b88fa02cfd91a6)

4 months ago; * src/w32fns.c (funhook): Restore mistakenly lost line.
Eli Zaretskii [Wed, 3 Jul 2024 18:06:27 +0000 (21:06 +0300)]
; * src/w32fns.c (funhook): Restore mistakenly lost line.

(cherry picked from commit 99230d7080ffc8310b5700b613f31184eafccbd2)

4 months agoFix treesit test (bug#71907)
Yuan Fu [Wed, 3 Jul 2024 07:31:16 +0000 (00:31 -0700)]
Fix treesit test (bug#71907)

* test/src/treesit-tests.el (treesit-node-check): Re-parse buffer before
checking for node outdated-ness.

(cherry picked from commit b085d683962b65d3e138950dd660779e398134fa)

4 months agoFocus more on MS-Windows than MS-DOS in FAQ
Stefan Kangas [Wed, 3 Jul 2024 00:02:31 +0000 (02:02 +0200)]
Focus more on MS-Windows than MS-DOS in FAQ

* doc/misc/efaq.texi (Editing Windows files): Rename section from
"Editing MS-DOS files", and update the text to focus on Windows.
* doc/misc/efaq.texi (Colors on a TTY)
(Emacs does not display 8-bit characters): Mention MS-Windows before
MS-DOS.

(cherry picked from commit f39cf0beb74c092f8b6095f620ce8ea0680c5432)

4 months agoAutoload some string functions
Stefan Kangas [Mon, 1 Jul 2024 03:14:25 +0000 (05:14 +0200)]
Autoload some string functions

These functions are documented in both `(elisp) Creating Strings' and
'M-x shortdoc RET string RET', so users will expect them to be available
without having to require 'subr-x'.

* lisp/emacs-lisp/subr-x.el (string-fill, string-limit, string-pad)
(string-chop-newline): Autoload.

(cherry picked from commit d64396b8e427e883c47754b133d56cace1219f97)

4 months ago; * src/fns.c (value_cmp): ASCIIfy.
Eli Zaretskii [Mon, 1 Jul 2024 18:58:17 +0000 (21:58 +0300)]
; * src/fns.c (value_cmp): ASCIIfy.

(cherry picked from commit 5d2a115ab038fd509a06436a94c87b11a0882b18)

4 months agoMark many 'ibuffer-mode'-specific commands as such
Eshel Yaron [Sat, 6 Jul 2024 20:10:18 +0000 (22:10 +0200)]
Mark many 'ibuffer-mode'-specific commands as such

4 months agoFix bug#71927
Eshel Yaron [Sat, 6 Jul 2024 18:53:06 +0000 (20:53 +0200)]
Fix bug#71927

4 months agoPrefer to run find and grep in parallel in rgrep (bug#71094)
Spencer Baugh [Wed, 3 Jul 2024 13:39:23 +0000 (15:39 +0200)]
Prefer to run find and grep in parallel in rgrep (bug#71094)

* lisp/progmodes/grep.el (grep-compute-defaults): Prefer `gnu' for
grep-find-use-xargs over `exec-plus', but not on Windows.  (bug#71094)

(cherry picked from commit f7725d85f3132fb684032438f81defcb481892b7)

4 months agoAdapt doc-view-set-slice-using-mouse to touch-screen input
Po Lu [Wed, 3 Jul 2024 09:05:24 +0000 (17:05 +0800)]
Adapt doc-view-set-slice-using-mouse to touch-screen input

* doc/lispref/commands.texi (Touchscreen Events): Document means
of unconditionally enabling simple conversion.

* lisp/doc-view.el (doc-view-set-slice-using-mouse): Bind
touch-screen-simple-mouse-conversion to t, and read translated
mouse events with read-key rather than read-event.

* lisp/subr.el (read-key): Don't permit idle timer to interfere
with reporting of translated mouse events.

* lisp/touch-screen.el (touch-screen-simple-mouse-conversion):
New variable.
(touch-screen-handle-point-up, touch-screen-handle-touch):
Unconditionally enable `mouse-drag' translation if set.  Decide
whether to send drag or mouse events by the values of the two
touchpoints' XY positions and point and double-click-fuzz, as in
make_lispy_event.

(cherry picked from commit 65bd41d1cf6d8ea6b95b69d9c60b0111a1c33392)

4 months ago(dump_interval_node): Remove unused arg `offset`
Stefan Monnier [Tue, 2 Jul 2024 20:29:07 +0000 (16:29 -0400)]
(dump_interval_node): Remove unused arg `offset`

* src/pdumper.c (dump_interval_node): Remove unused arg `offset`.
(dump_overlay): Adjust call accordingly.

(cherry picked from commit 667ca66481c74325f3c8e4391d185ee547fdbb36)

4 months ago(buf_*pos_to_*pos): Fix minor off-by one
Stefan Monnier [Tue, 2 Jul 2024 20:28:08 +0000 (16:28 -0400)]
(buf_*pos_to_*pos): Fix minor off-by one

* src/marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
Slightly restructure the markers loop so we check `distance`
also before "consider"ing the first marker.

(cherry picked from commit 0385c0c0820361b71a74988f23d0445238f30473)

4 months ago; Skip commit b534183135397498e66131fbc5414ef1d445a471
Eshel Yaron [Wed, 3 Jul 2024 18:46:18 +0000 (20:46 +0200)]
; Skip commit b534183135397498e66131fbc5414ef1d445a471

4 months agoPort seccomp acceleration to Linux 3.5.0
Po Lu [Tue, 2 Jul 2024 04:10:43 +0000 (12:10 +0800)]
Port seccomp acceleration to Linux 3.5.0

* etc/NEWS: Update correspondingly.

* exec/Makefile.in (config-mips.m4): Don't define rule
or predicate $(LOADOBJS) on it elsewhere than on MIPS.

* exec/README: Direct developers to GDB.

* exec/trace.c (finish_exec): Resume the tracee after reporting
an error in `exec'.
(after_fork): If seccomp is enabled on Android, and the kernel
is 4.7 or earlier, detect whether revisions to the sequencing of
seccomp events have been backported from 4.8.
(exec_waitpid): Resume the process with PTRACE_CONT after
receiving an unknown signal.
(exec_init): Cease disabling seccomp on Android kernels earlier
than 4.8.

(cherry picked from commit 6b5accdc05d007ab4d1804865c1b043260006673)

4 months agoRemove a reference to a non-existant variable from a doc-string
Alan Mackenzie [Mon, 1 Jul 2024 20:37:28 +0000 (20:37 +0000)]
Remove a reference to a non-existant variable from a doc-string

* lisp/progmodes/cc-langs.el (c-opt-extra-label-key): Remove
reference to c-nonlabel-decl-prefix-re from the doc string.

(cherry picked from commit 921d40759e54e2fb5685a5b662b862ed614b9bc6)

4 months ago; Skip commit 4c64b990873be1e6b99c0b988f2a117c2e08e784
Eshel Yaron [Wed, 3 Jul 2024 18:46:06 +0000 (20:46 +0200)]
; Skip commit 4c64b990873be1e6b99c0b988f2a117c2e08e784

4 months ago; Skip commit 459e635099bad257fc6739ddfccc437cac11bc96
Eshel Yaron [Wed, 3 Jul 2024 18:46:01 +0000 (20:46 +0200)]
; Skip commit 459e635099bad257fc6739ddfccc437cac11bc96

4 months ago* exec/exec.c (exec_0): Restore erroneously deleted statement.
Po Lu [Mon, 1 Jul 2024 14:55:03 +0000 (22:55 +0800)]
* exec/exec.c (exec_0): Restore erroneously deleted statement.

(cherry picked from commit e087d3009bf564446367a1465957d9ea7b699f01)

4 months ago* configure.ac: Provide for invocations where no cache file is set.
Po Lu [Mon, 1 Jul 2024 13:44:40 +0000 (21:44 +0800)]
* configure.ac: Provide for invocations where no cache file is set.

(cherry picked from commit 085a813c338ed8cc56301c1ad6d797e2f5dbd683)

4 months ago* configure.ac: Create a cache file for libexec.
Po Lu [Mon, 1 Jul 2024 13:35:03 +0000 (21:35 +0800)]
* configure.ac: Create a cache file for libexec.

(cherry picked from commit e64286f53c4f5b6c0ed385edfd63a782a8c90b9b)

4 months ago; * src/search.c (Fmatch_beginning, Fmatch_end): Doc fix.
Eli Zaretskii [Mon, 1 Jul 2024 12:59:05 +0000 (15:59 +0300)]
; * src/search.c (Fmatch_beginning, Fmatch_end): Doc fix.

(cherry picked from commit 7050128cfe91a86f87dfe495ce8c3a1c82337db6)

4 months ago; * exec/trace.c (seccomp_system_call): Typo in commentary.
Po Lu [Mon, 1 Jul 2024 10:22:01 +0000 (18:22 +0800)]
; * exec/trace.c (seccomp_system_call): Typo in commentary.

(cherry picked from commit 5965614d3ecb6b09277ea857212467b2f3f9c8bc)

4 months ago; * etc/NEWS: Announce last Android change.
Po Lu [Mon, 1 Jul 2024 10:15:51 +0000 (18:15 +0800)]
; * etc/NEWS: Announce last Android change.

(cherry picked from commit 708c6d83fc4774605acfcfc3920a8c66f428027f)

4 months agoOptimize process execution on Android
Po Lu [Mon, 1 Jul 2024 10:11:58 +0000 (18:11 +0800)]
Optimize process execution on Android

* exec/configure.ac (REENTRANT): Remove option for reentrancy.
(PROGRAM_COUNTER, HAVE_SECCOMP): Define register providing the
program counter and enable seccomp if its headers are available.

* exec/exec.c (write_load_command): Avoid defining unused
variable.
(exec_0): Remove code specific to REENTRANT configurations.

* exec/exec.h (struct exec_tracee) <exec_data, data_size>: New
fields for loader instructions and their size.

* exec/exec1.c (main): Call exec_init before forking.

* exec/mipsel-user.h (ELF_NGREG): Delete definition.
(struct mipsel_regs): Reduce number of gregs to 32, but
introduce separate fields for special registers.

* exec/trace.c (use_seccomp_p): New variable; defile to false if
!HAVE_SECCOMP.
(remove_tracee): Cease providing for non-reentrant
configurations.  Release executable data if present.
(handle_clone_prepare): Likewise.  Resume process with
PTRACE_CONT if seccomp-based interception is enabled.
(handle_clone, check_signal): Resume processes as above.
(handle_exec): Divide into two functions, with only rewriting
the system call and generating instructions for the loader
remaining in the first, and copying such instructions into the
loader's stack removed into a new function, `finish_exec'.
(finish_exec): New function.
(handle_readlinkat, handle_openat): Abolish non-REENTRANT
configurations.
(process_system_call): Divide exec system calls into two phases,
disambiguated by the value of tracee->waiting_for_syscall.  Typo
fixes.  Accommodate syscall-exit-stops where the signal was
initially intercepted by `seccomp_system_call'.
(interesting_syscalls): New array.
(ARRAYELTS): New macro.
(seccomp_system_call, establish_seccomp_filter): New function.
(tracing_execve) [HAVE_SECCOMP]: Establish a seccomp filter if
this is to be enabled.
(after_fork): Provide PTRACE_O_TRACESECCOMP.  Resume process
with PTRACE_CONT if seccomp-based interception is enabled.
(exec_waitpid): Resume process with PTRACE_CONT if seccomp-based
interception is enabled.  Dispatch stops identifying as
PTRACE_EVENT_SECCOMP to `seccomp_system_call'.
(exec_init): Establish whether it is possible to enable seccomp.

(cherry picked from commit ebf5bcb9f0b6adeb97a3918b8f3845844c9091b0)

4 months ago; Skip commit 1647494c04a57586c9616603b3ae803c6dd48d30
Eshel Yaron [Wed, 3 Jul 2024 18:45:34 +0000 (20:45 +0200)]
; Skip commit 1647494c04a57586c9616603b3ae803c6dd48d30

4 months ago; * src/treesit.c (Ftreesit_query_capture): Fix typo.
Yuan Fu [Mon, 1 Jul 2024 05:36:11 +0000 (22:36 -0700)]
; * src/treesit.c (Ftreesit_query_capture): Fix typo.

(cherry picked from commit b2c966f83963f1b4497896b81d3c51479f791e67)

4 months ago* java/res/mipmap-v26/emacs_icon.xml: Define monospace icon.
Po Lu [Mon, 1 Jul 2024 01:31:34 +0000 (09:31 +0800)]
* java/res/mipmap-v26/emacs_icon.xml: Define monospace icon.

(cherry picked from commit ae3857942069d9d9a17976387eee383d10c1ce31)

4 months agoImprove `sentence-end-double-space` docstring
Stefan Kangas [Mon, 1 Jul 2024 00:33:05 +0000 (02:33 +0200)]
Improve `sentence-end-double-space` docstring

* lisp/textmodes/paragraphs.el (sentence-end-double-space):
Improve and expand docstring.

(cherry picked from commit b2d99c0d0aaab4d0c7026a26393e22d66246a349)

4 months agoBackport file backup FAQ item to Emacs <28
Stefan Kangas [Sun, 30 Jun 2024 23:44:38 +0000 (01:44 +0200)]
Backport file backup FAQ item to Emacs <28

* doc/misc/efaq.texi (Not writing files to the current directory):
Backport recommendation to Emacs 27 or older.
Problem reported by David Hedlund <davidh@gnu.org>.

(cherry picked from commit 9d62dbc1f798f65d480c6b8e6255a33e124995d0)

4 months agoMore updates of documentation for Emacs 30
Eli Zaretskii [Sun, 30 Jun 2024 19:25:31 +0000 (22:25 +0300)]
More updates of documentation for Emacs 30

* etc/NEWS: Improve wording and move/mark entries.

* doc/lispref/positions.texi (List Motion): Document
'forward-sentence-function'.
* doc/lispref/functions.texi (What Is a Function): Document
'primitive-function-p' and 'cl-functionp'.
* doc/emacs/misc.texi (Saving Emacs Sessions): Improve wording and
indexing.
* doc/lispref/tips.texi (Documentation Tips): Adapt to the new
value of 'emacs-lisp-docstring-fill-column'.
* doc/emacs/fixit.texi (Spelling): Document
'flyspell-check-changes'.

(cherry picked from commit 2f71460d52fb8ec36766edc297de559b318ee5e1)

4 months ago; Skip commit a9df581c40392170af79258d9fd8f1cec4f479da
Eshel Yaron [Wed, 3 Jul 2024 18:44:47 +0000 (20:44 +0200)]
; Skip commit a9df581c40392170af79258d9fd8f1cec4f479da

4 months ago; Skip commit dfbdd38f701cbf70769b024ee3fc59f677b328da
Eshel Yaron [Wed, 3 Jul 2024 18:44:43 +0000 (20:44 +0200)]
; Skip commit dfbdd38f701cbf70769b024ee3fc59f677b328da

4 months agoNew command 'minibuffer-export'
Eshel Yaron [Wed, 3 Jul 2024 18:43:50 +0000 (20:43 +0200)]
New command 'minibuffer-export'

4 months ago(completions-setup): Remove, move setup to 'completion-list-mode'
Eshel Yaron [Wed, 3 Jul 2024 16:26:30 +0000 (18:26 +0200)]
(completions-setup): Remove, move setup to 'completion-list-mode'

4 months agoRevert 'imenu-flatten' to a boolean option
Eshel Yaron [Tue, 2 Jul 2024 17:38:17 +0000 (19:38 +0200)]
Revert 'imenu-flatten' to a boolean option

4 months ago(shr-test/zoom-image): Skip when libxml is absent
Eshel Yaron [Mon, 1 Jul 2024 16:02:01 +0000 (18:02 +0200)]
(shr-test/zoom-image): Skip when libxml is absent

4 months ago; * lisp/progmodes/grep.el (grep-read-files): Fix completion table
Eshel Yaron [Mon, 1 Jul 2024 15:35:51 +0000 (17:35 +0200)]
; * lisp/progmodes/grep.el (grep-read-files): Fix completion table

4 months ago(read-multiple-choice): Respect 'inhibit-interaction'
Eshel Yaron [Mon, 1 Jul 2024 15:31:56 +0000 (17:31 +0200)]
(read-multiple-choice): Respect 'inhibit-interaction'

4 months agoUpdate some tests
Eshel Yaron [Mon, 1 Jul 2024 13:14:45 +0000 (15:14 +0200)]
Update some tests

4 months ago(read-char-choice,y-or-n-p): Simplify, use 'r-m-c'
Eshel Yaron [Mon, 1 Jul 2024 09:57:47 +0000 (11:57 +0200)]
(read-char-choice,y-or-n-p): Simplify, use 'r-m-c'

4 months ago; * etc/NEWS.30: Sync from upstream
Eshel Yaron [Mon, 1 Jul 2024 09:05:42 +0000 (11:05 +0200)]
; * etc/NEWS.30: Sync from upstream

4 months agoImprove Android "adaptive icon"
Po Lu [Sun, 30 Jun 2024 15:11:19 +0000 (23:11 +0800)]
Improve Android "adaptive icon"

* java/res/drawable/emacs_background.xml:

* java/res/drawable/emacs_foreground.xml: Transform borders and
gradient colors to better align with the original.

(cherry picked from commit 64851d101a854e00c68f3e9259d70777e7b26cb2)

4 months agoFix documentation for Emacs 30
Eli Zaretskii [Sun, 30 Jun 2024 14:42:38 +0000 (17:42 +0300)]
Fix documentation for Emacs 30

* etc/NEWS: Mark entries and improve wording.

* doc/emacs/dired.texi (Operating on Files): Document
'dired-do-open'.  Fix indexing.
* doc/emacs/files.texi (Diff Mode): Document 'diff-apply-buffer'.
Fix indexing.
* doc/emacs/maintaining.texi (Project File Commands)
(Project Buffer Commands): Document 'project-any-command'.
* doc/emacs/building.texi (Other GDB Buffers): Document the user
option 'gdb-display-io-buffer'.
(Grep Searching): Document 'grep-use-headings'.
* doc/emacs/text.texi (Outline Visibility): Document Outline
commands that hide/show by heading regexp.
* doc/emacs/killing.texi (Kill Options): Document
'kill-ring-deindent-mode'.
* doc/emacs/basic.texi (Continuation Lines): Improve wording.

(cherry picked from commit 9b294059d71c20b43a35fd4aaa68e78b23e19d7c)

4 months ago; Update NEWS and corresponding manuals
Eli Zaretskii [Sun, 30 Jun 2024 12:06:06 +0000 (15:06 +0300)]
; Update NEWS and corresponding manuals

* etc/NEWS: Improve wording and mark entries as approriate.

* doc/emacs/buffers.texi (Kill Buffer): Document new commands.
* doc/emacs/mini.texi (Completion Options, Completion Commands):
Document new completion options and behaviors.

(cherry picked from commit f50167ab95ecd151afab12f9226885599be6cee2)

4 months agoUpdate from gnulib
Paul Eggert [Sun, 30 Jun 2024 10:31:55 +0000 (11:31 +0100)]
Update from gnulib

(cherry picked from commit 7f89fe8a342d7b4e8800d0ef333fb6759b58ccb5)

4 months agoAdd D-Bus test
Robert Church [Sun, 30 Jun 2024 10:16:20 +0000 (12:16 +0200)]
Add D-Bus test

* test/lisp/net/dbus-tests.el (dbus-test05-register-signal-with-nils):
New test.  (Bug#69926)

(cherry picked from commit 4e22ef870c4b650f29c4441ac51b6a2ac506ea57)

4 months ago; Repair corruption in etc/DEBUG
Po Lu [Sun, 30 Jun 2024 09:37:46 +0000 (17:37 +0800)]
; Repair corruption in etc/DEBUG

* etc/DEBUG: Repair corruption reported by Eli Zaretskii
<eliz@gnu.org>.

(cherry picked from commit f784d946d44e7a9034ca35a41675dfc0e0c37557)

4 months ago; * etc/DEBUG: Advice for debugging Emacs on OpenBSD (bug#71712).
Eli Zaretskii [Sun, 30 Jun 2024 09:18:22 +0000 (12:18 +0300)]
; * etc/DEBUG: Advice for debugging Emacs on OpenBSD (bug#71712).

(cherry picked from commit c750fbb539e21f5f8263c853fb9690658fa806cf)

4 months agoRespect --disable-build-details in Android builds
Po Lu [Sun, 30 Jun 2024 08:26:39 +0000 (16:26 +0800)]
Respect --disable-build-details in Android builds

* java/Makefile.in (BUILD_DETAILS, GEN_BUILD_DETAILS): New
variables.
(install_tmp): Tolerate failures in generation of metadata files
and prefix commands for such generation with GEN_BUILD_DETAILS.

* lisp/version.el (android-read-build-system)
(android-read-build-time): Return nil if metadata file does not
exist.

(cherry picked from commit c6a052f2fe53a26cdb0f3624a0b9af5201f3c487)

4 months ago* build-aux/ndk-module-extract.awk: Do not generate newlines in output.
Po Lu [Sun, 30 Jun 2024 04:11:32 +0000 (12:11 +0800)]
* build-aux/ndk-module-extract.awk: Do not generate newlines in output.

(cherry picked from commit c8473ee8c1914d15fb19207215f0a06c84d0915c)

4 months agoEnable caching values generated by the Android build system
Po Lu [Sun, 30 Jun 2024 04:10:21 +0000 (12:10 +0800)]
Enable caching values generated by the Android build system

* build-aux/ndk-build-helper-1.mk:

* build-aux/ndk-build-helper-2.mk:

* build-aux/ndk-build-helper.mk: Do not generate file names with
redundant directory separators, to port to systems where the
semantics of this are undefined.

* configure.ac: Provide a cache file to the recursive invocation
of configure if one is specified for the initial.

* cross/ndk-build/Makefile.in (my-dir): Better conform to the
original ndk-build by generating directory names with no
trailing separator.

* m4/ndk-build.m4 (ndk_resolve_import_module, ndk_SEARCH_MODULE):
Cache the names of Android.mk files and the commands produced
from them.

(cherry picked from commit cab91300d0df2250bc80c0cba15691fe5f8172fb)

4 months agoUpdate the DJGPP configuration scripts
Po Lu [Sun, 30 Jun 2024 02:05:45 +0000 (10:05 +0800)]
Update the DJGPP configuration scripts

* msdos/sedlibmk.inp (HAVE_WCHAR_T): Delete edit of variable
removed from Gnulib.

(cherry picked from commit f0f883da4b410c606b46b61c80b874ead08335ea)

4 months agoInaccuracy in efaq.texi
Po Lu [Sun, 30 Jun 2024 02:04:43 +0000 (10:04 +0800)]
Inaccuracy in efaq.texi

; * doc/misc/efaq.texi (New in Emacs 30): Mention GNUStep and
Mac OS separately.

(cherry picked from commit 72cf9964f3c0fd63332884b8145399f1784de7f1)

4 months ago; Fix typos in DOS Makefile scripts
Po Lu [Sun, 30 Jun 2024 01:58:09 +0000 (09:58 +0800)]
; Fix typos in DOS Makefile scripts

* msdos/sedlibmk.inp (NEXT_AS_FIRST_DIRECTIVE_ENDIAN_H)
(NEXT_ENDIAN_H): Use a different command deliminter character
from `/'.

(cherry picked from commit fc48e9e8ed57657e9c08497c6facd2f082e80e25)

4 months ago; Skip commit 9b8d754579f42eea24e6244cf7c65469d117d5cb
Eshel Yaron [Mon, 1 Jul 2024 07:49:56 +0000 (09:49 +0200)]
; Skip commit 9b8d754579f42eea24e6244cf7c65469d117d5cb

4 months agoDon’t define LC_COLLATE, LC_CTYPE
Paul Eggert [Sat, 29 Jun 2024 23:58:42 +0000 (00:58 +0100)]
Don’t define LC_COLLATE, LC_CTYPE

* src/sysdep.c (LC_COLLATE, LC_CTYPE): Remove unnecessary
macro defns.  They’re always available.

(cherry picked from commit 47ce6ed522d970342366b2d7f6a930576b92879d)

4 months agoAssume setlocale exists
Paul Eggert [Sat, 29 Jun 2024 23:36:34 +0000 (00:36 +0100)]
Assume setlocale exists

Like locale.h, it was standardized by C89, is universally
available now, and some code already assumes it.
* configure.ac: Do not check for setlocale.
* src/emacs.c (setlocale) [!HAVE_SETLOCALE]: Remove.
(fixup_locale, synchronize_locale, Vprevious_system_time_locale)
(synchronize_system_time_locale): Define even if !HAVE_SETLOCALE.
* src/sysdep.c (emacs_setlocale): Simplify by assuming HAVE_SETLOCALE.

(cherry picked from commit 69374fbe827b83c49eff084de8635220bd6d3ccf)

4 months agoDo not worry about whether locale.h is includable
Paul Eggert [Sat, 29 Jun 2024 23:20:42 +0000 (00:20 +0100)]
Do not worry about whether locale.h is includable

* src/emacs.c, src/lread.c, src/sysdep.c: Remove preconditions
from including locale.h.  It was standardized in C89, is universal
now, and some code already assumes it.

(cherry picked from commit d2b847d2911218380d1640dea81d6e72d4a7dc7c)

4 months agoUpdate from Gnulib by running admin/merge-gnulib
Paul Eggert [Sat, 29 Jun 2024 23:08:28 +0000 (00:08 +0100)]
Update from Gnulib by running admin/merge-gnulib

* m4/wchar_t.m4: Remove; no longer needed.

(cherry picked from commit 4a8c8021cc311626fbfa55e68c524195ce466738)

4 months agoFix treesit crash (bug#71681)
Yuan Fu [Sat, 29 Jun 2024 07:16:36 +0000 (00:16 -0700)]
Fix treesit crash (bug#71681)

To reproduce the problem:

0. emacs -Q
1. eval: (add-to-list 'major-mode-remap-alist '(c-mode . c-ts-mode))
2. C-x v L
3. in the *vc-change-log* buffer move point to the commit 20af58d3a13
4. type D
5. crash caused by diff-font-lock-syntax fontification that uses treesit

Emacs: 6f2036243f2 (2024-06-23, latest master)
Tree-sitter: 3da7deed (2024-06-08, version 0.22.6)

The immediate cause of the crash is that tree-sitter accessed a node's
tree, but the tree is already deleted.  Commenting out the
ts_tree_delete line in treesit_ensure_parsed can "fix" the crash.

What happended, I think, is this:

1. Buffer modified, parser->need_reparse set to true,
parser->timestamp incremented.
2. A node is created from the parser, this node has the old tree but
the new timestamp (bad!).
3. Parser re-parses (treesit_ensure_parsed), new tree created, old
tree deleted.
4. Ftreesit_query_capture accessed the old node, and the old tree,
crash.

We shouldn't bump the parser timestamp when we set
parser->need_reparse to true; instead, we should bump the timestamp
when we actually reparsed and created a new tree.

* src/treesit.c (treesit_record_change): Don't bump parser timestamp.
(treesit_sync_visible_region): Don't bump parser timestamp.
(Ftreesit_parser_set_included_ranges): Don't bump parser timestamp.
(treesit_ensure_parsed): Bump parser timestamp.
(Ftreesit_query_capture): Add node check.

(cherry picked from commit 8819e5a45d503b62c38e6310ceda9266606cd6d1)

4 months agoRemove unused m4/printf-posix-rpl.m4
Paul Eggert [Sat, 29 Jun 2024 22:14:54 +0000 (23:14 +0100)]
Remove unused m4/printf-posix-rpl.m4

* m4/printf-posix-rpl.m4: Remove unused file.
This is leftover from an old Android branch,
and the m4 macros are no longer needed in the master branch.

(cherry picked from commit fad7109e52208bf77da468c2c73545c084bc1557)

4 months ago; Fix SHR test on MS-Windows
Jim Porter [Fri, 28 Jun 2024 17:40:05 +0000 (10:40 -0700)]
; Fix SHR test on MS-Windows

* test/lisp/net/shr-tests.el (shr-test/zoom-image): Ensure the image URL
is properly formatted: it should always have 3 slashes after "file:".

(cherry picked from commit eaf2dc96c1f44fe8e07cf19614d7b73df9397ea0)

4 months agoComplete to "nil" in directory local variables skeleton
Stefan Kangas [Sat, 29 Jun 2024 19:58:53 +0000 (21:58 +0200)]
Complete to "nil" in directory local variables skeleton

* lisp/autoinsert.el (auto-insert-alist): Make "nil" a completion
candidate for the directory local variables skeleton.  The "nil" value
means "any mode" in the context of directory local variable files.

(cherry picked from commit fcd6403d8ebf7ce6e61ba17971d4fdaaaaecf06c)

4 months agoSupport grep.el better in `python-base-mode`
Stefan Kangas [Sat, 29 Jun 2024 19:30:19 +0000 (21:30 +0200)]
Support grep.el better in `python-base-mode`

* lisp/progmodes/python.el (python-base-mode): When mode is first
enabled, add *.py alias to 'grep-files-aliases', and add common Python
tooling directories to 'grep-find-ignored-directories'.

(cherry picked from commit bc2e9210bf9f09e69a119ad998e05b2123113b5c)

4 months agoDelete redundant mention of `with-eval-after-load'
Stefan Kangas [Sat, 29 Jun 2024 19:15:46 +0000 (21:15 +0200)]
Delete redundant mention of `with-eval-after-load'

* lisp/progmodes/dcl-mode.el (dcl-mode): Delete redundant mention of
`with-eval-after-load'.

(cherry picked from commit 57880f597c56f4ba2521a731a7e87f920f0afbfd)

4 months ago* doc/misc/efaq.texi (New in Emacs 30): Fix typos.
Michael Albinus [Sat, 29 Jun 2024 16:42:13 +0000 (18:42 +0200)]
* doc/misc/efaq.texi (New in Emacs 30): Fix typos.

(cherry picked from commit ea8ce9843425da34066ac8686a7d61eb3cdb4968)

4 months ago; Fix typos in symbols
Stefan Kangas [Sat, 29 Jun 2024 15:29:38 +0000 (17:29 +0200)]
; Fix typos in symbols

(cherry picked from commit 45a20d781a9b00212609bf0e338bd6b1cc9ea68a)

4 months agoDocument security fixes in FAQ
Stefan Kangas [Sat, 29 Jun 2024 14:48:49 +0000 (16:48 +0200)]
Document security fixes in FAQ

* doc/misc/efaq.texi (New in Emacs 29): Recommend using Emacs 29.4.
* doc/misc/efaq.texi (Security risks with Emacs): New item with a
recommendation to upgrade Emacs for improved security.

(cherry picked from commit d95f039af4373e1f96c72f4825c194a1ef427cff)

4 months agoAdd "New in Emacs 30" to FAQ
Stefan Kangas [Sat, 29 Jun 2024 14:41:18 +0000 (16:41 +0200)]
Add "New in Emacs 30" to FAQ

* doc/misc/efaq.texi (New in Emacs 30): New section.

(cherry picked from commit d063af203c893354d1b02399502ff5be3f3eb36b)

4 months ago; Skip commit ca6b484162bd1856669e13a0eae716072729cc0e
Eshel Yaron [Mon, 1 Jul 2024 07:46:20 +0000 (09:46 +0200)]
; Skip commit ca6b484162bd1856669e13a0eae716072729cc0e

4 months ago; Skip commit 35c46663e49b51dcc3b56bed317c01bd45d6df25
Eshel Yaron [Mon, 1 Jul 2024 07:46:05 +0000 (09:46 +0200)]
; Skip commit 35c46663e49b51dcc3b56bed317c01bd45d6df25

4 months ago; Skip commit 0515b38d289f48914623ea60862d81d97d8f2f9f
Eshel Yaron [Mon, 1 Jul 2024 07:46:02 +0000 (09:46 +0200)]
; Skip commit 0515b38d289f48914623ea60862d81d97d8f2f9f

4 months ago; Skip commit 22af3a71039b9481f9a842e4c52a830c952d3dfa
Eshel Yaron [Mon, 1 Jul 2024 07:46:00 +0000 (09:46 +0200)]
; Skip commit 22af3a71039b9481f9a842e4c52a830c952d3dfa

4 months ago; Skip commit 000ef8876ae9e2098cf98e1b1c468c09be3acd43
Eshel Yaron [Mon, 1 Jul 2024 07:45:57 +0000 (09:45 +0200)]
; Skip commit 000ef8876ae9e2098cf98e1b1c468c09be3acd43

4 months ago; Skip commit 4088dc8e4ce940c3397b63df87c6e74da19d63cf
Eshel Yaron [Mon, 1 Jul 2024 07:45:33 +0000 (09:45 +0200)]
; Skip commit 4088dc8e4ce940c3397b63df87c6e74da19d63cf

4 months ago; Skip commit 2119cd52cdb58221a850360bf65c91cf3bf4b47e
Eshel Yaron [Mon, 1 Jul 2024 07:44:54 +0000 (09:44 +0200)]
; Skip commit 2119cd52cdb58221a850360bf65c91cf3bf4b47e

4 months ago; * etc/NEWS: Fix last change (bug#71499).
Eli Zaretskii [Sat, 29 Jun 2024 13:04:32 +0000 (16:04 +0300)]
; * etc/NEWS: Fix last change (bug#71499).

(cherry picked from commit 3088b0675966160806a4487c6ff97ae8a071d217)

4 months agoMake whitespace.el's cleanup add missing final newline
Björn Lindström [Tue, 11 Jun 2024 17:49:55 +0000 (19:49 +0200)]
Make whitespace.el's cleanup add missing final newline

* lisp/whitespace.el (whitespace-cleanup-region): If cleaning
up at end of file, add missing newline if indicated by
'whitespace-style'.  (Bug#71499)

* etc/NEWS: Announce the change in behavior.

(cherry picked from commit 2a7a7c6f697ac9699dec8b09f1cd2051247b2b45)

4 months ago; * lisp/epg.el (epg--start): Add commentary about encoding.
Eli Zaretskii [Sat, 29 Jun 2024 12:53:11 +0000 (15:53 +0300)]
; * lisp/epg.el (epg--start): Add commentary about encoding.

(cherry picked from commit 179800f36bb01e786ad7573780efeafb742e526e)

4 months agoFix non-ASCII filename operatiion on EasyPG (bug#71500)
Kazuhiro Ito [Sat, 29 Jun 2024 11:56:02 +0000 (20:56 +0900)]
Fix non-ASCII filename operatiion on EasyPG (bug#71500)

* lisp/epg.el (epg--start): Don't encode command-line arguments for
gpg2 program in raw-text.

(cherry picked from commit 73898f0214c9fa7f6216fc03dfdaccf67c6d0e03)

4 months agoSilence warning with global minor mode :predicate
Stefan Kangas [Sat, 29 Jun 2024 12:38:57 +0000 (14:38 +0200)]
Silence warning with global minor mode :predicate

* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
Silence byte-compiler warning when :predicate is used.

(cherry picked from commit a65b6aac6b59b2d9f28892d2a4e7426507035610)