Commit Graph

172256 Commits (master)

Author SHA1 Message Date
nibon7 d1d031aea6 eglot: Add blueprint language server (Bug#70015)
* lisp/progmodes/eglot.el (eglot-server-programs): Add
blueprint-compiler.
2024-05-18 23:37:20 +02:00
kobarity c97e7a2da2 Improve fontification of Python assignments with type hints
* lisp/progmodes/python.el (python-font-lock-keywords-maximum-decoration):
Fontify type hints of assignment statement.  (Bug#69357)
* test/lisp/progmodes/python-tests.el
(python-font-lock-assignment-statement-11)
(python-font-lock-assignment-statement-12)
(python-font-lock-assignment-statement-13)
(python-font-lock-assignment-statement-18): Add fontification of type
hints.
(python-font-lock-assignment-statement-19): New test.
2024-05-18 22:22:34 +02:00
Andrea Corallo bbb3038ad9 * admin/syncdoc-type-hierarchy.el (syncdoc-make-type-table): Clean-up quote. 2024-05-18 22:18:55 +02:00
Stefan Kangas e75921a1dc ; * etc/NEWS: Announce last change. 2024-05-18 21:36:57 +02:00
Jostein Kjønigsen e74eedaa2e nxml-mode: Add schemas for Mono/.NET related files
* etc/schema/dotnet-appconfig.rnc:
* etc/schema/dotnet-packages-config.rnc:
* etc/schema/dotnet-packages-props.rnc:
* etc/schema/dotnet-resx.rnc:
* etc/schema/msbuild.rnc:
* etc/schema/nuget.rnc:
* etc/schema/nuspec.rnc: New files.
* etc/schema/README: Document copyright status of above new files.
* etc/schema/schemas.xml: Use above new files to support Mono/.NET
development related XML files.

This change was discussed in:
https://lists.gnu.org/r/emacs-devel/2024-02/msg00638.html
2024-05-18 21:36:47 +02:00
Stefan Kangas bffa00bcbc ; Fix typo (Bug#71043) 2024-05-18 20:33:16 +02:00
Stefan Kangas 96f64c156c Fix double periods in `doctor-symptoms`
* lisp/play/doctor.el (doctor-symptoms): Don't produce double periods.
2024-05-18 19:25:42 +02:00
Paul Eggert 21ed391440 Simplify 32-bit Android bit fiddling
* src/sfnt.c: Include stdbit.h.
(sfnt_count_leading_zero_bits) [!INT64_MAX]: Remove this function,
which was confusingly named as it actually returned 31 minus the
number of leading zero bits.
(sfnt_multiply_divide_2) [!INT64_MAX]: Use stdc_leading_zeros instead.
2024-05-18 10:23:51 -07:00
Paul Eggert 88b0bb4db9 Prefer stdbit.h to count-one-bits.h etc
C23's <stdbit.h> in the long run should be better supported than
Gnulib's count-one-bits.h and similar headers, so switch to the
C23 primitives, with a Gnulib fallback for platforms lacking C23.
* admin/merge-gnulib (GNULIB_MODULES): Remove count-leading-zeros,
count-one-bits, count-trailing-zeros.  Add stdc_bit_width,
stdc_count_ones, stdc_trailing_zeros.
* lib/count-leading-zeros.c, lib/count-leading-zeros.h:
* lib/count-one-bits.c, lib/count-one-bits.h:
* lib/count-trailing-zeros.c, lib/count-trailing-zeros.h: Remove.
* lib/stdbit.c, lib/stdbit.in.h, lib/stdc_bit_width.c:
* lib/stdc_count_ones.c, lib/stdc_leading_zeros.c:
* lib/stdc_trailing_zeros.c, m4/stdbit_h.m4:
New files, copied from Gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* src/data.c: Do not include count-one-bits.h, count-trailing-zeros.h.
Instead, rely on lisp.h including stdbit.h.
(Flogcount, Fbool_vector_count_population)
(Fbool_vector_count_consecutive): Use stdbit.h macros instead of
count-one-bits.h and count-trailing-zeros.h macros.
(shift_right_ull, count_one_bits_word, pre_value)
(count_trailing_zero_bits): Remove; no longer needed.
* src/lisp.h: Include stdbit.h instead of count-leading-zeros.h.
(elogb): Use stdbit.h macro instead of count-leading-zeros.h macro.
2024-05-18 10:23:51 -07:00
Paul Eggert 08550d058f Update from Gnulib by running admin/merge-gnulib 2024-05-18 10:23:50 -07:00
Stefan Kangas c9af2fab92 List Andrea Corallo as co-maintainer in ack.texi
* doc/emacs/ack.texi (Acknowledgments): List Andrea Corallo as
co-maintainer from 29.3 onwards.
2024-05-18 19:14:21 +02:00
Eshel Yaron 3b890bf2bd
New functions '(set-)window-cursor-type'
* src/window.h (struct window): Add 'cursor_type' slot.
(wset_cursor_type): New inline function.
* src/xdisp.c (get_window_cursor_type): Consult 'cursor_type'.
* src/window.c (make_window): Initialize 'cursor_type' to t.
(Fset_window_cursor_type, Fwindow_cursor_type): New functions.
(syms_of_window): List their symbols.
* doc/lispref/windows.texi (Window Point): Document them.
* doc/lispref/frames.texi (Cursor Parameters): Mention
new 'set-window-cursor-type'.
* etc/NEWS: Announce new functions.  (Bug#70622)
2024-05-18 15:42:19 +02:00
Dmitry Gutov 6badb1260a minibuffer-completion-help: Fix earlier mistake
* lisp/minibuffer.el (minibuffer-completion-help): Fix earlier
mistake.  Instead of altering a variable whose value is
immutable (and already captured in a saved list), move the
reference to said list to a lexical binding and alter that
list's second element instead.

https://lists.gnu.org/archive/html/emacs-devel/2024-05/msg00875.html
2024-05-18 16:30:57 +03:00
Po Lu 8dc00dc222 Housekeeping around androidselect.c
* java/org/gnu/emacs/EmacsClipboard.java (setClipboard)
(getClipboard):

* java/org/gnu/emacs/EmacsSdk11Clipboard.java (setClipboard)
(getClipboard):

* java/org/gnu/emacs/EmacsSdk8Clipboard.java (setClipboard)
(getClipboard): Save and return Strings rather than byte arrays.

* src/androidselect.c (android_init_emacs_clipboard)
(Fandroid_set_clipboard, Fandroid_get_clipboard): Adjust to
match.
2024-05-18 20:45:35 +08:00
Eli Zaretskii 5ec4c1a7d3 Merge from origin/emacs-29
a4828155d8 ; * doc/lispintro/emacs-lisp-intro.texi (nthcdr): Whitesp...
df1a9e42ba Document :box attribute caveats when used on display strings
ca17bc8dd0 Improve documentation of 'movemail'
d47aa33bcd Replace incorrect link in Rmail chapter of Emacs manual
35138b90dd ; * doc/lispref/parsing.texi (Parsing Program Source): Im...
3dd09516c9 ; Improve documentation of 'set-fontset-font'
042b58b5ff ; * doc/emacs/search.texi (Word Search): Add index entry.
60b1768dc5 ; * src/window.c (Fwindow_scroll_bars): Doc fix.
2024-05-18 07:56:54 -04:00
Eli Zaretskii a4828155d8 ; * doc/lispintro/emacs-lisp-intro.texi (nthcdr): Whitespace (bug#71033). 2024-05-18 14:38:29 +03:00
Ergus 2e862f81a3 Add support for Rust compilation messages
* etc/compilation.txt (Rust): Add Rust/cargo examples.

* lisp/progmodes/compile.el
(compilation-error-regexp-alist-alist): Add rust/cargo error and
warning patterns.  (Bug#70794)
2024-05-18 13:51:01 +03:00
Tony Zorman a019d2bd56 use-package: Add ':ignored-files' support to ':vc' keyword
* lisp/use-package/use-package-core.el (use-package-split-when):
New utility function to split a list whenever a specified
predicate returns t.
(use-package-vc-valid-keywords): A new defconst to gather all
allowed keywords.
(use-package-normalize--vc-arg): Properly normalize the
':ignored-files' keyword, in that the following are all valid
ways of entering files:
  :ignored-files "a"
  :ignored-files ("a")
  :ignored-files "a" "b" "c"
  :ignored-files ("a" "b" "c")
(use-package-normalize/:vc): Adjust normalization, now that we
do not necessarily receive a valid plist as an input.  (Bug#66567)

* test/lisp/use-package/use-package-tests.el
(use-package-test-normalize/:vc): Add tests for ':ignored-files'
keyword.
2024-05-18 13:30:45 +03:00
Tony Zorman 426176c75e use-package: Update list of valid :vc keywords
* lisp/use-package/use-package-core.el: Add ':shell-command'
and ':make' to valid keywords.  (Bug#66567)
2024-05-18 13:27:47 +03:00
Eli Zaretskii 82a31e27e6 Fix printing the result by 'eval-print-last-sexp'
* lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Record the
desired output stream before evaluating the expression.
(Bug#70931)
2024-05-18 12:55:34 +03:00
Jared Finder be03dda5b0 Adding window-tool-bar package (bug#68765).
* lisp/window-tool-bar.el: New file.
2024-05-18 12:47:04 +03:00
Jared Finder da325ff7b2 Add user option to only display default tool bar
This works well with `window-tool-bar-mode', to be added in upcoming
commit.  Then the default tool bar is displayed frame-wide and
mode-specific tool bars are displayed in the window that mode is
active in.

* lisp/tool-bar.el (tool-bar-always-show-default): New user option.
(tool-bar--cache-key, tool-bar-make-keymap-1): Return default tool bar
when option is set.
2024-05-18 12:46:22 +03:00
Jared Finder fd3ab22a3e Inform user when tab-line-mode command makes no change
* lisp/tab-line.el (tab-line-mode): Display message when command is
run on already altered tab-line-format.
2024-05-18 12:46:22 +03:00
Eli Zaretskii df1a9e42ba Document :box attribute caveats when used on display strings
* doc/lispref/display.texi (Replacing Specs, Face Attributes):
Mention special considerations when a display string has a
':box' face attribute identical to the surrounding buffer text.
Suggested by JD Smith <jdtsmith@gmail.com>.  (Bug#70637)
2024-05-18 12:15:21 +03:00
Joost Kremers 4f27d763bb Make 'vtable-insert-object' more versatile
* lisp/emacs-lisp/vtable.el (vtable-insert-object): Rename
argument AFTER-OBJECT to LOCATION; allow use of index to
refer to the insertion position; add argument BEFORE.
(Bug#70664).

* etc/NEWS:
* doc/misc/vtable.texi (Interface Functions): Document the
change.

* test/lisp/emacs-lisp/vtable-tests.el
(test-vtable-insert-object): New test.
2024-05-18 11:52:33 +03:00
Andrea Corallo 19c983dded * Work around GCC bug affecting Garbage Collection (bug#65727).
* src/lisp.h (flush_stack_call_func): Prevent GCC sibling call
optimization to run with an asm inline.
2024-05-18 09:03:53 +02:00
Eli Zaretskii ca17bc8dd0 Improve documentation of 'movemail'
* doc/emacs/rmail.texi (Movemail): Fix the name of the Mailutils
manual in the printed version.  Add index entries.  Move the
description of remote mailboxes to...
(Remote Mailboxes): ...here, to avoid duplication.
2024-05-18 09:12:54 +03:00
Jakub Ječmínek d47aa33bcd Replace incorrect link in Rmail chapter of Emacs manual
* doc/emacs/rmail.texi (Movemail): Fix cross-reference to a node
in the Mailutils manual.  (Bug#71018)
2024-05-18 08:50:48 +03:00
Dmitry Gutov db039399cc Fix project-find-regexp in remote projects
* lisp/progmodes/xref.el (xref--hits-file-prefix):
New variable.  Something to prepend to each file name (bug#69233).
(xref--convert-hits): Use it to also store the "default directory"
part of the filename conditionally on whether it's remote.
(xref--collect-matches): Use the new variable here.
2024-05-18 03:39:50 +03:00
Dmitry Gutov 646b8da4a5 xref--group-name-for-display: Undo most of the latest change
* lisp/progmodes/xref.el (xref--group-name-for-display):
Remove the DD-SUFFIX parameter, returning the function more like
to how it was (bug#69233).
(xref--analyze, xref--add-log-current-defun):
Revert the previous change accordingly.

* test/lisp/progmodes/xref-tests.el: Undo the last change.
2024-05-18 03:32:48 +03:00
Eli Zaretskii 35138b90dd ; * doc/lispref/parsing.texi (Parsing Program Source): Improve indexing. 2024-05-17 19:03:39 +03:00
Po Lu 1f08984a67 Port to certain Android environments with no GUI
* configure.ac (USER_FULL_NAME): Define to
android_user_full_name only when a GUI system is being built.
Otherwise, set to pw->pw_gecos or NULL consistently with the
presence of pw->pw_gecos.

* src/editfns.c (Fuser_full_name): Adjust to match.  Accept NULL
values from USER_FULL_NAME.
2024-05-17 19:21:29 +08:00
Eli Zaretskii 3dd09516c9 ; Improve documentation of 'set-fontset-font'
* doc/lispref/display.texi (Fontsets):
* src/fontset.c (Fset_fontset_font): Doc fix (bug#70993).
2024-05-17 10:18:35 +03:00
Eli Zaretskii 6ca3a60db3 ; Avoid compiler warning in w32term.c
* src/w32term.c (w32_draw_glyphless_glyph_string_foreground):
Avoid GCC 14 warning about storing address of local variable.
2024-05-17 09:43:20 +03:00
Jim Porter 2f7d011d18 Add new Eshell built-in command 'funcall'
* lisp/eshell/esh-cmd.el (eshell/funcall): New function...

* test/lisp/eshell/em-glob-tests.el (em-glob-test/expand/splice-results)
(em-glob-test/expand/no-splice-results)
(em-glob-test/expand/explicitly-splice-results)
(em-glob-test/expand/explicitly-listify-results):
* test/lisp/eshell/esh-var-tests.el
(esh-var-test/quoted-interp-lisp-indices)
(esh-var-test/quoted-interp-cmd-indices)
(esh-var-test/interp-convert-quoted-var-number)
(esh-var-test/quoted-interp-convert-var-number)
(esh-var-test/quoted-interp-convert-quoted-var-number)
(esh-var-test/last-status-var-lisp-command)
(esh-var-test/last-result-var-split-indices)
(esh-var-test/last-arg-var-split-indices): ... use it in tests.

* doc/misc/eshell.texi (List of Built-ins): Describe this command.
2024-05-16 20:33:18 -07:00
Dmitry Gutov 113bd2082c ; Fix search in remote project with relative file names 2024-05-17 01:06:11 +03:00
Harald Jörg 54a7268763 ; cperl-mode.el: prevent Emacs from "freezing" (Bug#70948)
* cperl-mode.el (defconst): Replace the rx expression for
`cperl--basic-identifier-rx' with its actual macro expansion.
This makes it efficient under Emacs 29.3, where the expansion
by rx.el could make Emacs freeze with a crafted Perl source
(Bug#70948).
2024-05-16 22:22:37 +02:00
Harald Jörg 96269209a3 ;cperl-mode.el: Allow running under Emacs >=27
I would like to advertise cperl-mode.el from the repository as a
workaround for bug#70948.  This can be achieved by safeguarding
the call to derived-mode-add-parents with a version check.

* lisp/progmodes/cperl-mode.el: Call derived-mode-add-parents only
if it is available.
2024-05-16 21:58:34 +02:00
Philip Kaludercic 650ee9e071
; Fix wrong-type-argument in 'rcirc-handler-INVITE'
* lisp/net/rcirc.el (rcirc-handler-INVITE): Use
'with-rcirc-process-buffer' instead of passing a process to
'buffer-local-value'.
2024-05-16 19:51:48 +02:00
Eli Zaretskii 042b58b5ff ; * doc/emacs/search.texi (Word Search): Add index entry. 2024-05-16 18:42:43 +03:00
Stefan Monnier acfb2c6163 (describe-package-1): Handle (nil . "string") in `:maintainer`
* lisp/emacs-lisp/package.el (describe-package-1): Refine the
check to distinguish the old single-maintainer format from the
new multi-maintainer format.  (bug#69712)
2024-05-16 11:04:50 -04:00
Stefan Monnier ee3ef57c24 * lisp/loadup.el: Add workaround for occasional "bootstrap" failure 2024-05-16 09:50:39 -04:00
Robert Pluim cdf49336cd Add multi/unibyte string tests for key-description
* test/src/keymap-tests.el (keymap--key-description): Add multi/unibyte
tests.

This is to check the fix for Bug#59305.
2024-05-16 14:29:10 +02:00
Robert Pluim c22b91fd9c * doc/emacs/mule.texi (Unibyte Mode): Mention iso-transl-set-language 2024-05-16 14:29:10 +02:00
Andrea Corallo 1b622ff66e * Fix bootstrap with checking enabled
* lisp/emacs-lisp/comp.el (comp--limplify-top-level): Set function
safety.
2024-05-16 07:53:48 +02:00
Jim Porter 59b889885d ; * lisp/eshell/esh-ext.el (eshell-remote-command): Improve last change. 2024-05-15 22:22:56 -07:00
Jim Porter e260bf1be7 Use "/local:" prefix in Eshell to run local commands when cwd is remote
* lisp/eshell/esh-ext.el (eshell-explicit-remote-commands)
(eshell-explicit-command): Update docstrings.
(eshell--local-prefix): New constant.
(eshell-handle-remote-command): Remove.
(eshell-quoted-file-command): New function...
(eshell-ext-initialize): ... add it as a hook.
(eshell-remote-command): Support running commands on localhost.
(eshell-connection-local-command): Rename from
'eshell-external-command'.
(eshell-external-command): New implementation calling
'eshell-remote-command' or 'eshell-connection-local-command' as
appropriate.

* test/lisp/eshell/esh-ext-tests.el
(esh-ext-test/explicitly-local-command): Update test.

* doc/misc/eshell.texi (Remote Access): Update documentation.

* etc/NEWS: Update announcement.
2024-05-15 18:50:54 -07:00
Sean Whitton c85294a613 (eglot--managed-mode): Avoid calling track-changes unregistered
* lisp/progmodes/eglot.el (eglot--managed-mode): Unregister from
track-changes after `eglot-shutdown` since that function may
call `eglot--signal-textDocument/didChange`.  (bug#70927)
2024-05-15 14:50:18 -04:00
Sean Whitton 5900cf92ea vc-git-root-log-format: Explicitly match periods
* lisp/vc/vc-git.el (vc-git-root-log-format): Explicity match
periods, rather than matching them only because '.' matches any
chars.
2024-05-15 19:04:09 +01:00
Stefan Monnier fea8d54c48 control.texi: Be a bit more explicit about the behavior of `pcase-let`
* doc/lispref/control.texi (Destructuring with pcase Patterns):
Clarify the kind of "unspecified" behavior that can occur when
the destructing pattern does not match the value.
2024-05-15 13:57:11 -04:00