1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-05 19:31:02 -08:00
Commit graph

168898 commits

Author SHA1 Message Date
Michael Albinus
9e736d254a Improve Tramp messages
* lisp/net/tramp-message.el (tramp-debug-message): Publish the
name of the debug file name.
2023-09-16 20:35:57 +02:00
Michael Albinus
f0f4cbfe87 Make "kubernetes" multi-hop completion capable in Tramp
* lisp/net/tramp-container.el (tramp-skeleton-completion-function):
New defmacro.
(tramp-container--completion-function): Use it.
(tramp-kubernetes--completion-function): Use METHOD as argument.
Use `tramp-skeleton-completion-function'.
(tramp-skeleton-kubernetes-vector): New defmacro.
(tramp-kubernetes--current-context)
(tramp-kubernetes--current-context-data): Use it.
(tramp-completion-multi-hop-methods): Add "kubernetes".
2023-09-16 20:35:35 +02:00
Michael Albinus
be70f4ab0e Adapt tramp-otp-password-prompt-regexp
* lisp/net/tramp.el (tramp-otp-password-prompt-regexp):
Use `tramp-compat-password-colon-equivalents'.
2023-09-16 20:34:06 +02:00
Stefan Kangas
7ff836b366 Revert "Mark two tests as expensive"
This reverts commit 1d952078c0.
2023-09-16 19:09:04 +02:00
Eli Zaretskii
2a8ad64ddd Revert "Don't use pointer arithmetic for untagging Lisp values"
This reverts commit 056c99a34c.
It broke compilation of 32-bit build --with-wide-int.
2023-09-16 20:03:59 +03:00
Eli Zaretskii
f24aeaf4ff Revert "* src/lisp.h (XUNTAG): Work on 32-bit --with-wide-int builds"
This reverts commit c0788f0c47.
Let's finish discussing this before rushing to push.
2023-09-16 20:03:30 +03:00
Mattias Engdegård
c0788f0c47 * src/lisp.h (XUNTAG): Work on 32-bit --with-wide-int builds
This eliminates a compiler warning for that configuration
(see bug#65491).
2023-09-16 18:37:17 +02:00
Mattias Engdegård
056c99a34c Don't use pointer arithmetic for untagging Lisp values
* src/lisp.h (XUNTAG):
Instead of casting a Lisp value to char * and subtracting the tag,
cast it to a suitable integral type and work on that.

This should result in identical or at least equivalent code, except
that it avoids potential problems arising from the restrictions on
pointer arithmetic in C.  In particular, a null pointer can be neither
an operand in nor the result of pointer arithmetic.

C compilers know this and would, prior to this change, optimise

  XUNTAG(obj, Lisp_Int0, mytype) != NULL

to 1.  This means, for example, that make_pointer_integer and
XFIXNUMPTR could not be entrusted with null pointers, and
next_vector in alloc.c was unsafe to use.
2023-09-16 16:32:05 +02:00
Mattias Engdegård
b1881d7dab More accurate static vector block size assertion
* src/alloc.c: The size of a vector block is bound by the number of
words, not bytes, represented by the pseudovector header RESTSIZE
field, because that limits how big a PVEC_FREE object can be.
2023-09-16 16:32:05 +02:00
Stefan Kangas
94b1de2774 Add missing builtin package declarations
* lisp/finder.el (finder--builtins-alist): Add new package
directories 'leim' and 'obsolete' as part of the 'emacs' package.
Add new package directory 'use-package' as part of the
'use-package' package.
* lisp/net/eudc-capf.el:
* lisp/net/eudcb-ecomplete.el:
* lisp/net/eudcb-macos-contacts.el:
* lisp/net/eudcb-mailabbrev.el: Declare library as part of the
'eudc' package.
* lisp/mail/ietf-drums-date.el: Declare library as part of the
'ietf-drums' package.
* lisp/image/image-dired-dired.el:
* lisp/image/image-dired-external.el:
* lisp/image/image-dired-tags.el:
* lisp/image/image-dired-util.el: Declare library as part of the
'image-dired' package.
* lisp/emacs-lisp/oclosure.el:
* lisp/keymap.el:
* lisp/progmodes/c-ts-common.el: Declare library as part of the
'emacs' package.  (Bug#62751)
2023-09-16 14:36:24 +02:00
Eli Zaretskii
302bc23f7c Merge from origin/emacs-29
755ae813a6 ; Declare some treesit.c functions in typescript-ts-mode.el.
89fa204b70 Fix loss of encrypted data in plstore.el
d9a1175a61 Close SQL database when corresponding 'sqlite-mode' buffe...
cbd8fac283 Fix Unicode normalization of characters
825be05b37 Support one-time passwords in Tramp
f880b94e64 Fix the 'C' and 'c' categories of characters
58fd212d8a Fix Emoji zooming commands
8970cdd009 ; Fix last change.
ba924be452 ; * etc/DEBUG: Improve the redisplay section.
e110312ad9 ; * doc/lispref/minibuf.texi (Text from Minibuffer): Ment...
65f4810003 tsx-ts-mode--font-lock-compatibility-bb1f97b: Improve
6fe11b88ed Avoid using --display in emacsclient to reuse frames on PGTK
2fc7463c0e ; * INSTALL: Don't advertise -O3.  (Bug#65988)
29055412f2 ; Fix doc string of 'lsh'
738d854333 Support emacsclient on Windows with server on GNU or Unix...
f0a89fa1d0 ; * lisp/saveplace.el (save-place-ignore-files-regexp): F...
c9cb8ee0fc Fix defcustom in saveplace.el (Bug#65977)
5ec8be1d58 ; * lisp/subr.el (string-suffix-p, string-prefix-p): Doc ...
809305e6d8 Fix 'window-text-pixel-size' when there are several image...
ea14b0dcc2 : Doc fix.
01e8a0c6cb Doc fix for prettify-symbols-unprettify-at-point
0065621d0d (report_overlay_modification): Fix bug#65929
6cc6455e93 Fix SVG colors (bug#56182)
9396d73942 * doc/emacs/text.texi (Outline Minor Mode): Add a note ab...
a65d1a5a16 Improve documentation of 'list-abbrevs'
5dcc4b7eab Tweak s-p-f for js-ts-mode
1fb2fb501f typescript-ts-mode, tsx-ts-mode: Fix syntax properties fo...
946b395e7e * lisp/progmodes/c-ts-mode.el (c++-ts-mode): Provide (bug...
33ee3e588f Fix regression of treesit_cursor_helper_1
d11d81dfcc ; Fix doc typos (Bug#65868)
6554ec2246 Update docs for passing of Thien-Thi Nguyen
5ab2792d5c Update defvar usage tips example in manual
35d88c657e Document using Flymake together with Eglot
3f04efe9e7 ; * src/font.h (struct font): Comment about use of averag...
459b5f6b6d ; * admin/authors.el (authors-aliases): Update.
0c029ae8bc ; tweak etc/TODO item

# Conflicts:
#	admin/authors.el
#	lisp/subr.el
2023-09-16 07:36:49 -04:00
Eli Zaretskii
755ae813a6 ; Declare some treesit.c functions in typescript-ts-mode.el. 2023-09-16 14:26:46 +03:00
Jens Schmidt
89fa204b70 Fix loss of encrypted data in plstore.el
* lisp/plstore.el (plstore--insert-buffer): Fix loss of encrypted
data when a plstore gets opened and saved without being decrypted
between these steps.  (Bug#63627)
2023-09-16 14:05:36 +03:00
Eli Zaretskii
f44c1969b6 ; Fix last change in gdb-mi.el
* lisp/progmodes/gdb-mi.el (gdb-display-io-buffer): Move to before
the first use.  Doc fix.  Change the group to 'gdb-buffers'.

* etc/NEWS: Announce the new option.  (Bug#65007)
2023-09-16 13:41:07 +03:00
StrawberryTea
ce77bfff50 bug#65007: Allow displaying program IO in the GDB buffer
* lisp/progmodes/gdb-mi.el (gdb-split-io-flag): Don't create
IO buffer if `gdb-split-io-flag' is nil.
(gdb-split-io-flag): New user option.

Copyright-paperwork-exempt: yes
2023-09-16 13:30:33 +03:00
Thomas Hilke
d9a1175a61 Close SQL database when corresponding 'sqlite-mode' buffer is killed
* lisp/sqlite-mode.el (sqlite-mode-open-file): Close DB when the
buffer is killed.  (Bug#65998)

Copyright-paperwork-exempt: yes
2023-09-16 13:20:45 +03:00
Jens Schmidt
a5ca1f2d8b Declare more functions as shift-translatable motion commands
* lisp/comint.el (comint-next-prompt, comint-previous-prompt): Declare
as shift-translatable motion commands.
* lisp/textmodes/sgml-mode.el (sgml-skip-tag-backward)
(sgml-skip-tag-forward): Declare as shift-translatable motion
commands.  (Bug#65876)
2023-09-16 13:06:41 +03:00
bug-gnu-emacs@gnu.org
b6659e98a4 bug#65673: Add lua-ts-mode
* lisp/progmodes/lua-ts-mode.el:
* test/lisp/progmodes/lua-ts-mode-resources/indent.erts:
* test/lisp/progmodes/lua-ts-mode-tests.el: New files.
* etc/NEWS: Mention the new mode.
* lisp/progmodes/eglot.el (eglot-server-programs):
* lisp/progmodes/hideshow.el (hs-special-modes-alist):
Support 'lua-ts-mode'.
* admin/notes/tree-sitter/build-module/batch.sh:
* admin/notes/tree-sitter/build-module/build.sh: Add Lua.
* test/infra/Dockerfile.emba:
* test/infra/test-jobs.yml: Include lua-ts-mode tests.
2023-09-16 13:01:43 +03:00
Mauro Aranda
2ea98ea35c Avoid errors when a restricted-sexp widget is empty
* lisp/wid-edit.el (restricted-sexp): Don't try to read
an empty string when converting the current value to the
external format.  (Bug#63838)

* test/lisp/wid-edit-tests.el (widget-test-restricted-sexp-empty-val):
New test.
2023-09-16 12:56:34 +03:00
Eli Zaretskii
68976b00f1 ; * lisp/edmacro.el (edmacro-reverse-macro-lines): Fix last change. 2023-09-16 12:54:08 +03:00
Earl Hyatt
f25cd56065 Make using Edmacro easier for long sequences of keys
* lisp/edmacro.el (edmacro-set-macro-to-region-lines)
(edmacro-reverse-key-order): New command and user option to
make working with longer lists of keys, such as from
'kmacro-edit-lossage', easier.
(edit-kbd-macro): Move regexps used to identify parts of
buffer to internal variables.
(edmacro--macro-lines-regexp, edmacro-mode-font-lock-keywords):
Allow noting whether the most recent line of keys is displayed
first.
(edmacro-mode-map): Bind the new command to 'C-c C-r'.
(edmacro-mode): Describe the new command in the mode
documentation string.

* doc/emacs/kmacro.texi (Edit Keyboard Macro): Mention
'edmacro-insert-key' and the newly added
'edmacro-set-macro-to-region-lines' and
'edmacro-reverse-key-line-order'.

* etc/NEWS (Edmacro): Add section describing the new features.

(Bug#65605)
2023-09-16 12:50:51 +03:00
Eli Zaretskii
cbd8fac283 Fix Unicode normalization of characters
* lisp/international/ucs-normalize.el
(ucs-normalize-composition-exclusions, check-range): Update from
Unicode 15.0 data.  (Bug#65996)

* test/lisp/international/ucs-normalize-tests.el
(ucs-normalize-tests--failing-lines-part1)
(ucs-normalize-tests--failing-lines-part2): Update to reflect
changes in ucs-normalize.el.

* admin/notes/unicode: Mention the updates in ucs-normalize.el.
2023-09-16 12:17:23 +03:00
Michael Albinus
825be05b37 Support one-time passwords in Tramp
* doc/misc/tramp.texi (Remote shell setup):
Describe tramp-otp-password-prompt-regexp.

* lisp/net/tramp-sh.el (tramp-actions-before-shell)
(tramp-actions-copy-out-of-band):
Use `tramp-otp-password-prompt-regexp'.

* lisp/net/tramp.el (tramp-otp-password-prompt-regexp): New defcustom.
(tramp-action-otp-password): New defun.
2023-09-16 09:59:31 +02:00
Eli Zaretskii
f880b94e64 Fix the 'C' and 'c' categories of characters
* lisp/international/characters.el: Fix categories of Chinese
characters.  (Bug65995)
2023-09-16 10:53:05 +03:00
Eli Zaretskii
58fd212d8a Fix Emoji zooming commands
* lisp/international/emoji.el (emoji-zoom-increase): Handle the
case where face property at point is a list of faces.  (Bug#65994)
2023-09-16 10:33:10 +03:00
Andreas Schwab
d9efc9aa0f Update pdumper hashes
* src/pdumper.c (dump_vectorlike_generic, dump_vectorlike)
(dump_buffer): Update hash.
2023-09-16 09:18:25 +02:00
Eli Zaretskii
8970cdd009 ; Fix last change. 2023-09-16 09:26:30 +03:00
Eli Zaretskii
ba924be452 ; * etc/DEBUG: Improve the redisplay section. 2023-09-16 09:25:08 +03:00
Eli Zaretskii
e110312ad9 ; * doc/lispref/minibuf.texi (Text from Minibuffer): Mention alias. 2023-09-16 08:55:17 +03:00
Po Lu
d55a106f0a ; * src/sfntfont.c (sfntfont_list_family): Remove unused variable. 2023-09-16 10:55:43 +08:00
Po Lu
ee4b6a4a2d Update Android port
* java/org/gnu/emacs/EmacsContextMenu.java (display): Return
false if the list of menu buttons is empty, lest Android cease
displaying menus on the assumption that Emacs is defective.

* java/org/gnu/emacs/EmacsView.java (popupMenu): Likewise.

* src/fns.c (sort_list): Render sentence motion commands
functional within commentary

* src/sfntfont.c (sfntfont_list_family): Sort and deduplicate
the returned family list and make it a list of symbols.
(syms_of_sfntfont) <Qstring_lessp>: New defsym.
2023-09-16 10:38:46 +08:00
Jim Porter
bc25d76650 Fix documented Eshell behavior of ignoring leading nils in commands
* lisp/eshell/esh-var.el (eshell-handle-local-variables): Simplify,
and move leading-nil handling to...
* lisp/eshell/esh-cmd.el (eshell-named-command): ... here.

* test/lisp/eshell/esh-cmd-tests.el (esh-cmd-test/skip-leading-nils):
* test/lisp/eshell/esh-var-tests.el
(esh-var-test/local-variables/skip-nil): New tests.

* doc/misc/eshell.texi (Expansion): Document this behavior.
2023-09-15 13:43:07 -07:00
Stefan Monnier
e7e925f062 (mutually_exclusive_p): Fix the regression from commit 6fad73d7cc
Commit 6fad73d7cc throws away some useful optimization because
it misfired in some cases (as seen in bug#657260).  Here we try to
recover those useful optimizations with a slightly more careful
algorithm.

* src/regex-emacs.c (mutually_exclusive_aux): Rename from
`mutually_exclusive_p`.  Add two new args.  Improve the
case where we need to recurse.
(mutually_exclusive_p): New function defined on top of it.

* test/src/regex-emacs-tests.el (regexp-tests-backtrack-optimization):
Re-enable the test.
2023-09-15 14:53:24 -04:00
Stefan Monnier
9610aaeb9e * src/regex-emacs.c (mutually_exclusive_p): Refactor
Minor refactoring to avoid swapping p1/p2.

* src/regex-emacs.c (mutually_exclusive_exactn)
(mutually_exclusive_charset): New functions, extracted from
`mutually_exclusive_p`.
(mutually_exclusive_p): Use them.
2023-09-15 14:16:48 -04:00
Dmitry Gutov
65f4810003 tsx-ts-mode--font-lock-compatibility-bb1f97b: Improve
* lisp/progmodes/typescript-ts-mode.el
(tsx-ts-mode--font-lock-compatibility-bb1f97b):
Test the more complex query, because the current one leads to
false positives (mentioned in bug#65470).
2023-09-15 16:30:58 +03:00
Davide Masserut
6fe11b88ed Avoid using --display in emacsclient to reuse frames on PGTK
Using hard-coded display values can cause PGTK graphical frames to
open using the wrong backend or not open at all.
* Makefile.in (install-etc): Use --reuse-frame instead of
--display=$DISPLAY.  (Bug#65509)
2023-09-15 14:31:10 +03:00
Eli Zaretskii
2fc7463c0e ; * INSTALL: Don't advertise -O3. (Bug#65988) 2023-09-15 14:28:09 +03:00
Stefan Kangas
1d952078c0 Mark two tests as expensive
* test/lisp/calendar/todo-mode-tests.el
(todo-test-add-and-delete-file):
* test/lisp/simple-tests.el (simple-tests-shell-command-39067):
Mark tests taking more than 10 seconds to run on a MacBook Pro from
2015 as expensive.
2023-09-15 11:28:25 +02:00
Stefan Kangas
826d383c92 Fix describing packages where maintainer lacks email
* lisp/emacs-lisp/package.el (describe-package-1): Fix describing
packages with one maintainer without an email address.  (Bug#65987)
2023-09-15 09:49:26 +02:00
Yuan Fu
7717ff1c94
Add dot SVG icons
The advantage of SVG dots over Unicode dots is that their size is
fixed.  With Unicode dots, the size varies with the font.

Dot icons can be useful for status indicator: green dot for online,
red dot for offline, etc.

* etc/images/symbols/dot_large_16.pbm:
* etc/images/symbols/dot_large_16.svg:
* etc/images/symbols/dot_medium_16.pbm:
* etc/images/symbols/dot_medium_16.svg:
* etc/images/symbols/dot_small_16.pbm:
* etc/images/symbols/dot_small_16.svg: New file.
2023-09-15 00:44:23 -07:00
Yuan Fu
04fd8b173b
Allow treesit-font-lock-recompute-features to be language-specific
* lisp/treesit.el:
(treesit-font-lock-recompute-features): Add LANGUAGE parameter.
2023-09-15 00:44:23 -07:00
Eli Zaretskii
29055412f2 ; Fix doc string of 'lsh'
* lisp/subr.el (lsh): Doc fix.  Suggested by Richard Stallman
<rms@gnu.org>.
2023-09-15 10:17:30 +03:00
Eli Zaretskii
738d854333 Support emacsclient on Windows with server on GNU or Unix systems
* lisp/server.el (server-process-filter): If 'tty-name' is literally
"CONOUT$", assume the client runs on MS-Windows and force the
frame type to GUI.  This allows to run emacsclient on MS-Windows
when the server runs on a Posix host.  (Bug#65812)
2023-09-15 10:02:00 +03:00
Eli Zaretskii
160b4c295d ; * src/process.c (child_signal_notify): Avoid compiler warning (bug#65919). 2023-09-15 09:05:14 +03:00
Po Lu
1442f4043a ; * src/xterm.c (handle_one_xevent): Cite the bug meant to be fixed. 2023-09-15 10:35:06 +08:00
Po Lu
e1a730017d Correct bug#65919
* src/process.c (child_signal_notify): Expunge call to
non-reentrant function from signal handler.

* src/xfns.c (setup_xi_event_mask): Cease selecting for
XI_FocusIn and XI_FocusOut under X toolkit builds.

* src/xterm.c (xi_handle_interaction, xi_handle_focus_change)
(xi_handle_focus_change): Make conditional on GTK 3 or no
toolkit builds.
(xi_handle_delete_frame, x_free_frame_resources): Adjust
correspondingly.
(handle_one_xevent) <EnterNotify, LeaveNotify>: Examine
EnterNotify and LeaveNotify events for focus changes
irrespective of whether XI2 is enabled under the X toolkit and
GTK 2.x.
2023-09-15 10:30:12 +08:00
Jim Porter
cadd332662 Collapse 'if' forms in Eshell iterative evaluation
* lisp/eshell/esh-cmd.el (eshell-do-eval): After evaluating 'if'
conditional, replace the form with the THEN or ELSE body.
2023-09-14 17:54:41 -07:00
Jim Porter
7e50861ca7 ; Simplify how to use 'eshell-debug-command'
Now, 'eshell-debug-command' works more like 'format-message', which is
how we usually use it.

* lisp/eshell/esh-util.el (eshell-always-debug-command): New function.
(eshell-debug-command): Simplify.  Update callers.
2023-09-14 17:54:26 -07:00
Eli Zaretskii
f0a89fa1d0 ; * lisp/saveplace.el (save-place-ignore-files-regexp): Fix last change. 2023-09-14 16:18:03 +03:00
Mauro Aranda
c9cb8ee0fc Fix defcustom in saveplace.el (Bug#65977)
* lisp/saveplace.el (save-place-ignore-files-regexp): Allow nil.
2023-09-14 16:14:51 +03:00