1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-26 23:31:55 -08:00
Commit graph

164379 commits

Author SHA1 Message Date
Eli Zaretskii
5259f144d9 Remove unneeded restriction in using AEAD ciphers with GnuTLS
* src/gnutls.c (gnutls_symmetric_aead): Disable the enforcement of
block size on input data.  (Bug#60693)
2023-01-09 22:05:40 +02:00
Michael Albinus
ec105a45c9 Add remote-file-name-inhibit-delete-by-moving-to-trash
* doc/emacs/files.texi (Misc File Ops):
* doc/lispref/files.texi (Changing Files):
* doc/misc/tramp.texi (Frequently Asked Questions):
* etc/NEWS: Explain remote-file-name-inhibit-delete-by-moving-to-trash.

* lisp/files.el (remote-file-name-inhibit-delete-by-moving-to-trash):
New defcustom.  (Bug#60460)

* lisp/net/ange-ftp.el (ange-ftp-delete-file):
* lisp/net/tramp.el (tramp-skeleton-delete-directory):
Handle `remote-file-name-inhibit-delete-by-moving-to-trash'.
(tramp-skeleton-delete-file): New defmacro.

* lisp/net/tramp-adb.el (tramp-adb-handle-delete-file):
* lisp/net/tramp-fuse.el (tramp-fuse-handle-delete-file):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-file):
* lisp/net/tramp-sh.el (tramp-sh-handle-delete-file):
* lisp/net/tramp-smb.el (tramp-smb-handle-delete-file):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-delete-file): Use it.

* lisp/net/tramp-crypt.el (tramp-crypt-handle-delete-directory)
(tramp-crypt-handle-delete-file): Rearrange.

* lisp/net/tramp-fuse.el (tramp-fuse-handle-delete-directory):
Use `tramp-skeleton-delete-directory'.

* test/lisp/net/tramp-tests.el
(remote-file-name-inhibit-delete-by-moving-to-trash): Declare.
(tramp-test07-file-exists-p, tramp-test14-delete-directory)
(tramp-test48-unload): Extend tests.
2023-01-08 19:24:17 +01:00
Paul Eggert
5d1e14bd8b Adjust to recent Gnulib macro renaming
Also, remove some references to unused Gnulib macros.
2023-01-07 15:32:56 -08:00
Paul Eggert
a1b558a2e2 Update from Gnulib by running admin/merge-gnulib 2023-01-07 15:32:56 -08:00
Michael Albinus
0be40fbe43 Add new Tramp method "toolbox"
* doc/misc/tramp.texi (Inline methods): Add toolbox.

* etc/NEWS: Add new Tramp method "toolbox".

* lisp/net/tramp-container.el (tramp-toolbox-program): New defcustom.
(tramp-toolbox-method): New defconst.
(tramp-toolbox--completion-function): New defun.  Set it for "toolbox".
(tramp-methods) <toolbox>: Add.
(tramp-default-host-alist): Add rule for "toolbox".
2023-01-07 12:14:26 +01:00
Michael Albinus
de8d6bd329 Minor tramp-archive.el fix
* lisp/net/tramp-archive.el (tramp-archive-file-name-regexp):
Use `ignore-errors'.
2023-01-07 12:07:10 +01:00
Xi Lu
5636f14856 ; Use a single '<=' for range comparisons
* lisp/simple.el (undo-elt-in-region, char-uppercase-p)
(event-apply-modifier): Use a single '<='.  (Bug#60561)
2023-01-07 11:08:17 +02:00
Stefan Kangas
abeb29bfcc Merge from origin/emacs-29
9d410f8de6 (treesit-simple-indent-presets): Ensure 'and' works for a...
ff66a5d324 (treesit--indent-rules-optimize): Optimize 'and' and 'or'...
f2ebe43362 (treesit-simple-indent-presets): Short-circuit 'and' and ...
2ea6ee5cbf (font-lock-regexp-face): New face
5ab03bcc43 Unify the string interpolation delimiters face across ts ...
92e8c0c091 ruby-ts-mode: Highlight more kinds of parameters
7420b6dcc3 Fix `pr-interface'
699711786a Further generic-related improvements in csharp-ts-mode (b...

# Conflicts:
#	etc/NEWS
2023-01-07 06:30:10 +01:00
Paul Eggert
39b77970c6 Port to current Gnulib file-has-acl
* lib-src/Makefile.in (FILE_HAS_ACL_LIB): Rename from LIB_HAS_ACL,
to adjust to recent Gnulib renaming.  All uses changed.
2023-01-06 18:05:57 -08:00
Paul Eggert
9e98ff562b Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
Dmitry Gutov
9d410f8de6 (treesit-simple-indent-presets): Ensure 'and' works for anchors too
* lisp/treesit.el (treesit-simple-indent-presets):
Rewrite to return the last successful evaluation, not just t.
2023-01-07 03:28:38 +02:00
Dmitry Gutov
ff66a5d324 (treesit--indent-rules-optimize): Optimize 'and' and 'or' matcher forms
* lisp/treesit.el (treesit--indent-rules-optimize):
Optimize 'and' and 'or' matcher forms.  When 'and' has a 'query'
matcher inside (as is the case in ruby-ts--indent-rules, many
times over), this yields a significant performance boost.
2023-01-07 02:44:07 +02:00
Dmitry Gutov
f2ebe43362 (treesit-simple-indent-presets): Short-circuit 'and' and 'or'
* lisp/treesit.el (treesit-simple-indent-presets):
Short-circuit the 'and' and 'or' matchers.  To avoid calling all
fns after one returned nil or truthy value, respectively.
2023-01-07 02:02:25 +02:00
Paul Eggert
2f05f48918 Add new SI prefixes R, Q in other places
* lisp/dired-x.el (dired-x--string-to-number, dired-mark-sexp):
* lisp/dired.el (dired-re-inode-size):
* lisp/files.el (directory-listing-before-filename-regexp):
* src/xdisp.c (power_letter):
* src/xdisp.c: Include stdint.h.
Check that the prefixes suffice for ptrdiff_t.
2023-01-06 10:49:02 -08:00
Dmitry Gutov
2ea6ee5cbf (font-lock-regexp-face): New face
* lisp/font-lock.el (font-lock-regexp-face): New face.

* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--font-lock-settings):
* lisp/progmodes/ruby-ts-mode.el (ruby-ts--font-lock-settings):
* lisp/progmodes/js.el (js--treesit-font-lock-settings):
Use it for regexps.

* etc/NEWS: Mention the addition.
2023-01-06 19:56:20 +02:00
Dmitry Gutov
5ab03bcc43 Unify the string interpolation delimiters face across ts modes
* lisp/progmodes/js.el (js--treesit-font-lock-settings):
* lisp/progmodes/ruby-ts-mode.el (ruby-ts--font-lock-settings):
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--font-lock-settings):
Use font-lock-misc-punctuation-face for string interpolation
delimiters.
2023-01-06 16:17:50 +02:00
Dmitry Gutov
92e8c0c091 ruby-ts-mode: Highlight more kinds of parameters
* lisp/progmodes/ruby-ts-mode.el
(ruby-ts--font-lock-settings): Highlight destructured parameters,
lambda parameters, identifiers in pattern matching clauses
(array/hash) and exception variables.
Move the 'symbol' matchers lower to make 'hash_key_symbol' lower
priority than hash keys in match patterns.
2023-01-06 15:38:13 +02:00
Michael Albinus
6602ec3abc Remove Emacs 26 compatibility from Tramp
* doc/misc/tramp.texi (Remote processes): Don't mention Emacs version.
(Frequently Asked Questions): Adapt supported Emacs versions.

* doc/misc/trampver.texi:
* lisp/net/trampver.el: Change version to "2.7.0-pre".

* lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p)
(tramp-compat-file-name-quote, tramp-compat-file-name-unquote)
(tramp-compat-tramp-syntax, tramp-compat-exec-path)
(tramp-compat-time-equal-p, tramp-compat-flatten-tree)
(tramp-compat-progress-reporter-update)
(tramp-compat-ignore-error, tramp-compat-rx--transform-item)
(tramp-compat-rx--transform, tramp-compat-rx): Remove.

* lisp/net/tramp-adb.el:
* lisp/net/tramp-archive.el:
* lisp/net/tramp-cache.el:
* lisp/net/tramp-cmds.el:
* lisp/net/tramp-crypt.el:
* lisp/net/tramp-fuse.el:
* lisp/net/tramp-gvfs.el:
* lisp/net/tramp-integration.el:
* lisp/net/tramp-rclone.el:
* lisp/net/tramp-sh.el:
* lisp/net/tramp-smb.el:
* lisp/net/tramp-sshfs.el:
* lisp/net/tramp-sudoedit.el:
* lisp/net/tramp.el:
* lisp/net/trampver.el: Replace the removed `tramp-compat-*' items
by their real definition.  Don't use `tramp-compat-funcall' when
not needed.  Remove `with-no-warnings' and `ignore-errors' where
appropriate.

* lisp/net/tramp.el (tramp-file-name-for-operation): Rearrange list.
(tramp-handle-file-newer-than-file-p): Simplify.
(tramp-get-process-attributes): Don't check for existence of
`connection-local-criteria-for-default-directory'.
(tramp-handle-shell-command): Don't check for existence of
`shell-command-save-pos-or-erase', `async-shell-command-width' and
`shell-command-set-point-after-cmd'.
(tramp-handle-start-file-process): Call `make-process' directly.
(tramp-defined-time): New defsubst.
(tramp-get-local-gid): Don't check for existence of `group-name'.

* lisp/net/tramp-adb.el (tramp-adb-handle-set-file-times):
Use `tramp-defined-time'.
(tramp-adb-get-signal-strings): Don't bind `shell-file-name' and
`shell-command-switch'.

* lisp/net/tramp-archive.el (top, tramp-archive-file-name-handler):
Don't bind `max-specpdl-size' any longer.
(tramp-archive-autoload-file-name-regexp): Remove Emacs 26
specific code.
(top): Don't call `tramp-register-archive-autoload-file-name-handler'.

* lisp/net/tramp-gvfs.el (top): Don't bind `max-specpdl-size' any longer.
(tramp-gvfs-handle-set-file-times): Use `tramp-defined-time'.

* lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
Use `tramp-defined-time'.

* test/lisp/net/tramp-archive-tests.el (tramp-archive--test-emacs27-p):
Remove.
(all):
* test/lisp/net/tramp-tests.el (all): Don't skip for Emacs 26.
Replace the removed `tramp-compat-*' items by their real
definition.  Don't use `tramp-compat-funcall' when not needed.
Remove `with-no-warnings' and `ignore-errors' where appropriate.
(with-connection-local-variables)
(shell-command-dont-erase-buffer): Don't declare.
(tramp-test10-write-region): Don't check for `make-empty-file'.
(tramp-test32-shell-command): Simplify.
(tramp-test34-explicit-shell-file-name): Don't protect
`explicit-shell-file-name' any longer.
(tramp--test-emacs27-p): Remove.
2023-01-06 13:34:33 +01:00
Robert Pluim
7420b6dcc3 Fix `pr-interface'
`pr-interface' specifies `inline' for its menu items, which is not
necessary, but it causes `widget-choice-value-create' to bug
out.  (Bug#60501)

* lisp/wid-edit.el (widget-choice-value-create): Allow the value to be
a non-list.
* test/lisp/wid-edit-tests.el (widget-test-handle-spurious-inline):
Add test to ensure that unnecessary :inline is allowed.
2023-01-06 10:06:25 +01:00
Jostein Kjønigsen
699711786a
Further generic-related improvements in csharp-ts-mode (bug#60376)
This is an additional patch for bug#60376.

* lisp/progmodes/csharp-mode.el (csharp-ts-mode--font-lock-settings):
New rules.
2023-01-05 22:54:23 -07:00
Stefan Kangas
3fcbb86585 Merge from origin/emacs-29
0f5e74f173 ruby-ts-mode: Highlight method and block parameters
f1aa306f91 ruby-ts-mode: Highlight variable assignments
089b08eb3e ruby-ts-mode: Move 'self' and 'super' from constants to k...
7ede600273 (ruby-ts-mode): Split font-lock feature 'builtin' into two
ec172d748f Avoid assertion violation due to fill-column indicator face
62c2963ce6 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
2e6070f16c ; Another review of etc/NEWS
16eca92415 ; * src/gnutls.c (Fgnutls_deinit): Fix typo in doc string...
4753b58786 * lisp/cedet/semantic/symref/grep.el: Support ts-modes (b...
8a18369afd ; Another fix for doc strings of 2 treesit.el functions
3fc6883351 ; Fix the doc strings of 2 treesit.el functions
83ce7c861e Make 'toml-ts-mode' optional

# Conflicts:
#	etc/NEWS
2023-01-06 06:30:10 +01:00
Dmitry Gutov
0f5e74f173 ruby-ts-mode: Highlight method and block parameters
* lisp/progmodes/ruby-ts-mode.el (ruby-ts--font-lock-settings):
Add rules for method and block parameters.
(ruby-ts-mode): Add corresponding feature.
2023-01-06 04:48:35 +02:00
Perry Smith
f1aa306f91 ruby-ts-mode: Highlight variable assignments
* lisp/progmodes/ruby-ts-mode.el (ruby-ts--font-lock-settings):
Bring back the 'assignment' feature.
(ruby-ts-mode): Replace the unused 'variable' with 'assignment'.  Use
the level 3 for consistency with other ts modes.
Update the Commentary as well.
2023-01-06 04:25:05 +02:00
Dmitry Gutov
089b08eb3e ruby-ts-mode: Move 'self' and 'super' from constants to keywords
* lisp/progmodes/ruby-ts-mode.el (ruby-ts--font-lock-settings):
Move 'self' and 'super' from constants to keywords.
2023-01-06 03:32:46 +02:00
Dmitry Gutov
7ede600273 (ruby-ts-mode): Split font-lock feature 'builtin' into two
* lisp/progmodes/ruby-ts-mode.el (ruby-ts-mode):
Split the 'builtin' feature in two: 'builtin-constant' and
'builtin-variable'.
(ruby-ts-highlight-predefined-constants):
Drop the user option, the highlighting granularity can be chosen
using treesit-font-lock-recompute-features.
(ruby-ts--font-lock-settings): Update accordingly.
(ruby-ts--predefined-constants, ruby-ts--predefined-variables):
Fix docstrings.
2023-01-06 03:32:46 +02:00
Eli Zaretskii
ec172d748f Avoid assertion violation due to fill-column indicator face
* src/xdisp.c (extend_face_to_end_of_line): Use the original
iterator metrics for the stretch glyph, the one unaffected by the
'fill-column-indicator' face.  (Bug#60580)
2023-01-05 22:33:51 +02:00
Eli Zaretskii
62c2963ce6 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29 2023-01-05 22:32:17 +02:00
Michael Albinus
2e6070f16c ; Another review of etc/NEWS 2023-01-05 20:53:25 +01:00
Eli Zaretskii
16eca92415 ; * src/gnutls.c (Fgnutls_deinit): Fix typo in doc string (bug#60579). 2023-01-05 20:39:14 +02:00
Juri Linkov
4753b58786 * lisp/cedet/semantic/symref/grep.el: Support ts-modes (bug#60525)
(semantic-symref-filepattern-alist): Duplicate entries
c-mode -> c-ts-mode, c++-mode -> c++-ts-mode, ruby-mode -> ruby-ts-mode,
python-mode -> python-ts-mode.
2023-01-05 20:18:11 +02:00
Michael Albinus
15fc7b3cde Remove obsolete Tramp items
* etc/NEWS: Obsolete user option
'tramp-completion-reread-directory-timeout' has been removed.  Fix typos.

* lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
Ignore `make-directory-internal'.

* lisp/net/tramp-sh.el (tramp-get-remote-trash): Remove.

* lisp/net/tramp-smb.el (tramp-smb-handle-make-directory-internal):
Remove.

* lisp/net/tramp.el (tramp-default-user): Fix docstring.
(tramp-completion-reread-directory-timeout): Remove.
2023-01-05 13:23:04 +01:00
Eli Zaretskii
8a18369afd ; Another fix for doc strings of 2 treesit.el functions
* lisp/treesit.el (treesit-parent-while): Clarify "closest" and
"furthest" in the doc string.  (Bug#60531)
2023-01-05 09:34:02 +02:00
Eli Zaretskii
3fc6883351 ; Fix the doc strings of 2 treesit.el functions
* lisp/treesit.el (treesit-parent-until, treesit-parent-while):
Doc fixes.  (Bug#60531)
2023-01-05 09:20:02 +02:00
Eli Zaretskii
83ce7c861e Make 'toml-ts-mode' optional
* etc/NEWS: Reflect the fact that 'toml-ts-mode' is optional.

* lisp/textmodes/toml-ts-mode.el (auto-mode-alist): Don't autoload
the addition of 'toml-ts-mode'.  (Bug#60559)
2023-01-05 08:40:07 +02:00
Stefan Kangas
e1b2446b2e Merge from origin/emacs-29
92f753dc19 ; * etc/NEWS: Fix wording in last change.
cef875f6c5 ; * etc/NEWS: Instructions for builds without tree-sitter...
8d530ca654 ; Fix documentation of y-or-n-p/yes-or-no-p
c18878ee0a Fix bug in Tramp multi-hop
7eed8e050a * lisp/files.el (find-sibling-rules): Fix docstring.
6b5831c696 Tree-sitter doc fixes (bug#60524)
651927ac39 ; Fix function reference in comment in c-ts-mode.el (bug#...
c786afcbb9 Fontify C++ function definitions in c-ts-mode (bug#60529)

# Conflicts:
#	etc/NEWS
2023-01-05 06:30:20 +01:00
Eli Zaretskii
92f753dc19 ; * etc/NEWS: Fix wording in last change. 2023-01-04 20:52:41 +02:00
Eli Zaretskii
cef875f6c5 ; * etc/NEWS: Instructions for builds without tree-sitter (bug#60559) 2023-01-04 20:51:04 +02:00
Eli Zaretskii
8d530ca654 ; Fix documentation of y-or-n-p/yes-or-no-p
* lisp/subr.el (y-or-n-p):
* src/fns.c (Fyes_or_no_p): Doc fix.
2023-01-04 19:25:47 +02:00
Michael Albinus
c18878ee0a Fix bug in Tramp multi-hop
* lisp/net/tramp.el (tramp-compute-multi-hops): Make check for
host name more robust.  (Bug#60499)
2023-01-04 18:12:02 +01:00
Michael Albinus
7eed8e050a * lisp/files.el (find-sibling-rules): Fix docstring. 2023-01-04 18:11:31 +01:00
Juri Linkov
6b5831c696 Tree-sitter doc fixes (bug#60524)
* doc/lispref/modes.texi (Parser-based Font Lock):
Replace :lang with :language.

* doc/lispref/parsing.texi (Language Grammar): Replace
treesit-load-suffixes with dynamic-library-suffixes.
(Retrieving Nodes): Fix function names.
(Tree-sitter Major Modes): Fix treesit-ready-p args.
Fix pxref to Parser-based Indentation.
(Tree-sitter C API): Fix function names.

* lisp/treesit.el (treesit--simple-indent-eval): Remove cond BODY
duplicated from CONDITION.
(treesit)<define-short-documentation-group>: Fix function names.
2023-01-04 09:57:06 +02:00
Daniel Martín
651927ac39
; Fix function reference in comment in c-ts-mode.el (bug#60514)
* lisp/progmodes/c-ts-mode.el (c-ts-mode--font-lock-settings): Fix
reference.
2023-01-04 00:04:32 -07:00
Daniel Martín
c786afcbb9
Fontify C++ function definitions in c-ts-mode (bug#60529)
* lisp/progmodes/c-ts-mode.el (c-ts-mode--declarator-identifier):
Teach the code how to extract the declarator of a node of type
"qualified_identifier".
(c-ts-mode--fontify-declarator): Consider the case where the
identifier in a function declarator is buried inside
"qualifier_identifier" nodes.
2023-01-04 00:04:32 -07:00
Stefan Kangas
1ddd31bf98 Merge from origin/emacs-29
0d98fac6bb (ruby-ts-add-log-current-function): Fix when between two ...
da69f116bf ; * doc/lispref/positions.texi (List Motion): Minor wordi...
0b0eae0bf7 ; Improve documentation of 'treesit-language-source-alist'
ae0d218d0b ; * etc/NEWS: Mention treesit-install-language-grammar.
de3df3bc51 * lisp/vc/vc-git.el (vc-git-checkin): Pass vc-git-diff-sw...

# Conflicts:
#	etc/NEWS
2023-01-04 06:30:13 +01:00
Dmitry Gutov
0d98fac6bb (ruby-ts-add-log-current-function): Fix when between two methods
* lisp/progmodes/ruby-ts-mode.el
(ruby-ts-add-log-current-function): Fix the case when point is
between two methods.  'treesit-node-at' returs the 'def' node of
the method after point in such case, so it behaved like point was
inside the method below.

* test/lisp/progmodes/ruby-ts-mode-tests.el
(ruby-ts-add-log-current-method-outside-of-method):
Update the test case.

* test/lisp/progmodes/ruby-mode-tests.el
(ruby-add-log-current-method-outside-of-method):
Mirror that change.
2023-01-04 00:38:01 +02:00
Mattias Engdegård
0e1b03bbb8 Styled quotes in compiler warnings
* lisp/emacs-lisp/byte-run.el (byte-run--parse-body)
(byte-run--unescaped-character-literals-warning):
* lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment)
(byte-compile-form, bytecomp--warn-dodgy-eq-arg):
* lisp/emacs-lisp/cconv.el (cconv--warn-unused-msg):
* lisp/emacs-lisp/cl-macs.el (cl-defstruct):
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
* lisp/emacs-lisp/eieio.el (defclass):
* lisp/emacs-lisp/macroexp.el (macroexp--unfold-lambda)
(macroexp--expand-all):
* lisp/emacs-lisp/pcase.el (pcase--u1):
* lisp/subr.el (when, unless, ignore-error, lsh, sit-for)
(with-demoted-errors):
Use format-message to ensure properly styled quotes in compiler
warning messages.
2023-01-03 18:39:06 +01:00
Mattias Engdegård
cfc0e1cc02 ; * cl-lib-tests.el: Suppress for the right function. 2023-01-03 14:30:16 +01:00
Eli Zaretskii
da69f116bf ; * doc/lispref/positions.texi (List Motion): Minor wording fix. 2023-01-03 15:16:42 +02:00
Eli Zaretskii
0b0eae0bf7 ; Improve documentation of 'treesit-language-source-alist'
* lisp/treesit.el (treesit--install-language-grammar-build-recipe)
(treesit-install-language-grammar):  Doc fixes.
(treesit-install-language-grammar): Autoload it.

* etc/NEWS: Improve wording of the
'treesit-install-language-grammar' documentation.
2023-01-03 15:12:48 +02:00
Mattias Engdegård
0bece4d33f Data argument to signal should be a list
* lisp/calendar/iso8601.el (iso8601-parse, iso8601-parse-date)
(iso8601-parse-time, iso8601-parse-zone, iso8601-parse-duration)
(iso8601-parse-interval):
* lisp/emacs-lisp/cl-lib.el (cl-values-list):
* lisp/emacs-lisp/comp.el (comp-decrypt-arg-list)
(comp-spill-lap-function, comp-emit-switch)
(comp-compute-dominator-tree, comp-final):
* lisp/image.el (image-type):
* lisp/image/exif.el (exif--parse-jpeg, exif--parse-exif-chunk)
(exif--parse-directory, exif--read-chunk, exif--read-number-be)
(exif--read-number-le):
* lisp/vc/vc.el (vc-default-last-change):
Wrap obvious non-list data arguments to `signal` in a list.
2023-01-03 14:03:58 +01:00