1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-15 18:40:39 -08:00
Commit graph

166507 commits

Author SHA1 Message Date
Eli Zaretskii
970f94a2dd Merge from origin/emacs-29
ede3535051 ; Fix last change
8ec786349e Fix apostrophe handling in rust-ts-mode and go-ts-mode (B...
0eba9cf651 * test/infra/Dockerfile.emba (emacs-base): Install also g...
4897c98b6c Fix 'python-util-clone-local-variables'
6b2c8dc905 Revert "Enhance Python font-lock to support multilines"
348e4504c6 Fix typo in calc.texi
03663b8798 Update to Transient v0.4.1
dc7acb1aaf Avoid errors in 'delete-forward-char' deleting static com...
2f94f6de9d Make VS-15 and VS-16 compositions work correctly
753f8aa1f1 Fix project-name for vc-aware backend in non-file buffers
17c7915ab9 ; Fix 'package-install-upgrade-built-in' check for packag...
e252ce26ea Add type_predicate 'is' as keyword in typescript-ts-mode ...
0a354d6578 Fix infloop in info-look.el
83b22139e4 Fix several todo-mode.el item editing bugs (bug#63811)
ed4cd3eddf dockerfile-ts-mode: Prevent empty categories in imenu (Bu...
2e20e318da Brush up doc strings and terminology in plstore.el
372bc1278c Add internal documentation on plstore.el
23a14e7b90 Add compact_constructor_declaration font-locking to java-...
500abc4dc3 * lisp/tmm.el (tmm-completion-delete-prompt): Add more ch...
afc1f32935 Allow to disable the DWIMish behavior of 'x' in package menu
08104c0150 Allow dired to invoke secondary browser
a3063f0bc8 Add a binding for enriched-toggle-markup
d8ba28fa39 Fix order of tmm-menubar when 'tmm-mid-prompt' is nil

# Conflicts:
#	etc/NEWS
2023-06-03 05:50:58 -04:00
Eli Zaretskii
68b87288aa ; Merge from origin/emacs-29
The following commit was skipped:

53dc7bec83 Fix regression when saving tramp-default-proxies-alist (D...
2023-06-03 05:50:51 -04:00
Eli Zaretskii
85af52bacd Merge from origin/emacs-29
3f44152567 Save the tree-sitter grammar recipe when installing a gra...
c0c7b947ba Add instructions and test file for VS-15/VS-16
3be33aff96 A better fix for "Fix cancellation of Wdired"
756244c696 ; * lisp/minibuffer.el (completions-header-format): Doc fix.
5d844e129a Fix tmm-menubar when 'tmm-completion-prompt' is nil

# Conflicts:
#	lisp/treesit.el
2023-06-03 05:50:49 -04:00
Eli Zaretskii
08b9e75c8e ; Merge from origin/emacs-29
The following commit was skipped:

5e7c826bfa ; * lisp/progmodes/project.el: avoid warning in loaddefs.
2023-06-03 05:47:29 -04:00
Eli Zaretskii
919f3a7aae Merge from origin/emacs-29
95ee5477e1 ; * src/lread.c (read0, skip_lazy_string): Fix commentary...
2023-06-03 05:47:29 -04:00
Eli Zaretskii
ede3535051 ; Fix last change
* lisp/progmodes/rust-ts-mode.el
(rust-ts-mode--syntax-propertize): Doc fix.  (Bug#63708)
2023-06-03 11:34:11 +03:00
Йордан Миладинов
8ec786349e Fix apostrophe handling in rust-ts-mode and go-ts-mode (Bug#63708)
* lisp/progmodes/rust-ts-mode.el (rust-ts-mode--syntax-propertize):
Treat apostrophes as strings if used to define character literals.
Treat LT and GT as pairs if used to define type parameters (formerly
they were treated as pairs only for type arguments).
* lisp/progmodes/go-ts-mode.el (go-ts-mode--syntax-table): Treat
apostrophes as strings if used to define rune literals.

Copyright-paperwork-exempt: yes
2023-06-03 11:30:18 +03:00
Michael Albinus
f1fd3d2606 Adapt emba integration
* admin/notes/emba: Improve docker call.

* test/infra/Dockerfile.emba (emacs-eglot, emacs-tree-sitter):
Install also gawk.

* test/infra/Makefile.in (TREE-SITTER-FILES): New variable.
(tree-sitter-files-template): New rule.
(.PHONY, generate-test-jobs): Add it to dependencies.

* test/infra/gitlab-ci.yml (variables): Disable CI_DEBUG_TRACE.
(test-tree-sitter): Extends also .tree-sitter-files-template.  Use
$tree_sitter_files.

* test/infra/test-jobs.yml: Regenerate.
2023-06-03 10:19:02 +02:00
Michael Albinus
0eba9cf651 * test/infra/Dockerfile.emba (emacs-base): Install also gawk. 2023-06-03 09:54:52 +02:00
Steven Allen
8d6dd1682e Fix use-package :vc keyword when byte-compiled
* lisp/use-package/use-package-core.el (use-package-handler/:vc):
Return the new 'body'. Otherwise, the entire package declaration gets
dropped when byte-compiling.
* test/lisp/use-package/use-package-tests.el
(use-package-test-handler/:vc-6): test it.
2023-06-03 10:27:46 +03:00
Eli Zaretskii
4897c98b6c Fix 'python-util-clone-local-variables'
* lisp/progmodes/python.el (python-util-clone-local-variables):
Avoid signaling an error when a local variable is unbound.
Patch by Ernesto Alfonso <erjoalgo@gmail.com>.  (Bug#63818)
2023-06-03 10:20:08 +03:00
kobarity
6b2c8dc905 Revert "Enhance Python font-lock to support multilines"
This reverts commit 4915ca5dd4.

We have found that there are performance issues when editing a large
file.  The issue can be reproduced as follows:

1. emacs -Q
2. Open large Python file (e.g. turtle.py in Python)
3. Near the top of the buffer, enter open paren and some characters.

The above commit extends the region to be font-locked using
`python-nav-end-of-statement'.  However, if there are unbalanced
parens, it may move point to the end of the buffer.  This causes
almost the entire buffer to be font-locked, which is not acceptable
for large files.
2023-06-03 10:09:33 +03:00
Eli Zaretskii
348e4504c6 Fix typo in calc.texi
* doc/misc/calc.texi (Programming Tutorial): Fix a typo.
Suggested by Vladimir Nikishkin <lockywolf@gmail.com>.
2023-06-03 09:14:44 +03:00
Jonas Bernoulli
03663b8798
Update to Transient v0.4.1 2023-06-02 23:26:45 +02:00
Eli Zaretskii
dc7acb1aaf Avoid errors in 'delete-forward-char' deleting static compositions
* lisp/simple.el (delete-forward-char): Fix recognition of static
compositions.  (Bug#63837)
2023-06-02 15:42:42 +03:00
Robert Pluim
2f94f6de9d Make VS-15 and VS-16 compositions work correctly
There is a conflict between forward matching and backward matching
composition rules involving the same codepoint, which can cause the
backward matching ones not to be invoked.  Ensure that VS-15 (U+FE0E)
and VS-16 (U+FE0F) are composed by forward matching rules instead in
order to avoid this issue.

* admin/unidata/emoji-zwj.awk: Add rules for CHAR+VS-15 and CHAR+VS-16.
* lisp/composite.el: remove backward matching rule for VS-15.  (Bug#63731)
2023-06-02 14:13:43 +02:00
Michael Albinus
f947a0219b Fix tree-sitter tests on emba
* test/infra/Makefile.in: Revert tree-sitter relevant changes.

* test/infra/gitlab-ci.yml (test-tree-sitter): Remove
.tree-sitter-files-template.  List files explicitly.

* test/infra/test-jobs.yml: Regenerate.
2023-06-02 13:44:00 +02:00
Dmitry Gutov
753f8aa1f1 Fix project-name for vc-aware backend in non-file buffers
* lisp/progmodes/project.el (project-name): Make sure
project-vc-name is picked up from dir-locals in all
non-file-visiting buffers too (mentioned in bug#63469).
2023-06-02 05:10:15 +03:00
Andrea Corallo
9f5ca95ef7 * lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Fix a bunch of 2023-06-01 21:18:06 +02:00
Michael Albinus
2d6ba3e034 Adapt tree-sitter tests on emba
* test/infra/Makefile.in (TREE-SITTER-FILES): Double-quote variable.

* test/infra/test-jobs.yml: Regenerate.
2023-06-01 15:57:43 +02:00
Andrea Corallo
dacc535a80 * lisp/emacs-lisp/comp.el (comp-jump-table-optimizable): Refactor. 2023-06-01 11:48:24 +02:00
Michael Albinus
f8c3d3824d ; * test/infra/gitlab-ci.yml (variables): Enable CI_DEBUG_TRACE. 2023-06-01 08:47:18 +02:00
Philip Kaludercic
17c7915ab9 ; Fix 'package-install-upgrade-built-in' check for package menu
* lisp/emacs-lisp/package.el (package-menu--find-upgrades): Use
correct check to verify if a built-in packages in the package menu can
be upgraded or not.

This change improves upon a faulty assumption from
ba2c76fa2b.  (Bug#63587)
2023-05-31 23:54:29 +02:00
Theodor Thornhill
e252ce26ea Add type_predicate 'is' as keyword in typescript-ts-mode (bug#63810)
* lisp/progmodes/typescript-ts-mode.el (typescript-ts-mode--keywords):
New keyword 'is'.
2023-05-31 20:47:06 +02:00
Mattias Engdegård
dc3b3548b7 * lisp/composite.el (compose-gstring-for-terminal): Fix omitted var.
It may not make much of a difference since the code path is probably
only taken once for i=0 with no more glyphs in the input, but this
change avoids depending on such external invariants and makes
the code less mystifying to the reader (bug#63807).
2023-05-31 18:55:03 +02:00
Mattias Engdegård
ddf8587bb5 Disable unused-return-value warning for delq and delete, again
* lisp/emacs-lisp/bytecomp.el (important-return-value-fns):
Remove `delq` and `delete` since they resulted in false
positives that nobody was interested in silencing (bug#61730).
2023-05-31 17:09:12 +02:00
Mattias Engdegård
2df7b98de3 * lisp/net/shr.el (shr-dom-max-natural-width): Rewrite muddled code. 2023-05-31 17:09:12 +02:00
Mattias Engdegård
288c48bcd9 ; * test/src/comp-tests.el (non-locals): Repair botched test. 2023-05-31 17:09:12 +02:00
Eli Zaretskii
0a354d6578 Fix infloop in info-look.el
* lisp/info-look.el (info-lookup-guess-gdb-script-symbol): Fix
infloop when there are no completions.  (Bug#63808)
2023-05-31 17:50:53 +03:00
Stephen Berman
83b22139e4 Fix several todo-mode.el item editing bugs (bug#63811)
* lisp/calendar/todo-mode.el (todo-insert-item--basic): With
insertion type 'here', ensure item is inserted on the todo-mode
line where the command was invoked.
(todo-edit-item--cat, todo-edit-item--pos): New variables.
(todo-edit-item--text): Restrict the scope of nil-valued
buffer-read-only to the functions that change buffer text.  If
user moved point while editing a single-line todo item or a done
item comment, or while inserting a done item comment, restore
point, and for comments, make sure the done items section is
displayed.  For multiline items, set the new variables so
todo-edit-quit can use them.
(todo-edit-quit): Use the values of the new variables to restore
point in the todo-mode buffer if it had been moved while editing.
(todo-edit-item--header): Avoid clobbering match data when editing
a todo item header.
2023-05-31 16:15:48 +02:00
Randy Taylor
ed4cd3eddf dockerfile-ts-mode: Prevent empty categories in imenu (Bug#63759)
* lisp/progmodes/dockerfile-ts-mode.el (dockerfile-ts-mode--imenu):
Don't include empty categories.
2023-05-31 16:17:19 +03:00
Eli Zaretskii
65b3d4d120 ; * lisp/misc.el (forward-to-word, backward-to-word): Doc fix. 2023-05-31 16:13:56 +03:00
Zaz Brown
5f6aa5a174 Make forward and backward-to-word arg optional
* lisp/misc.el (forward-to-word, backward-to-word): Make the
argument optional.  (Bug#63626)

Copyright-paperwork-exempt: yes
2023-05-31 16:10:32 +03:00
Jens Schmidt
2e20e318da Brush up doc strings and terminology in plstore.el
* lisp/plstore.el (plstore-encoded, plstore-passphrase-callback-function)
(plstore--init-from-buffer, plstore-revert, plstore-close)
(plstore--merge-secret, plstore--decrypt, plstore--match, plstore-find)
(plstore-get, plstore-put, plstore-delete, plstore--insert-buffer)
(plstore-save, plstore--encode, plstore--decode)
(plstore--write-contents-functions, plstore-mode-decoded)
(plstore-mode): Brush up doc strings and documentation in general.
Fix terminology, in particular spurious occurences of all uppercase
"PLSTORE".  (Bug#63627)
2023-05-31 15:53:35 +03:00
Jens Schmidt
372bc1278c Add internal documentation on plstore.el
* lisp/plstore.el: Add internal documentation and some words of
warning in the user documentation.  (Bug#63627)
2023-05-31 15:53:10 +03:00
Michael Albinus
5cace109d2 ; * etc/NEWS: Fix typos. 2023-05-31 08:45:08 +02:00
Michael Albinus
3e3c277870 Improve tree-sitter tests on emba
* test/infra/Dockerfile.emba (emacs-tree-sitter): Install only
grammars which are needed.

* test/infra/Makefile.in (subdir_template): Special handling of
progmodes.
(TREE-SITTER-FILES): New variable.
(tree-sitter-files-template): New rule.
(.PHONY, generate-test-jobs): Add it to dependencies.

* test/infra/gitlab-ci.yml (.tree-sitter-template):
Add test/lisp/progmodes/*-ts-mode-resources/**.
(test-tree-sitter): Extends also .tree-sitter-files-template.  Use
$tree-sitter-files.

* test/infra/test-jobs.yml: Regenerate.
2023-05-31 08:44:44 +02:00
Andrea Corallo
ecc1d990d9 'describe-function' shows function inferred type when available
* lisp/help-fns.el (help-fns--signature): Print function type for
native compiled code.
* etc/NEWS: Add entry.
2023-05-30 18:28:25 +02:00
Mattias Engdegård
49c56f3335 Add function declarations
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns):
Add get-byte, string-width, unibyte-string, special-variable-p, frexp,
buffer-hash, buffer-line-statistics, load-average, md5, secure-hash,
string-collate-equalp, string-collate-lessp, string-to-unibyte,
string-version-lessp, current-cpu-time.
(side-effect-and-error-free-fns): Add equal-including-properties.
(pure-fns): Add equal-including-properties, string-version-lessp.
* lisp/emacs-lisp/bytecomp.el (important-return-value-fns):
Add match-data.
* lisp/subr.el (buffer-local-boundp, subr-primitive-p, gensym)
(frame-configuration-p, apply-partially, make-composed-keymap)
(keymap-canonicalize, listify-key-sequence, event-modifiers)
(event-basic-type, mouse-event-p, event-start, event-end)
(event-click-count, event-line-count, posnp, posn-window, posn-area)
(posn-point, posn-x-y, posn-col-row, posn-actual-col-row)
(posn-timestamp, posn-string, posn-image, posn-object)
(posn-object-x-y, posn-object-width-height, provided-mode-derived-p)
(derived-mode-p, autoloadp, locate-eln-file, symbol-file)
(process-lines-handling-status, process-lines)
(process-lines-ignore-status, process-get)
(copy-overlay, shell-quote-argument, field-at-pos):
Add appropriate function declarations.
2023-05-30 17:46:06 +02:00
Mattias Engdegård
27d68d790f ; * admin/cus-test.el (cus-test-apropos): remove TODO (already done) 2023-05-30 17:46:06 +02:00
Mattias Engdegård
845f97d475 ; * admin/admin.el (cusver-scan): remove broken warning
The call to `format-message` had no effect in itself, but it turns out
that actually emitting the result just results in useless warnings so
we remove it entirely.
2023-05-30 17:46:06 +02:00
Mattias Engdegård
9ae212fb1e xml.el: remove incorrect and botched attribute whitespace collapse
* lisp/xml.el (xml-parse-attlist): Don't attempt to collapse multiple
consecutive whitespace characters into a single space, which is wrong
to do a this point when attributes must be assumed to be CDATA.

The code was actually unintentionally correct since it forgot to use
the return value of `replace-regexp-in-string` (bug#63740).
2023-05-30 17:46:06 +02:00
Mattias Engdegård
6e255ddfff * test/lisp/dnd-tests.el (dnd-tests-begin-text-drag): Fix typo. 2023-05-30 17:46:06 +02:00
Mattias Engdegård
ace9f67755 Avoid using rx any for not-newline
Despite its name, `any` does not match any character (use `anychar`
for that) but is an old synonym for `not-newline` and `nonl`,
retained for compatibility with the obsolete `sregex` package.

(In SRE as defined by SRFI-115, `any` does match any character.)

There is also a mild but unnecessary confusion with the more
frequently used `any` construct for character alternatives.

* lisp/edmacro.el (edmacro-mode-font-lock-keywords):
* lisp/erc/erc.el (erc--ensure-url):
* lisp/org/org.el (org-fontify-meta-lines-and-blocks-1):
* lisp/progmodes/scheme.el (scheme-imenu-generic-expression):
* test/lisp/find-cmd-tests.el (find-cmd-test-find-cmd):
Replace uses of `any` with `nonl`.
2023-05-30 17:44:53 +02:00
Theodor Thornhill
23a14e7b90 Add compact_constructor_declaration font-locking to java-ts-mode
* lisp/progmodes/java-ts-mode.el (java-ts-mode--font-lock-settings):
New pattern.
2023-05-30 15:29:38 +02:00
Mattias Engdegård
08291e6f17 Clean up defcustom type quote check
* lisp/emacs-lisp/bytecomp.el
(byte-compile--suspicious-defcustom-choice): Rename to...
(byte-compile--defcustom-type-quoted): ...this and rewrite to make
more sense.  All callers updated.
(byte-compile-nogroup-warn): Better warning message.
* test/lisp/emacs-lisp/bytecomp-tests.el
(test-bytecomp-defgroup-choice): This never failed because it wasn't
actually a test.  Turn it into...
(bytecomp-test-defcustom-type-quoted): ...this, which is.
2023-05-30 09:51:10 +02:00
Michael Albinus
f8a79c0055 * test/infra/gitlab-ci.yml (test-tree-sitter): Fix file list. 2023-05-30 09:46:46 +02:00
Protesilaos Stavrou
cb1ee63e2a
Update modus-themes to their version 4.2.0
* doc/misc/modus-themes.org: Update the manual.

* etc/themes/modus-operandi-tritanopia-theme.el:
* etc/themes/modus-vivendi-tritanopia-theme.el: Add new themes
  optimized for users with blue-yellow color deficiency (tritanopia).

* etc/themes/modus-operandi-deuteranopia-theme.el:
* etc/themes/modus-operandi-theme.el:
* etc/themes/modus-operandi-tinted-theme.el:
* etc/themes/modus-vivendi-deuteranopia-theme.el:
* etc/themes/modus-vivendi-theme.el:
* etc/themes/modus-vivendi-tinted-theme.el: Update theme files.

* etc/themes/modus-themes.el: Update main file to the latest version.

* etc/NEWS: Rephrase the announcement about the new Modus themes to
  also mention the tritanopia-optimized items.

Detailed release notes here:
<https://protesilaos.com/codelog/2023-05-30-modus-themes-4-2-0/>.
2023-05-30 09:37:24 +03:00
F. Jason Park
31a80f61ec Preserve prompt in erc-cmd-CLEAR
* etc/ERC-NEWS: Mention behavioral changes to functionality provided
by the `truncate' and `log' modules and also the "/CLEAR" command.
* lisp/erc/erc-log.el (erc-truncate-buffer-on-save): Deprecate option
because three's a crowd, and ERC already has a dedicated module as
well as a slash command for this purpose.  And although this commit
restores functionality, this option has been unusable since at least
the release of ERC 5.5, with no known complaints received thus far.
Also, the doc string of `erc-save-buffer-in-logs' makes no mention of
this feature WRT interactive invocations or otherwise.
(erc-log-mode, erc-log-enable, erc-log-disable): Subscribe to
new internal hook `erc--pre-clear-functions'.
(erc-log--save-in-progress-p): New variable to help restore
`erc-truncate-buffer-on-save' and promote code reuse.
(erc-logging-enabled): Guard with `erc-log--saved-in-progress-p'.
(erc-save-buffer-in-logs): Overload `buffer' parameter to allow
various hooks to supply a non-buffer as well.  Warn when people use
`erc-truncate-buffer-on-save', which is now deprecated.
* lisp/erc/erc-stamp.el (erc-stamp-mode, erc-stamp-enable,
erc-stamp-disable): Subscribe to `erc--pre-clear-functions'.
(erc-stamp--update-saved-position): New function for updating
last-logged marker on `erc-stamp--insert-date-function'.
(erc-stamp--reset-on-clear): New function to forget last inserted
stamps when truncating.
* lisp/erc/erc-truncate.el (erc-truncate-mode, erc-truncate-enable,
erc-truncate-disable): Use `erc-insert-done-hook' instead of
`erc-insert-post-hook', as implicitly suggested by an ancient comment,
which ponders whether truncating the buffer at the insertion phase may
be harmful to other hook members.
(erc-truncate-buffer-to-size): Set truncation boundary at message
break instead of line break.  Run `erc--pre-clear-functions'.
(erc-truncate-buffer): Save excursion.  This should probably be
handled by `erc-truncate-buffer-to-size' instead, but that's
likelier to cause breakage in third-party code.
* lisp/erc/erc.el (erc--pre-clear-functions): New internal hook.
(erc-cmd-CLEAR): Run `erc--pre-clear-functions' before clearing, and
don't blow away prompt.  The latter was a regression caused by
05f6fdb9e7 "Preserve ERC prompt and its bounding markers".
* test/lisp/erc/erc-scenarios-log.el: New file.  (Bug#60936)
2023-05-29 21:46:23 -07:00
F. Jason Park
4f93c52f7f Recompute erc-prompt when inserting messages
* lisp/erc/erc.el (erc--refresh-prompt): New function for redrawing
the prompt in a couple select places.
(erc-display-line-1, erc-display-msg): Replace the prompt after
inserting messages.
* test/lisp/erc/erc-tests.el (erc--refresh-prompt): New
test.  (Bug#60936)
2023-05-29 21:42:45 -07:00