1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 16:51:06 -07:00
Commit graph

164559 commits

Author SHA1 Message Date
martin rudalics
9f508cef85 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.
2023-02-18 19:24:59 +02:00
kobarity
5190ea6259 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)
2023-02-18 18:43:11 +02:00
Omar Polo
6c0d821017 (project-try-vc): Remove unused defvar/require
* lisp/progmodes/project.el (project-try-vc):
Remove unused defvar/require (bug#61577).
2023-02-18 15:11:13 +02:00
Stefan Kangas
4f9862e435 ; Fix typo 2023-02-18 13:39:28 +01:00
Stefan Kangas
a638c79bc5 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.
2023-02-18 13:35:37 +01:00
Stefan Kangas
4a90d67eb6 Slightly improve hashcash documentation
* lisp/mail/hashcash.el: Improve Commentary.
(hashcash-program):
* lisp/gnus/message.el (message-generate-hashcash): Improve
docstring.
2023-02-18 13:02:13 +01:00
Eli Zaretskii
6ea3c105ab 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)
2023-02-18 13:40:56 +02:00
Yuan Fu
e985466556
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.
2023-02-18 02:32:25 -08:00
Stefan Kangas
1e5cebc88b 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.
2023-02-18 10:59:45 +01:00
Eli Zaretskii
1769a58830 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.
2023-02-18 10:58:00 +02:00
Eli Zaretskii
deef41a825 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.
2023-02-18 10:45:12 +02:00
Eli Zaretskii
5093a53496 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)
2023-02-18 09:37:34 +02:00
Po Lu
3e74763099 * lisp/files.el (file-equal-p): Work around Haiku stat bug. 2023-02-18 11:03:07 +08:00
Po Lu
13fd7667f9 ; * src/treesit.c: Improve sectioning. 2023-02-18 11:01:32 +08:00
Dmitry Gutov
a40b1745d4 (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.
2023-02-18 00:55:03 +02:00
Dmitry Gutov
18e96ed7c8 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).
2023-02-18 00:54:39 +02:00
Yuan Fu
0a5615669a
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.
2023-02-17 14:27:23 -08:00
Dmitry Gutov
5b34fc0708 * lisp/treesit.el (treesit-node-at): Update docstring (bug#61529). 2023-02-17 17:09:29 +02:00
Eli Zaretskii
1c7d762378 ; 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>.
2023-02-17 16:57:09 +02:00
Stefan Kangas
09fad246de * lisp/calc/calc.el (calc-mode): Improve docstring. 2023-02-17 15:26:38 +01:00
Eli Zaretskii
8aad8d75aa ; 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'.
2023-02-17 16:15:51 +02:00
Andrea Corallo
d6e4f24372 Merge 'emacs-29' into 'feature/inhibit-native-comp-cleanup' 2023-02-17 11:14:38 +01:00
Eli Zaretskii
a555abc56d Fix order of faces in 'face-list'
* lisp/faces.el (frame-face-alist, face-list): Sort faces in
decreasing order of face IDs.  Patch by Brennan Vincent
<brennan@umanwizard.com>.  (Bug#61521)

Copyright-paperwork-exempt: yes
2023-02-17 10:27:39 +02:00
Eli Zaretskii
b44a7ff85d Allow 'icon-title-format' to have the value t
* src/xdisp.c (gui_consider_frame_title, syms_of_xdisp): If the
value of 'icon-title-format' is t, use 'frame-title-format'
instead.  (Bug#61496)

* etc/NEWS:
* doc/lispref/frames.texi (Frame Titles): Document the new
handling of the value t.
(Basic Parameters): Fix the documentation of the 'title' and
'name' frame parameters.
2023-02-17 09:40:32 +02:00
Theodor Thornhill
f1f571e72a Add electric indent for preproc directives
It looks like there are few if no other cases where we get this
particular error in the AST than with insertion of '#'.

Consider:

```
int
main()
{
  |
}
```

If we only add '#' the AST yields (ERROR (ERROR)), which we can
exploit to hook onto electric indent.  The end result should be the
hashtag anchored to column 0.

* lisp/progmodes/c-ts-mode.el (c-ts-mode--indent-styles): New rule.
(c-ts-base-mode): Add # to electric-indent-chars.
2023-02-16 19:52:06 +01:00
Robert Pluim
83af806ab7 Rename 'emacs-news-toggle-tag' to 'emacs-news-cycle-tag'
* lisp/textmodes/emacs-news-mode.el (emacs-news-cycle-tag): Renamed
from 'emacs-news-toggle-tag'.
(emacs-news-mode-map, emacs-news-mode-menu): Use new name.
* test/lisp/textmodes/emacs-news-mode-resources/cycle-tag.erts:
Renamed from "toggle-tag.erts".
* test/lisp/textmodes/emacs-news-mode-tests.el (emacs-news-cycle-tag):
Rename test from 'emacs-news-toggle-tag', and call
'emacs-news-cycle-tag' with new resource file name.
2023-02-16 13:07:48 +01:00
Robert Pluim
5bc88b3b17 Add menu to news-mode
* lisp/textmodes/emacs-news-mode.el (emacs-news-mode-map): Add binding
for 'emacs-news-delete-temporary-markers'.
(emacs-news-mode-menu): Add menu for common actions.
2023-02-16 13:07:48 +01:00
Philip Kaludercic
40f4bc4e0a ; Avoid installing VC package dependencies multiple times
* lisp/emacs-lisp/package-vc.el (package-vc-install-dependencies):
Check if two package names are eq, instead checking the structural
equality of package-desc objects.
2023-02-16 11:38:51 +01:00
Philip Kaludercic
1c9d81a2b4 Attempt to recognise if a VC package has no Elisp files
* lisp/emacs-lisp/package-vc.el (package-vc-non-code-file-names): Add
new variable used to avoid false-positives.
(package-vc--unpack): Recursively search for .el files excluding the
ones listed in 'package-vc-non-code-file-names', offering to abort the
installation if none are found.
2023-02-16 11:11:23 +01:00
Eli Zaretskii
2550e8bb0b Fix mule-tests under en_US.UTF-8 locale
* test/lisp/international/mule-tests.el (sgml-html-meta-utf-8):
Accept also utf-8-unix/dos/whatever.  (Bug#61534)

* lisp/international/mule.el
(sgml-html-meta-auto-coding-function): Fix comparison when
buffer-file-coding-system is of type 'charset'.
2023-02-15 21:00:54 +02:00
Theodor Thornhill
3279530993 Move block closer above declaration_list rule (bug#61531)
* lisp/progmodes/c-ts-mode.el (c-ts-mode--indent-styles): Move rule
above the previous rule.
2023-02-15 19:23:02 +01:00
Eli Zaretskii
b18754bb17 Minor improvements in c-ts-mode and docs
* lisp/progmodes/c-ts-mode.el (c-ts-base-mode-map): Add a binding
for comment-region.

* doc/emacs/programs.texi (C Indent): Mention "C-u TAB".
2023-02-15 20:01:40 +02:00
Theodor Thornhill
3c6b726a7b Add super node as a keyword
* lisp/progmodes/java-ts-mode.el
(java-ts-mode--font-lock-settings): Add new node.
2023-02-15 18:55:17 +01:00
F. Jason Park
1917c51fe6 ; Prevent ERC-induced false positive in JUnit report
* test/lisp/erc/erc-scenarios-internal.el: Mimic other test files,
like perl-mode-tests.el, in setting `ert-load-file-name' globally.
This file formerly caused a false positive in the error detection
logic of `ert-write-junit-test-summary-report'.  It affected all
scheduled pipelines, including those for the release branch, Emacs 29.
2023-02-15 08:34:04 -08:00
Stefan Kangas
b16965ef7e Delete perplexing paragraph from Gnus manual
* doc/misc/gnus.texi (Exiting Gnus): Delete a confusing paragraph,
that may or may not have been intended as a joke.  (Bug#61325)
2023-02-15 16:28:09 +01:00
Stefan Kangas
43c62a4732 ; Fix typo 2023-02-15 15:22:09 +01:00
Stefan Kangas
fdac69b45e ; Auto-commit of loaddefs files. 2023-02-15 05:08:01 +01:00
~kby
7678b7e46f Eglot: check server capability before sending didSave (bug#61478)
* lisp/progmodes/eglot.el (eglot--signal-textDocument/didSave): check
server capability.

Copyright-paperwork-exempt: Yes
2023-02-14 23:32:36 +00:00
Randy Taylor
a3a1ef7bd5 Fix rust-ts-mode type and module highlighting (Bug#61302)
* lisp/progmodes/rust-ts-mode.el (rust-ts-mode--font-lock-settings):
Specify import queries to avoid clashing with scoped identifiers in
the code.  Highlight attributes with font-lock-preprocessor-face.
2023-02-14 23:54:58 +02:00
Dmitry Gutov
477aa047ee rust-ts-mode: Highlight variable reassignments
* lisp/progmodes/rust-ts-mode.el (rust-ts-mode):
New treesit font-lock feature: 'assignment' (bug#61302).
(rust-ts-mode--fontify-pattern): Remove the node lookup step.
(rust-ts-mode--font-lock-settings): Update variable declaration
queries to match the 'pattern' child node right away.  Add
highlights for 'assignment.
2023-02-14 23:54:58 +02:00
Gregory Heytings
5206a551c1 Improve backward compatibility of save-restriction
* src/editfns.c (save_restriction_save_1): Renamed from
'save_restrictions_save'.  Make it static.
(save_restriction_restore_1): Renamed from
'save_restriction_restore'.  Make it static.
(save_restriction_restore): New function, combining
'save_restriction_save_1' and 'narrowing_locks_save'.
(save_restriction_save): New function, combining
'save_restriction_restore_1' and 'narrowing_locks_restore'.
(Fsave_restriction): Restore the previous code.
(narrowing_locks_save, narrowing_locks_restore): Make them static.

* src/lisp.h: Remove two functions that are not externally visible
anymore.

* src/comp.c (helper_save_restriction): Restore the previous code.

* src/bytecode.c (exec_byte_code): Restore the previous code.

* lisp/emacs-lisp/bytecomp.el (byte-compile-save-restriction):
Decrement unbinding count.
2023-02-14 21:41:35 +01:00
Theodor Thornhill
accd88d554 Don't indent template_string contents (bug#61503)
* lisp/progmodes/js.el (js--treesit-indent-rules): Add new rule.
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--indent-rules): Add new rule.
2023-02-14 20:53:55 +01:00
Jostein Kjønigsen
d97a383996 csharp-ts-mode: fontify compiler directives (bug#61512)
lisp/progmodes/csharp-mode.el: Add tree-sitter-queries for known C#
compiler-directives.
2023-02-14 20:46:42 +01:00
Jonas Bernoulli
420d2cae84 Update to Transient v0.3.7-209-gdab1dfa 2023-02-14 20:42:02 +01:00
Philip Kaludercic
a3751b5d0c ; Raise an error if a VC package checkout is empty
* lisp/emacs-lisp/package-vc.el (package-vc--unpack): Check if PKG-DIR
is empty before proceeding with the installation.
2023-02-14 19:50:01 +01:00
Philip Kaludercic
6a32ba8b69 ; Fix the installation of dependencies for VC packages
* lisp/emacs-lisp/package-vc.el (package-vc-install-dependencies):
Work with package-desc objects instead of (PACKAGE-NAME VERSION)
pairs.
2023-02-14 19:50:01 +01:00
F. Jason Park
4eac80fcc3 ; Prepare to update ERC version to 5.5
* doc/misc/erc.texi: Mention in various places that ERC is also
available from GNU ELPA.
* etc/ERC-NEWS: Mention Compat dependency and shorten title for
auth-source section.
* lisp/erc/erc-backend.el: (erc-server-reconnect-function,
erc-tags-format): Update package version to 5.5.
(erc--parse-message-tags): Downcase warning "type" to remain
consistent with all other ERC warnings.
* lisp/erc/erc-button.el: (erc-button-alist): Change package-version
to 5.5.
* lisp/erc/erc-match.el (erc-match-quote-when-adding): Update package
version to 5.5.
* lisp/erc/erc-sasl.el: Mention actual info node in Commentary.
(erc-sasl): Update package version to 5.5.
(erc-sasl-password): Reword doc string.
(erc-sasl-auth-source-function): Capitalize "info" in doc string.
* lisp/erc/erc-services.el (erc-auth-source-services-function): Update
package version to 5.5.  Capitalize "info" in doc string.  Change
choice type from const to function-item.
* lisp/erc/erc.el (erc-password): Capitalize "info" in doc string.
(erc-inhibit-multiline-input, erc-ask-about-multiline-input,
erc-prompt-hidden, erc-hide-prompt, erc-unhide-query-prompt,
erc-join-buffer, erc-reconnect-display, erc-kill-server-hook,
erc-kill-channel-hook, erc-kill-buffer-hook,
erc-url-connect-function): Update package version to 5.5.
(erc-auth-source-server-function, erc-auth-source-join-function):
Update package version to 5.5.  Change choice type from const to
function-item.  Capitalize "info" in doc string.
(erc-tls): Capitalize "info" in doc string.
2023-02-14 08:25:00 -08:00
F. Jason Park
4f099a7217 ; Remove failing erc-reuse-buffers test
* test/lisp/erc/erc-scenarios-base-reuse-buffers.el
(erc-scenarios-base-reuse-buffers-server-buffers--enabled): Delete
test.
2023-02-14 08:25:00 -08:00
Andrea Corallo
ce4a066ed1 * Generate trampolines in a temporary directory if no other option is viable
* lisp/emacs-lisp/comp.el (comp--trampoline-abs-filename): Use
temporary file if no other option is viable.
2023-02-14 12:27:58 +01:00
Eli Zaretskii
4bb27a5ca9 ; Minor docs copyedits
* etc/NEWS: Add text about adapting to long-line optimizations.

* doc/lispref/positions.texi (Narrowing): Improve documentation of
labeled narrowing.
2023-02-13 20:37:15 +02:00