1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-21 06:55:39 +00:00
Commit Graph

175516 Commits

Author SHA1 Message Date
Michael Albinus
70273dc9f7 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2024-11-14 16:52:59 +01:00
Michael Albinus
3e86231b54 Merge from origin/emacs-30
f69f54c454 Improve font-locking and indentation in 'php-ts-mode'
27aacbd172 Fix some 'lua-ts-mode' options (Bug#74235)
a0613372a7 ; Update the xwidgets-on-NS text due to fixing bug#60703
d592832504 Improve comment indenting in 'lua-ts-mode'
6bc44ccf28 Update 'xref-num-matches-found' when reverting *xref* buffer
8afcfed825 * lisp/files.el (require-with-check): Fix last fix (bug#7...
3496234c8e lisp/files.el (require-with-check): Fix bug#74091.
90c97d3fac Fix handling of permanent-local variables in 'kill-all-lo...
c96e576090 Precise password cache in Tramp
3954e8d9bb Fix picture-mode with full-width characters
7dabfe9465 Fix movement to the left in picture-mode

# Conflicts:
#	lisp/net/tramp.el
2024-11-14 16:51:20 +01:00
Spencer Baugh
5b19ca56f1 Preserve selected candidate across *Completions* update
When *Completions* is updated and point was on some completion
candidate, move point to the same candidate after the update.

Also, a selected completion in *Completions* is now always
highlighted, even if it was selected by the user or other code
moving point rather than by minibuffer-next-completion, because
cursor-face-highlight-nonselected-window is now set in
completion-setup-function.

Other completion UIs (e.g. ido, vertico, etc) effectively have
this behavior: whenever they update the list of completions,
they preserve whatever candidate is selected.  This matters a
lot when completions are auto-updated, but is still useful
without auto-updating.  Including this behavior is a step
towards supporting auto-updating in the default completion UI.

* lisp/minibuffer.el (minibuffer-completion-help): Preserve the
selected completion candidate across updates. (bug#74019)
(minibuffer-hide-completions): Move point to BOB.
(minibuffer-next-completion): Don't set
cursor-face-highlight-nonselected-window.
* lisp/simple.el (completions--start-of-candidate-at)
(choose-completion): Extract the current-completion-finding code
into a separate function.
(completion-setup-function): Set
cursor-face-highlight-nonselected-window.
* etc/NEWS: Announce new behavior.
2024-11-14 10:46:44 -05:00
john muhl
32f070fa3d Add song viewer to 'mpc' (Bug#74200)
* lisp/mpc.el (mpc-describe-song): New command.
(mpc-mode-map): Bind "d" to 'mpc-describe-song'.
(mpc-mode-menu): Add menu item.
(mpc-secs-to-time): Ensure secs argument is an integer.
(mpc-song-viewer-empty, mpc-song-viewer-tag):
(mpc-song-viewer-value): New face.
(mpc-song-viewer-tags): New option.
2024-11-14 10:42:07 -05:00
Vincenzo Pupillo
f69f54c454 Improve font-locking and indentation in 'php-ts-mode'
* lisp/progmodes/php-ts-mode.el (php-ts-mode--language-source-alist):
Updated to latest version of PHP grammar.
(php-ts-mode--indent-styles): 'namespace_use_declaration' is now
correctly indented.
(php-ts-mode--operators): Support of the "argument unpacking
operator".
(php-ts-mode--font-lock-settings): 'nullsafe_member_call_expression'
is now highlighted correctly.
(php-ts-mode--comment-indent-new-line): Delete trailing whitespace
before inserting newline (see bug#73900 for more information).
Bug#74239
2024-11-14 10:47:51 +02:00
john muhl
27aacbd172 Fix some 'lua-ts-mode' options (Bug#74235)
* lisp/progmodes/lua-ts-mode.el (lua-ts-luacheck-program):
(lua-ts-inferior-program): Switch to 'file' type and remove 'nil'
as a choice.
(lua-ts-inferior-lua): Ensure 'lua-ts-inferior-program' is set.
2024-11-14 10:23:49 +02:00
Andrew De Angelis
a0613372a7 ; Update the xwidgets-on-NS text due to fixing bug#60703
* etc/TODO: Update the xwidgets-on-NS text (bug#74295).
2024-11-14 10:19:09 +02:00
john muhl
d592832504 Improve comment indenting in 'lua-ts-mode'
* lisp/progmodes/lua-ts-mode.el (lua-ts--simple-indent-rules):
Align single line comments with the surrounding context.
(lua-ts--comment-first-sibling-matcher): Check that comment is
the first sibling.
(lua-ts--multi-line-comment-start): New function.
* test/lisp/progmodes/lua-ts-mode-resources/indent.erts:
Add tests.  (Bug#74298)
2024-11-14 10:14:46 +02:00
Eshel Yaron
6bc44ccf28 Update 'xref-num-matches-found' when reverting *xref* buffer
* lisp/progmodes/xref.el (xref--insert-xrefs):
Update 'xref-num-matches-found' here...
(xref--show-xref-buffer): ...instead of here (bug#74313).
2024-11-14 04:26:54 +02:00
Stefan Kangas
96656c77e2 Delete commented out help--describe-vector implementation
This was an attempt at lifting 'help--describe-vector' to Lisp that
turned out to be prohibitively slow.  It is still there in the Git log
if we need to refer back to it.  Currently, it is just dead weight, so
delete it.

* lisp/help.el: Delete commented out code.
2024-11-13 23:29:57 +01:00
Stefan Kangas
8e27f5bc52 Add docstring to gnus-group-toggle-subscription
* lisp/gnus/gnus-group.el (gnus-group-toggle-subscription): Add
docstring.
2024-11-13 23:29:57 +01:00
Stefan Monnier
8afcfed825 * lisp/files.el (require-with-check): Fix last fix (bug#74289) 2024-11-13 11:39:05 -05:00
Michael Albinus
22900b5990 Tramp: Rework handling of temporary connection properties
* doc/misc/tramp.texi (Ad-hoc multi-hops): Precise use of parallel
multi-hops.

* lisp/net/tramp-cache.el:
* lisp/net/tramp.el:
* lisp/net/tramp-adb.el:
* lisp/net/tramp-androidsu.el:
* lisp/net/tramp-cmds.el:
* lisp/net/tramp-crypt.el:
* lisp/net/tramp-gvfs.el:
* lisp/net/tramp-sh.el:
* lisp/net/tramp-smb.el: Rename connection properties "process-name",
"process-buffer" and "first-password-request" to " process-name",
" process-buffer" and " first-password-request, repectively".

* lisp/net/tramp-cache.el (tramp-dump-connection-properties):
Don't dump properties starting with a space.
2024-11-13 16:23:27 +01:00
Stefan Monnier
986621ae1f (with-peg-rules): Build proper peg-functions
* lisp/progmodes/peg.el (with-peg-rules): Use the new (FUNC EXP)
feature in `cl-labels`.
2024-11-12 23:12:07 -05:00
Stefan Monnier
79400f4f18 (cl-labels): Add support for (FUNC EXP) bindings (bug#59786)
Allow `cl-labels` to use the same (FUNC EXP) bindings as were already added
to `cl-flet` in Emacs-25.  The Info doc (mistakenly) already documented this
new feature.

* lisp/emacs-lisp/cl-macs.el (cl--self-tco-on-form): New function.
(cl-labels): Use it to add support for (FUNC EXP) bindings.

* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs--labels): Add test for
tail-recursive (FUNC EXP) bindings.
2024-11-12 22:58:53 -05:00
Eli Zaretskii
a7400cb881 ; * src/w32menu.c (w32_popup_dialog): Fix last change. 2024-11-12 18:37:30 +02:00
Eli Zaretskii
77739d42ab ; * src/w32menu.c (w32_popup_dialog): Fix last change (bug#74312). 2024-11-12 18:35:50 +02:00
Eli Zaretskii
b54fa15ffb Fix Cygw32 build
* src/pdumper.c (dump_mm_heap_cb_release): Avoid NULL pointer
dereference.
* src/w32dwrite.c (INITGUID) [CYGWIN]: Don't define for Cygwin.
* src/w32menu.c (w32_popup_dialog): Fix Cygw32 build.  (Bug#74312)
2024-11-12 14:41:01 +02:00
Eli Zaretskii
6ddbe8c701 * src/w32fns.c (process_dropfiles): Fix cygw32 build (bug#74312). 2024-11-11 18:04:52 +02:00
Stefan Monnier
3496234c8e lisp/files.el (require-with-check): Fix bug#74091. 2024-11-10 16:50:36 -05:00
Eli Zaretskii
90c97d3fac Fix handling of permanent-local variables in 'kill-all-local-variables'
The original implementation went too far and caused unexpected
results.
* src/buffer.c (reset_buffer_local_variables): Second argument is
now 'int', and can be 0, 1, or 2.
(Fkill_all_local_variables): Call 'reset_buffer_local_variables'
with 2nd argument 2 if KILL-PERMANENT is non-nil.  (Bug#74091)
2024-11-10 20:49:45 +02:00
Michael Albinus
c96e576090 Precise password cache in Tramp
* doc/misc/tramp.texi (Password handling):
Describe auth-source-cache-expiry and auth-source-do-cache instead
of password-cache-expiry and password-cache.  (Bug#74105)

* lisp/net/tramp.el (tramp-read-passwd): Check for `auth-sources'
being non-nil.
2024-11-10 12:35:15 +01:00
Eli Zaretskii
3954e8d9bb Fix picture-mode with full-width characters
* lisp/textmodes/picture.el (picture-insert): Don't rely on
'move-to-column' to move to the column that is its argument: this
might be false when full-width characters are involved.
2024-11-10 11:48:34 +02:00
Eli Zaretskii
7dabfe9465 Fix movement to the left in picture-mode
* lisp/textmodes/picture.el (picture-insert): Measure width by
counting columns on display, not by using 'string-width', because
the latter is inaccurate when TABs are involved.  (Bug#74255)
2024-11-10 10:56:40 +02:00
Jim Porter
1704fa4fb4 When using Eshell's "du" implementation, deduplicate hard links
* lisp/eshell/em-unix.el (eshell-du-sum-directory): Take SEEN-FILES.
(eshell/du): Create 'seen-files' hash table.
2024-11-09 17:01:34 -08:00
Jim Porter
37c583a2c2 Don't use dynamically-bound variables for Eshell's "du" command
* lisp/eshell/em-unix.el (block-size, by-bytes, dereference-links)
(grand-total, human-readable, max-depth, only-one-filesystem, show-all)
(eshell-du-size-string): Remove.
(eshell-du-sum-directory): Accept key arguments for adjusting behavior.
(eshell/du): Use 'block-size' of 1 instead of 'by-bytes', and define a
print function.
2024-11-09 17:01:34 -08:00
Jim Porter
f26fb25ec8 Use the Lisp implemention of "du" in Eshell when querying remote dirs
* lisp/eshell/em-unix.el (eshell/du): If all directories are local, use
the external "du" instead.
2024-11-09 17:01:33 -08:00
Stefan Kangas
f6a63e4b44 Don't pcomplete 'find -newerxy' flag
* lisp/pcmpl-gnu.el (pcomplete/find): Remove -newerxy flag.
This flag is not used verbatim like that, and we already complete
the "-newer" flag, which should be all that users need.
Problem reported by Juri Linkov <juri@linkov.net>.
2024-11-10 01:29:47 +01:00
Eli Zaretskii
daa42ddebe ; * etc/NEWS.30: Fix merge result. 2024-11-09 07:38:42 -05:00
Eli Zaretskii
61c8cc740e Merge from origin/emacs-30
dbcd9d782c Fix documentation and error message of adding local varia...
94bf7ad797 Document the 'display-line-numbers-disable' property
b1be0f2ba6 Document issues with 'use-package's ':custom' and byte co...
775970a783 ; * src/ftcrfont.c (ftcrhbfont_end_hb_font): Improve comm...
9149aa89ee Fix display of compositions when font style changes (Cair...
3bf00777be ; * src/xdisp.c (face_before_or_after_it_pos): Fix thinko...
2024-11-09 07:35:12 -05:00
Eli Zaretskii
6abe4feb73 ; Merge from origin/emacs-30
The following commit was skipped:

e88309eef3 Fix wrong value of `when` and `unless` with empty body (b...
2024-11-09 07:35:11 -05:00
Eli Zaretskii
96beaeab06 Merge from origin/emacs-30
3231af3727 Improve 'open-network-stream' documentation.
fb55431c44 ; Fix typos in case-conversion descriptions
83f095d1fd ; Fix typo and indexing in the ELisp manual
37b1799c9e ; Instrument proced-tests.el further
03fa832b4d Improve Tramp documentation on direct async processes

# Conflicts:
#	etc/NEWS
2024-11-09 07:34:57 -05:00
Eli Zaretskii
dbcd9d782c Fix documentation and error message of adding local variables
* lisp/files-x.el (add-file-local-variable)
(add-file-local-variable-prop-line): Doc fixes.
(add-file-local-variable): Improve the user-error text.  (Bug#74267)
2024-11-09 14:02:06 +02:00
Eli Zaretskii
94bf7ad797 Document the 'display-line-numbers-disable' property
* doc/lispref/display.texi (Overlay Properties):
* doc/lispref/text.texi (Special Properties): Document
'display-line-numbers-disable'.  Fix indexing.
2024-11-09 13:33:21 +02:00
Ola Nilsson
0642d5f7da Add functions supported by GNU Make 4.3.
* lisp/progmodes/make-mode.el (makefile-gnumake-functions-alist):
Add missing GNU Make functions, according to The GNU Make Manual
0.75 for GNU Make, and reorder the list of functions.  (Bug#74207)
2024-11-09 13:07:26 +02:00
David Ponce
8ee14643d2 Fix 'string-pixel-width' to not reset 'display-line-numbers'
* lisp/emacs-lisp/subr-x.el (string-pixel-width): Use the
'display-line-numbers-disable' property instead of setting the
variable 'display-line-numbers', to avoid global effects.
(Bug#73005)
2024-11-09 12:58:38 +02:00
Eli Zaretskii
17f4f2dec9 ; Fix last changes
* lisp/color.el (color-blend): Fix quoting of apostrophe.
(color-rgb-to-hex, color-blend): Autoload.
2024-11-09 12:45:14 +02:00
Joseph Turner
fdab542a56 Replace vtable--color-blend with color-blend
* lisp/emacs-lisp/vtable.el (vtable--face-color): Use `color-blend'.
(vtable--color-blend): Remove unused function.
2024-11-09 12:40:56 +02:00
Joseph Turner
bf312529de Add color-blend to blend two RGB lists
* lisp/color.el (color-blend): Blend two RGB lists.
* test/lisp/color-tests.el (color-tests-blend): Test color-blend.
* etc/NEWS: Announce color-blend.
2024-11-09 12:40:18 +02:00
Manuel Giraud
e1e8da5e4f Fix tmm "previous menu" shortcut
* lisp/tmm.el (tmm-clear-self-insert-and-exit): New function to
clear the minibuffer content then call `self-insert-and-exit'.
(tmm-define-keys): Use it.
(tmm-goto-completions): Explain why.  (Bug#74166)
2024-11-09 12:33:59 +02:00
Manuel Giraud
5def10ad94 `tmm-shortcut-inside-entry' docstring fix (bug#74111)
* lisp/tmm.el (tmm-shortcut-inside-entry): Doc fix.
2024-11-09 12:31:29 +02:00
Joost Kremers
ac91d190d6 Update vtable documentation
* doc/misc/vtable.texi: Document creation of empty vtables.
* etc/NEWS: Announce empty vtables.  (Bug#73775)
2024-11-09 12:14:39 +02:00
Joost Kremers
35e1ab970c vtable: allow resetting column alignment when table data changes
* lisp/emacs-lisp/vtable.el (vtable--compute-columns): If a column
was not created with an explicit 'align' property, allow changing
this property when the column data changes from numeric to
non-numeric (or vice versa).  This makes it possible to add data to
an empty table, because in a table without data all columns are
assumed to be numeric and right-aligned.  (Bug#73775)
2024-11-09 12:09:49 +02:00
Joost Kremers
425f244738 Enable inserting new objects into empty vtable
* lisp/emacs-lisp/vtable.el (vtable-insert-object): If the vtable
is empty, add the new object and recreate + redisplay the table.
(Bug#73775)
2024-11-09 12:09:09 +02:00
Joost Kremers
d94bb481ba Allow empty vtable
* lisp/emacs-lisp/vtable.el (vtable--compute-widths): Set default
width for columns that have no explicit width and no data.
(Bug#73775)
2024-11-09 12:08:18 +02:00
Eli Zaretskii
764db76072 Add dark color scheme to emacs.metainfo.xml
* etc/emacs.metainfo.xml: Add dark color scheme.  Patch by Peter
Oliver <p.d.oliver@mavit.org.uk> (bug#74123).
2024-11-09 12:02:05 +02:00
Peter Oliver
1f3434a84c Add more fields to AppStream metadata in emacs.metainfo.xml
* etc/emacs.metainfo.xml: Populate the vcs-browser and contribute URLs,
as well as the branding color.  (Bug#74123)
2024-11-09 11:59:41 +02:00
Eli Zaretskii
b1be0f2ba6 Document issues with 'use-package's ':custom' and byte compilation
* doc/misc/use-package.texi (User options): Warn against
byte-compiling init files that use ':custom'.  (Bug#73609)
2024-11-09 11:55:49 +02:00
Michael Albinus
6cde51f1bb Tramp: Support different proxies for the same destination
* doc/misc/tramp.texi (Ad-hoc multi-hops): New subsection "Using
different proxies for the same destination".

* etc/NEWS: Tramp supports different proxies for the same
destination host name in parallel.
Fix typos.

* lisp/net/tramp-cmds.el (tramp-cleanup-connection): Fix docstring.

* lisp/net/tramp.el (tramp-make-tramp-file-name): Don't call
`tramp-add-hops' during file name completion.
(tramp-handle-file-name-as-directory)
(tramp-handle-file-name-directory): Use `tramp-cache-undefined'
for an empty `tramp-default-proxies-alist'.
(tramp-add-hops): Extend.  Remove existing entries with same
target and different proxy, if needed.  (Bug#74219)
2024-11-09 10:29:42 +01:00
Ethan Kong
200214ca68 Fix 'internal_equal' so that it uses at most one hash table
The old implementation passed the hash table by value in
recursive tests, which would cause each recursive level to
initialize its own hash table, causing excess memory usage.
* src/fns.c (internal_equal): Delegate to 'internal_equal_1'.
(internal_equal_1): New function; body from old 'internal_equal'.
Pass the hash table argument by reference instead of by value.
(Bug#73883)
2024-11-09 10:56:54 +02:00