]> git.eshelyaron.com Git - emacs.git/log
emacs.git
19 months agoAllow starting Emacs --debug-init on Android
Po Lu [Fri, 26 May 2023 07:20:39 +0000 (15:20 +0800)]
Allow starting Emacs --debug-init on Android

* doc/emacs/android.texi (Android Troubleshooting): Document
`debug-init' option.
* java/AndroidManifest.xml.in
(EmacsLauncherPreferencesActivity): New activity.  Export on
systems older than Android 7.0.
* java/org/gnu/emacs/EmacsActivity.java (onCreate): Adjust for
string startup argument.
* java/org/gnu/emacs/EmacsLauncherPreferencesActivity.java: New
file.
* java/org/gnu/emacs/EmacsPreferencesActivity.java
(EmacsPreferencesActivity): Don't make final.
(startEmacsQ): Give start-up argument as an argument, not as a
boolean.
(startEmacsDebugInit): New function.
(onCreate): Register new listener; make final.
* java/org/gnu/emacs/EmacsService.java (onCreate): Pass
extraStartupArgument.
* java/org/gnu/emacs/EmacsThread.java (EmacsThread): Rename
startDashQ to extraStartupArgument.
(run): Adjust accordingly.
* java/res/values-v24/bool.xml:
* java/res/values/bool.xml:
* java/res/values/strings.xml: New files.
* java/res/xml/preferences.xml: Add new option.  Move string
resources around.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Fri, 26 May 2023 00:44:06 +0000 (08:44 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months ago; eieio-test-persist.el: namespace hygiene
Mattias Engdegård [Thu, 25 May 2023 08:22:54 +0000 (10:22 +0200)]
; eieio-test-persist.el: namespace hygiene

* test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el
(hash-equal): Rename to `eieio-test--hash-equal`.

19 months agoEglot: fix execution of CodeAction commands
João Távora [Thu, 25 May 2023 13:29:45 +0000 (14:29 +0100)]
Eglot: fix execution of CodeAction commands

Reported in
https://github.com/joaotavora/eglot/discussions/1225.

* lisp/progmodes/eglot.el (eglot-execute): Fix typo.

19 months agoEglot: Add nickel-mode configuration
Brian Leung [Sat, 20 May 2023 08:43:52 +0000 (01:43 -0700)]
Eglot: Add nickel-mode configuration

* lisp/progmodes/eglot.el (eglot-server-programs): Add nls for nickel-mode.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Thu, 25 May 2023 00:20:56 +0000 (08:20 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoFix apparently wrong `delete` and `delq` value discards (bug#61730)
Mattias Engdegård [Wed, 24 May 2023 20:36:19 +0000 (22:36 +0200)]
Fix apparently wrong `delete` and `delq` value discards (bug#61730)

* lisp/startup.el (normal-top-level):
Update process-environment in case the DISPLAY variable comes first.
Also stop iterating over initial-environment once the first DISPLAY
is found.
* lisp/allout.el (allout-get-configvar-values):
* lisp/org/org.el (org-display-inline-remove-overlay):
* lisp/progmodes/gdb-mi.el (gdb-get-location):
* lisp/progmodes/idlwave.el
(idlwave-convert-xml-clean-routine-aliases)
(idlwave-convert-xml-clean-sysvar-aliases):
* lisp/textmodes/reftex.el (reftex-ref-style-toggle):
Update the base variable after performing a destructive deletion,
where it was obvious that this was intended.

19 months agoUse `small-temporary-file-directory' in Tramp
Michael Albinus [Wed, 24 May 2023 18:52:25 +0000 (20:52 +0200)]
Use `small-temporary-file-directory' in Tramp

* lisp/net/tramp-fuse.el (tramp-fuse-mount-point):
* lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
Use `small-temporary-file-directory'.

19 months agoFix nativecomp ICE compiling structure related code (bug#63674)
Andrea Corallo [Wed, 24 May 2023 15:05:26 +0000 (17:05 +0200)]
Fix nativecomp ICE compiling structure related code (bug#63674)

* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Define the predicate to
be effective at compile time as native comp relies on `cl-typep' that
relies o predicates to work.

* test/src/comp-resources/comp-test-funcs.el (cl-lib): Require.
(comp-test-struct): Define struct.
(comp-test-63674-1-f): Add new test.

19 months ago* lisp/loadup.el: Don't accidentally reduce `max-lisp-eval-depth`
Stefan Monnier [Wed, 24 May 2023 13:47:27 +0000 (09:47 -0400)]
* lisp/loadup.el: Don't accidentally reduce `max-lisp-eval-depth`

19 months agoUse return values of assq-delete-all and assoc-delete-all
Mattias Engdegård [Wed, 24 May 2023 09:30:53 +0000 (11:30 +0200)]
Use return values of assq-delete-all and assoc-delete-all

* lisp/allout-widgets.el (allout-widgets-mode):
* lisp/progmodes/eglot.el (eglot-handle-notification):
Update variables with the new value, which was probably the intention
here.

19 months agoUpdate Android port
Po Lu [Wed, 24 May 2023 02:53:41 +0000 (10:53 +0800)]
Update Android port

* src/sfnt.c (sfnt_decompose_compound_glyph): Allow decomposing
up to 16 nested components.
(CALL, LOOPCALL): Correctly error if no fdef storage exists.
(sfnt_interpret_run): New label `next_instruction', for CALL.
(sfnt_interpret_compound_glyph_1): Allow decomposing up to 16
nested components.  Prevent crash if there are no end points or
points.
(sfnt_read_cvar_table): Prevent assigning uninitialized values.
(sfnt_vary_simple_glyph): Update commentary.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Wed, 24 May 2023 00:25:20 +0000 (08:25 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months ago* test/src/comp-tests.el: Add some ret type tests for non builtin types
Andrea Corallo [Tue, 23 May 2023 13:13:08 +0000 (15:13 +0200)]
* test/src/comp-tests.el: Add some ret type tests for non builtin types

19 months agocomp: Propagate pre slot access type check
Andrea Corallo [Wed, 17 May 2023 16:00:24 +0000 (18:00 +0200)]
comp: Propagate pre slot access type check

* lisp/loadup.el (max-lisp-eval-depth): Increase
`max-lisp-eval-depth' to 3400.

* lisp/emacs-lisp/comp.el (comp-add-cond-cstrs): Pattern match pre
slot access type check and add constraint.

* lisp/emacs-lisp/comp-cstr.el (comp-cstr-cl-tag-p)
(comp-cstr-cl-tag): New functions.

* lisp/emacs-lisp/comp.el (make-comp-mvar): Add neg parameter.

19 months agocomp: Make use of predicates in propagation for non builtin types
Andrea Corallo [Wed, 24 Aug 2022 21:31:28 +0000 (23:31 +0200)]
comp: Make use of predicates in propagation for non builtin types

* lisp/emacs-lisp/comp-cstr.el (comp-cstr-ctxt): Add `pred-type-h'
slot.
* lisp/emacs-lisp/comp.el (comp-known-predicate-p)
(comp-pred-to-cstr): Update.

19 months ago* lisp/emacs-lisp/comp.el (comp-fwprop-call): Extend to understand `record'
Andrea Corallo [Wed, 24 Aug 2022 16:41:19 +0000 (18:41 +0200)]
* lisp/emacs-lisp/comp.el (comp-fwprop-call): Extend to understand `record'

19 months agocomp: Account non builtin types in type hierarchy
Andrea Corallo [Wed, 24 Aug 2022 16:08:37 +0000 (18:08 +0200)]
comp: Account non builtin types in type hierarchy

* lisp/emacs-lisp/cl-macs.el (cl--struct-all-parents): Add comment.

* lisp/emacs-lisp/cl-preloaded.el (cl--struct-get-class): Likewise.

* lisp/emacs-lisp/comp-cstr.el (comp--cl-class-hierarchy)
(comp--all-classes): New functions.
(comp-cstr-ctxt): Add `typeof-types' field.

* lisp/emacs-lisp/comp-cstr.el (comp-supertypes)
(comp-union-typesets): Update to use non builtin types.

19 months agoImprove check for ANSI control escape sequences in Tramp
Michael Albinus [Tue, 23 May 2023 13:32:20 +0000 (15:32 +0200)]
Improve check for ANSI control escape sequences in Tramp

* lisp/net/tramp-sh.el (tramp-barf-if-no-shell-prompt):
Remove `ansi-color-control-seq-regexp'.

* lisp/net/tramp.el (tramp-terminal-type): Fix docstring.
(tramp-process-one-action): Delete ANSI control escape sequences
in buffer.  (Bug#63539)

19 months agoStop adding the package directory to the load path
Robert Pluim [Tue, 23 May 2023 13:01:11 +0000 (15:01 +0200)]
Stop adding the package directory to the load path

The generated autoloads files for packages have been updating the
load-path for the last decade.

* lisp/emacs-lisp/package.el (package-activate-1): Don't update
load-path with package directory.

19 months ago; * exec/exec.c (exec_0): Use strcpy.
Po Lu [Tue, 23 May 2023 01:22:19 +0000 (09:22 +0800)]
; * exec/exec.c (exec_0): Use strcpy.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Tue, 23 May 2023 00:46:40 +0000 (08:46 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoUse faster option for running vc-hg status (Bug#63470)
Spencer Baugh [Fri, 12 May 2023 19:28:06 +0000 (15:28 -0400)]
Use faster option for running vc-hg status (Bug#63470)

In modern Mercurial, removing the "re:" "-I" "." options provides a
10x-20x speedup because it allows the Rust implementation of "hg
status" to be used.

* lisp/vc/vc-hg.el (vc-hg--program-version): Add.
(vc-hg-dir-status-files): Use --config commands.status.relative=1 to
make paths relative when available.

19 months agoFix syntax bugs involving escaped newlines in comments
Alan Mackenzie [Mon, 22 May 2023 16:09:07 +0000 (16:09 +0000)]
Fix syntax bugs involving escaped newlines in comments

This fixes bug#63535

* src/syntax.c (forw_comment): take the initial syntax from the
argument PREV_SYNTAX rather than checking the buffer position
for a backslash.  Update the state at each character scanned.
(scan_sexps_forward): When the end position is escaped after a
call to forw_comment, return this status to the caller.

19 months agoAttempt to speed up filenotify-tests
Mattias Engdegård [Mon, 22 May 2023 14:27:00 +0000 (16:27 +0200)]
Attempt to speed up filenotify-tests

* test/lisp/filenotify-tests.el (file-notify-test04-autorevert):
Run with a lower `auto-revert-interval` (1 s) and adjust the
a timeout value.  This should lower the time for this particular
test from 25 to below 10 s.

19 months agoSupport existing sshfs and rclone mount points in Tramp
Michael Albinus [Mon, 22 May 2023 14:08:23 +0000 (16:08 +0200)]
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.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Mon, 22 May 2023 13:00:20 +0000 (21:00 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoMark failing filenotify test as :unstable
Michael Albinus [Mon, 22 May 2023 10:56:45 +0000 (12:56 +0200)]
Mark failing filenotify test as :unstable

* test/lisp/filenotify-tests.el (file-notify-test04-autorevert-remote):
Tag as :unstable.

19 months agoPlug various leaks and fix input method initialization
Po Lu [Mon, 22 May 2023 03:52:33 +0000 (11:52 +0800)]
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'.

19 months agoFix custom type of erc-autojoin-channels-alist
F. Jason Park [Fri, 19 May 2023 06:47:27 +0000 (23:47 -0700)]
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 9bb8d90cddf "Allow irc network symbols in
erc-autojoin-channels-alist".

19 months ago; Silence byte compiler in erc-netsplit-JOIN
F. Jason Park [Fri, 19 May 2023 06:47:27 +0000 (23:47 -0700)]
; Silence byte compiler in erc-netsplit-JOIN

* etc/ERC-NEWS: Partially revert edit from c9f1ad2a870 "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.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Mon, 22 May 2023 01:13:23 +0000 (09:13 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoNew Rmail commands for reading mailing-lists
Eli Zaretskii [Sun, 21 May 2023 10:57:14 +0000 (13:57 +0300)]
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.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Sun, 21 May 2023 00:54:39 +0000 (08:54 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoDeclare more mutating functions
Mattias Engdegård [Sat, 20 May 2023 18:34:55 +0000 (20:34 +0200)]
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.

19 months agoDeclare more functions as having important-return-value
Mattias Engdegård [Sat, 20 May 2023 16:24:53 +0000 (18:24 +0200)]
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`.

19 months agoMinor optimisation of string-trim-left and string-trim-right
Mattias Engdegård [Sat, 20 May 2023 10:06:46 +0000 (12:06 +0200)]
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.

19 months agoFix async invocations in Dired with 'fish' shell
Eli Zaretskii [Sat, 20 May 2023 14:26:52 +0000 (17:26 +0300)]
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>.

19 months agoImprove handling of ANSI control sequences in Tramp
Michael Albinus [Sat, 20 May 2023 10:13:09 +0000 (12:13 +0200)]
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.

19 months agoUse `delq` return value (bug#61730)
Mattias Engdegård [Thu, 18 May 2023 15:33:15 +0000 (17:33 +0200)]
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.

19 months agoRemove arbitrary process count limit
Po Lu [Sat, 20 May 2023 08:54:13 +0000 (16:54 +0800)]
Remove arbitrary process count limit

* exec/trace.c (handle_clone_prepare):
(handle_clone): When !REENTRANT, use malloc to allocate
tracees after running out of static ones.

19 months agoUpdate Android port
Po Lu [Sat, 20 May 2023 02:26:28 +0000 (10:26 +0800)]
Update Android port

* java/org/gnu/emacs/EmacsView.java (swapBuffers): Restore
missing damage rect code.
(onDetachedFromWindow): Remove redundant synchronization.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Sat, 20 May 2023 01:43:43 +0000 (09:43 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoImproved copy-tree documentation and test (bug#63509)
Mattias Engdegård [Fri, 19 May 2023 10:32:28 +0000 (12:32 +0200)]
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.

19 months agoImplement treesit-forward-sexp correctly (bug#63487)
Yuan Fu [Fri, 19 May 2023 07:15:21 +0000 (00:15 -0700)]
Implement treesit-forward-sexp correctly (bug#63487)

* lisp/treesit.el (treesit-forward-sexp): Signal scan-error when we
can't move across sexps further.

19 months agoMake tapping on header lines behave reasonably
Po Lu [Fri, 19 May 2023 06:50:10 +0000 (14:50 +0800)]
Make tapping on header lines behave reasonably

* lisp/touch-screen.el (touch-screen-tap-header-line): New
function.
([header-line touchscreen-begin]): Define to
`touch-screen-tap-header-line'.

19 months agoMinor fixes of last change
Eli Zaretskii [Fri, 19 May 2023 06:05:45 +0000 (09:05 +0300)]
Minor fixes of last change

* etc/NEWS:
* doc/lispref/records.texi (Record Functions): Improve wording.
(Bug#63509)

19 months agoMake 'copy-tree' work with records
Joseph Turner [Mon, 15 May 2023 04:02:15 +0000 (21:02 -0700)]
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.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Fri, 19 May 2023 00:55:42 +0000 (08:55 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoTry declaring `delq` and `delete` important-return-value (bug#61730)
Mattias Engdegård [Thu, 18 May 2023 15:22:41 +0000 (17:22 +0200)]
Try declaring `delq` and `delete` important-return-value (bug#61730)

* lisp/emacs-lisp/bytecomp.el (important-return-value-fns):
Add (uncomment) `delq` and `delete`.

19 months agoSimplify python.el completion-predicate
Basil L. Contovounesios [Wed, 17 May 2023 12:53:09 +0000 (13:53 +0100)]
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.

19 months agoMerge from origin/emacs-29
Eli Zaretskii [Thu, 18 May 2023 11:49:49 +0000 (07:49 -0400)]
Merge from origin/emacs-29

f8d9e40d2c1 Attempt to fix redisplay problems on macOS
4daa6f70497 ; * lisp/simple.el (async-shell-command): Add commentary ...
dc1a437d460 Clarify misleading comment in isearch.el
af3b0dc53ff Improve documentation of package-menu commands
d879847cd4d Fix M-x completion-predicate under python-ts-mode
1e57b2b4c79 * Account for `byte-compile-warnings' during native compi...
b5bfd808c6b Avoid duplicate VC packages in 'package-selected-packages'
c18f9f155f6 * lisp/tab-bar.el (tab-bar-new-tab-to): Set 'window-side'...
33485fe8f74 ; Better warning message when loading tree-sitter fails
95a724abaac Update to Org 9.6.6
c665ca79ff4 ; * admin/make-tarball.txt: Minor copyedits.
3aef46e466f Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs ...
229af8e4b31 ; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-...

19 months ago; Merge from origin/emacs-29
Eli Zaretskii [Thu, 18 May 2023 11:49:49 +0000 (07:49 -0400)]
; Merge from origin/emacs-29

The following commits were skipped:

88ca37b8589 ; Regenerate files for emacs-29.0.91
4627ede36b1 ; * lisp/ldefs-boot.el: Regenerate for emacs-29.0.91.
c90d47619e6 Bump Emacs version for next pretest

19 months agoMerge from origin/emacs-29
Eli Zaretskii [Thu, 18 May 2023 11:49:49 +0000 (07:49 -0400)]
Merge from origin/emacs-29

229af8e4b31 ; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-...
ce7d18cbc07 ; Minor fixes in ELisp manual
5c8864fab4f ; * lisp/simple.el (async-shell-command): Doc fix.  (Bug#...
b96dc472bcb Ignore current-prefix-arg in async-shell-command
1e6a7594361 Fix building of VC package manuals with relative includes
61659f36c88 Another fix for VHDL mode highlighting

19 months ago* make-dist (possibly_non_vc_files): Add Android-specific files.
Po Lu [Thu, 18 May 2023 11:44:16 +0000 (19:44 +0800)]
* make-dist (possibly_non_vc_files): Add Android-specific files.

19 months agoAttempt to fix redisplay problems on macOS
Aaron Jensen [Thu, 18 May 2023 11:20:18 +0000 (14:20 +0300)]
Attempt to fix redisplay problems on macOS

* src/nsterm.m (ns_scroll_run): Attempt to fix redisplay
artifacts.  (Bug#63187)

19 months ago; * lisp/simple.el (async-shell-command): Add commentary about 3rd arg.
Eli Zaretskii [Thu, 18 May 2023 11:03:10 +0000 (14:03 +0300)]
; * lisp/simple.el (async-shell-command): Add commentary about 3rd arg.

19 months agoClarify misleading comment in isearch.el
Jens Schmidt [Tue, 16 May 2023 21:31:19 +0000 (23:31 +0200)]
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

19 months agoAllow interacting with the tab line from a touch screen
Po Lu [Thu, 18 May 2023 08:09:00 +0000 (16:09 +0800)]
Allow interacting with the tab line from a touch screen

* doc/emacs/frames.texi (Tab Bars): Explain how to interact with
the tab bar from a touch screen.
* doc/emacs/input.texi (Touchscreens): Document exactly what a
``long press'' is.
* doc/emacs/windows.texi (Tab Line): Likewise.
* lisp/tab-line.el (tab-line-tab-map, tab-line-add-map)
(tab-line-tab-close-map, tab-line-left-map, tab-line-right-map):
Bind `touchscreen-begin' to each command.
(tab-line-track-tap, tab-line-event-start): New functions.
(tab-line-hscroll-right, tab-line-hscroll-left, tab-line-new-tab)
(tab-line-select-tab, tab-line-close-tab): Use them.

19 months ago* lisp/erc/erc-fill.el (erc-fill-spaced-commands): Fix typing errors
Mattias Engdegård [Thu, 18 May 2023 07:49:53 +0000 (09:49 +0200)]
* 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.

19 months agoImprove documentation of package-menu commands
Eli Zaretskii [Thu, 18 May 2023 06:41:59 +0000 (09:41 +0300)]
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.

19 months ago; * lisp/erc/erc.el (erc-accidental-paste-threshold-seconds): Doc fix.
F. Jason Park [Wed, 17 May 2023 12:27:13 +0000 (05:27 -0700)]
; * lisp/erc/erc.el (erc-accidental-paste-threshold-seconds): Doc fix.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Thu, 18 May 2023 01:04:57 +0000 (09:04 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoPrefer C23 ckd_* to Gnulib *_WRAPV macros
Paul Eggert [Wed, 17 May 2023 22:36:54 +0000 (15:36 -0700)]
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.

19 months agoUpdate from Gnulib by running admin/merge-gnulib
Paul Eggert [Wed, 17 May 2023 22:07:38 +0000 (15:07 -0700)]
Update from Gnulib by running admin/merge-gnulib

19 months agoPort modiff changes to GCC 4.8.5
Paul Eggert [Wed, 17 May 2023 17:53:26 +0000 (10:53 -0700)]
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.

19 months agoFix M-x completion-predicate under python-ts-mode
Basil L. Contovounesios [Wed, 17 May 2023 12:48:09 +0000 (13:48 +0100)]
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).

19 months ago* Fix missing `comp-files-queue' update (bug#63415).
Andrea Corallo [Wed, 17 May 2023 13:28:46 +0000 (15:28 +0200)]
* Fix missing `comp-files-queue' update (bug#63415).

* lisp/emacs-lisp/comp.el (native--compile-async): Update
`comp-files-queue' for real.

19 months ago* Account for `byte-compile-warnings' during native compilation (bug#63302).
Andrea Corallo [Wed, 10 May 2023 11:50:51 +0000 (13:50 +0200)]
* 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.

19 months ago; * ChangeLog.4: Fix gitmerge snafu.
Eli Zaretskii [Wed, 17 May 2023 11:23:53 +0000 (14:23 +0300)]
; * ChangeLog.4: Fix gitmerge snafu.

19 months agoEUDC: Fix eudc-ldap-no-wildcard-attributes docstring
Thomas Fitzsimmons [Wed, 17 May 2023 10:59:52 +0000 (06:59 -0400)]
EUDC: Fix eudc-ldap-no-wildcard-attributes docstring

* lisp/net/eudc-vars.el (eudc-ldap-no-wildcard-attributes): Fix
docstring.  (Bug#62721)

19 months agoMark proced-refine-with-update-test :unstable (bug#63550)
Mattias Engdegård [Wed, 17 May 2023 09:31:04 +0000 (11:31 +0200)]
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`.

19 months agoEliminate some mutation of program constants
Mattias Engdegård [Wed, 17 May 2023 08:56:44 +0000 (10:56 +0200)]
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.

19 months ago; Update from Gnulib
Po Lu [Wed, 17 May 2023 01:18:35 +0000 (09:18 +0800)]
; Update from Gnulib

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Wed, 17 May 2023 01:16:48 +0000 (09:16 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months ago; Add missing markup to new documentation
Philip Kaludercic [Tue, 16 May 2023 19:28:56 +0000 (21:28 +0200)]
; Add missing markup to new documentation

* doc/emacs/package.texi (Fetching Package Sources): Mark code as
code.

19 months agoAdd :vc keyword to use-package for VC package support
Tony Zorman [Thu, 29 Dec 2022 10:05:04 +0000 (11:05 +0100)]
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)

19 months agoSupport side-effects while building VC packages
Joseph Turner [Sat, 13 May 2023 17:05:04 +0000 (10:05 -0700)]
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)

19 months agoAvoid duplicate VC packages in 'package-selected-packages'
Philip Kaludercic [Sun, 14 May 2023 19:22:59 +0000 (21:22 +0200)]
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)

19 months agoEglot: rework eglot-handle-request (bug#62116)
João Távora [Tue, 16 May 2023 18:23:33 +0000 (19:23 +0100)]
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.

19 months ago* lisp/windmove.el (windmove-swap-states-in-direction): Don't swap minibuffer.
Juri Linkov [Tue, 16 May 2023 17:32:34 +0000 (20:32 +0300)]
* 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.

19 months agoTweak tramp-test45-asynchronous-requests
Michael Albinus [Tue, 16 May 2023 15:19:20 +0000 (17:19 +0200)]
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.

19 months agoAdd touchscreen support to the tab bar
Po Lu [Tue, 16 May 2023 07:54:50 +0000 (15:54 +0800)]
Add touchscreen support to the tab bar

* lisp/menu-bar.el (popup-menu-normalize-position): Normalize
`touchscreen-begin' events correctly.
* lisp/tab-bar.el (tab-bar-mouse-context-menu): New argument
POSN.  Use it if specified.
(touch-screen-track-tap, tab-bar-handle-timeout)
(tab-bar-touchscreen-begin): New functions.
(tab-bar-map): Bind [tab-bar touchscreen-begin].
* lisp/touch-screen.el (touch-screen-track-drag): Fix doc
string.
* src/dispextern.h: Export `get_tab_bar_item_kbd'.
* src/keyboard.c (coords_in_tab_bar_window): New function.
(make_lispy_event): Adjust touchscreen begin event mouse
position list for tab bar.
* src/xdisp.c (tab_bar_item_info): Allow CLOSE_P to be NULL.
(get_tab_bar_item): Adjust doc string.
(get_tab_bar_item_kbd): New function.

19 months agoUpdate from Gnulib by running admin/merge-gnulib
Paul Eggert [Tue, 16 May 2023 05:09:04 +0000 (22:09 -0700)]
Update from Gnulib by running admin/merge-gnulib

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Tue, 16 May 2023 01:27:27 +0000 (09:27 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoEUDC: Document disabling default LDAP wildcard expansion
Thomas Fitzsimmons [Mon, 15 May 2023 21:53:45 +0000 (17:53 -0400)]
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)

19 months ago* lisp/tab-bar.el (tab-bar-new-tab-to): Set 'window-side' to nil (bug#62427).
Juri Linkov [Mon, 15 May 2023 17:32:04 +0000 (20:32 +0300)]
* 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'.

19 months ago; Better warning message when loading tree-sitter fails
Eli Zaretskii [Mon, 15 May 2023 15:39:49 +0000 (18:39 +0300)]
; 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.

19 months agoFix some minor Tramp problems
Michael Albinus [Mon, 15 May 2023 14:25:23 +0000 (16:25 +0200)]
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.

19 months agoFix 'locale-info' on MS-Windows
Eli Zaretskii [Mon, 15 May 2023 12:21:43 +0000 (15:21 +0300)]
Fix 'locale-info' on MS-Windows

* nt/mingw-cfg.site (am_cv_langinfo_codeset): Rename from
'emacs_cv_langinfo_codeset', to follow configure.ac.

19 months agoFix year 2038 code for Android 4.4 and earlier
Po Lu [Mon, 15 May 2023 03:31:16 +0000 (11:31 +0800)]
Fix year 2038 code for Android 4.4 and earlier

* configure.ac: Also disable enable_year2038.

19 months agoFix the MS-DOS build
Po Lu [Mon, 15 May 2023 03:25:23 +0000 (11:25 +0800)]
Fix the MS-DOS build

* msdos/sed1v2.inp: Fix removal of ANDROID_BUILD_CFLAGS.
* msdos/sedlibmk.inp: Clear DIR_HAS_FD_MEMBER and
LOCALE_FR_UTF8.

19 months ago; Update from Gnulib
Po Lu [Mon, 15 May 2023 02:39:43 +0000 (10:39 +0800)]
; Update from Gnulib

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Mon, 15 May 2023 02:38:10 +0000 (10:38 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoPrefer _WIDTH macros to sizeof in pdumper.c
Paul Eggert [Mon, 15 May 2023 01:51:24 +0000 (18:51 -0700)]
Prefer _WIDTH macros to sizeof in pdumper.c

This is a bit clearer, and should work better on hypothetical
platforms where integers have holes in their representation.
* src/pdumper.c: Since the code no longer uses CHAR_BIT,
don’t worry about whether it equals 8.
(DUMP_OFF_WIDTH): New macro.
(EMACS_RELOC_LENGTH_BITS, DUMP_RELOC_OFFSET_BITS): Use it.
(DUMP_BITSET_WORD_WIDTH): New macro.
(dump_bitsets_init, dump_bitset__bit_slot)
(dump_bitset_bit_set_p, dump_bitset__set_bit_value): Use it.

19 months agoPrefer PTRDIFF_WIDTH in sort.c
Paul Eggert [Mon, 15 May 2023 01:51:24 +0000 (18:51 -0700)]
Prefer PTRDIFF_WIDTH in sort.c

* src/sort.c (MAX_MERGE_PENDING):
Prefer PTRDIFF_WIDTH to rolling our own substitute.

19 months agoPrefer UINTMAX_WIDTH in print_object
Paul Eggert [Mon, 15 May 2023 01:51:24 +0000 (18:51 -0700)]
Prefer UINTMAX_WIDTH in print_object

* src/print.c (print_object):
Prefer UINTMAX_WIDTH to rolling our own substitute.

19 months agoHelp GCC compute modiff_incr
Paul Eggert [Mon, 15 May 2023 01:51:24 +0000 (18:51 -0700)]
Help GCC compute modiff_incr

* src/floatfns.c: Don’t include count-leading-zeros.h,
since we no longer use it directly.
(ecount_leading_zeros): Remove.
(Flogb): Use elogb instead of doing it by hand.
* src/lisp.h: Include count-leading-zeros.h.
(elogb): New macro.
(modiff_incr): Use it so that on typical platforms we
use a hardware instruction instead of a loop.

19 months agoWork after 2038 on 32-bit GNU/Linux
Paul Eggert [Mon, 15 May 2023 01:51:23 +0000 (18:51 -0700)]
Work after 2038 on 32-bit GNU/Linux

This adds support for 64-bit time_t on 32-bit GNU/Linux ARM and
x86, where time_t was historically 32-bit.  The resulting Emacs
should continue to work for timestamps after mid-January 2038.
* admin/merge-gnulib (GNULIB_MODULES): Add year2038.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.

19 months agoPacify GCC 13 -Wnull-dereference in itree.c
Paul Eggert [Mon, 15 May 2023 01:51:23 +0000 (18:51 -0700)]
Pacify GCC 13 -Wnull-dereference in itree.c

* src/itree.c (itree_remove_fix): Simplify code and remove a
couple of eassume calls.  This works around GCC bug 109586.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109856