]> git.eshelyaron.com Git - emacs.git/log
emacs.git
2 years agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Mon, 3 Jul 2023 00:05:55 +0000 (08:05 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

2 years agosh-script: improve fontification of RPM spec files
Andreas Schwab [Mon, 12 Jun 2023 12:40:24 +0000 (14:40 +0200)]
sh-script: improve fontification of RPM spec files

Fontifiy only macros at line beginning as keywords, otherwise as
variables.  Add more accurate match for macros.

* lisp/progmodes/sh-script.el (sh-font-lock-keywords-var): Add
more accurate patterns for rpm macros.  Also fontify parenthesized
word after keyword.

2 years agoFix a minor typo
Mark A. Hershberger [Sun, 2 Jul 2023 19:15:17 +0000 (15:15 -0400)]
Fix a minor typo

* lisp/xml.el: Correct a minor typo found by flandrew.

2 years ago; cperl-mode: Fix a wide docstring which causes warnings when compiling
Harald Jörg [Sun, 2 Jul 2023 11:00:21 +0000 (13:00 +0200)]
; cperl-mode: Fix a wide docstring which causes warnings when compiling

* lisp/progmodes/cperl-mode.el (defconst): Fix wide docstring for '
cperl--sloppy-signature-rx' (thanks Mattias Engdegård for reviewing)

2 years agoEglot: another tweak to eglot--sig-info
João Távora [Sun, 2 Jul 2023 10:57:15 +0000 (11:57 +0100)]
Eglot: another tweak to eglot--sig-info

Going to the start of the first param and skipping non-word syntax
backward would seem to be the right thing to do, for traditional
C-style languages and also languages like Ocaml where function
signatures don't start the param list with '('.

See also https://github.com/joaotavora/eglot/discussions/1251.

* lisp/progmodes/eglot.el (eglot--sig-info): Rework again.

2 years agoWarn about misplaced :success in condition-case (bug#64404)
Mattias Engdegård [Sun, 2 Jul 2023 09:44:29 +0000 (11:44 +0200)]
Warn about misplaced :success in condition-case (bug#64404)

* lisp/emacs-lisp/bytecomp.el (byte-compile-condition-case):
Warn if :success is part of a list of conditions (it must come alone).

2 years agoFix todo-mode commands to move items and categories (bug#64298)
Stephen Berman [Sun, 2 Jul 2023 09:49:08 +0000 (11:49 +0200)]
Fix todo-mode commands to move items and categories (bug#64298)

* lisp/calendar/todo-mode.el (todo-move-category): Restore display
of selected category in source file, so internal file structure is
not visible if user is prompted to choose a new category name in
target file, and widen again to delete moved category from source
file.
(todo-move-item): Don't use todo-forward-item when moving done
items, to avoid mislocation if done items sections of the the
target category was empty before moving.
(todo-forward-item): Remove commented out code meant to have the
effect of the above change in todo-move-item, but it did not work.

2 years agoFix display of wide characters on TTY frame's mode line
Eli Zaretskii [Sun, 2 Jul 2023 08:10:59 +0000 (11:10 +0300)]
Fix display of wide characters on TTY frame's mode line

* src/xdisp.c (pad_mode_line): New function.
(display_string): Use it instead of 'produce_special_glyphs' to
replace a character that's too wide to fit on the mode/header/tab
line, but which occupies some columns that do fit.  (Bug#64395)

2 years agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Sun, 2 Jul 2023 00:26:54 +0000 (08:26 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

2 years ago; cperl-mode.el: Fix two indentation bugs (Bug#11733)
Harald Jörg [Sat, 1 Jul 2023 22:35:31 +0000 (00:35 +0200)]
; cperl-mode.el: Fix two indentation bugs (Bug#11733)

* lisp/progmodes/cperl-mode.el (cperl-sniff-for-indent): Detect
whether we have a label or a regex/string.
(cperl-calculate-indent): Check for things which look like labels
but aren't.

* test/lisp/progmodes/cperl-mode-tests.el (cperl-test-bug-11733):
Test the examples provided in the bug report.

* test/lisp/progmodes/cperl-mode-resources/cperl-bug-11733.pl:
Examples from the bug report.

2 years agoEglot: fix broken indentation of eglot--sig-info
João Távora [Sat, 1 Jul 2023 21:49:24 +0000 (22:49 +0100)]
Eglot: fix broken indentation of eglot--sig-info

* lisp/progmodes/eglot.el (eglot--sig-info): Fix.

2 years agoEglot: bail out of eglot-imenu if no server capability (bug#64274)
João Távora [Sat, 1 Jul 2023 21:48:07 +0000 (22:48 +0100)]
Eglot: bail out of eglot-imenu if no server capability (bug#64274)

* lisp/progmodes/eglot.el (eglot-imenu): Bail out if no
capability.

2 years agoEglot: improve heuristic to highlight function names in signatures
João Távora [Sat, 1 Jul 2023 21:46:43 +0000 (22:46 +0100)]
Eglot: improve heuristic to highlight function names in signatures

* lisp/progmodes/eglot.el (eglot--sig-info): Rework.

See https://github.com/joaotavora/eglot/discussions/1251.

2 years agocperl-mode.el: Support Perl 5.38 syntax for subroutine signatures
Harald Jörg [Sat, 1 Jul 2023 19:37:29 +0000 (21:37 +0200)]
cperl-mode.el: Support Perl 5.38 syntax for subroutine signatures

* lisp/progmodes/cperl-mode.el (defconst): New rx sequence
describing a signature with initialization.
(cperl-init-faces): integrate the new rx sequence into the
font-lock-defaults init routine (Bug#64190) (Bug#64364).

* test/lisp/progmodes/cperl-mode-resources/cperl-bug-64364.pl: Add
test data for a signature with initialization (tests indentation).

* test/lisp/progmodes/cperl-mode-resources/proto-and-attrs.pl: Add
test data for a signature with initialization (tests fontification).

2 years agoDocument optional Eshell modules
Jim Porter [Sat, 13 May 2023 03:03:48 +0000 (20:03 -0700)]
Document optional Eshell modules

* lisp/eshell/em-rebind.el (eshell-rebind): Correct/reword docstring.

* doc/misc/eshell.texi (Built-ins): Move disabled-by-default commands
to...
(Tramp extensions, Extra built-in commands): ...here
(Optional modules, Key rebinding, Smart scrolling): Add documentation.
(Bug and ideas): Documentation is no longer incomplete!

2 years agoCorrect the Eshell documentation about how to write new modules
Jim Porter [Sat, 13 May 2023 03:11:01 +0000 (20:11 -0700)]
Correct the Eshell documentation about how to write new modules

* doc/misc/eshell.texi (Writing a module): Fix the documentation.
'eshell-defgroup' doesn't exist anymore.

2 years agoRestructure Eshell extension modules documentation
Jim Porter [Mon, 30 Jan 2023 03:59:56 +0000 (19:59 -0800)]
Restructure Eshell extension modules documentation

This adds a section for documenting all the optional modules.

* doc/misc/eshell.texi (Extension modules): Move explanation about
writing modules to...
(Writing a module): ... here.
(Module testing): Remove.  Testing an Eshell module doesn't require
any special documentation.
(Key binding, Smart scrolling, Electric forward slash): Move under...
(Optional modules): ... here.
(Directory handling, Terminal emulation): Remove.  These modules are
enabled by default, and so are documented above.
(Tramp extensions, Extra built-in commands): New sections.

2 years ago; * doc/misc/eshell.texi (Bugs and ideas): Remove implemented feature.
Jim Porter [Mon, 30 Jan 2023 02:29:02 +0000 (18:29 -0800)]
; * doc/misc/eshell.texi (Bugs and ideas): Remove implemented feature.

2 years agoRedo erc-nickname-in-use-functions as a local module
F. Jason Park [Fri, 9 Jun 2023 06:49:23 +0000 (23:49 -0700)]
Redo erc-nickname-in-use-functions as a local module

* etc/ERC-NEWS: Mention new module `services-regain'.
* lisp/erc/erc-backend.el: Rename option.
* lisp/erc/erc-services.el (erc-services-regain-alist): Strategies for
regaining a lost nickname on reconnect.  This option, in addition to
the rest of these changes, is a redo of
`erc-nickname-in-use-functions' from commit 8c0c9826 "Add hook to
regain nickname in ERC", which originally stemmed from bug#62044.
(erc-services-retry-nick-on-connect, erc-services-issue-regain,
erc-services-issue-ghost-and-retry-nick): New function variants for
`erc-services-regain-alist.
(erc-services-regain-mode, erc-services-regain-enable,
erc-services-regain-disable): New local module to activate
nick-regaining behavior.
(erc--nickname-in-use-make-request): New method, a services-specific
implementation.
* lisp/erc/erc.el (erc--nickname-in-use-make-request): New generic
function to request alternate nick when first choice is rejected.
(erc-nickname-in-use): Call `erc--nickname-in-use-make-request' to
request alternate nick.
* test/lisp/erc/erc-scenarios-services-misc.el
(erc-scenarios-services-misc--reconnect-retry-nick): Adopt renamed
version of `erc-scenarios-base-renick-auto-regain'.
(erc-scenarios-services-misc--regain-command,
erc-scenarios-services-misc--ghost-and-retry-nick): New tests.
* test/lisp/erc/resources/services/regain/reconnect-retry-again.eld:
New test data file reusing existing blob c0529052 that once lived at
resources/base/renick/regain/normal-again.eld.
* test/lisp/erc/resources/services/regain/reconnect-retry.eld: New
test data file reusing existing blob 9f4df70e5 that once lived at
resources/base/renick/regain/normal.eld.
* test/lisp/erc/resources/services/regain/taken-ghost.eld: New test
data file.
* test/lisp/erc/resources/services/regain/taken-regain.eld New test
data file.

2 years agoAccount for leading timestamps in erc-match
F. Jason Park [Wed, 28 Jun 2023 03:47:26 +0000 (20:47 -0700)]
Account for leading timestamps in erc-match

* lisp/erc/erc-match.el (erc-text-matched-hook): Mention that stamps
may be present in the narrowed buffer but absent from the message
parameter.
(erc-match--message): New function containing what was the body of
`erc-match-message' as if the latter were simply renamed.
(erc-match-message): Move body to `erc-match--message' and call it
with more aggressive narrowing.  This fixes a regression stemming from
d880a08f "Cement ordering of essential hook members in ERC".  Special
thanks to Libera.Chat user jrm for reporting this bug.  (Bug#60936)
* test/lisp/erc/erc-scenarios-match.el: New test file.

2 years agocperl-mode: Fix byte-compilation warnings
Harald Jörg [Sat, 1 Jul 2023 13:25:33 +0000 (15:25 +0200)]
cperl-mode: Fix byte-compilation warnings

* lisp/progmodes/cperl-mode.el (defconst): Reformat docstring to
fit into 80 columns.
(cperl-find-sub-attrs): Mark lexical parameters as unused.

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-test-fontify-attrs-and-signatures): Fix use of
`match-beginning'
(perl-indent-parens-as-block): Define as a variable.

2 years agoAdd duplicate-region-final-position (bug#64185)
Mattias Engdegård [Fri, 30 Jun 2023 16:34:10 +0000 (18:34 +0200)]
Add duplicate-region-final-position (bug#64185)

* lisp/misc.el (duplicate-region-final-position): New defcustom.
(duplicate-dwim): Use it.
* lisp/rect.el (rectangle--duplicate-right): Add displacement
argument.
* test/lisp/misc-tests.el (misc--duplicate-dwim): Extend test.

2 years agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 1 Jul 2023 10:30:00 +0000 (06:30 -0400)]
Merge from origin/emacs-29

edd36786e1e ; * lisp/bookmark.el (bookmark-bmenu-locate): Doc fix (bu...
16eac20a5db ; Fix last change
ab8d0f7b768 Add project command entries to the menu-bar
fc6099bf046 ; Improve documentation of text-property-search-* functions
cc660bd2651 ; * etc/PROBLEMS: Mention MinGW problems with -D_FORTIFY_...
a5bd9fb8c4a ; Improve doc strings in register.el
0be18d80978 ; Fix @xref in last change to doc/emacs/regs.texi.
624c779517d ; Fix tree-sitter C binding typos in Elisp manual.
16e9bdff4f4 Improve documentation of registers

2 years ago; Merge from origin/emacs-29
Eli Zaretskii [Sat, 1 Jul 2023 10:30:00 +0000 (06:30 -0400)]
; Merge from origin/emacs-29

The following commit was skipped:

884b668b981 Use a temporary buffer in nnagent-request-set-mark (bug#6...

2 years agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 1 Jul 2023 10:29:52 +0000 (06:29 -0400)]
Merge from origin/emacs-29

a722e7dd152 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
65f146cf1c2 ; * lisp/calculator.el (calculator-need-3-lines): Fix las...
9e8386bdacc Support cons cell as value of ':line-width' box attribute
1d2ba6b363b ; * admin/notes/tree-sitter/treesit_record_change: Update.
02b6be892fa Add missing calls to treesit_record_change in editfns.c
e982192e933 Call treesit_record_change in subst-char-in-region (bug#6...
ddbb11f5657 ; * lisp/misc.el (duplicate-line-final-position): Fix las...
cecbe92d5d9 ; * lisp/misc.el (duplicate-line-final-position): doc pre...
042f0d6a14c ; Fix documentation of ':box' face attribute

# Conflicts:
# etc/NEWS

2 years ago; Merge from origin/emacs-29
Eli Zaretskii [Sat, 1 Jul 2023 10:29:44 +0000 (06:29 -0400)]
; Merge from origin/emacs-29

The following commit was skipped:

d5cff340b3b * lisp/misc.el (duplicate-line-final-position): New defcu...

2 years agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 1 Jul 2023 10:29:43 +0000 (06:29 -0400)]
Merge from origin/emacs-29

ef16339918e Make js-beginning-of-defun return non-nil on success
2c90ade09a4 Tree-sitter use with-silent-modifications like jit-lock (...
11cead0d73c Fix todo-mode.el Commentary and a doc string (bug#64298)
6ae83322d4c Prevent truncation of todo-mode categories sexp
ee41f07be52 Avoid making todo-mode buffers manually editable
53332bdf625 ; * doc/lispref/variables.texi: Fix define-obsolete-varia...
162c9c058eb ; Document that 'named-let' needs lexical-binding
68028f0fa31 ; * etc/PROBLEMS: Fix typo.

2 years ago; Merge from origin/emacs-29
Eli Zaretskii [Sat, 1 Jul 2023 10:29:43 +0000 (06:29 -0400)]
; Merge from origin/emacs-29

The following commit was skipped:

ac0a82ea987 Fix Tramp mount-spec (don't merge)

2 years agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 1 Jul 2023 10:29:43 +0000 (06:29 -0400)]
Merge from origin/emacs-29

4df510c7a70 Fix VC package build when doc file isn't in a subdir
382f5fa8130 ; * doc/emacs/package.texi (Fetching Package Sources): Fi...
fc7e7c3fde3 Fix type check in tramp-get-buffer-string
2aa57fe6cf9 ; Fix typo in maintaining.texi (bug#64279)

2 years ago; Merge from origin/emacs-29
Eli Zaretskii [Sat, 1 Jul 2023 10:29:43 +0000 (06:29 -0400)]
; Merge from origin/emacs-29

The following commits were skipped:

1d9200d9bbb ; * doc/lispintro/emacs-lisp-intro.texi (car & cdr): Fix ...
987b25d60dd Clarify list terminology

2 years ago; * lisp/bookmark.el (bookmark-bmenu-locate): Doc fix (bug#64370).
Eli Zaretskii [Sat, 1 Jul 2023 09:46:37 +0000 (12:46 +0300)]
; * lisp/bookmark.el (bookmark-bmenu-locate): Doc fix (bug#64370).

2 years ago; Fix last change
Eli Zaretskii [Sat, 1 Jul 2023 09:43:33 +0000 (12:43 +0300)]
; Fix last change

* lisp/menu-bar.el (menu-bar-file-menu, menu-bar-search-menu)
(menu-bar-replace-menu, menu-bar-project-menu)
(menu-bar-buffers-menu-command-entries): Fix help-echo text (bug#63469).

2 years agoAdd project command entries to the menu-bar
Spencer Baugh [Mon, 15 May 2023 18:01:32 +0000 (14:01 -0400)]
Add project command entries to the menu-bar

This will make it easier for new users to learn these increasingly
important and useful commands.  (Bug#63469)

* lisp/menu-bar.el (menu-bar-file-menu): Add project-dired and
project-find-file entries.
(menu-bar-search-menu): Add project-find-regexp entry.
(menu-bar-replace-menu): Add project-query-replace regexp entry.
(menu-bar-shell-commands-menu): Add project-shell entry.
(menu-bar-buffers-menu-command-entries): Add project-switch-to-buffer
and project-list-buffer entries.
(menu-bar-project-menu): Add.
(menu-bar-tools-menu): Add "Project" submenu, and also project-compile
entry and change text for compile entry.

2 years ago; Improve documentation of text-property-search-* functions
Eli Zaretskii [Sat, 1 Jul 2023 09:28:33 +0000 (12:28 +0300)]
; Improve documentation of text-property-search-* functions

* doc/lispref/text.texi (Property Search): Improve wording and markup.

* lisp/emacs-lisp/text-property-search.el (text-property-search-forward)
(text-property-search-backward): Doc fixes.  (Bug#64367)

2 years agoFix total count of messages in Rmail summary buffers
Eli Zaretskii [Sat, 1 Jul 2023 08:34:43 +0000 (11:34 +0300)]
Fix total count of messages in Rmail summary buffers

* lisp/mail/rmailsum.el (rmail-new-summary-1): Actually count the
messages in the summary buffer instead of relying on
'rmail-total-messages'.  Reported by Andrea Monaco
<andrea.monaco@autistici.org>.

2 years agoRecognize PKGBUILD as bash style
Davide Masserut [Tue, 20 Jun 2023 13:55:11 +0000 (15:55 +0200)]
Recognize PKGBUILD as bash style

* lisp/progmodes/sh-script.el (sh--guess-shell): Handle PKGBUILD.
(Bug#64251)

2 years agoImprove Tramp for remote WebDAV
Michael Albinus [Sat, 1 Jul 2023 08:19:37 +0000 (10:19 +0200)]
Improve Tramp for remote WebDAV

* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
* lisp/net/tramp-rclone.el (tramp-rclone-do-copy-or-rename-file):
Improve stability for WebDAV.

2 years ago; * etc/PROBLEMS: Mention MinGW problems with -D_FORTIFY_SOURCE=2.
Eli Zaretskii [Sat, 1 Jul 2023 07:01:59 +0000 (10:01 +0300)]
; * etc/PROBLEMS: Mention MinGW problems with -D_FORTIFY_SOURCE=2.

2 years agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Sat, 1 Jul 2023 00:33:13 +0000 (08:33 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

2 years agocperl-mode: Add recent features to etc/NEWS
Harald Jörg [Fri, 30 Jun 2023 21:55:53 +0000 (23:55 +0200)]
cperl-mode: Add recent features to etc/NEWS

I mishandled git and killed my previous commit.  Sorry for the noise.

* etc/NEWS: Add a section to Changes in Specialized Modes

2 years agocperl-mode: Add recent features to etc/NEWS
Harald Jörg [Fri, 30 Jun 2023 21:58:31 +0000 (23:58 +0200)]
cperl-mode: Add recent features to etc/NEWS

* etc/NEWS: Add a section to Changes in Specialized Modes

2 years agocperl-mode: Add recent features to etc/NEWS
Harald Jörg [Fri, 30 Jun 2023 21:55:53 +0000 (23:55 +0200)]
cperl-mode: Add recent features to etc/NEWS

* etc/NEWS: Add a section to Changes in Specialized Modes

2 years ago; cperl-mode-resources: More test cases for cperl-mode.el
Harald Jörg [Fri, 30 Jun 2023 21:48:59 +0000 (23:48 +0200)]
; cperl-mode-resources: More test cases for cperl-mode.el

* test/lisp/progmodes/cperl-mode-resources/proto-and-attrs.pl:
Adapt to the signatures now available in cperl-mode.el

2 years agocperl-mode.el: Support subroutine signatures
Harald Jörg [Fri, 30 Jun 2023 21:41:06 +0000 (23:41 +0200)]
cperl-mode.el: Support subroutine signatures

Since Perl 5.20, subroutine signatures were available as an
experimental feature.  With Perl 5.38, they will be always enabled in
the new object system.

* test/lisp/progmodes/cperl-mode-resources/cperl-bug-64190.pl:
* test/lisp/progmodes/cperl-mode-resources/cperl-bug-64364.pl: New
test resources.

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-test-fontify-attrs-and-signatures): Add tests for
signatures.
(cperl-test-attribute-rx, cperl-test-attribute-list-rx)
(cperl-test-prototype-rx, cperl-test-signature-rx): Tests for the
new rx sequences.
(cperl-test-bug-64190): New test for multiline declarations.
(cperl-test-bug-64364): New test for indentation of declarations.

* lisp/progmodes/cperl-mode.el:
(toplevel): New rx sequences to match Perl variables and attributes.
(cperl-declaration-header-p): New function to identify declarations.
(cperl-block-declaration-p): Use the new function.
(cperl-mode): Use the rx sequences.
(cperl-get-state): Use the new function.
(cperl-sniff-for-indent): Use the new function.
(cperl-find-sub-attrs): Improve fontification of subroutine
prototypes and attributes while typing when jit-lock-mode is
active.  Detect signatures, and distinguish them from prototypes.
(cperl-find-pods-heres): Use the rx sequences to detect subroutines.
(cperl-init-faces): Use the rx sequences for fontification.

2 years ago; Improve doc strings in register.el
Eli Zaretskii [Fri, 30 Jun 2023 11:47:12 +0000 (14:47 +0300)]
; Improve doc strings in register.el

* lisp/register.el (register-preview-delay)
(register-describe-oneline, register-preview-default)
(register-preview-function, register-preview, point-to-register)
(window-configuration-to-register)
(frame-configuration-to-register, jump-to-register)
(register-val-jump-to, number-to-register, increment-register)
(view-register, list-registers, register-val-describe)
(insert-register, register-val-insert, copy-to-register)
(append-to-register, prepend-to-register)
(copy-rectangle-to-register): Doc fixes.

2 years ago; Fix @xref in last change to doc/emacs/regs.texi.
Basil L. Contovounesios [Fri, 30 Jun 2023 11:21:00 +0000 (12:21 +0100)]
; Fix @xref in last change to doc/emacs/regs.texi.

2 years ago; Fix tree-sitter C binding typos in Elisp manual.
Basil L. Contovounesios [Fri, 30 Jun 2023 10:58:33 +0000 (11:58 +0100)]
; Fix tree-sitter C binding typos in Elisp manual.

2 years ago* src/android.c (android_query_tree): Correctly return children.
Po Lu [Fri, 30 Jun 2023 08:20:02 +0000 (16:20 +0800)]
* src/android.c (android_query_tree): Correctly return children.

2 years agoImprove documentation of registers
Eli Zaretskii [Fri, 30 Jun 2023 07:13:53 +0000 (10:13 +0300)]
Improve documentation of registers

* doc/lispref/text.texi (Registers): Document buffers in
registers.  Mention "frameset" as another name for "frame
configuration".
* doc/emacs/regs.texi (Registers, Configuration Registers)
(File and Buffer Registers): Clarify and improve wording.  Add
cross-references and indexing.
(Configuration Registers): Rename the section to a more accurate
name.  (Bug#64354)

* lisp/register.el (jump-to-register, point-to-register)
(register-alist, frame-configuration-to-register): Doc fixes.
(Bug#64353)

2 years agoUse a temporary buffer in nnagent-request-set-mark (bug#64117)
Andrew G Cohen [Tue, 27 Jun 2023 07:40:46 +0000 (15:40 +0800)]
Use a temporary buffer in nnagent-request-set-mark (bug#64117)

Commit cb12a84f2c519a48dd87453c925e3bc36d9944db inadvertently removed
the use of a temporary buffer in nnagent-request-set-mark.  Bug and
fix reported by Jens Schmidt <jschmidt4gnu@vodafonemail.de>

* lisp/gnus/nnagent.el (nnagent-request-set-mark): Restore the use of
a temporary buffer that was inadvertently removed.

(cherry picked from commit 5075d752773c31d959272a7e2b73b1dc38ba184c)

2 years agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Fri, 30 Jun 2023 00:36:53 +0000 (08:36 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

2 years agoUse OUT-DIR in treesit-install-language-grammar (bug#64295)
Yuan Fu [Thu, 29 Jun 2023 18:27:37 +0000 (11:27 -0700)]
Use OUT-DIR in treesit-install-language-grammar (bug#64295)

* lisp/treesit.el (treesit-install-language-grammar): Use out-dir.

2 years agoMerge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29
Eli Zaretskii [Thu, 29 Jun 2023 18:23:12 +0000 (21:23 +0300)]
Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29

2 years ago; * lisp/calculator.el (calculator-need-3-lines): Fix last change.
Eli Zaretskii [Thu, 29 Jun 2023 18:21:28 +0000 (21:21 +0300)]
; * lisp/calculator.el (calculator-need-3-lines): Fix last change.

2 years agoSupport cons cell as value of ':line-width' box attribute
john muhl [Wed, 28 Jun 2023 17:58:27 +0000 (12:58 -0500)]
Support cons cell as value of ':line-width' box attribute

* lisp/calculator.el (calculator-need-3-lines): Support
values of a face's ':line-width' box attribute that are
cons cells.  (Bug#64344)

Copyright-paperwork-exempt: yes

2 years ago; * admin/notes/tree-sitter/treesit_record_change: Update.
Yuan Fu [Thu, 29 Jun 2023 00:05:29 +0000 (17:05 -0700)]
; * admin/notes/tree-sitter/treesit_record_change: Update.

2 years agoAdd missing calls to treesit_record_change in editfns.c
Yuan Fu [Thu, 29 Jun 2023 00:03:19 +0000 (17:03 -0700)]
Add missing calls to treesit_record_change in editfns.c

These should be all that are missing.  See the next commit for detail.

* src/editfns.c (Ftranslate_region_internal):
(Ftranspose_regions): Call treesit_record_change.

2 years agoCall treesit_record_change in subst-char-in-region (bug#64329)
Yuan Fu [Wed, 28 Jun 2023 21:16:52 +0000 (14:16 -0700)]
Call treesit_record_change in subst-char-in-region (bug#64329)

* src/editfns.c (Fsubst_char_in_region): Call treesit_record_change in
the else branch.

2 years ago; * lisp/misc.el (duplicate-line-final-position): Fix last doc change.
Eli Zaretskii [Thu, 29 Jun 2023 10:00:21 +0000 (13:00 +0300)]
; * lisp/misc.el (duplicate-line-final-position): Fix last doc change.

Repeat after me: "The first line of a doc string must be a single
complete sentence."

2 years ago; * lisp/misc.el (duplicate-line-final-position): doc precision
Mattias Engdegård [Thu, 29 Jun 2023 09:21:53 +0000 (11:21 +0200)]
; * lisp/misc.el (duplicate-line-final-position): doc precision

2 years agoUse a temporary buffer in nnagent-request-set-mark (bug#64117)
Andrew G Cohen [Tue, 27 Jun 2023 07:40:46 +0000 (15:40 +0800)]
Use a temporary buffer in nnagent-request-set-mark (bug#64117)

Commit cb12a84f2c519a48dd87453c925e3bc36d9944db inadvertently removed
the use of a temporary buffer in nnagent-request-set-mark.  Bug and
fix reported by Jens Schmidt <jschmidt4gnu@vodafonemail.de>

* lisp/gnus/nnagent.el (nnagent-request-set-mark): Restore the use of
a temporary buffer that was inadvertently removed.

2 years ago; Fix documentation of ':box' face attribute
Eli Zaretskii [Thu, 29 Jun 2023 07:47:26 +0000 (10:47 +0300)]
; Fix documentation of ':box' face attribute

* lisp/faces.el (set-face-attribute): Update the documentation of
WIDTH in the :box face attribute.  (Bug#64344)

2 years ago* lisp/misc.el (duplicate-line-final-position): New defcustom (bug#64185).
Juri Linkov [Thu, 29 Jun 2023 07:13:09 +0000 (10:13 +0300)]
* lisp/misc.el (duplicate-line-final-position): New defcustom (bug#64185).

* lisp/misc.el (duplicate-line): Use it.

* test/lisp/misc-tests.el (misc--duplicate-line): Add tests for
duplicate-line-final-position.

2 years ago* lisp/misc.el (duplicate-line-final-position): New defcustom (bug#64185).
Juri Linkov [Thu, 29 Jun 2023 07:13:06 +0000 (10:13 +0300)]
* lisp/misc.el (duplicate-line-final-position): New defcustom (bug#64185).

* lisp/misc.el (duplicate-line): Use it.

* test/lisp/misc-tests.el (misc--duplicate-line): Add tests for
duplicate-line-final-position.

Don't merge to master.

2 years agoMake js-beginning-of-defun return non-nil on success
Daniel Martín [Sun, 25 Jun 2023 20:17:14 +0000 (22:17 +0200)]
Make js-beginning-of-defun return non-nil on success

The docstring of 'beginning-of-defun-function' says that the
function shall return non-nil when it found the beginning
of a defun.  This is specially important because the calling
code decides when to move point depending on the return value.
* lisp/progmodes/js.el (js-beginning-of-defun)
(js--beginning-of-defun-flat): Return non-nil when the beginning
of a defun is found.  (Bug#64283)

* test/lisp/progmodes/js-tests.el (js-mode-end-of-defun): Add a unit
test.

2 years agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Thu, 29 Jun 2023 00:28:41 +0000 (08:28 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

2 years agoFontify C, C++, Objective C identifiers containing $
Alan Mackenzie [Wed, 28 Jun 2023 18:29:39 +0000 (18:29 +0000)]
Fontify C, C++, Objective C identifiers containing $

Optionally, fontify them with font-lock-warning-face.
This fixes bug#64204.

* lisp/progmodes/cc-fonts.el (c-font-lock-ids-with-dollar):
New function.
(c-simple-decl-matchers, c-complex-decl-matchers): invoke
c-font-lock-ids-with-dollar for pertinent languages.

* lisp/progmodes/cc-langs.el (c-symbol-start): Add `$' to the
character list.
(c-dollar-in-ids): New lang const.
(c-symbol-key): For the Pike value, use the AWK value rather
than the C value as the basis, as the latter is no longer
suitable.

* lisp/progmodes/cc-vars.el (c-warn-ids-with-dollar): New
customizable option.

* doc/misc/cc-mode.texi ("Miscellaneous Font Locking"): Add a
section on the new optional fontification of identifiers with
'font-lock-warning-face'.

2 years agoAdapt Tramp's kubernetes integration
Michael Albinus [Wed, 28 Jun 2023 14:53:01 +0000 (16:53 +0200)]
Adapt Tramp's kubernetes integration

* doc/misc/tramp.texi (Inline methods): Shorten kubernetes entry.
(Kubernetes setup): New node.
(Top, Configuration): Add it to the menu.

* lisp/net/tramp-container.el (tramp-kubernetes--context-namespace):
Adapt dpcstring.
(tramp-kubernetes-connection-local-default-profile)
(tramp-kubernetes-connection-local-default-variables)
(tramp-flatpak-connection-local-default-profile)
(tramp-flatpak-connection-local-default-variables): Rename.

* lisp/net/tramp.el (tramp-expand-args): Use `tramp-compat-take'.

* test/lisp/net/tramp-tests.el (tramp-test34-connection-local-variables)
(tramp-test34-explicit-shell-file-name): Don't let-bind
`connection-local-profile-alist' and `connection-local-criteria-alist'.

2 years ago* lisp/emacs-lisp/cl-macs.el (cl--slet): Fix bug#64315
Stefan Monnier [Wed, 28 Jun 2023 13:24:30 +0000 (09:24 -0400)]
* lisp/emacs-lisp/cl-macs.el (cl--slet): Fix bug#64315

2 years agoSpeed up duplicate-dwim and duplicate-line by another factor 10
Mattias Engdegård [Wed, 28 Jun 2023 12:36:39 +0000 (14:36 +0200)]
Speed up duplicate-dwim and duplicate-line by another factor 10

* lisp/misc.el (duplicate--insert-copies): New.
(duplicate-line, duplicate-dwim): Call it.

2 years agoTree-sitter use with-silent-modifications like jit-lock (bug#64321)
Yuan Fu [Wed, 28 Jun 2023 03:58:34 +0000 (20:58 -0700)]
Tree-sitter use with-silent-modifications like jit-lock (bug#64321)

* lisp/treesit.el (treesit--font-lock-notifier): Use
with-silent-modifications when marking modified text to be fontified
by jit-lock.  This is what jit-lock itself does.

2 years agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Wed, 28 Jun 2023 00:29:27 +0000 (08:29 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

2 years agoMerge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs
Stefan Monnier [Tue, 27 Jun 2023 20:14:43 +0000 (16:14 -0400)]
Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs

2 years agocl-macs-tests.el (cl-&key-arguments): Fix regression
Stefan Monnier [Tue, 27 Jun 2023 20:14:32 +0000 (16:14 -0400)]
cl-macs-tests.el (cl-&key-arguments): Fix regression

* lisp/emacs-lisp/bytecomp.el (byte-compile-form): Turn "cannot use
lexical var" errors into warnings.
Make the obey `with-suppressed-warnings`.

* test/lisp/emacs-lisp/cl-macs-tests.el (cl-&key-arguments):
Suppress warnings.

2 years agoAmend the handling of c-laomib-cache.
Alan Mackenzie [Tue, 27 Jun 2023 20:11:48 +0000 (20:11 +0000)]
Amend the handling of c-laomib-cache.

There was unstable syntactic analysis of lines which were brace
lists.  This fixes bug#64133.

* lisp/progmodes/cc-engine.el (c-laomib-cache): Allow several
entries with the same LIM element corresponding to distinct
scanning regions.
(c-laomib-get-cache): Add new parameter START.  Adjust to be
able to have entries with the same LIM element and handle them
correctly.
(c-laomib-put-cache): Amend the handling of cache entries with
the same LIM element.
(c-looking-at-or-maybe-in-bracelist): Supply the needed new
argument to c-laomib-get-cache.  Add in a new call to
c-laomib-put-cache.

2 years agoFix todo-mode.el Commentary and a doc string (bug#64298)
Stephen Berman [Tue, 27 Jun 2023 15:50:18 +0000 (17:50 +0200)]
Fix todo-mode.el Commentary and a doc string (bug#64298)

* lisp/calendar/todo-mode.el: Explicitly note in the Commentary
that the Todo mode user manual is a separate Info manual in the
Emacs installation.
(todo-always-add-time-string): Replace doc string, which was
mistakenly retained in the initial merge of this version of
todo-mode.el, by a correct description of this user option.

2 years agoPrevent truncation of todo-mode categories sexp
Stephen Berman [Tue, 27 Jun 2023 15:38:20 +0000 (17:38 +0200)]
Prevent truncation of todo-mode categories sexp

* lisp/calendar/todo-mode.el (todo-delete-file)
(todo-move-category, todo-convert-legacy-files)
(todo-update-categories-sexp, todo-check-format):
Bind print-length and print-level to nil before using prin1
and related functions, to avoid truncating the todo categories
sexp and possibly corrupting the file format.

2 years agoAvoid making todo-mode buffers manually editable
Stephen Berman [Tue, 27 Jun 2023 15:27:42 +0000 (17:27 +0200)]
Avoid making todo-mode buffers manually editable

* lisp/calendar/todo-mode.el (todo-add-category)
(todo-move-category, todo-edit-item--header)
(todo-set-item-priority, todo-move-item, todo-item-undone)
(todo-archive-done-item, todo-set-category-number): Restrict the
scope of nil buffer-read-only to the function calls that change
buffer text, thereby preventing todo mode buffers from becoming
manually editable and hence possibly corrupted when the minibuffer
is in use.

2 years agoSpeed up duplicate-line by a factor of 2
Mattias Engdegård [Tue, 27 Jun 2023 15:00:11 +0000 (17:00 +0200)]
Speed up duplicate-line by a factor of 2

* lisp/misc.el (duplicate-line): Add the newline to the string to be
inserted instead of inserting it separately.
This makes duplicate-line as fast as duplicate-dwim with a contiguous
region.  Both could easily be made faster yet by making the code more
complex.

2 years ago; * doc/emacs/android.texi (Android Environment): Improve wording.
Po Lu [Tue, 27 Jun 2023 12:31:27 +0000 (20:31 +0800)]
; * doc/emacs/android.texi (Android Environment): Improve wording.

2 years ago; * doc/emacs/android.texi (Android Environment): Fix typos.
Po Lu [Tue, 27 Jun 2023 12:25:35 +0000 (20:25 +0800)]
; * doc/emacs/android.texi (Android Environment): Fix typos.

2 years ago; * doc/lispref/variables.texi: Fix define-obsolete-variable-alias arglist
Vladimir Sedach [Tue, 27 Jun 2023 04:50:59 +0000 (22:50 -0600)]
; * doc/lispref/variables.texi: Fix define-obsolete-variable-alias arglist

The WHEN argument is not optional anymore (bug#64312)

Copyright-paperwork-exempt: yes

2 years agoFix dired-insert-directory wrt remote directories
Michael Albinus [Tue, 27 Jun 2023 10:46:49 +0000 (12:46 +0200)]
Fix dired-insert-directory wrt remote directories

* lisp/dired.el (dired-insert-directory): Respect remote
directories consequently.

2 years agoUpdate Android port
Po Lu [Tue, 27 Jun 2023 07:33:05 +0000 (15:33 +0800)]
Update Android port

* src/android.c (android_exception_check)
(android_exception_check_1)
(android_exception_check_2)
(android_exception_check_nonnull)
(android_exception_check_nonnull_1): Tell the compiler to expect
that the object is non-NULL, or that no exception has been
thrown.

2 years ago; * exec/loader-mips64el.s (rest_of_exec): Fix typo in comment.
Po Lu [Tue, 27 Jun 2023 01:53:04 +0000 (09:53 +0800)]
; * exec/loader-mips64el.s (rest_of_exec): Fix typo in comment.

2 years agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Tue, 27 Jun 2023 00:43:07 +0000 (08:43 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

2 years ago; Document that 'named-let' needs lexical-binding
Eli Zaretskii [Mon, 26 Jun 2023 15:41:06 +0000 (18:41 +0300)]
; Document that 'named-let' needs lexical-binding

* doc/lispref/variables.texi (Local Variables): Warn that
'named-let' only works under lexical-binding.  (Bug#64290)

2 years agostartup.el: Don't override init.el custom of `debug-ignored-errors`
Stefan Monnier [Mon, 26 Jun 2023 15:25:14 +0000 (11:25 -0400)]
startup.el: Don't override init.el custom of `debug-ignored-errors`

* lisp/startup.el (startup--load-user-init-file): Undo commit 4302bc9b0f12.
Mimic the code we use for `debug-on-error` instead.

2 years agoFix Tramp mount-spec
Michael Albinus [Mon, 26 Jun 2023 13:48:48 +0000 (15:48 +0200)]
Fix Tramp mount-spec

* lisp/net/tramp-fuse.el (tramp-fuse-mounted-p): The mount-spec
could contain an optional trailing slash.  (Bug#64278)

* lisp/net/tramp-rclone.el (tramp-rclone-handle-file-system-info):
Check return code of command.

2 years ago; * etc/PROBLEMS: Fix typo.
Robert Pluim [Mon, 26 Jun 2023 13:26:32 +0000 (15:26 +0200)]
; * etc/PROBLEMS: Fix typo.

2 years agoCC Mode: Fix parenthesis bug in XEmacs part of macro
Alan Mackenzie [Mon, 26 Jun 2023 13:25:45 +0000 (13:25 +0000)]
CC Mode: Fix parenthesis bug in XEmacs part of macro

* lisp/progmodes/cc-defs.el (c-looking-at-non-alphnumspace):
Correct confused parentheses.

2 years agoFix Tramp mount-spec (don't merge)
Michael Albinus [Mon, 26 Jun 2023 10:41:04 +0000 (12:41 +0200)]
Fix Tramp mount-spec (don't merge)

* lisp/net/tramp-fuse.el (tramp-fuse-mounted-p): The mount-spec
could contain an optional trailing slash.  (Bug#64278)

2 years ago; * doc/lispref/commands.texi (Touchscreen Events): Fix typo.
Po Lu [Mon, 26 Jun 2023 01:19:07 +0000 (09:19 +0800)]
; * doc/lispref/commands.texi (Touchscreen Events): Fix typo.

2 years agoUpdate Android port
Po Lu [Mon, 26 Jun 2023 01:11:48 +0000 (09:11 +0800)]
Update Android port

* lisp/calc/calc.el (calc-mode, calc): Make sure the on-screen
keyboard is not hidden when a Calc buffer is created or a Calc
Trail window is being created for the first time.
* lisp/touch-screen.el (touch-screen-window-selection-changed):
Take touch-screen-display-keyboard in to account.

* src/sfnt.c (sfnt_decompose_compound_glyph)
(sfnt_interpret_compound_glyph_1): Reset `defer_offsets' before
processing each component.
(sfnt_lerp_half): Avoid undefined shift of negative value.
(sfnt_compute_tuple_scale): Pacify compiler warning.

2 years agoMerge remote-tracking branch 'origin/master' into feature/android
Po Lu [Mon, 26 Jun 2023 00:16:23 +0000 (08:16 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android

2 years ago; * doc/misc/erc.texi: Mention ERC's own mailing list.
F. Jason Park [Sun, 25 Jun 2023 13:43:56 +0000 (06:43 -0700)]
; * doc/misc/erc.texi: Mention ERC's own mailing list.

2 years agoAvoid "shadows" warning from erc-button--nick slots
F. Jason Park [Sun, 25 Jun 2023 13:15:11 +0000 (06:15 -0700)]
Avoid "shadows" warning from erc-button--nick slots

* lisp/erc/erc-button.el (erc-button-nick): Rename slots that share
names with user options to avoid "lexical argument shadows the dynamic
variable" warning.
(erc-button-add-nickname-buttons): Remove "erc-button-" namespace from
slot accessors.

2 years agoRevert "Allow erc-reuse-frames to favor connections"
F. Jason Park [Tue, 20 Jun 2023 06:14:40 +0000 (23:14 -0700)]
Revert "Allow erc-reuse-frames to favor connections"

This (mostly) reverts commit 0e4c07dc7448aafd2aa5f6e101d7b7aac23d8a6b.

* etc/ERC-NEWS: Also revert hunk from 52c8d537 "* etc/ERC-NEWS: Add
section for ERC 5.6." because it announced this feature, which no
longer exists.
* lisp/erc/erc.el (erc-reuse-frames): Revise doc string instead of
reverting completely.  (Bug#62833)

2 years agoFix VC package build when doc file isn't in a subdir
Daniel Semyonov [Fri, 23 Jun 2023 05:40:57 +0000 (08:40 +0300)]
Fix VC package build when doc file isn't in a subdir

* lisp/emacs-lisp/package-vc.el (package-vc--build-documentation):
Expand 'file' before attempting to get its directory.  (Bug#64242)

2 years agoMerge remote-tracking branch 'refs/remotes/origin/master'
Stefan Monnier [Sun, 25 Jun 2023 15:39:01 +0000 (11:39 -0400)]
Merge remote-tracking branch 'refs/remotes/origin/master'