]> git.eshelyaron.com Git - emacs.git/log
emacs.git
19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Mon, 12 Jun 2023 00:07:48 +0000 (08:07 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoAdapt emba integration
Michael Albinus [Sun, 11 Jun 2023 18:34:11 +0000 (20:34 +0200)]
Adapt emba integration

* test/infra/Makefile.in (subdir_template): Special handling of lib-src.

* test/infra/test-jobs.yml: Regenerate.

19 months agoFix tramp-sshfs
Michael Albinus [Sun, 11 Jun 2023 18:33:34 +0000 (20:33 +0200)]
Fix tramp-sshfs

* lisp/net/tramp-fuse.el (tramp-fuse-handle-file-exists-p): New defun.
(tramp-fuse-mount-timeout): Move up.
(tramp-fuse-mount-point): Use `tramp-fuse-mount-timeout'.
(tramp-fuse-unmount): Flush "mount-point" file property.

* lisp/net/tramp-sshfs.el (tramp-sshfs-file-name-handler-alist):
Use `tramp-fuse-handle-file-exists-p'.

* test/lisp/net/tramp-tests.el (all): Use function read syntax
where appropriate.
(tramp-test39-detect-external-change): Let-bind
`read-from-minibuffer' instead of `yes-or-no-p'.

19 months agoUpdate Android port
Po Lu [Sun, 11 Jun 2023 09:58:47 +0000 (17:58 +0800)]
Update Android port

* lisp/net/tramp.el (tramp-encoding-shell):
* lisp/obsolete/terminal.el (terminal-emulator):
* lisp/term.el (term-exec-1):
* lisp/textmodes/artist.el (artist-figlet-get-font-list):
* src/android.c (JNICALL): Where /bin/sh was previously used,
use /system/bin/sh on Android.

19 months agoUpdate Android port
Po Lu [Sun, 11 Jun 2023 06:35:13 +0000 (14:35 +0800)]
Update Android port

* java/org/gnu/emacs/EmacsSurfaceView.java (EmacsSurfaceView):
Document member variables.
(onDraw): Use separate Paint object on the UI thread.
* src/textconv.c (really_commit_text, really_set_composing_text)
(really_delete_surrounding_text): Run modification hooks when
deleting text.

19 months agoAvoid extraneous calls to the UI thread
Po Lu [Sun, 11 Jun 2023 00:52:10 +0000 (08:52 +0800)]
Avoid extraneous calls to the UI thread

* java/org/gnu/emacs/EmacsView.java (EmacsView)
(showOnScreenKeyboard, hideOnScreenKeyboard)
(onCheckIsTextEditor): Make synchronized.
* java/org/gnu/emacs/EmacsWindow.java (EmacsWindow)
(toggleOnScreenKeyboard): Don't post to the main thread.

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

19 months agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 10 Jun 2023 10:42:43 +0000 (06:42 -0400)]
Merge from origin/emacs-29

0d8b69e0ad3 Don't ding when completion succeeded
f11e2d36999 ; * admin/git-bisect-start: Update failing commits
9855a3ea744 ; * src/xdisp.c (redisplay_tool_bar): Fix a typo in a com...
f4ee696b887 Improve documentation of color-related functions
90eadc3e234 Revert "* package.el (package--get-activatable-pkg): Pref...
65f355ea0a3 ; Update my mail address
a3a69ec2342 Fix connection-local user options handling (bug#63300)
240803cc3e1 Document 'startup-redirect-eln-cache'
026afb22984 ; * etc/PROBLEMS: Entry about crashes due to anti-virus (...
bcc222251e1 Fix `emacs-lisp-native-compile-and-load' for C-h f (bug#5...
07c8211ca30 Add 'infer' as a keyword to typescript-ts-mode (bug#63880)
dd2d8ff2f5c ; * etc/NEWS: Mention the issue with PGTK on WSL (bug#633...
fa8135f8916 Revert changes to the order in which package descs are lo...
27fcfa2c0a7 ; * etc/NEWS: Improve instructions for grammar libraries.
2a84ab905c8 Handle point in last file-name component in minibuffer co...
05f25238b7b Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
4bc043ff45d Avoid asking redundant question in emacsbug.el
2eadf328d05 * test/infra/Dockerfile.emba (emacs-base): Don't install ...
583ba1db7ee typescript-ts-mode: Add a rule for function_signature

# Conflicts:
# etc/NEWS
# lisp/minibuffer.el

19 months ago; Merge from origin/emacs-29
Eli Zaretskii [Sat, 10 Jun 2023 10:36:58 +0000 (06:36 -0400)]
; Merge from origin/emacs-29

The following commit was skipped:

a3459a28e41 * admin/unidata/emoji-zwj.awk: Avoid sprint buffer overflow

19 months agoDon't ding when completion succeeded
Morgan Smith [Mon, 5 Jun 2023 17:34:59 +0000 (13:34 -0400)]
Don't ding when completion succeeded

* lisp/minibuffer.el (minibuffer-completion-help): Ensure 'ding'
is not called on a successful completion.  Ensure 'ding' is not
called on a failure if 'completion-fail-discreetly' is set.
Also change "No completions" to "No match" as that is what is
used elsewhere.  (Bug#63913)

19 months ago; * admin/git-bisect-start: Update failing commits
Gregory Heytings [Sat, 10 Jun 2023 08:50:47 +0000 (08:50 +0000)]
; * admin/git-bisect-start: Update failing commits

19 months agoAvoid infinite recursion in 'window_wants_header_line'
Eli Zaretskii [Sat, 10 Jun 2023 08:48:37 +0000 (11:48 +0300)]
Avoid infinite recursion in 'window_wants_header_line'

* src/window.c (null_header_line_format): Avoid infinite
recursion by disallowing :eval on recursive calls.
(Bug#63988)

19 months ago; Update Android port
Po Lu [Sat, 10 Jun 2023 08:32:00 +0000 (16:32 +0800)]
; Update Android port

* src/keyboard.c (handle_input_available_signal): Don't generate
instructions not available in arm mode.

19 months agoUpdate Android port
Po Lu [Sat, 10 Jun 2023 08:10:46 +0000 (16:10 +0800)]
Update Android port

* src/android.c (android_select, android_check_query)
(android_check_query_urgent, android_answer_query)
(android_answer_query_spin, android_begin_query, android_end_query)
(android_run_in_emacs_thread): Use finer grained memory
synchronization semantics.
* src/androidterm.c (android_get_selection): Use the current
selection, not its value at the time of the last redisplay.
* src/keyboard.c (handle_input_available_signal): Place memory
barrier.

19 months agoInherit surrounding text properties when inserting conversion text
Po Lu [Sat, 10 Jun 2023 01:57:41 +0000 (09:57 +0800)]
Inherit surrounding text properties when inserting conversion text

* src/textconv.c (really_commit_text)
(really_set_composing_text): Improve behavior of certain
fontification mechanisms by inheriting text properties from
surrounding text.

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

19 months agoPrevent hangs from IM requests with the main thread busy
Po Lu [Sat, 10 Jun 2023 01:21:48 +0000 (09:21 +0800)]
Prevent hangs from IM requests with the main thread busy

* src/android.c (android_select): Clear `android_urgent_query'.
(android_check_query): Make static.  Clear
`android_urgent_query'.
(android_check_query_urgent): New function; work like
`android_check_query', but only answer urgent queries.
(android_answer_query, android_end_query): Clear urgent query
flag.
(android_run_in_emacs_thread): Initially wait two seconds for
the query to run from the keyboard loop; upon a timeout, set
`android_urgent_query' to true and wait for it to run while
reading async input.
* src/android.h: Update prototypes.
* src/keyboard.c (handle_async_input): Call
`android_check_query_urgent'.

19 months ago; * src/xdisp.c (redisplay_tool_bar): Fix a typo in a comment.
Eli Zaretskii [Fri, 9 Jun 2023 16:19:07 +0000 (19:19 +0300)]
; * src/xdisp.c (redisplay_tool_bar): Fix a typo in a comment.

19 months ago; Fix typos
Po Lu [Fri, 9 Jun 2023 10:18:12 +0000 (18:18 +0800)]
; Fix typos

* src/textconv.c (really_commit_text):
(handle_pending_conversion_events): Fix minor typos.

19 months agoAvoid responding to input method queries asynchronously
Po Lu [Fri, 9 Jun 2023 10:05:26 +0000 (18:05 +0800)]
Avoid responding to input method queries asynchronously

* src/androidterm.c (handle_one_android_event): Don't answer
queries here; just rely on the event interrupting
android_select.  This avoids exposing buffer contents to input
methods while a command is being executed.
* src/textconv.c (TEXTCONV_DEBUG, really_commit_text)
(really_finish_composing_text, really_set_composing_text)
(really_set_composing_region, really_delete_surrounding_text)
(really_set_point_and_mark, get_extracted_text): Add debugging
printouts.

19 months agoInitialize text conversion hooks for each C Mode buffer
Po Lu [Fri, 9 Jun 2023 07:55:19 +0000 (15:55 +0800)]
Initialize text conversion hooks for each C Mode buffer

* lisp/progmodes/cc-mode.el (c-initialize-cc-mode): Always add
text conversion hooks.

19 months agoImprove documentation of color-related functions
Eli Zaretskii [Fri, 9 Jun 2023 07:28:36 +0000 (10:28 +0300)]
Improve documentation of color-related functions

* doc/lispref/frames.texi (Color Names): Document
'color-name-to-rgb' and 'color-dark-p'.

19 months ago; * src/android.c (android_get_gc_values): Remove redundancy.
Po Lu [Fri, 9 Jun 2023 06:16:08 +0000 (14:16 +0800)]
; * src/android.c (android_get_gc_values): Remove redundancy.

19 months agoBlock profiling signals in the Android UI thread
Po Lu [Fri, 9 Jun 2023 06:03:50 +0000 (14:03 +0800)]
Block profiling signals in the Android UI thread

* java/org/gnu/emacs/EmacsNative.java (EmacsNative): New
function `setupSystemThread'.
* java/org/gnu/emacs/EmacsService.java (onCreate): Block all
signals except for SIGBUS and SIGSEGV in the UI thread.
* src/android.c (setupSystemThread): New function.

19 months agoFix crash starting Emacs to open file
Po Lu [Fri, 9 Jun 2023 01:27:04 +0000 (09:27 +0800)]
Fix crash starting Emacs to open file

* java/org/gnu/emacs/EmacsThread.java (run): Correct check
against extraStartupArgument when an initial file is specified.

19 months ago; Eglot: simplify last change to eglot-unregister-capability
João Távora [Fri, 9 Jun 2023 01:11:38 +0000 (02:11 +0100)]
; Eglot: simplify last change to eglot-unregister-capability

* lisp/progmodes/eglot.el (eglot-unregister-capability): Simplify.

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

19 months ago; fix important-return-value-fns mistake
Mattias Engdegård [Thu, 8 Jun 2023 11:05:13 +0000 (13:05 +0200)]
; fix important-return-value-fns mistake

* lisp/emacs-lisp/bytecomp.el (important-return-value-fns):
Remove assoc-string; it's already side-effect-free.

19 months agoRemove special fset byte-compilation warning
Mattias Engdegård [Thu, 8 Jun 2023 09:50:44 +0000 (11:50 +0200)]
Remove special fset byte-compilation warning

* lisp/emacs-lisp/bytecomp.el (fset, byte-compile-fset):
Remove special warning for fset, subsumed by the more general quoted
lambda funarg warning.

19 months agoEglot: also add watches for newly created directories
João Távora [Thu, 8 Jun 2023 12:12:49 +0000 (13:12 +0100)]
Eglot: also add watches for newly created directories

GitHub-reference: https://github.com/joaotavora/eglot/pull/1228
GitHub-reference: https://github.com/joaotavora/eglot/discussions/1226

* lisp/progmodes/eglot.el (eglot-register-capability): Rework.

Suggested by: https://github.com/thejeffphil

19 months agoEglot: try reuse file watchers when server over-watches
João Távora [Thu, 8 Jun 2023 01:19:06 +0000 (02:19 +0100)]
Eglot: try reuse file watchers when server over-watches

GitHub-reference: https://github.com/joaotavora/eglot/pull/1228
GitHub-reference: https://github.com/joaotavora/eglot/discussions/1226

The Pyright language server issues very heavy file watching requests,
which sometimes exceed the OS limit.  Most of these file watches are
useless, but Pyright insists on issuing them.

What's more, for some (absurd?) reason, Pyright issues two file
watching requests for the _same_ directories, only to then almost
immediately ask to undo the effects of one of these requests.

This change to Eglot makes it so that if a single server requests to
watch a specific directory twice, only one file watch object is used.

Suggested by: https://github.com/thejeffphil

* lisp/progmodes/eglot.el (eglot-lsp-server): Change structure of
file-watches field.
(eglot--on-shutdown): Adapt to new structure.
(eglot-register-capability): Rework.
(eglot-unregister-capability): Rework.

* etc/EGLOT-NEWS: Mention change

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Thu, 8 Jun 2023 12:50:26 +0000 (20:50 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoCorrectly display popup dialogs from Emacsclient
Po Lu [Thu, 8 Jun 2023 12:50:02 +0000 (20:50 +0800)]
Correctly display popup dialogs from Emacsclient

* java/org/gnu/emacs/EmacsContextMenu.java (EmacsContextMenu):
Make subclasses final.
* java/org/gnu/emacs/EmacsDialog.java (display1): Check if an
instance of EmacsOpenActivity is open; if it is, try using it to
display the pop up dialog.
* java/org/gnu/emacs/EmacsDialogButtonLayout.java
(EmacsDialogButtonLayout): Make final.
* java/org/gnu/emacs/EmacsHolder.java (EmacsHolder<T>):
Likewise.
* java/org/gnu/emacs/EmacsOpenActivity.java (EmacsOpenActivity):
New field `currentActivity'.
(onCreate, onDestroy, onWindowFocusChanged, onPause): Set that
field as appropriate.

19 months agoSupport files compressed by 'pigz'
Amritpal Singh [Fri, 2 Jun 2023 05:21:21 +0000 (10:51 +0530)]
Support files compressed by 'pigz'

* src/decompress.c (md5_gz_stream): Check 'stream.avail_in' as
well.  (Bug#63832)

Copyright-paperwork-exempt: yes

19 months agoRevert "* package.el (package--get-activatable-pkg): Prefer source packages"
Eli Zaretskii [Thu, 8 Jun 2023 09:23:11 +0000 (12:23 +0300)]
Revert "* package.el (package--get-activatable-pkg): Prefer source packages"

This reverts commit fb87d5008e21d1bc03547c1edf2280fb4cb8311e.
It caused problems when new versions of packages are installed
without deleting old versions.  (Bug#63757)

19 months ago; Update my mail address
Andrea Corallo [Thu, 8 Jun 2023 08:59:41 +0000 (10:59 +0200)]
; Update my mail address

* lisp/emacs-lisp/comp-cstr.el: Update author mail.
* lisp/emacs-lisp/comp.el: Likewise.
* src/comp.c: Likewise.
* test/lisp/emacs-lisp/comp-cstr-tests.el: Likewise.
* test/src/comp-resources/comp-test-funcs-dyn.el: Likewise.
* test/src/comp-resources/comp-test-funcs.el: Likewise.
* test/src/comp-resources/comp-test-pure.el: Likewise.
* test/src/comp-tests.el: Likewise.

19 months agoFix connection-local user options handling (bug#63300)
Michael Albinus [Thu, 8 Jun 2023 07:59:06 +0000 (09:59 +0200)]
Fix connection-local user options handling (bug#63300)

* lisp/files-x.el (connection-local-set-profiles)
(connection-local-set-profile-variables): Avoid saving the changed
user option to file unless triggered explicitly by user.  (Bug#63300)

19 months agoUpdate Android port
Po Lu [Thu, 8 Jun 2023 06:04:31 +0000 (14:04 +0800)]
Update Android port

* src/android.c (android_is_special_directory): New function.
(android_get_asset_name, android_content_name_p)
(android_get_content_name):
* src/android.h (android_is_special_directory)
(JNI_STACK_ALIGNMENT_PROLOGUE):
* src/fileio.c (check_mutable_filename):
* src/filelock.c (WTMP_FILE, make_lock_file_name):
* src/inotify.c (IN_ONLYDIR, Finotify_add_watch): Factor out
checks against asset and content directories to that function.

19 months agoDocument 'startup-redirect-eln-cache'
Eli Zaretskii [Thu, 8 Jun 2023 05:50:54 +0000 (08:50 +0300)]
Document 'startup-redirect-eln-cache'

* doc/lispref/compile.texi (Native Compilation)
(Native-Compilation Functions): Document
'startup-redirect-eln-cache'.

* etc/PROBLEMS: Fix last change.
* etc/NEWS: Mark 'startup-redirect-eln-cache' as documented.

19 months ago; * etc/PROBLEMS: Entry about crashes due to anti-virus (bug#57880).
Eli Zaretskii [Thu, 8 Jun 2023 05:30:18 +0000 (08:30 +0300)]
; * etc/PROBLEMS: Entry about crashes due to anti-virus (bug#57880).

19 months ago; Update from Gnulib
Po Lu [Thu, 8 Jun 2023 00:48:37 +0000 (08:48 +0800)]
; Update from Gnulib

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

19 months agoUpdate from Gnulib by running admin/merge-gnulib
Paul Eggert [Wed, 7 Jun 2023 19:00:15 +0000 (12:00 -0700)]
Update from Gnulib by running admin/merge-gnulib

19 months ago; Update Android port
Po Lu [Wed, 7 Jun 2023 11:52:38 +0000 (19:52 +0800)]
; Update Android port

* doc/emacs/android.texi (Android Startup): Fix reference to
non existent node.

19 months agoUpdate Android port
Po Lu [Wed, 7 Jun 2023 03:03:56 +0000 (11:03 +0800)]
Update Android port

* java/org/gnu/emacs/EmacsInputConnection.java (beginBatchEdit)
(endBatchEdit, commitCompletion, commitText, deleteSurroundingText)
(finishComposingText, getSelectedText, getTextAfterCursor)
(getTextBeforeCursor, setComposingText, setComposingRegion)
(performEditorAction, performContextMenuAction, getExtractedText)
(setSelection, sendKeyEvent, deleteSurroundingTextInCodePoints)
(requestCursorUpdates): Ensure that the input connection is up
to date.
(getSurroundingText): New function.
* java/org/gnu/emacs/EmacsNative.java (getSurroundingText):
Export new C function.
* java/org/gnu/emacs/EmacsService.java (resetIC): Invalidate
previously created input connections.
* java/org/gnu/emacs/EmacsView.java (EmacsView)
(onCreateInputConnection): Signify that input connections are
now up to date.
* src/androidterm.c (struct
android_get_surrounding_text_context): New structure.
(android_get_surrounding_text, NATIVE_NAME):
* src/textconv.c (get_surrounding_text):
* src/textconv.h: New functions.

19 months agoMerge from verilog-mode upstream.
Wilson Snyder [Wed, 7 Jun 2023 01:46:19 +0000 (21:46 -0400)]
Merge from verilog-mode upstream.

* lisp/progmodes/verilog-mode.el (verilog-read-decls): Fix parsing "@ (* )" (#1829).
(verilog-indent-ignore-p): Fix indent of comments being
wrongly detected as multiline defines.  Reported by Gonzalo Larumbe
<gonzalomlarumbe@gmail.com>.
(verilog-pos-at-end-of-statement): Fix minor bug in
`verilog-pos-at-end-of-statement' assuming `verilog-end-of-statement`.
Reported by Gonzalo Larumbe <gonzalomlarumbe@gmail.com>.
(verilog-in-generate-region-p):
Fix indentation of generate blocks omitting keyword.
Reported by Gonzalo Larumbe <gonzalomlarumbe@gmail.com>.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Tue, 6 Jun 2023 23:28:00 +0000 (07:28 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months ago; * src/window.c (window_wants_header_line): Shut up bogus GCC warning.
Eli Zaretskii [Tue, 6 Jun 2023 18:27:27 +0000 (21:27 +0300)]
; * src/window.c (window_wants_header_line): Shut up bogus GCC warning.

19 months ago; * lisp/simple.el (analyze-text-conversion): Remove old workaround.
Po Lu [Tue, 6 Jun 2023 13:06:58 +0000 (21:06 +0800)]
; * lisp/simple.el (analyze-text-conversion): Remove old workaround.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Tue, 6 Jun 2023 13:06:16 +0000 (21:06 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months ago; Fix coding style in just installed change
Po Lu [Tue, 6 Jun 2023 13:05:13 +0000 (21:05 +0800)]
; Fix coding style in just installed change

* src/window.c (window_wants_header_line): Fix whitespace.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Tue, 6 Jun 2023 13:01:56 +0000 (21:01 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoFix problems resulting from modification of the undo list
Po Lu [Tue, 6 Jun 2023 13:00:44 +0000 (21:00 +0800)]
Fix problems resulting from modification of the undo list

* doc/lispref/text.texi (Atomic Changes): Describe what not to
do inside an atomic change group.
* lisp/elec-pair.el (electric-pair-inhibit-if-helps-balance):
Don't call `delete-char'; that edits the undo list by removing
boundary markers.
* lisp/subr.el (atomic-change-group, prepare-change-group): Warn
against modifying the undo list inside.

19 months ago; Fix last change
Eli Zaretskii [Tue, 6 Jun 2023 12:15:34 +0000 (15:15 +0300)]
; Fix last change

* src/window.c (window_wants_header_line): Fix whitespace and
commentary in last change.  (Bug#63825)

19 months agoAvoid header line with some empty non-nil formats
Eshel Yaron [Sun, 4 Jun 2023 16:41:20 +0000 (19:41 +0300)]
Avoid header line with some empty non-nil formats

Allow the value of 'header-line-format' to indicate that no header
line should be displayed when it trivially yields 'nil', even if it is
not plain 'nil'.  Previously, any non-nil 'header-line-format'
resulted in a (possibly empty) header line.  This change adds some
flexibility by also taking a non-nil value of 'header-line-format' to
mean that no header line should be displayed if it's a list whose
'car' is a symbol and either that symbol is ':eval' and the second
list element evaluates to 'nil', or the symbol's value as a variable
is 'nil' or void.
(Bug#63825)

* src/xdisp.c (safe_eval_inhibit_quit): New function.
* src/lisp.h (safe_eval_inhibit_quit): Declare it.
* src/window.c (null_header_line_format): New function.
(window_wants_header_line): Use it.

* doc/lispref/modes.texi (Header Line): Update to reflect new
conditions for displaying a window's header line.

* etc/NEWS: Announce updated treatment of 'header-line-format'.

19 months agoeval-command-interactive-spec: Shorten code
Sean Whitton [Tue, 6 Jun 2023 11:15:25 +0000 (12:15 +0100)]
eval-command-interactive-spec: Shorten code

* lisp/emacs-lisp/subr-x.el (eval-command-interactive-spec): Don't
reimplement checking for an 'interactive-form symbol property.
`interactive-form' already does this.  Thanks to Stefan Monnier.

19 months agoFix `emacs-lisp-native-compile-and-load' for C-h f (bug#58314)
Andrea Corallo [Tue, 6 Jun 2023 09:27:13 +0000 (11:27 +0200)]
Fix `emacs-lisp-native-compile-and-load' for C-h f (bug#58314)

* lisp/emacs-lisp/comp.el (comp-write-bytecode-file): New function
spilling code from `batch-byte+native-compile'.
(batch-byte+native-compile): Make use of.
* lisp/progmodes/elisp-mode.el
(emacs-lisp-native-compile-and-load): Produce the elc file and ask
to have it loaded.

19 months agoUpdate Android port
Po Lu [Tue, 6 Jun 2023 06:35:19 +0000 (14:35 +0800)]
Update Android port

* java/org/gnu/emacs/EmacsContextMenu.java (display): Use
`EmacsHolder' instead of `Holder'.
* java/org/gnu/emacs/EmacsDialog.java (toAlertDialog): Use
`EmacsDialogButtonLayout' to ensure that buttons are wrapped
properly.
(display): Adjust for new holder class.
* java/org/gnu/emacs/EmacsDialogButtonLayout.java
(EmacsDialogButtonLayout, onMeasure, onLayout): New functions.

* java/org/gnu/emacs/EmacsDrawLine.java:
* java/org/gnu/emacs/EmacsFillPolygon.java: Remove redundant
imports.
* java/org/gnu/emacs/EmacsHolder.java (EmacsHolder<T>):
* java/org/gnu/emacs/EmacsService.java (class Holder<T>)
(getEmacsView, EmacsService): Rename `Holder' to `EmacsHolder'
and make it public.

19 months agoAdd 'infer' as a keyword to typescript-ts-mode (bug#63880)
Theodor Thornhill [Tue, 6 Jun 2023 04:26:43 +0000 (06:26 +0200)]
Add 'infer' as a keyword to typescript-ts-mode (bug#63880)

* lisp/progmodes/typescript-ts-mode.el (typescript-ts-mode--keywords):
New keyword.

19 months agoImprove undo behavior on Android
Po Lu [Tue, 6 Jun 2023 02:06:10 +0000 (10:06 +0800)]
Improve undo behavior on Android

* lisp/simple.el (undo-auto-amalgamate): Update doc string to
describe new amalgamating commands.
(analyze-text-conversion): Make this an amalgamating command by
default, unless a new line has been inserted.  Also, shorten the
undo boundary timer.
* src/textconv.c (really_commit_text)
(really_set_composing_text): Correctly report ephemeral
deletions.
(syms_of_textconv): Fix doc strings.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Mon, 5 Jun 2023 23:53:41 +0000 (07:53 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoImprove tree-sitter tests on emba
Michael Albinus [Mon, 5 Jun 2023 15:16:46 +0000 (17:16 +0200)]
Improve tree-sitter tests on emba

* test/infra/Dockerfile.emba (emacs-tree-sitter): Install further
grammars.

* test/infra/Makefile.in (subdir_template): Special handling of src.
(TREE-SITTER-FILES): Add treesit-tests.el.

* test/infra/test-jobs.yml: Regenerate.

19 months agoFix bug with point-adjustment after M-x COMMAND
Eli Zaretskii [Mon, 5 Jun 2023 12:57:05 +0000 (15:57 +0300)]
Fix bug with point-adjustment after M-x COMMAND

* src/keyboard.c (command_loop_1): Preserve 'last_point_position'
across command execution, to avoid bugs in
'adjust_point_for_property' if the command invokes
'recursive-edit'.  Reported by Mats Lidell <matsl@gnu.org>.

19 months ago; * etc/NEWS: Mention the issue with PGTK on WSL (bug#63384).
Eli Zaretskii [Mon, 5 Jun 2023 11:50:00 +0000 (14:50 +0300)]
; * etc/NEWS: Mention the issue with PGTK on WSL (bug#63384).

19 months agoAdapt emba integration
Michael Albinus [Mon, 5 Jun 2023 11:29:21 +0000 (13:29 +0200)]
Adapt emba integration

* test/infra/Dockerfile.emba (emacs-tree-sitter):
Use "/root/.emacs.d/tree-sitter" instead of "/usr/local/lib/tree-sitter".

* test/infra/gitlab-ci.yml (.job-template): Run "/bin/bash -xvc".
(test-eglot): Revert last change, it doesn't work yet.
(test-tree-sitter): Set TEST_HOME instead of LD_LIBRARY_PATH.

19 months agoClear batch edit state once a new input connection is established
Po Lu [Mon, 5 Jun 2023 03:34:18 +0000 (11:34 +0800)]
Clear batch edit state once a new input connection is established

* src/androidterm.c (android_handle_ime_event): Clear batch edit
state, in case the previous input method forgot to do so.

19 months agoUpdate Android port
Po Lu [Mon, 5 Jun 2023 02:38:25 +0000 (10:38 +0800)]
Update Android port

* java/org/gnu/emacs/EmacsNative.java (EmacsNative): New
function clearInputFlags.
* java/org/gnu/emacs/EmacsView.java (onCreateInputConnection):
Stop reporting changes after a new input method connection is
established.
* src/androidterm.c (android_handle_ime_event): Implement that
change.
(JNICALL): New function.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Mon, 5 Jun 2023 00:46:58 +0000 (08:46 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months ago* subr-x (eval-command-interactive-spec): New function.
Sean Whitton [Sun, 15 Jan 2023 17:57:30 +0000 (10:57 -0700)]
* subr-x (eval-command-interactive-spec): New function.

19 months agoBetter internal-make-closure optimisation
Mattias Engdegård [Sun, 4 Jun 2023 13:58:44 +0000 (15:58 +0200)]
Better internal-make-closure optimisation

* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
Optimise closed-over values in closure creation like any other, which
can lead to stack variables being eliminated.

19 months ago* lisp/emacs-lisp/comp-cstr.el (cl-macs): Require it.
Andrea Corallo [Sun, 4 Jun 2023 14:43:13 +0000 (16:43 +0200)]
* lisp/emacs-lisp/comp-cstr.el (cl-macs): Require it.

19 months ago* lisp/emacs-lisp/comp.el (comp-function-type-spec): Improve.
Andrea Corallo [Sun, 4 Jun 2023 14:25:14 +0000 (16:25 +0200)]
* lisp/emacs-lisp/comp.el (comp-function-type-spec): Improve.

19 months agoRevert changes to the order in which package descs are loaded
Philip Kaludercic [Sun, 4 Jun 2023 13:21:04 +0000 (15:21 +0200)]
Revert changes to the order in which package descs are loaded

* lisp/emacs-lisp/package.el (package-load-all-descriptors):  Remove
NOSORT argument to 'directory-files', reverting back to the behaviour
as of Emacs 28.  (Bug#63757)

19 months ago; Minor doc copyedits in comp.el
Eli Zaretskii [Sun, 4 Jun 2023 12:28:25 +0000 (15:28 +0300)]
; Minor doc copyedits in comp.el

* lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Fix
commentary.
(comp-function-type-spec): Doc fix.

19 months ago; * src/keyboard.c: Fix build without window system
Po Lu [Sun, 4 Jun 2023 12:11:40 +0000 (20:11 +0800)]
; * src/keyboard.c: Fix build without window system

19 months ago; * lisp/emacs-lisp/comp.el (comp-funciton-type-spec): typo
Mattias Engdegård [Sun, 4 Jun 2023 12:09:39 +0000 (14:09 +0200)]
; * lisp/emacs-lisp/comp.el (comp-funciton-type-spec): typo

19 months agoPrint know function types in C-h f
Andrea Corallo [Tue, 30 May 2023 13:30:11 +0000 (15:30 +0200)]
Print know function types in C-h f

* lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Improve comment.
(comp-funciton-type-spec): New function.
* lisp/help-fns.el (help-fns--signature): Update to make use of
`comp-funciton-type-spec'.

19 months ago* Have `comp-cstr-to-type-spec' handle comp-cstr-f as well
Andrea Corallo [Sun, 4 Jun 2023 09:26:22 +0000 (11:26 +0200)]
* Have `comp-cstr-to-type-spec' handle comp-cstr-f as well

* lisp/emacs-lisp/comp-cstr.el (comp--simple-cstr-to-type-spec): New
function.
(comp-cstr-to-type-spec): Make use of.

19 months ago* lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Fix line lengths
Andrea Corallo [Sun, 4 Jun 2023 09:07:38 +0000 (11:07 +0200)]
* lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Fix line lengths

19 months ago* lisp/emacs-lisp/comp.el: Improve 85cb075b1bd.
Andrea Corallo [Sun, 4 Jun 2023 10:19:09 +0000 (12:19 +0200)]
* lisp/emacs-lisp/comp.el: Improve 85cb075b1bd.

19 months ago* lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Tweak framep.
Andrea Corallo [Sun, 4 Jun 2023 08:58:32 +0000 (10:58 +0200)]
* lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Tweak framep.

19 months ago; * etc/NEWS: Improve instructions for grammar libraries.
Eli Zaretskii [Sun, 4 Jun 2023 07:57:07 +0000 (10:57 +0300)]
; * etc/NEWS: Improve instructions for grammar libraries.

19 months ago* configure.ac: Tune pty detection for Android.
Po Lu [Sun, 4 Jun 2023 07:11:48 +0000 (15:11 +0800)]
* configure.ac: Tune pty detection for Android.

19 months agoHandle point in last file-name component in minibuffer completion
Spencer Baugh [Sat, 3 Jun 2023 00:57:32 +0000 (20:57 -0400)]
Handle point in last file-name component in minibuffer completion

This is a followup to commit e338a8ac41d4a9fd798dda90275abe75ac071335
(Handle point not at EOB in minibuffer-choose-completion).
That commit added a heuristic, but the heuristic was insufficient:
It still had the original wrong behavior when completing the last
file-name component (i.e., the completion category is 'file' and
there's no slash after point).  This patch makes the heuristic
cover that case as well.
* lisp/minibuffer.el (minibuffer-next-completion)
(minibuffer-choose-completion): If in file completion and there's no
slash after point, clear what's after point when we complete.
(Bug#62700)

19 months agoFix input method synchronization problems
Po Lu [Sun, 4 Jun 2023 04:04:15 +0000 (12:04 +0800)]
Fix input method synchronization problems

* java/debug.sh (gdbserver_cmd, is_root): Prefer TCP again.
* java/org/gnu/emacs/EmacsNative.java (EmacsNative): New
function `queryAndSpin'.
* java/org/gnu/emacs/EmacsService.java (EmacsService)
(icBeginSynchronous, icEndSynchronous, viewGetSelection): New
synchronization functions.
(resetIC, updateCursorAnchorInfo): Call those instead.
* java/org/gnu/emacs/EmacsView.java (onCreateInputConnection):
Call viewGetSelection.
* src/android.c (JNICALL, android_answer_query_spin): New
functions.

19 months agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Sun, 4 Jun 2023 00:33:30 +0000 (08:33 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

19 months agoAdapt emba integration
Michael Albinus [Sat, 3 Jun 2023 16:32:29 +0000 (18:32 +0200)]
Adapt emba integration

* test/infra/Dockerfile.emba (emacs-eglot, emacs-tree-sitter):
Don't install gawk.

* test/infra/gitlab-ci.yml (test-eglot): Add company and yasnippet.

19 months agoMerge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29
Eli Zaretskii [Sat, 3 Jun 2023 16:22:22 +0000 (19:22 +0300)]
Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29

19 months agoAvoid asking redundant question in emacsbug.el
Eli Zaretskii [Sat, 3 Jun 2023 16:20:23 +0000 (19:20 +0300)]
Avoid asking redundant question in emacsbug.el

* lisp/mail/emacsbug.el (report-emacs-bug-hook): Don't ask the
question about saving email setup if we cannot save it anyway.
(Bug#63816)

19 months ago* test/infra/Dockerfile.emba (emacs-base): Don't install gawk.
Michael Albinus [Sat, 3 Jun 2023 15:52:46 +0000 (17:52 +0200)]
* test/infra/Dockerfile.emba (emacs-base): Don't install gawk.

19 months agotypescript-ts-mode: Add a rule for function_signature
Dmitry Gutov [Sat, 3 Jun 2023 12:00:41 +0000 (15:00 +0300)]
typescript-ts-mode: Add a rule for function_signature

* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--font-lock-settings):
Add a rule for function_signature (bug#63867)

19 months ago* admin/unidata/emoji-zwj.awk: Avoid sprint buffer overflow
Mattias Engdegård [Sat, 3 Jun 2023 10:50:21 +0000 (12:50 +0200)]
* admin/unidata/emoji-zwj.awk: Avoid sprint buffer overflow

Some AWK implementations have a fixed buffer for sprintf; for mawk the
default size is 8192 bytes.  Hoist a string concatenation from
a sprintf call to avoid running into that limit.  See discussion at
https://lists.gnu.org/archive/html/emacs-devel/2023-06/msg00090.html .

(cherry picked from commit b5f17fe07c6624380ba8d0c7a400a6b89f225209)

19 months ago* admin/unidata/emoji-zwj.awk: Avoid sprint buffer overflow
Mattias Engdegård [Sat, 3 Jun 2023 10:50:21 +0000 (12:50 +0200)]
* admin/unidata/emoji-zwj.awk: Avoid sprint buffer overflow

Some AWK implementations have a fixed buffer for sprintf; for mawk the
default size is 8192 bytes.  Hoist a string concatenation from
a sprintf call to avoid running into that limit.  See discussion at
https://lists.gnu.org/archive/html/emacs-devel/2023-06/msg00090.html .

19 months agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 3 Jun 2023 09:50:58 +0000 (05:50 -0400)]
Merge from origin/emacs-29

ede3535051a ; Fix last change
8ec786349e1 Fix apostrophe handling in rust-ts-mode and go-ts-mode (B...
0eba9cf6511 * test/infra/Dockerfile.emba (emacs-base): Install also g...
4897c98b6c4 Fix 'python-util-clone-local-variables'
6b2c8dc9050 Revert "Enhance Python font-lock to support multilines"
348e4504c6d Fix typo in calc.texi
03663b8798a Update to Transient v0.4.1
dc7acb1aafe Avoid errors in 'delete-forward-char' deleting static com...
2f94f6de9d6 Make VS-15 and VS-16 compositions work correctly
753f8aa1f14 Fix project-name for vc-aware backend in non-file buffers
17c7915ab94 ; Fix 'package-install-upgrade-built-in' check for packag...
e252ce26eab Add type_predicate 'is' as keyword in typescript-ts-mode ...
0a354d65784 Fix infloop in info-look.el
83b22139e4c Fix several todo-mode.el item editing bugs (bug#63811)
ed4cd3eddf7 dockerfile-ts-mode: Prevent empty categories in imenu (Bu...
2e20e318da2 Brush up doc strings and terminology in plstore.el
372bc1278c2 Add internal documentation on plstore.el
23a14e7b902 Add compact_constructor_declaration font-locking to java-...
500abc4dc37 * lisp/tmm.el (tmm-completion-delete-prompt): Add more ch...
afc1f329356 Allow to disable the DWIMish behavior of 'x' in package menu
08104c01504 Allow dired to invoke secondary browser
a3063f0bc87 Add a binding for enriched-toggle-markup
d8ba28fa394 Fix order of tmm-menubar when 'tmm-mid-prompt' is nil

# Conflicts:
# etc/NEWS

19 months ago; Merge from origin/emacs-29
Eli Zaretskii [Sat, 3 Jun 2023 09:50:51 +0000 (05:50 -0400)]
; Merge from origin/emacs-29

The following commit was skipped:

53dc7bec830 Fix regression when saving tramp-default-proxies-alist (D...

19 months agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 3 Jun 2023 09:50:49 +0000 (05:50 -0400)]
Merge from origin/emacs-29

3f441525679 Save the tree-sitter grammar recipe when installing a gra...
c0c7b947baf Add instructions and test file for VS-15/VS-16
3be33aff963 A better fix for "Fix cancellation of Wdired"
756244c6963 ; * lisp/minibuffer.el (completions-header-format): Doc fix.
5d844e129ad Fix tmm-menubar when 'tmm-completion-prompt' is nil

# Conflicts:
# lisp/treesit.el

19 months ago; Merge from origin/emacs-29
Eli Zaretskii [Sat, 3 Jun 2023 09:47:29 +0000 (05:47 -0400)]
; Merge from origin/emacs-29

The following commit was skipped:

5e7c826bfa5 ; * lisp/progmodes/project.el: avoid warning in loaddefs.

19 months agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 3 Jun 2023 09:47:29 +0000 (05:47 -0400)]
Merge from origin/emacs-29

95ee5477e16 ; * src/lread.c (read0, skip_lazy_string): Fix commentary...

19 months ago; Fix last change
Eli Zaretskii [Sat, 3 Jun 2023 08:34:11 +0000 (11:34 +0300)]
; Fix last change

* lisp/progmodes/rust-ts-mode.el
(rust-ts-mode--syntax-propertize): Doc fix.  (Bug#63708)

19 months agoFix apostrophe handling in rust-ts-mode and go-ts-mode (Bug#63708)
Йордан Миладинов [Fri, 26 May 2023 14:23:26 +0000 (17:23 +0300)]
Fix apostrophe handling in rust-ts-mode and go-ts-mode (Bug#63708)

* lisp/progmodes/rust-ts-mode.el (rust-ts-mode--syntax-propertize):
Treat apostrophes as strings if used to define character literals.
Treat LT and GT as pairs if used to define type parameters (formerly
they were treated as pairs only for type arguments).
* lisp/progmodes/go-ts-mode.el (go-ts-mode--syntax-table): Treat
apostrophes as strings if used to define rune literals.

Copyright-paperwork-exempt: yes