]> git.eshelyaron.com Git - emacs.git/log
emacs.git
22 months agoDeclare `indirect-function` to be side-effect-free and error-free
Mattias Engdegård [Wed, 22 Feb 2023 13:13:07 +0000 (14:13 +0100)]
Declare `indirect-function` to be side-effect-free and error-free

* lisp/emacs-lisp/byte-opt.el (side-effect-and-error-free-fns):
Add `indirect-function` which is now error-free.

22 months agoUse delete-char instead of backward-delete-char
Mattias Engdegård [Wed, 22 Feb 2023 11:55:45 +0000 (12:55 +0100)]
Use delete-char instead of backward-delete-char

* lisp/bs.el (bs-delete):
* lisp/dired-aux.el (dired-show-file-type):
* lisp/emulation/viper-cmd.el (viper-insert-prev-from-insertion-ring):
* lisp/man.el (Man-fontify-manpage, Man-cleanup-manpage):
* lisp/net/mailcap.el (mailcap-parse-mailcap):
* lisp/progmodes/antlr-mode.el (antlr-insert-makefile-rules):
* lisp/textmodes/reftex-ref.el (reftex-reference):
* lisp/vc/emerge.el:
* lisp/woman.el (woman-man-buffer):
* test/src/fns-tests.el (fns-tests-hash-buffer):
Replace some calls to backward-delete-char with delete-char (negating
the argument) since the former is intended for interactive use.
This silences most of the interactive-only warnings.

22 months ago; * configure.ac (EMACS_CONFIG_FEATURES): Improve configure message.
Po Lu [Wed, 22 Feb 2023 02:51:27 +0000 (10:51 +0800)]
; * configure.ac (EMACS_CONFIG_FEATURES): Improve configure message.

22 months agoRemove stray quotes
Mattias Engdegård [Tue, 21 Feb 2023 15:13:36 +0000 (16:13 +0100)]
Remove stray quotes

* lisp/emacs-lisp/bytecomp.el (byte-compile-form):
* lisp/help-fns.el (help-fns--interactive-only): Fix obvious mistake.
Since `interactive-only` is not supposed to be anything other than
a symbol at these points it was not a very consequential bug.

22 months agoSay whether we're using X11 double buffering
Robert Pluim [Tue, 21 Feb 2023 17:21:56 +0000 (18:21 +0100)]
Say whether we're using X11 double buffering

* configure.ac (EMACS_CONFIG_FEATURES): Output value of HAVE_XDBE.

22 months ago; * test/lisp/emacs-lisp/nadvice-tests.el: suppress some warnings
Mattias Engdegård [Tue, 21 Feb 2023 11:30:09 +0000 (12:30 +0100)]
; * test/lisp/emacs-lisp/nadvice-tests.el: suppress some warnings

22 months agoFollow aliases for `interactive-only` declarations
Mattias Engdegård [Tue, 21 Feb 2023 10:46:14 +0000 (11:46 +0100)]
Follow aliases for `interactive-only` declarations

Make `interactive-only` declarations apply to aliases of the same
function as well since this quality isn't in the name but in what
the function does.

* lisp/emacs-lisp/bytecomp.el (byte-compile-form):
* lisp/help-fns.el (help-fns--interactive-only):
Follow aliases when retrieving the `interactive-only` property.

22 months ago; Merge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 09:58:00 +0000 (10:58 +0100)]
; Merge from origin/emacs-29

The following commit was skipped:

16ca258b1fc Repair mistake in a previous edmacro-sanitize-string change

22 months agoMerge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 09:58:00 +0000 (10:58 +0100)]
Merge from origin/emacs-29

5a864f23eb8 regex-emacs.c: Reduce the use of backtracking a bit further
e83c78b8c77 Eglot: respect user's Eldoc configuration by default
5d0b45cd67b Make the native compiler always use `make-temp-file' for ...
88ee92e61d7 ; * lisp/progmodes/rust-ts-mode.el (treesit-node-end): De...
02aba20d528 Update to Transient v0.3.7-216-gfe40342
d7010d64b21 Add declaration_list to c-ts-common-indent-type-regexp-alist
19480aa30e3 Typescript-ts-mode: Add switch case handling
dfc850ca022 Fix object initializer for csharp-mode (bug#61541)
fc4bfa76db9 Update to Org 9.6.1-34-geea8da
afbce8bb467 Improve tree-sitter indent anchor prev-adaptive-prefix (b...
2e6093b425e Adjust jsx indentation
c544df4fa3f Cleanup preproc indent for c-ts-mode (bug#61558)
d397f3d5084 Add comment style toggle for c-ts-mode (bug#61550)
683961cd733 * lisp/simple.el (choose-completion): Check for completio...
1ac05eac74b rust-ts-mode--font-lock-settings: Avoid the explicit 'def...
b5bea14ca17 * lisp/progmodes/xref.el: Bump the version.

# Conflicts:
# src/comp.c

22 months agoDetect and prevent function alias loops in `fset` and `defalias`
Mattias Engdegård [Mon, 20 Feb 2023 14:23:12 +0000 (15:23 +0100)]
Detect and prevent function alias loops in `fset` and `defalias`

Make `fset` and `defalias` signal an error on attempts to create
circular alias chains.  This is more effective, efficient and
convenient than permitting alias loops to be created and trying to
detect them at run time each time a function is called, which is what
we have been doing until now, badly.

* lisp/help-fns.el (help-fns--analyze-function):
Don't pass obsolete argument.
* lisp/subr.el (function-alias-p):
* src/data.c (indirect_function, Findirect_function): Simplify.
Now error-free, second argument obsolete.
(Ffset): Detect loops.
* test/lisp/help-fns-tests.el (help-fns--analyze-function-recursive):
* test/lisp/subr-tests.el (test-alias-p):
Adapt tests.
* test/src/data-tests.el (data-tests-fset, data-tests-defalias): New.
* doc/lispref/eval.texi (Function Indirection):
* doc/lispref/functions.texi (Defining Functions, Function Cells):
Update manual.
* etc/NEWS: Announce.

22 months ago; Merge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 09:32:42 +0000 (10:32 +0100)]
; Merge from origin/emacs-29

The following commits were skipped:

a5b5f73d886 xref--insert-xrefs: Use 'shadow' for the line number colon
6b908773599 * lisp/progmodes/xref.el (xref--insert-xrefs): Remove ext...
25c65e6b586 Backport: Fix xref-clear-marker-stack refactoring mistake

22 months agoMerge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 09:32:42 +0000 (10:32 +0100)]
Merge from origin/emacs-29

ad6c6a3a115 ; Merge from origin/emacs-28
9a6f22fd0b4 Merge from origin/emacs-28
a44d906740f ; Commit files changed by "autoreconf -i -I m4 --force"
f5a99945b6f ; Update ChangeLog for Emacs 28.3
f7bd5ac5521 Update HISTORY for Emacs 28.3

# Conflicts:
# build-aux/config.guess
# build-aux/config.sub

22 months agoRepair mistake in a previous edmacro-sanitize-string change
Mattias Engdegård [Mon, 20 Feb 2023 11:55:09 +0000 (12:55 +0100)]
Repair mistake in a previous edmacro-sanitize-string change

* lisp/edmacro.el (edmacro-sanitize-for-string):
This condition should not have been 'repaired' but removed altogether.
Do so now, fixing bug#61647.

Reported by Eduardo Ochs.

(cherry picked from commit 4eefadad0670ad1c3da2505d734e528d54c76bef)

22 months ago; Merge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 09:28:35 +0000 (10:28 +0100)]
; Merge from origin/emacs-29

The following commit was skipped:

32be128382f ; Merge from origin/emacs-28

22 months agoMerge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 09:28:34 +0000 (10:28 +0100)]
Merge from origin/emacs-29

1630bfb5d08 Merge from origin/emacs-28
e2ac0d416b9 ; Merge from origin/emacs-28
068b53500e2 ; Improve image-dired-thumbnail-storage docstring
497ed0fb42e ; * doc/emacs/dired.texi (Image-Dired): Fix last change.
4aa397e71b2 More doc on image-dired-dired-* (bug#61624)
893ddd5903e Eglot: improve treatment of completion items without :sor...
4a77fcb1478 Update ChangeLog and AUTHORS for Emacs 28.3
e339926272a Fix etags local command injection vulnerability
5d05ea803e9 Fixed ctags local command execute vulnerability
22fb5ff5126 Fix ruby-mode.el local command injection vulnerability (b...
807d2d5b3a7 Fix htmlfontify.el command injection vulnerability.
ae9bfed50db Fix storing email into nnmail by Gnus

22 months ago; Merge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 09:28:34 +0000 (10:28 +0100)]
; Merge from origin/emacs-29

The following commit was skipped:

a44d906740f ; Commit files changed by "autoreconf -i -I m4 --force"

22 months agoMerge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 09:27:27 +0000 (10:27 +0100)]
Merge from origin/emacs-29

f5a99945b6f ; Update ChangeLog for Emacs 28.3
f7bd5ac5521 Update HISTORY for Emacs 28.3

22 months ago; Merge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 08:44:57 +0000 (09:44 +0100)]
; Merge from origin/emacs-29

The following commit was skipped:

ba3aba3096a Bump Emacs version to 28.3

22 months agoMerge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 08:44:57 +0000 (09:44 +0100)]
Merge from origin/emacs-29

22 months ago; Merge from origin/emacs-29
Stefan Kangas [Tue, 21 Feb 2023 08:44:57 +0000 (09:44 +0100)]
; Merge from origin/emacs-29

The following commits were skipped:

e339926272a Fix etags local command injection vulnerability
5d05ea803e9 Fixed ctags local command execute vulnerability
22fb5ff5126 Fix ruby-mode.el local command injection vulnerability (b...
807d2d5b3a7 Fix htmlfontify.el command injection vulnerability.
ae9bfed50db Fix storing email into nnmail by Gnus

22 months agoregex-emacs.c: Reduce the use of backtracking a bit further
Stefan Monnier [Tue, 21 Feb 2023 02:22:41 +0000 (21:22 -0500)]
regex-emacs.c: Reduce the use of backtracking a bit further

bug#61514 exhibited some undesirable backtracking in a case where
it's easy to avoid it by making `mutually_exclusive_p` just a bit
more careful.

* src/regex-emacs.c (mutually_exclusive_p): Handle `on_failure_jump`s.

* test/src/regex-emacs-tests.el (regexp-tests-backtrack-optimization):
Add a few tests.

22 months agoEglot: respect user's Eldoc configuration by default
João Távora [Mon, 20 Feb 2023 22:43:50 +0000 (22:43 +0000)]
Eglot: respect user's Eldoc configuration by default

This change addresses the problems reported in many Elglot reports
dating back to early 2021 at least:

  https://github.com/joaotavora/eglot/issues/648
  https://github.com/joaotavora/eglot/issues/894
  https://github.com/joaotavora/eglot/issues/920
  https://github.com/joaotavora/eglot/issues/1031
  https://github.com/joaotavora/eglot/issues/1171

In one form or another, the reports point out that the multiple pieces
of information about the "thing at point" made available by the LSP
server are not all being considered by the ElDoc system.

The reason for this is Eglot setting/trampling the variables
'eldoc-documentation-strategy' and 'eldoc-documentation-functions' in
its minor more entry function.

The reason it did that is historical and is partially described in the
issues above.  But, evidently, it never made much sense, because so
many people want to override it, which requires setting
'eldoc-documentation-strategy' to the non-default value
'eldoc-documentation-compose'.

The problem was made worse by the fact that setting it as usual in
either the Customize menu or their init file didn't work, requiring a
fairly complex Elisp snippet.  That is now solved as of this commit.

If the user does not do any setting, then Eglot works basically the
same as before (i.e. shows only one piece of information).

It is arguable that the default value for
'eldoc-documentation-strategy' should change globally to
'eldoc-documentation-compose', but that has other subtle implications
and is not part of this commit.

* lisp/progmodes/eglot.el (eglot--managed-mode): Don't set Eldoc
variables greedily.

22 months ago* list/emacs-lisp/cconv.el (cconv-make-interpreted-closure): Tweak docstring
Stefan Monnier [Mon, 20 Feb 2023 22:11:08 +0000 (17:11 -0500)]
* list/emacs-lisp/cconv.el (cconv-make-interpreted-closure): Tweak docstring

22 months agoMake the native compiler always use `make-temp-file' for temporary files
Andrea Corallo [Mon, 20 Feb 2023 20:03:58 +0000 (21:03 +0100)]
Make the native compiler always use `make-temp-file' for temporary files

* src/comp.c (CALL4I): Define macro.
(Fcomp__compile_ctxt_to_file): Use `make-temp-file' instead of
`make-temp-file-internal'.
* lisp/emacs-lisp/comp.el (comp--trampoline-abs-filename): Likewise.

22 months ago; * lisp/progmodes/rust-ts-mode.el (treesit-node-end): Declare.
Eli Zaretskii [Mon, 20 Feb 2023 17:30:02 +0000 (19:30 +0200)]
; * lisp/progmodes/rust-ts-mode.el (treesit-node-end): Declare.

22 months agoUpdate to Transient v0.3.7-216-gfe40342
Jonas Bernoulli [Mon, 20 Feb 2023 15:36:16 +0000 (16:36 +0100)]
Update to Transient v0.3.7-216-gfe40342

22 months agoAdd declaration_list to c-ts-common-indent-type-regexp-alist
Daniel Martín [Sun, 19 Feb 2023 21:57:54 +0000 (22:57 +0100)]
Add declaration_list to c-ts-common-indent-type-regexp-alist

* lisp/progmodes/c-ts-mode.el (c-ts-base-mode): Consider a
"declaration_list" a block. (Bug#61635)
* test/lisp/progmodes/c-ts-mode-resources/indent.erts (Code): Add a
test case.

22 months agoTypescript-ts-mode: Add switch case handling
Theodor Thornhill [Mon, 20 Feb 2023 12:38:55 +0000 (13:38 +0100)]
Typescript-ts-mode: Add switch case handling

* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--indent-rules): New rules.

22 months agoFix object initializer for csharp-mode (bug#61541)
Theodor Thornhill [Sun, 19 Feb 2023 19:48:36 +0000 (20:48 +0100)]
Fix object initializer for csharp-mode (bug#61541)

* lisp/progmodes/csharp-mode.el (csharp-guess-basic-syntax): Make sure
we check the openers as well as closers.

22 months ago* lisp/emacs-lisp/macroexp.el (mapcan): Set funarg-positions.
Mattias Engdegård [Mon, 20 Feb 2023 11:58:48 +0000 (12:58 +0100)]
* lisp/emacs-lisp/macroexp.el (mapcan): Set funarg-positions.

22 months agoRepair mistake in a previous edmacro-sanitize-string change
Mattias Engdegård [Mon, 20 Feb 2023 11:55:09 +0000 (12:55 +0100)]
Repair mistake in a previous edmacro-sanitize-string change

* lisp/edmacro.el (edmacro-sanitize-for-string):
This condition should not have been 'repaired' but removed altogether.
Do so now, fixing bug#61647.

Reported by Eduardo Ochs.

22 months agoUpdate to Org 9.6.1-34-geea8da
Kyle Meyer [Mon, 20 Feb 2023 05:41:31 +0000 (00:41 -0500)]
Update to Org 9.6.1-34-geea8da

22 months agoHelp Elisp xref recognize defclass parent classes
Eric Abrahamsen [Mon, 20 Feb 2023 01:01:41 +0000 (03:01 +0200)]
Help Elisp xref recognize defclass parent classes

* lisp/progmodes/elisp-mode.el (elisp--xref-infer-namespace):
Handle defclass parents (bug#61640).

* test/lisp/progmodes/elisp-mode-tests.el (elisp-mode-infer-namespace):
New case in the test.

22 months agoImprove tree-sitter indent anchor prev-adaptive-prefix (bug#61314)
Yuan Fu [Sun, 19 Feb 2023 20:22:27 +0000 (12:22 -0800)]
Improve tree-sitter indent anchor prev-adaptive-prefix (bug#61314)

Now prev-adaptive-prefix looks at the current line and checks if it
begins with a prefix itself.  If it does, prev-adaptive-prefix tries
to place the anchor before the prefix on the previous line, rather
than after it.

 - prev line
 - this line -> This line starts with a "-", i.e., begins with a
                prefix, so we place the anchor at the beginning of the
                 "-" of the previous line, rather than after it

 - prev line
   this line -> This line doesn't start with a prefix, so the anchor
                is placed after the previous line's "-".

* doc/lispref/modes.texi (Parser-based Indentation): Update manual.
* lisp/treesit.el:
(treesit-simple-indent-presets): Add local variable
this-line-has-prefix, base what anchor to return on the value of
this-line-has-prefix and whether the prev line has a prefix.

22 months agoAdjust jsx indentation
Theodor Thornhill [Sat, 18 Feb 2023 22:10:13 +0000 (23:10 +0100)]
Adjust jsx indentation

We can use the fact that 'treesit-indent-1' uses 'treesit-node-on'
when on a whitespace to set the actual current node as parent.  Now we
can correctly indent the 'jsx_text' nodes.  We also add some more
electric-indent-chars so that auto-indenting of jsx behaves a little
more fluently.

* lisp/progmodes/js.el (js--treesit-indent-rules): Add new rules.
(js-ts-mode): Add more indent-chars.
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--indent-rules): Add new rules.
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-base-mode): Add more indent-chars and layout rules.

22 months agoCleanup preproc indent for c-ts-mode (bug#61558)
Theodor Thornhill [Fri, 17 Feb 2023 19:46:19 +0000 (20:46 +0100)]
Cleanup preproc indent for c-ts-mode (bug#61558)

* lisp/progmodes/c-ts-mode.el (c-ts-mode--indent-styles): Make sure we
indent to great-grand-parent if inside an #ifdef...#endif block.  If
grand-parent is root node, then don't indent one step.
(c-ts-mode--preproc-offset): New helper anchor function to calculate
indent offset.

22 months agoAdd comment style toggle for c-ts-mode (bug#61550)
Theodor Thornhill [Fri, 17 Feb 2023 22:46:24 +0000 (23:46 +0100)]
Add comment style toggle for c-ts-mode (bug#61550)

* lisp/progmodes/c-ts-mode.el (c-ts-mode-toggle-comment-style): New
command.
(c-ts-base-mode-map): Add binding.
(c-ts-mode-set-modeline): New function.
(c-ts-mode): Set modeline.
(c++-ts-mode): Set modeline.

22 months ago* lisp/simple.el (choose-completion): Check for completion-in-region-mode.
Juri Linkov [Sun, 19 Feb 2023 19:30:02 +0000 (21:30 +0200)]
* lisp/simple.el (choose-completion): Check for completion-in-region-mode.

Don't use base-affixes when completion-use-base-affixes is non-nil
in completion-in-region-mode (bug#61535).

22 months agoTramp cleanup
Michael Albinus [Sun, 19 Feb 2023 17:35:46 +0000 (18:35 +0100)]
Tramp cleanup

* lisp/net/tramp-smb.el (tramp-smb-action-get-acl)
(tramp-smb-action-set-acl): Use timeout.

* test/lisp/net/tramp-tests.el
(tramp-test26-interactive-file-name-completion): Fix test.

22 months agorust-ts-mode--font-lock-settings: Avoid the explicit 'default' face
Dmitry Gutov [Sun, 19 Feb 2023 17:18:19 +0000 (19:18 +0200)]
rust-ts-mode--font-lock-settings: Avoid the explicit 'default' face

* lisp/progmodes/rust-ts-mode.el (rust-ts-mode--fontify-scope)
(rust-ts-mode--fontify-tail): New functions.
(rust-ts-mode--font-lock-settings): Use them instead of a lot of
more complex queries (bug#61302).  Thus avoid having to create
block fontification by other features using the 'default' face.
Replace the catch-all query for 'variable' with an enumeration of
possible parent nodes.

22 months agoxref--insert-xrefs: Use 'shadow' for the line number colon
Dmitry Gutov [Thu, 9 Feb 2023 19:57:18 +0000 (21:57 +0200)]
xref--insert-xrefs: Use 'shadow' for the line number colon

* lisp/progmodes/xref.el (xref--insert-xrefs): Use face 'shadow' for
the line number colon instead of continuing it face (bug#61340).

(cherry picked from commit d6d25a3c221e566de4df5319181e9ba9a8df285e)

22 months ago* lisp/progmodes/xref.el: Bump the version.
Dmitry Gutov [Sun, 19 Feb 2023 12:27:27 +0000 (14:27 +0200)]
* lisp/progmodes/xref.el: Bump the version.

22 months ago* lisp/progmodes/xref.el (xref--insert-xrefs): Remove extra space (bug#61340).
Juri Linkov [Wed, 8 Feb 2023 07:34:49 +0000 (09:34 +0200)]
* lisp/progmodes/xref.el (xref--insert-xrefs): Remove extra space (bug#61340).

(cherry picked from commit 643a11c6e5defc0a34da1a53b64aa1e097298923)

22 months agoBackport: Fix xref-clear-marker-stack refactoring mistake
Mattias Engdegård [Thu, 26 Jan 2023 11:36:20 +0000 (12:36 +0100)]
Backport: Fix xref-clear-marker-stack refactoring mistake

* lisp/progmodes/xref.el (xref-clear-marker-stack):
Clear the history correctly.  Changing a lexical variable has no effect.

(cherry picked from commit dfdc0f5fb7b10e737c3c8e2bdb1eb873a1e91bd7)

22 months ago; Merge from origin/emacs-28
Stefan Kangas [Sun, 19 Feb 2023 16:38:00 +0000 (17:38 +0100)]
; Merge from origin/emacs-28

The following commit was skipped:

a44d906740f ; Commit files changed by "autoreconf -i -I m4 --force"

22 months agoMerge from origin/emacs-28
Stefan Kangas [Sun, 19 Feb 2023 16:37:59 +0000 (17:37 +0100)]
Merge from origin/emacs-28

f5a99945b6f ; Update ChangeLog for Emacs 28.3
f7bd5ac5521 Update HISTORY for Emacs 28.3

# Conflicts:
# etc/NEWS

22 months ago; Merge from origin/emacs-28
Stefan Kangas [Sun, 19 Feb 2023 16:35:20 +0000 (17:35 +0100)]
; Merge from origin/emacs-28

The following commits were skipped:

ba3aba3096a Bump Emacs version to 28.3
e61d743d440 Update NEWS for Emacs 28.3

22 months agoMerge from origin/emacs-28
Stefan Kangas [Sun, 19 Feb 2023 16:35:20 +0000 (17:35 +0100)]
Merge from origin/emacs-28

4a77fcb1478 Update ChangeLog and AUTHORS for Emacs 28.3

22 months ago; Merge from origin/emacs-28
Stefan Kangas [Sun, 19 Feb 2023 16:35:20 +0000 (17:35 +0100)]
; Merge from origin/emacs-28

The following commits were skipped:

e339926272a Fix etags local command injection vulnerability
5d05ea803e9 Fixed ctags local command execute vulnerability
22fb5ff5126 Fix ruby-mode.el local command injection vulnerability (b...
807d2d5b3a7 Fix htmlfontify.el command injection vulnerability.
ae9bfed50db Fix storing email into nnmail by Gnus

22 months ago; Improve image-dired-thumbnail-storage docstring
Stefan Kangas [Sun, 19 Feb 2023 16:27:19 +0000 (17:27 +0100)]
; Improve image-dired-thumbnail-storage docstring

* lisp/image/image-dired.el (image-dired-thumbnail-storage):
Improve docstring.

22 months agoimenu: Make the test for a single category of map (e.g. "Class") rigorous
Alan Mackenzie [Sun, 19 Feb 2023 16:09:32 +0000 (16:09 +0000)]
imenu: Make the test for a single category of map (e.g. "Class") rigorous

This fixes bug #61629.

* lisp/imenu.el (imenu--mouse-menu): Test (consp (cdadr menu)) to avoid
confusion with a single entry for a single function.
(imenu-update-menubar): Change the code to match that above.

22 months ago; * doc/emacs/dired.texi (Image-Dired): Fix last change.
Eli Zaretskii [Sun, 19 Feb 2023 15:09:18 +0000 (17:09 +0200)]
; * doc/emacs/dired.texi (Image-Dired): Fix last change.

22 months agoMore doc on image-dired-dired-* (bug#61624)
Manuel Giraud [Sun, 19 Feb 2023 11:19:02 +0000 (12:19 +0100)]
More doc on image-dired-dired-* (bug#61624)

* doc/emacs/dired.texi (Image-Dired): Some fixes and more
documentation about image-dired-dired-* commands.

22 months agoEglot: improve treatment of completion items without :sortText (bug#61532)
Theodor Thornhill [Sun, 19 Feb 2023 11:11:13 +0000 (11:11 +0000)]
Eglot: improve treatment of completion items without :sortText (bug#61532)

Previously, defaulting to the empty string put candidates without
:sortText to the top of the list.  since string-lessp is safe with nil
arguments, this makes them sort to the end instead.

* lisp/progmodes/eglot.el (eglot-completion-at-point): Simplify.

22 months agoMerge from origin/emacs-29
Stefan Kangas [Sun, 19 Feb 2023 10:38:09 +0000 (11:38 +0100)]
Merge from origin/emacs-29

871cf33a450 ; * admin/make-tarball.txt: Minor copyedit.
4faebba2fed Fix invocation of File->Close from the menu bar
cd05fca5f78 ; Improve documentation of 'native-comp-enable-subr-tramp...
c61a30e1601 Update thumbnail buffer's header more
4c49452cdef (treesit-query-validate): Fix reusing the output buffer
d560dc5044a (rust-ts-mode--font-lock-settings): Highlight closure par...
c15bc91e1bf * Fix `native-comp-enable-subr-trampolines' semantic
774051873d5 Fix documentation of 'just-one-space' and 'delete-horizon...
7337f072500 ; Remove NEWS entry about deleted variable.
fb5299ba099 ; Fix wording of last change.
9f508cef85d Fix 'display-buffer-use-least-recent-window'
5190ea6259a Fix point moving when calling python-shell-send-region
6c0d8210175 (project-try-vc): Remove unused defvar/require
4f9862e4356 ; Fix typo
a638c79bc5c Delete redundant question from Gnus FAQ
4a90d67eb68 Slightly improve hashcash documentation
6ea3c105ab1 Fix cursor motion when there's line-prefix and display st...
e985466556c Fix comment in treesit_record_change (bug#61369)
1e5cebc88bb Spell out RPN abbreviation in Calc manual intro

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

22 months ago; * admin/make-tarball.txt: Minor copyedit.
Stefan Kangas [Sun, 19 Feb 2023 10:35:31 +0000 (11:35 +0100)]
; * admin/make-tarball.txt: Minor copyedit.

22 months ago; Commit files changed by "autoreconf -i -I m4 --force" emacs-28.3-rc1
Stefan Kangas [Fri, 17 Feb 2023 22:44:39 +0000 (23:44 +0100)]
; Commit files changed by "autoreconf -i -I m4 --force"

* build-aux/config.guess:
* build-aux/config.sub: Update files changed by running "autoreconf -i
-I m4 --force".  Do not merge.

22 months ago; Update ChangeLog for Emacs 28.3
Stefan Kangas [Fri, 17 Feb 2023 22:33:33 +0000 (23:33 +0100)]
; Update ChangeLog for Emacs 28.3

* ChangeLog.3: Refresh for Emacs 28.3.
* etc/NEWS: Add more information about fixed vulnerabilities.

22 months agoFix invocation of File->Close from the menu bar
Eli Zaretskii [Sun, 19 Feb 2023 09:29:32 +0000 (11:29 +0200)]
Fix invocation of File->Close from the menu bar

* lisp/simple.el (kill-buffer--possibly-save): Don't request
LONG-FORM from 'read-multiple-choice' if GUI dialog should be
used.
* lisp/emacs-lisp/rmc.el (read-multiple-choice): Doc fix.
(read-multiple-choice--short-answers): Don't append "?" to
CHOICES and don't display the prompt in the echo area if GUI
dialog is used.  Use 'use-dialog-box-p'.  (Bug#61553)

22 months ago; Improve documentation of 'native-comp-enable-subr-trampolines'
Eli Zaretskii [Sun, 19 Feb 2023 09:04:57 +0000 (11:04 +0200)]
; Improve documentation of 'native-comp-enable-subr-trampolines'

* doc/lispref/compile.texi (Native-Compilation Variables):
Document the interpretation of non-absolute directory names that
are the value of 'native-comp-enable-subr-trampolines'.

22 months agoUpdate thumbnail buffer's header more
Manuel Giraud [Tue, 14 Feb 2023 14:08:17 +0000 (15:08 +0100)]
Update thumbnail buffer's header more

* lisp/image/image-dired.el (image-dired-display-thumbs): Call
image-dired--update-header-line.  (Bug#61508)

22 months ago(treesit-query-validate): Fix reusing the output buffer
Dmitry Gutov [Sat, 18 Feb 2023 21:52:47 +0000 (23:52 +0200)]
(treesit-query-validate): Fix reusing the output buffer

* lisp/treesit.el (treesit-query-validate): Fix the "Buffer is
read-only" error when an output buffer already exists.

22 months ago(rust-ts-mode--font-lock-settings): Highlight closure parameters
Dmitry Gutov [Sat, 18 Feb 2023 21:51:17 +0000 (23:51 +0200)]
(rust-ts-mode--font-lock-settings): Highlight closure parameters

* lisp/progmodes/rust-ts-mode.el
(rust-ts-mode--font-lock-settings): Highlight closure parameters.

22 months ago* Fix `native-comp-enable-subr-trampolines' semantic
Andrea Corallo [Sat, 18 Feb 2023 21:44:05 +0000 (22:44 +0100)]
* Fix `native-comp-enable-subr-trampolines' semantic

* lisp/emacs-lisp/comp.el (comp--trampoline-abs-filename): Interpret
`native-comp-enable-subr-trampolines' relative to
`invocation-directory'.

22 months agoFix documentation of 'just-one-space' and 'delete-horizontal-space'
Eli Zaretskii [Sat, 18 Feb 2023 18:03:33 +0000 (20:03 +0200)]
Fix documentation of 'just-one-space' and 'delete-horizontal-space'

* lisp/simple.el (just-one-space, delete-horizontal-space):
Mention the effect of prefix argument.  (Bug#61609)

22 months agoDon't rely on dynamic scoping to fix bug#59213
Stefan Monnier [Sat, 18 Feb 2023 17:56:24 +0000 (12:56 -0500)]
Don't rely on dynamic scoping to fix bug#59213

Rather than look up a dynamically scoped var to decide whether to trim
closures, use an ad-hoc marker on those closures which should not be trimmed.

* lisp/emacs-lisp/cconv.el (cconv-dont-trim-unused-variables): Delete var.
(cconv-make-interpreted-closure): Use a `:closure-dont-trim-context`
markers instead.

* lisp/emacs-lisp/edebug.el (edebug-make-enter-wrapper): Use
`:closure-dont-trim-context` rather than `cconv-dont-trim-unused-variables`.

* lisp/emacs-lisp/testcover.el (testcover-analyze-coverage): Remove
workaround for `cconv-dont-trim-unused-variables`.

* test/lisp/emacs-lisp/cconv-tests.el (cconv-safe-for-space): New test.

22 months ago; Remove NEWS entry about deleted variable.
Eli Zaretskii [Sat, 18 Feb 2023 17:48:22 +0000 (19:48 +0200)]
; Remove NEWS entry about deleted variable.

22 months ago; Fix wording of last change.
Eli Zaretskii [Sat, 18 Feb 2023 17:45:33 +0000 (19:45 +0200)]
; Fix wording of last change.

22 months agoImprove Tramp's user and host name completion
Michael Albinus [Sat, 18 Feb 2023 17:27:56 +0000 (18:27 +0100)]
Improve Tramp's user and host name completion

* lisp/net/tramp.el (tramp-completion-handle-file-exists-p):
Improve user name completion.
(tramp-skeleton-file-exists-p): New defmacro, which also handles
host name completion.
(tramp-handle-file-exists-p):
* lisp/net/tramp-adb.el (tramp-adb-handle-file-exists-p):
* lisp/net/tramp-sh.el (tramp-sh-handle-file-exists-p):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-exists-p):
Use it.

22 months agoFix 'display-buffer-use-least-recent-window'
martin rudalics [Sun, 12 Feb 2023 09:33:11 +0000 (10:33 +0100)]
Fix 'display-buffer-use-least-recent-window'

* src/window.c (Fwindow_use_time): Doc fix.
(Fwindow_bump_use_time): Bump use time of the seleceted window as
well.  Doc fix.

* lisp/window.el (display-buffer-avoid-small-windows): Remove.
All users changed.
(window--display-buffer): Bump window use time when requested.
(display-buffer--lru-window): New function.
(display-buffer-use-some-window): Use it.
(display-buffer-use-least-recent-window): Rewrite and enhance doc
string.

* doc/lispref/windows.texi (Selecting Windows)
(Buffer Display Action Functions, Buffer Display Action Alists)
(The Zen of Buffer Display): Improve and update documentation of
window selection and display facilities.

22 months agoAllow disabling viper faces in the minibuffer
andrés ramírez [Mon, 13 Feb 2023 15:02:52 +0000 (15:02 +0000)]
Allow disabling viper faces in the minibuffer

* lisp/emulation/viper-cmd.el (viper-enable-minibuffer-faces): New
defcustom.
(viper-set-mode-vars-for): Use it to decide whether to use
distinct faces in the minibuffer.  (Bug#61432)

Copyright-paperwork-exempt: yes

22 months agoFix point moving when calling python-shell-send-region
kobarity [Mon, 13 Feb 2023 15:30:15 +0000 (00:30 +0900)]
Fix point moving when calling python-shell-send-region

* lisp/progmodes/python.el (python-shell-buffer-substring): Add
`save-excursion' to prevent the point from moving.
* test/lisp/progmodes/python-tests.el (python-tests-should-not-move):
New helper function to assert that point does not move while calling a
function.
(python-shell-buffer-substring-*): Use
`python-tests-should-not-move'. (Bug#61463)

22 months ago(project-try-vc): Remove unused defvar/require
Omar Polo [Sat, 18 Feb 2023 13:10:57 +0000 (15:10 +0200)]
(project-try-vc): Remove unused defvar/require

* lisp/progmodes/project.el (project-try-vc):
Remove unused defvar/require (bug#61577).

22 months ago; Fix typo
Stefan Kangas [Sat, 18 Feb 2023 12:39:14 +0000 (13:39 +0100)]
; Fix typo

22 months agoDelete redundant question from Gnus FAQ
Stefan Kangas [Sat, 18 Feb 2023 12:35:37 +0000 (13:35 +0100)]
Delete redundant question from Gnus FAQ

* doc/misc/gnus-faq.texi (FAQ 1-2): Delete redundant question.
(FAQ 1-1, FAQ 1-3): Adjust accordingly.

22 months agoSlightly improve hashcash documentation
Stefan Kangas [Sat, 18 Feb 2023 12:00:04 +0000 (13:00 +0100)]
Slightly improve hashcash documentation

* lisp/mail/hashcash.el: Improve Commentary.
(hashcash-program):
* lisp/gnus/message.el (message-generate-hashcash): Improve
docstring.

22 months agoRemove redundant requires from package.el
Stefan Kangas [Sat, 18 Feb 2023 11:39:17 +0000 (12:39 +0100)]
Remove redundant requires from package.el

* lisp/emacs-lisp/package.el (package-check-signature)
(package-untar-buffer): Simplify by removing redundant require for
autoloaded function.

22 months agoFix cursor motion when there's line-prefix and display string at BOL
Eli Zaretskii [Sat, 18 Feb 2023 11:40:56 +0000 (13:40 +0200)]
Fix cursor motion when there's line-prefix and display string at BOL

* src/xdisp.c (move_it_in_display_line_to): Handle 'line-prefix' and
'wrap-prefix' when the screen line has a display string at its
beginning.  (Bug#61580)

22 months agoFix comment in treesit_record_change (bug#61369)
Yuan Fu [Sat, 18 Feb 2023 10:20:12 +0000 (02:20 -0800)]
Fix comment in treesit_record_change (bug#61369)

Turns out the previous commit message and comment is not entirely
correct: the old behavior is in fact wrong, not just "correct but has
problems".

Here is why the old code is wrong:

|visible range|     -> markup for visible range

updated range       -> markup for updated range
-------------

First we have some text

|aaaaaa|

Now we insert something at the beginning, because we clip
new_end_offset to visible_end, out of eight b's inserted, only the
first six are known to tree-sitter.

|bbbbbbbbaaaa|aa  start: 0, old_end: 0, new_end: 6
 ------

In treesit_sync_visible_region, we sync up visible region, but the two
missing b's are not in the updated range.

|bbbbbbbbaaaaaa|  start: 12, old_end: 12, new_end: 14
             --

The old behavior not only is wrong, but also doesn't make much sense.

* src/treesit.c (treesit_record_change): Update comment.

22 months agoSpell out RPN abbreviation in Calc manual intro
Stefan Kangas [Sat, 18 Feb 2023 09:57:27 +0000 (10:57 +0100)]
Spell out RPN abbreviation in Calc manual intro

* doc/misc/calc.texi (What is Calc, Demonstration of Calc)
(RPN Tutorial): Spell out "Reverse Polish notation" abbreviation.

22 months agoMerge from origin/emacs-29
Stefan Kangas [Sat, 18 Feb 2023 09:45:46 +0000 (10:45 +0100)]
Merge from origin/emacs-29

1769a588300 Fix some uses of 'use-dialog-box'
deef41a8259 Fix hi-lock-tests when 'use-dialog-box' is non-nil
5093a534960 Fix regression due to change in face sort order by 'face-...
3e747630999 * lisp/files.el (file-equal-p): Work around Haiku stat bug.
13fd7667f9c ; * src/treesit.c: Improve sectioning.
a40b1745d4a (project-vc-backend-markers-alist): Add entry for vc-got
18e96ed7c8a project.el: Extract backend->marker association for a defvar
0a5615669a4 Don't completely clip into visible range in treesit_recor...
5b34fc07085 * lisp/treesit.el (treesit-node-at): Update docstring (bu...
1c7d7623781 ; Minor copyedit of NEWS wrt *-ts-modes
09fad246de8 * lisp/calc/calc.el (calc-mode): Improve docstring.
8aad8d75aa9 ; Improve and update documentation of native compilation
d6e4f243720 Merge 'emacs-29' into 'feature/inhibit-native-comp-cleanup'
a555abc56d5 Fix order of faces in 'face-list'
b44a7ff85dc Allow 'icon-title-format' to have the value t
f1f571e72ae Add electric indent for preproc directives
83af806ab7c Rename 'emacs-news-toggle-tag' to 'emacs-news-cycle-tag'
5bc88b3b175 Add menu to news-mode
40f4bc4e0aa ; Avoid installing VC package dependencies multiple times
1c9d81a2b42 Attempt to recognise if a VC package has no Elisp files
2550e8bb0b0 Fix mule-tests under en_US.UTF-8 locale
32795309939 Move block closer above declaration_list rule (bug#61531)
b18754bb179 Minor improvements in c-ts-mode and docs
3c6b726a7b4 Add super node as a keyword
1917c51fe68 ; Prevent ERC-induced false positive in JUnit report
b16965ef7e6 Delete perplexing paragraph from Gnus manual
43c62a4732d ; Fix typo
fdac69b45e6 ; Auto-commit of loaddefs files.
7678b7e46f2 Eglot: check server capability before sending didSave (bu...
a3a1ef7bd5e Fix rust-ts-mode type and module highlighting (Bug#61302)
477aa047ee7 rust-ts-mode: Highlight variable reassignments
5206a551c16 Improve backward compatibility of save-restriction
accd88d5545 Don't indent template_string contents (bug#61503)
d97a3839967 csharp-ts-mode: fontify compiler directives (bug#61512)
420d2cae846 Update to Transient v0.3.7-209-gdab1dfa
a3751b5d0c1 ; Raise an error if a VC package checkout is empty
6a32ba8b69c ; Fix the installation of dependencies for VC packages
4eac80fcc39 ; Prepare to update ERC version to 5.5
4f099a72173 ; Remove failing erc-reuse-buffers test
ce4a066ed1e * Generate trampolines in a temporary directory if no oth...
4bb27a5ca93 ; Minor docs copyedits
13bcff3da5c Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
3d572ae0d50 Rename with/without-narrowing to with/without-restriction
d806b0e33cf * lisp/repeat.el: Rename internal function and variable (...
1a64f326e0a * Fix previous change
95692f6754c Rename native-comp-deferred-compilation-deny-list
8d8464bd5a9 Rename native-comp-deferred-compilation into native-comp-...
5d0912f1445 Rename comp-enable-subr-trampolines into native-comp-enab...
dd8b720ee74 ; * etc/NEWS: Fix typos.
909bd04cf5f ; * lisp/calendar/lunar.el: Add comments. (bug#61460)
10f2aedea9a ; * lisp/progmodes/c-ts-mode.el (c-ts-base-mode): delete ...
abfd00e5c02 * lisp/emacs-lisp/comp.el (native-comp-never-optimize-fun...
1795839babc Support `comp-enable-subr-trampolines' as string value
865758130a1 ; * admin/git-bisect-start: Update failing commits
b948d0d7efe Merge branch 'scratch/fix-locked-narrowing'
b6e2799aa1c * Some more `inhibit-native-compile' clean-up
dcb2379a463 Minor improvements to labeled narrowing
c0681cd3477 Revert "Add new variable 'inhibit-native-compilation'"
3969a34fa1b Revert "Rename to inhibit-automatic-native-compilation"
4297039bd13 Save and restore the absence of narrowing locks
2956e54b1dd Add an extensive test for labeled (locked) narrowing
79ce185ad13 Update the documentation about labeled (locked) narrowing
a6cd4553d48 Rename two long line optimizations variables
0d73e4aa261 Add specific symbols for narrowings
d8438e2bb44 Add 'without-narrowing' macro
97314447e60 Make 'narrowing-lock' and 'narrowing-unlock' internal
a4aa32bdfff Fix 'save-restriction' for narrowing locks

22 months agoFix some uses of 'use-dialog-box'
Eli Zaretskii [Sat, 18 Feb 2023 08:58:00 +0000 (10:58 +0200)]
Fix some uses of 'use-dialog-box'

* lisp/frame.el (display-mouse-p): Fix return value on MS-Windows
in batch invocations.
* lisp/hi-lock.el (hi-lock-unface-buffer): Don't consider
'last-nonmenu-event' being nil as a mouse event, for the purpose
of using dialog boxes.

22 months agoFix hi-lock-tests when 'use-dialog-box' is non-nil
Eli Zaretskii [Sat, 18 Feb 2023 08:45:12 +0000 (10:45 +0200)]
Fix hi-lock-tests when 'use-dialog-box' is non-nil

* test/lisp/hi-lock-tests.el (hi-lock-case-fold)
(hi-lock-unhighlight): Bind 'use-dialog-box' to nil.

22 months agoFix regression due to change in face sort order by 'face-list'
Eli Zaretskii [Sat, 18 Feb 2023 07:37:34 +0000 (09:37 +0200)]
Fix regression due to change in face sort order by 'face-list'

* lisp/faces.el (x-create-frame-with-faces): Undo reversing of
the face list, which is no longer necessary, since 'face-list's
sorting order has been reversed recently.  (Bug#61521)

22 months agoRename 'display-time-time-and-date-indicator' to 'display-time-date-and-time' (bug...
Protesilaos Stavrou [Sat, 18 Feb 2023 07:36:18 +0000 (09:36 +0200)]
Rename 'display-time-time-and-date-indicator' to 'display-time-date-and-time' (bug#61567)

* etc/NEWS:
* lisp/time.el (display-time-time-and-date-indicator)
(display-time-date-and-time, display-time-string-forms): Update symbol.

22 months ago* lisp/files.el (file-equal-p): Work around Haiku stat bug.
Po Lu [Sat, 18 Feb 2023 03:03:07 +0000 (11:03 +0800)]
* lisp/files.el (file-equal-p): Work around Haiku stat bug.

22 months ago; * src/treesit.c: Improve sectioning.
Po Lu [Sat, 11 Feb 2023 01:26:11 +0000 (09:26 +0800)]
; * src/treesit.c: Improve sectioning.

22 months ago(project-vc-backend-markers-alist): Add entry for vc-got
Dmitry Gutov [Fri, 17 Feb 2023 22:54:02 +0000 (00:54 +0200)]
(project-vc-backend-markers-alist): Add entry for vc-got

* lisp/progmodes/project.el (project-vc-backend-markers-alist):
Add entry for vc-got (bug#61577).  Bump the version.

22 months agoproject.el: Extract backend->marker association for a defvar
Dmitry Gutov [Fri, 17 Feb 2023 22:50:29 +0000 (00:50 +0200)]
project.el: Extract backend->marker association for a defvar

* lisp/progmodes/project.el (project-vc-backend-markers-alist):
Extract from 'project-try-vc'.
(project-try-vc): Update accordingly (bug#61577).

22 months agoDon't completely clip into visible range in treesit_record_change
Yuan Fu [Fri, 17 Feb 2023 22:21:49 +0000 (14:21 -0800)]
Don't completely clip into visible range in treesit_record_change

(Bug#61369)

From
    min (visible_end, max (visible_beg, new_end_byte)) - visible_beg
to
    max (visible_beg, new_end_byte) - visible_beg

* src/treesit.c (treesit_record_change): We don't clip the new end
into the visible range anymore.  If you think of it, when inserting in
a narrowed region, the visible region is always extended to
accommodate more text, rather than pushing text at the end to keep the
size of the visible region.

22 months agoUse more recent public_suffix_list.dat where possible
Stefan Kangas [Fri, 17 Feb 2023 21:50:13 +0000 (22:50 +0100)]
Use more recent public_suffix_list.dat where possible

* lisp/url/url-domsuf.el (url-domsuf--public-suffix-file): New
function to look for a more recent version of public_suffix_list.dat
on the system than the one that is shipped with Emacs.
(url-domsuf-parse-file): Use above new function.
* test/lisp/url/url-domsuf-tests.el
(url-domsuf--public-suffix-file): New test.

22 months ago; Adjust limit for eclipse in calendar; rename a function
Ulrich Müller [Thu, 16 Feb 2023 19:09:22 +0000 (20:09 +0100)]
; Adjust limit for eclipse in calendar; rename a function

* lisp/calendar/lunar.el (lunar-check-for-eclipse): Renamed from
'eclipse-check'; thanks to Michael Heerdegen for the suggestion.
Add missing documentation string.  Slightly adjust the upper limit
for the distance from the node.  (bug#61460)
* test/lisp/calendar/lunar-tests.el
(lunar-test-check-for-eclipse): Update accordingly.

22 months agoMake the byte compiler give correct warning positions in eval-and-compile
Alan Mackenzie [Fri, 17 Feb 2023 17:31:17 +0000 (17:31 +0000)]
Make the byte compiler give correct warning positions in eval-and-compile

This fixes bug #61579.

* lisp/emacs-lisp/bytecomp.el (byte-compile-initial-environment): Remove a
spurious `byte-run-strip-symbol-position' from the core form of the
eval-and-compile element.

22 months agoUse substitute-command-keys more in Calc help
Stefan Kangas [Fri, 17 Feb 2023 16:49:53 +0000 (17:49 +0100)]
Use substitute-command-keys more in Calc help

* lisp/calc/calc-ext.el (calc-do-prefix-help):
* lisp/calc/calc-help.el (calc-help-prefix, calc-help-for-help)
(calc-h-prefix-help, calc-inverse-prefix-help)
(calc-hyperbolic-prefix-help, calc-inv-hyp-prefix-help)
(calc-f-prefix-help, calc-s-prefix-help, calc-r-prefix-help)
(calc-j-prefix-help, calc-a-prefix-help, calc-b-prefix-help)
(calc-c-prefix-help, calc-d-prefix-help, calc-g-prefix-help)
(calc-k-prefix-help, calc-m-prefix-help, calc-t-prefix-help)
(calc-u-prefix-help, calc-l-prefix-help, calc-v-prefix-help):
* lisp/calc/calc-misc.el (calc-dispatch-help, calc-help):
* lisp/calc/calc.el (calc-do-dispatch): Use substitute-command keys.

22 months ago; Fix previous change
Robert Pluim [Fri, 17 Feb 2023 15:19:43 +0000 (16:19 +0100)]
; Fix previous change

22 months ago* lisp/treesit.el (treesit-node-at): Update docstring (bug#61529).
Dmitry Gutov [Fri, 17 Feb 2023 15:06:53 +0000 (17:06 +0200)]
* lisp/treesit.el (treesit-node-at): Update docstring (bug#61529).

22 months ago; Minor copyedit of NEWS wrt *-ts-modes
Eli Zaretskii [Fri, 17 Feb 2023 14:57:09 +0000 (16:57 +0200)]
; Minor copyedit of NEWS wrt *-ts-modes

* etc/NEWS: Add desktop.el caveat for when restarting after trying
the *-ts-modes.  Suggested by Alan Mackenzie <acm@muc.de>.

22 months ago* lisp/calc/calc.el (calc-mode): Improve docstring.
Stefan Kangas [Fri, 17 Feb 2023 14:23:19 +0000 (15:23 +0100)]
* lisp/calc/calc.el (calc-mode): Improve docstring.

22 months ago; Improve and update documentation of native compilation
Eli Zaretskii [Fri, 17 Feb 2023 14:15:51 +0000 (16:15 +0200)]
; Improve and update documentation of native compilation

* src/comp.c (syms_of_comp) <native-comp-enable-subr-trampolines>
<native-comp-eln-load-path>: Doc fixes.

* lisp/emacs-lisp/comp.el (native-comp-never-optimize-functions):
Doc fix.

* doc/lispref/compile.texi (Native-Compilation Variables):
Document 'native-comp-jit-compilation' and
'native-comp-enable-subr-trampolines'.

22 months agoMove side-effect-free and pure declarations to function definitions
Mattias Engdegård [Fri, 17 Feb 2023 13:38:50 +0000 (14:38 +0100)]
Move side-effect-free and pure declarations to function definitions

Some Lisp functions still had their `side-effect-free` and `pure`
properties declared in byte-opt.el; do it at their definition instead.
The lists in byte-opt.el now only contain functions implemented in C
and function aliases.

* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns)
(side-effect-and-error-free-fns, pure-fns):
Remove functions whose properties are now declared elsewhere
and some obsolete entries.
* lisp/custom.el (custom-variable-p):
* lisp/emacs-lisp/lisp.el (buffer-end):
* lisp/emacs-lisp/regexp-opt.el (regexp-opt):
* lisp/env.el (getenv):
* lisp/simple.el (count-lines, mark, string-empty-p, lax-plist-get):
* lisp/subr.el (ignore, always, zerop, fixnump, bignump, lsh, last)
(eventp, mouse-movement-p, log10, memory-limit, string-greaterp)
(interactive-p):
* lisp/window.el (get-lru-window, get-largest-window, (window-edges)
(window-body-edges, window-pixel-edges, window-body-pixel-edges)
(window-absolute-pixel-edges, window-absolute-body-pixel-edges)
(one-window-p):
Declare functions `side-effect-free` and/or `pure` as appropriate.