]> git.eshelyaron.com Git - emacs.git/log
emacs.git
2 years agoSpeed up handling X selection requests
Po Lu [Thu, 1 Dec 2022 06:33:23 +0000 (14:33 +0800)]
Speed up handling X selection requests

* etc/NEWS: Announce speedup.
* src/alloc.c (garbage_collect): Call mark_xselect.
* src/xftfont.c (xftfont_end_for_frame): Fix crash on display IO
error.
* src/xselect.c (struct selection_data, struct transfer): New
structures.
(outstading_transfers): New variable.
(SELECTED_EVENTS, x_selection_request_lisp_error): Stop checking
cs->nofree.
(x_catch_errors_unwind): Delete function.
(c_size_for_format, x_size_for_format, selection_data_for_offset)
(selection_data_size, transfer_selecting_event)
(x_continue_selection_transfer, x_remove_selection_transfers)
(x_selection_transfer_timeout): New functions.
(x_reply_selection_request): When handling selection requests,
never wait for property notifications synchronously.  Instead,
write out the selection data as the client reads it from the
event loop.
(x_handle_selection_request, x_convert_selection)
(x_handle_property_notify, x_get_window_property)
(lisp_data_to_selection_data): Don't ever use pointers to Lisp
string data! Instead, just store the string object itself.
(syms_of_xselect): Initialize outstanding transfer list.
(syms_of_xselect_for_pdumper):
* src/xterm.c (x_delete_display): Remove outstanding selection
transfers.
* src/xterm.h: Update prototypes.

2 years agoMerge from origin/emacs-29
Po Lu [Thu, 1 Dec 2022 06:24:43 +0000 (14:24 +0800)]
Merge from origin/emacs-29

4161023a63 Fix crashes and memory leaks during display deinitialization
785fa80159 New user option: project-vc-extra-root-markers
7a1f1825fd Add inline to c-ts-mode--keywords
3d976d6a03 Remove duplicate "friend" from c-ts-mode--keywords
01e7d4b2a1 Make treesit-defun-prefer-top-level more flexible
fb5d9ff559 Fix c-ts-mode defun movement (bug#59628)
7397f2099b * lisp/tab-bar.el: Keep tabs of the same group together (b...
832b013ef0 Insert news for installed packages only
cc6efa7992 ; Fix type error in 'package-maintainers'
ee32ae7c36 ; * etc/NEWS: Add missing tree-sitter based modes.
33546d6dd2 ; * etc/NEWS: Move an entry to a proper place.  (bug#59718)
8617edfffd ; Fix typos

# Conflicts:
# etc/NEWS

2 years ago; Merge from origin/emacs-29
Po Lu [Thu, 1 Dec 2022 06:24:38 +0000 (14:24 +0800)]
; Merge from origin/emacs-29

The following commit was skipped:

646f2cf67e ; * etc/NEWS: Resurrect the lost Local variables section.

2 years agoMerge from origin/emacs-29
Po Lu [Thu, 1 Dec 2022 06:24:38 +0000 (14:24 +0800)]
Merge from origin/emacs-29

2a8f31b996 project-current: Improve the docstring

2 years agoFix crashes and memory leaks during display deinitialization
Po Lu [Thu, 1 Dec 2022 06:21:14 +0000 (14:21 +0800)]
Fix crashes and memory leaks during display deinitialization

* .dir-locals.el (c-mode): Add more noise macro names.
* src/frame.c (delete_frame): Do not delete terminal if force is
Qnoelisp.

* src/xterm.c (x_wm_supports): Fix coding style.
(x_delete_display): Delete the supported atoms list.
(x_delete_terminal): Delete all terminals.  Free the scratch
cursor GC.

2 years agoUpdate publicsuffix.txt from upstream
Stefan Kangas [Thu, 1 Dec 2022 05:01:28 +0000 (06:01 +0100)]
Update publicsuffix.txt from upstream

* etc/publicsuffix.txt: Update from
https://publicsuffix.org/list/public_suffix_list.dat
dated 2022-11-29 18:15:27 UTC.

2 years ago; Auto-commit of loaddefs files.
Stefan Kangas [Thu, 1 Dec 2022 04:10:57 +0000 (05:10 +0100)]
; Auto-commit of loaddefs files.

2 years agoNew user option: project-vc-extra-root-markers
Dmitry Gutov [Thu, 1 Dec 2022 02:05:49 +0000 (04:05 +0200)]
New user option: project-vc-extra-root-markers

* lisp/progmodes/project.el: Commentary update.
(project-vc, project-vc-include-untracked, project-vc-name):
Update docstrings.  Rename 'VC project' to 'VC-aware project'.
(project-vc-extra-root-markers): New option (bug#41572).
(project-try-vc): Use it.  Construct a single regexp from all and
validate it using the MATCH argument of 'directory-files'.  Call
'locate-dominating-file' directly.
(project-ignores): Support VC-aware project instances with nil
value of VC backend.

* test/lisp/progmodes/project-tests.el (project-vc-recognizes-git)
(project-vc-extra-root-markers-supports-wildcards)
New tests.
(project-tests--this-file): New variable.

2 years agoAdd inline to c-ts-mode--keywords
Daniel Martín [Wed, 30 Nov 2022 18:58:42 +0000 (19:58 +0100)]
Add inline to c-ts-mode--keywords

* lisp/progmodes/c-ts-mode.el (c-ts-mode--keywords): Add "inline", a
keyword available since C99 to define inline functions in C.

2 years agoRemove duplicate "friend" from c-ts-mode--keywords
Daniel Martín [Wed, 30 Nov 2022 23:26:04 +0000 (00:26 +0100)]
Remove duplicate "friend" from c-ts-mode--keywords

* lisp/progmodes/c-ts-mode.el (c-ts-mode--keywords): Remove duplicate
keyword.

2 years agoMake treesit-defun-prefer-top-level more flexible
Yuan Fu [Wed, 30 Nov 2022 23:05:07 +0000 (15:05 -0800)]
Make treesit-defun-prefer-top-level more flexible

* doc/lispref/positions.texi (List Motion): Update manual.
* lisp/treesit.el (treesit-defun-prefer-top-level): Update docstring.
(treesit--defun-maybe-top-level): Change to accept new format.

2 years agoFix c-ts-mode defun movement (bug#59628)
Yuan Fu [Wed, 30 Nov 2022 22:59:06 +0000 (14:59 -0800)]
Fix c-ts-mode defun movement (bug#59628)

* lisp/progmodes/c-ts-mode.el (c-ts-mode--end-of-defun): New function.
(c-ts-mode--base-mode): Use more specific regexp, and set
treesit-defun-prefer-top-level.
(c-ts-mode)
(c++-ts-mode): Set end-of-defun-function.

2 years agoUpdate to Transient v0.3.7-182-gfe7dcbd
Jonas Bernoulli [Wed, 30 Nov 2022 20:32:40 +0000 (21:32 +0100)]
Update to Transient v0.3.7-182-gfe7dcbd

2 years ago* lisp/tab-bar.el: Keep tabs of the same group together (bug#59721)
Juri Linkov [Wed, 30 Nov 2022 19:36:33 +0000 (21:36 +0200)]
* lisp/tab-bar.el: Keep tabs of the same group together (bug#59721)

(tab-bar-tab-post-change-group-functions): Change the default value to
'(tab-bar-move-tab-to-group)'.  Improve docstring.
(tab-bar-change-tab-group): Improve docstring.

2 years agoInsert news for installed packages only
muffinmad [Mon, 28 Nov 2022 21:09:59 +0000 (23:09 +0200)]
Insert news for installed packages only

* lisp/emacs-lisp/package.el (describe-package-1): Check package is
installed and "news" is a regular file.  (Bug#59684)

2 years ago; Fix type error in 'package-maintainers'
Philip Kaludercic [Tue, 29 Nov 2022 21:35:55 +0000 (22:35 +0100)]
; Fix type error in 'package-maintainers'

* lisp/emacs-lisp/package.el (package-maintainers): Pass the email
address to 'ietf-drums-parse-address' (Bug#59676).

2 years ago; * etc/NEWS: Add missing tree-sitter based modes.
Eli Zaretskii [Wed, 30 Nov 2022 18:29:04 +0000 (20:29 +0200)]
; * etc/NEWS: Add missing tree-sitter based modes.

2 years ago; Make clang-format format indent preprocessor blocks correctly.
Vibhav Pant [Wed, 30 Nov 2022 17:37:44 +0000 (23:07 +0530)]
; Make clang-format format indent preprocessor blocks correctly.

2 years agoAdd itree_empty_p for clarity and reduced coupling
Matt Armstrong [Tue, 8 Nov 2022 23:00:18 +0000 (15:00 -0800)]
Add itree_empty_p for clarity and reduced coupling

* src/itree.h (itree_empty_p): New predicate.
* src/buffer.h (buffer_has_overlays):
* src/pdumper.c (dump_buffer):
* src/alloc.c (mark_buffer): Call it.  (Bug#59137)

2 years ago; * etc/NEWS: Move an entry to a proper place. (bug#59718)
Eli Zaretskii [Wed, 30 Nov 2022 16:14:50 +0000 (18:14 +0200)]
; * etc/NEWS: Move an entry to a proper place.  (bug#59718)

2 years ago; Fix typos
Stefan Kangas [Wed, 30 Nov 2022 15:59:41 +0000 (16:59 +0100)]
; Fix typos

2 years ago; * etc/NEWS: Resurrect the lost Local variables section.
Eli Zaretskii [Wed, 30 Nov 2022 15:53:01 +0000 (17:53 +0200)]
; * etc/NEWS: Resurrect the lost Local variables section.

2 years ago; * etc/NEWS: Resurrect the lost Local variables section.
Eli Zaretskii [Wed, 30 Nov 2022 15:49:36 +0000 (17:49 +0200)]
; * etc/NEWS: Resurrect the lost Local variables section.

2 years agoproject-current: Improve the docstring
Dmitry Gutov [Wed, 30 Nov 2022 15:25:55 +0000 (17:25 +0200)]
project-current: Improve the docstring

* lisp/progmodes/project.el (project-current):
Improve the docstring (bug#59722).

2 years agoMerge from origin/emacs-29
Stefan Kangas [Wed, 30 Nov 2022 15:10:39 +0000 (16:10 +0100)]
Merge from origin/emacs-29

c3466099c5 Org regexp style fixes

2 years ago; Merge from origin/emacs-29
Stefan Kangas [Wed, 30 Nov 2022 15:10:39 +0000 (16:10 +0100)]
; Merge from origin/emacs-29

The following commit was skipped:

33a244097c Skip one python test case on macOS

2 years agoMerge from origin/emacs-29
Stefan Kangas [Wed, 30 Nov 2022 15:10:39 +0000 (16:10 +0100)]
Merge from origin/emacs-29

af1a99d53f Sink python indent offset guessing to avoid test failure
dc0f2ec2db * etc/NEWS: Announce Org update.
0625651e8a Update to Org 9.6-3-ga4d38e
edd64e64a3 Fix interactive selection of emacs-lock mode, broken by 2a...
a699f65936 Fix typo in flag to load Emacs-specific LLDB commands
f6aa7c335f ; Typo fixes in etc/NEWS and lisp/ files
f373a23e51 CC Mode: Prevent lone ids being parsed as types unless in ...
00cb6e052a ; Improve error message when LSP server not found
7ea95d1b92 ; * doc/misc/eglot.texi (Setting Up LSP Servers): Improve ...
c43cdfd639 Allow csharp-mode in c-default-style
13bb49bc0b In project-find-file, add abbreviated file names to history
4dab5f8671 * lisp/progmodes/project.el (project-vc-name): Fix the :ty...
079625d3c6 Tramp cleanup
067c65578e Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/e...
4313279e34 ; Fix typo in NEWS
afc7ed987b Allow be-resources to fail
00de296d1b Simplify erc-sasl's auth-source API
83b9496a19 * doc/misc/erc.texi: Revise SASL and modules chapters.
35e2b8a26b Add erc-sasl-auth-source-function to cached options
7336520fe7 Improve fontification in csharp-ts-mode
2661c51953 Improve fontification in typescript-ts-mode
bbf1b93d43 Add more font-lock settings to css-ts-mode
f794263da2 Reparse tree-sitter tree when buffer restriction changes
78663ad78b ; typos

# Conflicts:
# etc/NEWS

2 years ago; Merge from origin/emacs-29
Stefan Kangas [Wed, 30 Nov 2022 15:10:31 +0000 (16:10 +0100)]
; Merge from origin/emacs-29

The following commit was skipped:

78663ad78b ; typos

2 years agoMerge from origin/emacs-29
Stefan Kangas [Wed, 30 Nov 2022 15:10:31 +0000 (16:10 +0100)]
Merge from origin/emacs-29

a7b0b20c1b Fix GUD item on the menu bar in source buffers

2 years ago; Merge from origin/emacs-29
Stefan Kangas [Wed, 30 Nov 2022 15:10:31 +0000 (16:10 +0100)]
; Merge from origin/emacs-29

The following commit was skipped:

c6cb6d8506 Cut the emacs-29 release branch

2 years agoOrg regexp style fixes
Mattias Engdegård [Wed, 30 Nov 2022 12:23:38 +0000 (13:23 +0100)]
Org regexp style fixes

* lisp/org/org-element.el (org-element--get-node-properties):
Escape literal `+`.
* lisp/org/org-persist.el (org-persist-load:index):
Replace line-start with string-start when the latter is meant.

2 years agoSkip one python test case on macOS
Mattias Engdegård [Mon, 28 Nov 2022 18:41:02 +0000 (19:41 +0100)]
Skip one python test case on macOS

* test/lisp/progmodes/python-tests.el (python-ffap-module-path-1):
This test fails with a standard macOS Python installation;
see bug#59477 and bug#25753.

(cherry picked from commit db042b7591ea9da5e169704e5b32bd99c4ea7adf)

2 years agoSink python indent offset guessing to avoid test failure
Mattias Engdegård [Wed, 30 Nov 2022 12:12:38 +0000 (13:12 +0100)]
Sink python indent offset guessing to avoid test failure

Call python-indent-guess-indent-offset late in the set-up of
python-mode and python-ts-mode to make sure that the required other
settings (of syntax-propetize-function in particular) have been
carried out.  This cures a python-test failure (bug#59477).

* lisp/progmodes/python.el (python-base-mode): Move
python-indent-guess-indent-offset call from here...
(python-mode): ...to here...
(python-ts-mode): ...and here.

2 years ago* etc/NEWS: Announce Org update.
Kyle Meyer [Wed, 30 Nov 2022 02:07:03 +0000 (21:07 -0500)]
* etc/NEWS: Announce Org update.

2 years agoUpdate to Org 9.6-3-ga4d38e
Kyle Meyer [Wed, 30 Nov 2022 04:05:53 +0000 (23:05 -0500)]
Update to Org 9.6-3-ga4d38e

2 years agoFix interactive selection of emacs-lock mode, broken by 2a4b0da28c
Juanma Barranquero [Wed, 30 Nov 2022 00:38:59 +0000 (01:38 +0100)]
Fix interactive selection of emacs-lock mode, broken by 2a4b0da28c

* lisp/emacs-lock.el (emacs-lock--set-mode): Check that
arg is 4 and prefix is '(4).
(emacs-lock-mode): Pass also `current-prefix-arg' to
`emacs-lock--set-mode'.

2 years agoFix typo in flag to load Emacs-specific LLDB commands
Daniel Martín [Tue, 29 Nov 2022 22:03:42 +0000 (23:03 +0100)]
Fix typo in flag to load Emacs-specific LLDB commands

* src/.lldbinit: Fix typo in flag to parse .lldbinit files from the
current directory.  (Bug#59702)

2 years ago; Typo fixes in etc/NEWS and lisp/ files
Juanma Barranquero [Tue, 29 Nov 2022 21:37:18 +0000 (22:37 +0100)]
; Typo fixes in etc/NEWS and lisp/ files

2 years agoCC Mode: Prevent lone ids being parsed as types unless in decl arglists
Alan Mackenzie [Tue, 29 Nov 2022 20:19:34 +0000 (20:19 +0000)]
CC Mode: Prevent lone ids being parsed as types unless in decl arglists

This fixes bug #59051.

* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): In the test for the
last invocation of c-fdoc-shift-type-backward before CASE 1, additionally
test CONTEXT not being an arglist or BACKUP-AT-TYPE being non-nil.

2 years ago; Improve error message when LSP server not found
Stefan Kangas [Tue, 29 Nov 2022 19:28:16 +0000 (20:28 +0100)]
; Improve error message when LSP server not found

* lisp/progmodes/eglot.el (eglot--guess-contact): Improve wording of
error message when no LSP server was found.

2 years ago; * doc/misc/eglot.texi (Setting Up LSP Servers): Improve indexing.
Stefan Kangas [Tue, 29 Nov 2022 19:27:52 +0000 (20:27 +0100)]
; * doc/misc/eglot.texi (Setting Up LSP Servers): Improve indexing.

2 years agoAllow csharp-mode in c-default-style
Mattias Engdegård [Tue, 29 Nov 2022 16:20:16 +0000 (17:20 +0100)]
Allow csharp-mode in c-default-style

* lisp/progmodes/cc-vars.el (c-default-style):
Add csharp-mode to the type.  This fixes test-custom-opts.

2 years agoIn project-find-file, add abbreviated file names to history
Augusto Stoffel [Mon, 28 Nov 2022 22:50:41 +0000 (23:50 +0100)]
In project-find-file, add abbreviated file names to history

* lisp/progmodes/project.el (project--read-file-cpd-relative):
Use 'abbreviate-file-name' (bug#58447).

2 years ago* lisp/progmodes/project.el (project-vc-name): Fix the :type form (bug#48747).
Dmitry Gutov [Tue, 29 Nov 2022 16:01:19 +0000 (18:01 +0200)]
* lisp/progmodes/project.el (project-vc-name): Fix the :type form (bug#48747).

2 years agoTramp cleanup
Michael Albinus [Tue, 29 Nov 2022 16:00:02 +0000 (17:00 +0100)]
Tramp cleanup

* doc/misc/tramp.texi: Use @value{tramp} where appropriate.

* doc/misc/trampver.texi: Change "Tramp" format ifplaintext.

* lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
Ignore `memory-info'.

2 years agoMerge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29
Eli Zaretskii [Tue, 29 Nov 2022 11:55:31 +0000 (13:55 +0200)]
Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29

2 years ago; Fix typo in NEWS
Kai Ma [Tue, 29 Nov 2022 09:57:27 +0000 (10:57 +0100)]
; Fix typo in NEWS

2 years agoAllow be-resources to fail
Po Lu [Tue, 29 Nov 2022 06:25:04 +0000 (06:25 +0000)]
Allow be-resources to fail

* lib-src/be_resources.cc (be_perror): Print additional blurb.
(main): Return 0 on failure as well, but print the blurb.
Problem reported by the Haiku packager.

2 years agoSimplify erc-sasl's auth-source API
F. Jason Park [Thu, 24 Nov 2022 05:31:19 +0000 (21:31 -0800)]
Simplify erc-sasl's auth-source API

* doc/misc/erc.texi: Revise descriptions in SASL chapter to reflect
simplified auth-source options.

* lisp/erc/erc-sasl.el (erc-sasl-password,
erc-sasl-auth-source-function): Revise doc strings.
(erc-sasl-auth-source-password-as-host): New function to serve as
more useful choice for option `erc-sasl-auth-source-function'.
(erc-sasl--read-password): Promote auth-source to pole position, above
an explicit string and `:password'.

* test/lisp/erc/erc-sasl-tests.el (erc-sasl--read-password--basic):
Massage tests to conform to simplified `erc-sasl-password'
API.  (Bug#29108.)

2 years ago* doc/misc/erc.texi: Revise SASL and modules chapters.
F. Jason Park [Thu, 24 Nov 2022 05:31:19 +0000 (21:31 -0800)]
* doc/misc/erc.texi: Revise SASL and modules chapters.

2 years agoAdd erc-sasl-auth-source-function to cached options
F. Jason Park [Thu, 24 Nov 2022 05:31:19 +0000 (21:31 -0800)]
Add erc-sasl-auth-source-function to cached options

* lisp/erc/erc-sasl.el (erc-sasl--read-password): Consult cached
options instead of `erc-sasl-auth-source-function'.
(erc-sasl--init): Add `erc-sasl-auth-source-function' to
`erc-sasl--options'.

* test/lisp/erc/erc-sasl-tests.el (erc-sasl--read-password--basic,
erc-sasl--read-password--auth-source): Look for original value of
`erc-sasl-auth-source-function' in `erc-sasl--options' under the
`authfn' key.

2 years agoImprove fontification in csharp-ts-mode
Jostein Kjønigsen [Mon, 28 Nov 2022 12:06:03 +0000 (13:06 +0100)]
Improve fontification in csharp-ts-mode

* lisp/progmodes/csharp-mode.el (csharp-ts-mode--font-lock-settings):
Improve rules for variables, new-expressions, and catch statements.

2 years agoImprove fontification in typescript-ts-mode
Jostein Kjønigsen [Mon, 28 Nov 2022 15:05:27 +0000 (16:05 +0100)]
Improve fontification in typescript-ts-mode

- Restore method-name fontification.
- Fontify all types in class-declarations, extendees too

* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--font-lock-settings): Change patterns.

2 years agoAdd more font-lock settings to css-ts-mode
Theodor Thornhill [Mon, 28 Nov 2022 08:35:15 +0000 (09:35 +0100)]
Add more font-lock settings to css-ts-mode

* lisp/textmodes/css-mode.el (css--treesit-settings): Add new
font-lock features 'query', 'keyword', 'operator' and 'bracket'.
(css-ts-mode): Use new features.

2 years agoReparse tree-sitter tree when buffer restriction changes
Yuan Fu [Mon, 28 Nov 2022 22:21:39 +0000 (14:21 -0800)]
Reparse tree-sitter tree when buffer restriction changes

* src/treesit.c (treesit_sync_visible_region): Set nee_reparse flag to
true if buffer range changes.  Add some assertion.

* src/treesit.c (treesit_ensure_parsed): Move
treesit_sync_visible_region in front of the check for need_reparse.

2 years ago; typos
Mattias Engdegård [Mon, 28 Nov 2022 18:46:10 +0000 (19:46 +0100)]
; typos

(cherry picked from commit 7939184f8e0370e7a3397d492812c6d202c2a193)

2 years agoFix GUD item on the menu bar in source buffers
Eli Zaretskii [Mon, 28 Nov 2022 19:19:22 +0000 (21:19 +0200)]
Fix GUD item on the menu bar in source buffers

* lisp/progmodes/gud.el (alist-get): Restore gud-minor-mode menu
on the menu bar.  (Bug#59605)

2 years ago; typos
Mattias Engdegård [Mon, 28 Nov 2022 18:46:10 +0000 (19:46 +0100)]
; typos

2 years agoSkip one python test case on macOS
Mattias Engdegård [Mon, 28 Nov 2022 18:41:02 +0000 (19:41 +0100)]
Skip one python test case on macOS

* test/lisp/progmodes/python-tests.el (python-ffap-module-path-1):
This test fails with a standard macOS Python installation;
see bug#59477 and bug#25753.

2 years ago; * configure.ac (module_env_snippet_30): Fix a typo.
Eli Zaretskii [Mon, 28 Nov 2022 18:10:17 +0000 (20:10 +0200)]
; * configure.ac (module_env_snippet_30): Fix a typo.

2 years agoBump master Emacs version to 30.0.50
Eli Zaretskii [Mon, 28 Nov 2022 18:03:07 +0000 (20:03 +0200)]
Bump master Emacs version to 30.0.50

* README:
* configure.ac:
* nt/README.W32:
* msdos/sed2v2.inp:
* etc/refcards/ru-refcard.tex: Bump Emacs version to 30.0.50.

* etc/NEWS.29: New file.
* etc/NEWS: Empty for Emacs 30.

* configure.ac: Add boilerplate for module-env-XX.h.

* src/emacs-module.h.in (struct emacs_env_30): Add.
* src/module-env-29.h: Remove header comment.
* src/module-env-30.h: New file.

* lisp/cus-edit.el (customize-changed-options-previous-release):
Set last version to 29.1.

2 years agoCut the emacs-29 release branch
Eli Zaretskii [Mon, 28 Nov 2022 17:47:35 +0000 (19:47 +0200)]
Cut the emacs-29 release branch

* README:
* configure.ac:
* nt/README.W32:
* msdos/sed2v2.inp: Bump Emacs version to 29.0.60.

* admin/admin.el (set-version): Fix regexp for configure.ac.

* lisp/cus-edit.el (customize-changed-options-previous-release):
Bump last version to 28.2.

2 years agoDo not prune native-compiled system directories (bug#59658)
Juanma Barranquero [Mon, 28 Nov 2022 16:46:21 +0000 (17:46 +0100)]
Do not prune native-compiled system directories (bug#59658)

* lisp/emacs-lisp/comp.el (native-compile-prune-cache):
Skip last directory in `native-comp-eln-load-path'.

2 years ago; Fix typo in eglot-alternatives (Bug#59653)
Stefan Kangas [Mon, 28 Nov 2022 14:32:25 +0000 (15:32 +0100)]
; Fix typo in eglot-alternatives (Bug#59653)

* lisp/progmodes/eglot.el (eglot-alternatives): Fix typo.
Problem reported by Arash Esbati <arash@gnu.org>.

2 years agoFix display of long completions.
Gregory Heytings [Mon, 28 Nov 2022 12:17:30 +0000 (12:17 +0000)]
Fix display of long completions.

* lisp/minibuffer.el (completion--insert-strings): Do not assume
"at least 2 columns", which is not possible when completion
strings are long, e.g. with completions-detailed set.

2 years ago; * doc/lispref/windows.texi (Selecting Windows): Doc fix
Juanma Barranquero [Mon, 28 Nov 2022 11:58:26 +0000 (12:58 +0100)]
; * doc/lispref/windows.texi (Selecting Windows): Doc fix

2 years ago; Don't emit a "Server stopped" message when restarting the Emacs server
Jim Porter [Mon, 28 Nov 2022 01:22:49 +0000 (17:22 -0800)]
; Don't emit a "Server stopped" message when restarting the Emacs server

* lisp/server.el (server-stop): Return non-nil when we actually stop
the server.  Don't message about stopping the server here (but do log
it).
(server-start): Emit the appropriate message about stopping or
restarting the server.

2 years agoDo not enter locked narrowing when it would span the whole buffer
Gregory Heytings [Mon, 28 Nov 2022 01:20:46 +0000 (01:20 +0000)]
Do not enter locked narrowing when it would span the whole buffer

* src/xdisp.c (handle_fontified_prop):
* src/keyboard.c (safe_run_hooks_maybe_narrowed): Add condition.

2 years ago* lisp/progmodes/xref.el (xref--outdated-p): Fix broken docstring.
Dmitry Gutov [Mon, 28 Nov 2022 01:07:01 +0000 (03:07 +0200)]
* lisp/progmodes/xref.el (xref--outdated-p): Fix broken docstring.

2 years agoCatch more cases in info--ensure-not-in-directory-node
Stefan Kangas [Mon, 28 Nov 2022 00:32:01 +0000 (01:32 +0100)]
Catch more cases in info--ensure-not-in-directory-node

* lisp/info.el (info--ensure-not-in-directory-node): Fix the case
where "DIR" is in upper-case, and if 'Info-current-file' is an
absolute file name.
Problem reported by Eli Zaretskii <eliz@gnu.org>.

2 years agoFix incompatible -t and -r options in emacsclient
Gregory Heytings [Sun, 27 Nov 2022 23:15:00 +0000 (23:15 +0000)]
Fix incompatible -t and -r options in emacsclient

* lib-src/emacsclient.c (decode_options): Do not allow -t and -r
together.

2 years agoMinor improvements to locked narrowing
Gregory Heytings [Sun, 27 Nov 2022 22:53:20 +0000 (22:53 +0000)]
Minor improvements to locked narrowing

* src/xdisp.c (get_locked_narrowing_begv)
(get_locked_narrowing_zv): Safer handling of negative values.
(handle_fontified_prop): Do not use locked narrowing if the region
size is <= 0.

* src/keyboard.c (safe_run_hooks_maybe_narrowed): Do not use
locked narrowing if the region size is <= 0.

2 years agoRemove treesit-comment-start/end and use comment-start/end-skip
Yuan Fu [Sun, 27 Nov 2022 22:15:57 +0000 (14:15 -0800)]
Remove treesit-comment-start/end and use comment-start/end-skip

treesit-comment-start/end is unnecessary because of
comment-start/end-skip, so they should be removed.

Cleanup and set comment-start/end-skip for tree-sitter C-like major
modes.

I replaced the [ \t]* part in comment-start-skip with (syntax
whitespace), which is what comment-end-skip uses.  I also added
grouping in comment-start-skip to match that of comment-end-skip.

* lisp/progmodes/c-ts-mode.el (c-ts-mode)
(c++-ts-mode)
* lisp/progmodes/csharp-mode.el (csharp-ts-mode)
* lisp/progmodes/java-ts-mode.el (java-ts-mode)
* lisp/progmodes/js.el (js-ts-mode)
* lisp/progmodes/typescript-ts-mode.el (typescript-ts-mode): Setup
comment-start/end-skip.

* lisp/treesit.el (treesit-comment-start)
(treesit-comment-end): Remove variables.
(treesit-simple-indent-presets): Use comment-start/end-skip instead.

2 years agoMerge branch 'feature/improved-locked-narrowing'
Gregory Heytings [Sun, 27 Nov 2022 21:19:41 +0000 (22:19 +0100)]
Merge branch 'feature/improved-locked-narrowing'

2 years agoFix the new ctags test
Eli Zaretskii [Sun, 27 Nov 2022 18:01:50 +0000 (20:01 +0200)]
Fix the new ctags test

* test/manual/etags/Makefile (ctags_update): Sort CTAGS* files
before comparing.  Patch by lu4nx <lx@shellcodes.org>.  (Bug#59544)

* .gitignore: Ignore CTAGS*.sorted files.

2 years ago; Consistently call alists "association list"
Stefan Kangas [Sun, 27 Nov 2022 17:07:57 +0000 (18:07 +0100)]
; Consistently call alists "association list"

* doc/lispref/compile.texi (Compiler Errors):
* doc/misc/gnus.texi (Score File Format):
* etc/NEWS.24:
* lisp/emacs-lisp/byte-run.el (with-suppressed-warnings):
* lisp/progmodes/gdb-mi.el (gdb-threads-list)
(gdb-breakpoints-list, gdb-place-breakpoints): Prefer the term
"association list" for alists.

2 years ago; * src/treesit.c (Ftreesit_parser_included_ranges): Doc fix.
Eli Zaretskii [Sun, 27 Nov 2022 17:08:18 +0000 (19:08 +0200)]
; * src/treesit.c (Ftreesit_parser_included_ranges): Doc fix.

2 years ago; Fix typo (Bug#59634)
Stefan Kangas [Sun, 27 Nov 2022 17:02:55 +0000 (18:02 +0100)]
; Fix typo (Bug#59634)

* src/treesit.c (Ftreesit_parser_included_ranges): Fix typo.

2 years ago; * lisp/progmodes/xref.el: Fix some typos
Juanma Barranquero [Sun, 27 Nov 2022 16:29:58 +0000 (17:29 +0100)]
; * lisp/progmodes/xref.el: Fix some typos

2 years agoExtend memory-info for remote systems
Michael Albinus [Sun, 27 Nov 2022 15:57:03 +0000 (16:57 +0100)]
Extend memory-info for remote systems

* doc/lispref/files.texi (Magic File Names): Add memory-info.

* doc/lispref/internals.texi (Garbage Collection): memory-info can
also retrieve values from remote systems.

* etc/NEWS: Document changes in memory-info.  Fix typos.

* lisp/files.el (warn-maybe-out-of-memory): Ensure local memory info.

* lisp/net/tramp.el (tramp-handle-memory-info): New defun.
(tramp-file-name-for-operation)
* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
* lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
* lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist):
* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
* lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist):
* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
* lisp/net/tramp-sshfs.el (tramp-sshfs-file-name-handler-alist)
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist):
Add 'memory-info'.

* lisp/net/tramp-sshfs.el (tramp-sshfs-handle-exec-path):
Let-bind `process-file-side-effects'.

* src/alloc.c (Fmemory_info): Support remote systems.
(Qmemory_info): Declare.

* test/lisp/net/tramp-tests.el (tramp-test31-memory-info): New test.

2 years agoConsistently refer to VC packages as such
Philip Kaludercic [Sun, 27 Nov 2022 14:31:29 +0000 (15:31 +0100)]
Consistently refer to VC packages as such

* lisp/emacs-lisp/package-vc.el: Replace instances of "source package"
in comments and docstrings.
* lisp/emacs-lisp/package.el: Replace instances of "source package" in
comments and docstrings.

2 years agoFix xref interaction with which-func (bug#59575)
Juanma Barranquero [Sun, 27 Nov 2022 13:57:14 +0000 (14:57 +0100)]
Fix xref interaction with which-func (bug#59575)

* lisp/progmodes/xref.el (xref--add-log-current-defun):
New function.
(xref--xref-buffer-mode): Assign it buffer-locally to
`add-log-current-defun-function'.

2 years agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Sun, 27 Nov 2022 13:44:17 +0000 (15:44 +0200)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

2 years ago; Fix last change in etags.c
Eli Zaretskii [Sun, 27 Nov 2022 13:43:39 +0000 (15:43 +0200)]
; Fix last change in etags.c

* lib-src/etags.c (cleanup_tags_file): Renamed from
clean_matched_file_tag.

* test/manual/etags/CTAGS.good_update:
* test/manual/etags/CTAGS.good_crlf: Update to match the test.

2 years agoFixed ctags local command execute vulnerability
lu4nx [Fri, 25 Nov 2022 06:38:29 +0000 (14:38 +0800)]
Fixed ctags local command execute vulnerability

* lib-src/etags.c:

(clean_matched_file_tag): New function
(do_move_file): New function
(readline_internal):
Add `leave_cr` parameter, if true, include the \r character

* test/manual/etags/CTAGS.good_crlf: New file
* test/manual/etags/CTAGS.good_update: New file
* test/manual/etags/crlf: New file
* test/manual/etags/Makefile: Add `ctags -u` test cases

2 years agoFix xref to correctly display Windows absolute filenames
Juanma Barranquero [Sun, 27 Nov 2022 11:32:04 +0000 (12:32 +0100)]
Fix xref to correctly display Windows absolute filenames

* lisp/progmodes/xref.el (xref--group-name-for-display):
Use `file-name-absolute-p' instead of faking it. (Discussed
in bug#59628.)

2 years ago* lib-src/emacsclient.c (print_help_and_exit): Fix --timeout.
Shohei YOSHIDA [Sun, 27 Nov 2022 12:58:27 +0000 (21:58 +0900)]
* lib-src/emacsclient.c (print_help_and_exit): Fix --timeout.

2 years agoMake frame synchronization more robust
Po Lu [Sun, 27 Nov 2022 11:17:38 +0000 (19:17 +0800)]
Make frame synchronization more robust

* src/xterm.c (x_sync_wait_for_frame_drawn_event)
(x_sync_handle_frame_drawn): Only cancel frame synchronization
if hanging twice or more in a row.
* src/xterm.h (struct x_output, FRAME_X_DRAW_JUST_HUNG): New
flag.

2 years ago; * src/xdisp.c (get_locked_narrowing_begv): Minor change.
Gregory Heytings [Sun, 27 Nov 2022 10:25:19 +0000 (10:25 +0000)]
; * src/xdisp.c (get_locked_narrowing_begv): Minor change.

2 years agoRemove compatibility code in csharp-mode
Theodor Thornhill [Sat, 26 Nov 2022 19:10:58 +0000 (20:10 +0100)]
Remove compatibility code in csharp-mode

* lisp/progmodes/csharp-mode.el (c-basic-matchers-before): Remove
invalid string check for Emacs 27.
(version=): Remove compatibility hack for string handling in CC Mode
in Emacs 27.1.  (Bug#59602)

2 years ago; * src/treesit.c (Ftreesit_induce_sparse_tree): Doc fix.
Eli Zaretskii [Sun, 27 Nov 2022 08:10:05 +0000 (10:10 +0200)]
; * src/treesit.c (Ftreesit_induce_sparse_tree): Doc fix.

2 years ago; Fix recent documentation changes in treesit.el
Eli Zaretskii [Sun, 27 Nov 2022 08:06:02 +0000 (10:06 +0200)]
; Fix recent documentation changes in treesit.el

* lisp/treesit.el (treesit-font-lock-level)
(treesit-font-lock-recompute-features): Doc fixes.

2 years ago; * lisp/progmodes/sh-script.el (sh--redirect-bash-ts-mode): Doc fix.
Eli Zaretskii [Sun, 27 Nov 2022 07:58:02 +0000 (09:58 +0200)]
; * lisp/progmodes/sh-script.el (sh--redirect-bash-ts-mode): Doc fix.

2 years agoAdd js-ts-mode to eglot-server-programs
Theodor Thornhill [Sat, 26 Nov 2022 20:12:51 +0000 (21:12 +0100)]
Add js-ts-mode to eglot-server-programs

* lisp/progmodes/eglot.el (eglot-server-programs): Add js-ts-mode as
an alternative.  (Bug#59252)

2 years agoImprove describe-text-properties display
Stefan Kangas [Sun, 27 Nov 2022 06:29:54 +0000 (07:29 +0100)]
Improve describe-text-properties display

* lisp/descr-text.el (describe-property-list): Don't propertize white
space with the 'help-argument-name' face.  This improves display
slightly when that face has an underline.

2 years ago; * src/editfns.c: Minor improvements in comments.
Gregory Heytings [Sun, 27 Nov 2022 01:02:16 +0000 (01:02 +0000)]
; * src/editfns.c: Minor improvements in comments.

2 years agoSimplify narrowing_locks_restore
Gregory Heytings [Sun, 27 Nov 2022 00:53:01 +0000 (00:53 +0000)]
Simplify narrowing_locks_restore

* src/editfns.c (narrowing_locks_restore): Simplify.

2 years agoImprove handling of killed buffers in locked narrowings
Gregory Heytings [Sun, 27 Nov 2022 00:24:40 +0000 (00:24 +0000)]
Improve handling of killed buffers in locked narrowings

* src/editfns.c (narrowing_locks_add, narrowing_locks_remove):
New functions, factored out.
(narrowing_lock_push, narrowing_lock_pop)
(narrowing_locks_restore): Use the new functions.
(narrowing_lock_get_bound): Return NULL for killed buffers.
(reset_outermost_narrowings, unwind_reset_outermost_narrowing):
Remove killed buffers from the 'narrowing_locks' alist.

2 years agoMake typescript-ts-mode not fallback to js-mode
Yuan Fu [Sat, 26 Nov 2022 23:32:57 +0000 (15:32 -0800)]
Make typescript-ts-mode not fallback to js-mode

1. js-mode might not be able to handle typescript file
2. Now that we use separate modes for tree-sitter modes, not falling
back makes tree-sitter modes more consistent

* lisp/progmodes/typescript-ts-mode.el (typescript-ts-mode): Remove
the fallback code.

2 years agoMake bash-ts-mode fall back to sh-mode if the file isn't in Bash
Yuan Fu [Sat, 26 Nov 2022 23:31:48 +0000 (15:31 -0800)]
Make bash-ts-mode fall back to sh-mode if the file isn't in Bash

* lisp/progmodes/sh-script.el (sh--guess-shell): Take out into a new
function.
(sh-base-mode): Use the new function.
(bash-ts-mode): Update docstring.
(sh--redirect-recursing): New variable.
(sh--redirect-bash-ts-mode): New function.