Commit graph

94701 commits

Author SHA1 Message Date
Illia Ostapyshyn
8074c08cd5 Use proper smime-keys entry for S/MIME signatures using OpenSSL
bug#67931

* doc/misc/emacs-mime.texi (MML Definition):
* lisp/gnus/mml.el (mml-parse-1): Add chainfile parameter to sign tags.
* lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query): Include the
additional certificates from smime-keys in MML tag generation as
chainfile parameters.
(mml-smime-openssl-sign): Forward chainfile entries from the parsed tag
alist to smime-sign-buffer.
; * lisp/gnus/smime.el (smime-sign-region): Fix typo in documentation.
; (smime-sign-buffer): Improve documentation to match smime-sign-region.
2024-05-14 07:44:40 -07:00
Andrea Corallo
b87670b564 * Allow for optional function name parameter in 'ftype' declaration
* lisp/emacs-lisp/byte-run.el (defun-declarations-alist): Allow for
optional function name parameter in 'ftype' declaration.
2024-05-14 11:17:25 +02:00
Andrea Corallo
6e1bb713f6 Change 'type' declaration to 'ftype'
* lisp/window.el (get-lru-window, get-largest-window)
(one-window-p): Update function type declaration.
* lisp/subr.el (ignore, error, zerop, fixnump, bignump, lsh)
(last, eventp, mouse-movement-p, log10, memory-limit)
(internal-pop-keymap): Likewise.
* lisp/simple.el (count-lines, mark, string-empty-p): Likewise.
* lisp/files.el (parse-colon-path): Likewise.
* lisp/env.el (getenv): Likewise.
* lisp/emacs-lisp/regexp-opt.el (regexp-opt): Likewise.
* lisp/emacs-lisp/lisp.el (buffer-end): Likewise.
* lisp/emacs-lisp/comp.el (comp--final): Likewise.
* lisp/custom.el (custom-variable-p): Likewise.
* lisp/emacs-lisp/byte-run.el (defun-declarations-alist): Rename 'type'
-> 'ftype'.
2024-05-14 11:17:25 +02:00
Michael Albinus
041aa3ffc6 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2024-05-14 10:50:17 +02:00
Michael Albinus
dd13ab0756 Trace Tramp user error
* lisp/net/tramp-androidsu.el (tramp-androidsu-maybe-open-connection):
Use `tramp-user-error' for the traces.
2024-05-14 10:49:52 +02:00
Po Lu
becdee7482 ; * lisp/net/tramp-androidsu.el (tramp-androidsu-handle-make-process): Typo. 2024-05-14 16:20:17 +08:00
Po Lu
65b0446633 Port tramp-androidsu to a wider variety of systems
* lisp/net/tramp-androidsu.el
(tramp-androidsu-maybe-open-connection): Search for `su' when
the connection is initiated; replace PATH of inferior shell with
trap-androidsu-remote-path.
(tramp-androidsu-handle-make-process): Do not provide username
if root.
2024-05-14 16:15:14 +08:00
Juri Linkov
407b88333b Add documentation about sorting Imenu completions (bug#70846)
* doc/emacs/programs.texi (Imenu): Document how Imenu completions
can be sorted.

* lisp/imenu.el (imenu-sort-function): Explain in the docstring
how to sort Imenu completions.
2024-05-14 09:55:52 +03:00
Eli Zaretskii
f6d060b39a ; Fix documentation of recently-installed changes
* lisp/emacs-lisp/bytecomp.el (compilation-safety): Doc fix.

* etc/NEWS: Fix wording of the 'compilation-safety' entry.

* doc/lispref/functions.texi (Declare Form): Fix cross-reference
and wording.
* doc/lispref/compile.texi (Native-Compilation Variables): Add the
missing @anchor.  Fix wording.
2024-05-14 08:51:13 +03:00
Andrea Corallo
04e7078d5e Add some 'compilation-safety' documentation
* lisp/emacs-lisp/bytecomp.el (compilation-safety): Better doc.
* doc/lispref/functions.texi (Declare Form): Add 'safety'.
* doc/lispref/compile.texi (Native-Compilation Variables): Add
'compilation-safety'.
2024-05-13 23:09:09 +02:00
Andrea Corallo
9e4e6d0fc9 Add 'safety' function declaration
* lisp/emacs-lisp/comp.el (comp-known-predicates): Use
'comp-func-safety'.
(comp-ctxt, comp-mvar-type-hint-match-p): New 'safety' slot.
(comp-c-func-name): New function.
(comp--spill-lap-function, comp--intern-func-in-ctxt): Update.
* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Spill safety.
* lisp/emacs-lisp/byte-run.el (byte-run--set-completion): New alias.
(defun-declarations-alist): Update.
2024-05-13 23:01:08 +02:00
Andrea Corallo
13ddfc2011 Introduce 'compilation-safety' variable
* lisp/emacs-lisp/bytecomp.el (compilation-safety): New customize.
* src/comp.c (comp_t): Add func_safety.
(emit_call_with_type_hint, emit_call2_with_type_hint): Make use of.
(compile_function): Set 'comp.func_safety'.
2024-05-13 23:01:08 +02:00
Andrea Corallo
595799edd3 * lisp/emacs-lisp/comp.el (comp--get-function-cstr): Fix it. 2024-05-13 16:49:29 +02:00
Mattias Engdegård
49e243c0c8 Avoid resizing mutation in subst-char-in-string, take two
This time we take care to preserve properties, and add a test.

* lisp/subr.el (subst-char-in-string):
Use string-replace to avoid resizing mutation and O(n^2) time.
* test/lisp/subr-tests.el (subr--subst-char-in-string): New test.
2024-05-13 12:39:41 +02:00
Basil L. Contovounesios
af27ecbf15 ; Tweak last docstring addition in lisp/imenu.el. 2024-05-13 09:58:50 +02:00
Michael Albinus
af526f8856 Fix bug#70900
* lisp/net/tramp.el (tramp-handle-unlock-file): Be quiet if user
isn't interested in lock files.  Bug#70900
2024-05-13 09:23:58 +02:00
Michael Albinus
66a12698ab Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2024-05-13 09:23:32 +02:00
Juri Linkov
431f8ff1e3 * lisp/imenu.el: Support more values for imenu-flatten (bug#70846)
(imenu-flatten): Change type boolean to choice
of more values for prefix/suffix section names.
(imenu--completion-buffer): Add :annotation-function if
'imenu-flatten' is 'annotation'.
(imenu--flatten-index-alist): Put property 'imenu-section' if
'imenu-flatten' is 'annotation'.
2024-05-13 09:59:07 +03:00
Michael Albinus
41ec1d7960 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2024-05-13 07:24:30 +02:00
Dmitry Gutov
f560e75933 ruby-rubocop-use-bundler: New user option
* lisp/progmodes/ruby-mode.el (ruby-rubocop-use-bundler):
New user option.
(ruby-flymake-rubocop--use-bundler-p): Use it.

* etc/NEWS: Mention it.
2024-05-13 05:37:05 +03:00
Dmitry Gutov
b20d4ab374 Fix 'C-u C-x p g' globally and 'A' in dired-mode
* lisp/progmodes/project.el (project-find-regexp): Ensure the
DEFAULT-DIRECTORY is set correctly for the 'C-u' case (bug#70888).

* lisp/progmodes/project.el (project--files-in-directory):
Ensure that the DIR argument ends with a slash --
'dired-do-find-regexp' passes it differently, for example.

* lisp/progmodes/xref.el (xref--group-name-for-display): Ensure
the project-relative and absolute display modes work well for
groups with "relative" file names.
(xref--analyze, xref--add-log-current-defun): Change accordingly.

* test/lisp/progmodes/project-tests.el
(project-find-regexp-with-prefix): New test.
2024-05-12 20:56:55 +03:00
Michael Albinus
e53e8b4cf4 Add Tramp method "nspawn"
* doc/misc/tramp.texi: Adapt some markups.
(Inline methods) <nspawn>: Add.
(Default Host): Mention default host for "nspawn".
(Customizing Methods): Remove tramp-nspawn.
(Password handling): Add "nspawn".

* etc/NEWS: New Tramp method "nspawn".

* lisp/net/tramp-compat.el (tramp-nspawn): Warn, if that package is used.

* lisp/net/tramp-container.el (tramp-nspawn-program): New defcustom.
(tramp-nspawn-method): New defconst.
(tramp-nspawn--completion-function, tramp-enable-nspawn-method):
New defuns.

* lisp/net/tramp.el (tramp-local-host-regexp): Add OpenSUSE host names.
2024-05-12 19:40:08 +02:00
Dmitry Gutov
2c759b9ce6 completion--replace: Fix completion cycling
* lisp/minibuffer.el (completion--replace):
Don't "insert before markers" after all because in some cases
(https://lists.gnu.org/archive/html/emacs-devel/2024-05/msg00701.html)
- like cycling - BEG can be denoted by a marker as well.
(minibuffer-completion-help): Make FIELD-END simply a fixnum.  And
adjust its value manually inside the local
completion-list-insert-choice-function (bug#48356).
2024-05-12 19:02:36 +03:00
Mattias Engdegård
9d7b22fcb4 Revert "Avoid resizing mutation in subst-char-in-string"
This reverts commit 184d6e8c02.

It wasn't quite correct: the path through `string-replace` would not
preserve text properties in the input string, which broke Gnus.
2024-05-12 15:18:25 +02:00
Mattias Engdegård
38091e43be Safer and faster string sorting
* lisp/emacs-lisp/cl-seq.el (cl-sort):
Don't use string mutation when sorting the characters in a string.
This avoids O(n^2) run time and makes it future-safe.
2024-05-12 14:58:38 +02:00
Eli Zaretskii
dcb6a9ebcb ; * lisp/cus-edit.el (custom-save-all): Remove offensive commentary. 2024-05-11 20:13:17 +03:00
Po Lu
6d4179957a Fix test of whether to insert lexical-binding cookies in custom files
* lisp/cus-edit.el (custom-save-all): Test whether the buffer is
empty, not whether point is at EOB.
2024-05-11 22:24:23 +08:00
Eli Zaretskii
733ff78581 ; Fix byte-compilation warnings in lua-ts-mode.el
* lisp/progmodes/lua-ts-mode.el (treesit-node-eq)
(treesit-node-prev-sibling): Declare.
2024-05-11 13:54:35 +03:00
Eli Zaretskii
48c9285c19 Merge from origin/emacs-29
0ec9a02a0d ; Fix doc strings of two scroll-bar functions.
2f8bccf9d8 ; * doc/emacs/frames.texi (Scroll Bars): Improve formatting.
f9832e80b8 ; * lisp/textmodes/ispell.el (ispell-message): Add commen...
a7d247be90 ; * etc/PROBLEMS: Document macOS problems with Emacs.clr ...
8560ee7b5c ; * doc/misc/auth.texi (The Unix password store): Fix var...
74c6b59af1 ; Advertise scroll bars some more
3d65d4306b Avoid errors in 'image-dired-tag-thumbnail'
2024-05-11 06:50:56 -04:00
Eli Zaretskii
5fdc6d8357 Fix Rmail summary by thread
* lisp/mail/rmailsum.el (rmail-summary-by-thread): Use value of
'rmail-total-messages' local to 'rmail-buffer'.  Patch by Andrea
Monaco <andrea.monaco@autistici.org>.
2024-05-11 12:16:48 +03:00
Eli Zaretskii
3eca0bc307 ; * lisp/net/dictionary.el (dictionary-default-strategy): Doc fix. 2024-05-11 11:17:34 +03:00
Michael Albinus
b43c31d2f5 New Tramp method "run0"
* doc/misc/tramp.texi (Quick Start Guide, Inline methods)
(Password handling, Predefined connection information)
(Ad-hoc multi-hops): Add "run0".
(Remote processes): Mention tramp-use-connection-share.

* etc/NEWS: New Tramp method "run0".

* lisp/net/tramp.el (tramp-completion-dissect-file-name):
* lisp/net/tramp-cmds.el (tramp-list-remote-buffers):
* lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
Use `tramp-compat-keep-seq'.

* lisp/net/tramp-cmds.el (tramp-file-name-with-method): Add "run0".

* lisp/net/tramp-sh.el (tramp-enable-run0-method): New defun.
(tramp-sh-handle-expand-file-name): Add "run0".
(tramp-maybe-open-connection): Simplify setting timeout.
2024-05-11 10:03:45 +02:00
Po Lu
1c4b1ce8fa Improve documentation of p-s-p-scroll-down-page
* lisp/pixel-scroll.el
(pixel-scroll-precision-scroll-down-page): Document unit in
which the height of the window is measured, and what manner of
height applies.  Reported by Eli Zaretskii <eliz@gnu.org>.
2024-05-11 14:38:54 +08:00
Eli Zaretskii
0ec9a02a0d ; Fix doc strings of two scroll-bar functions.
* lisp/scroll-bar.el (toggle-horizontal-scroll-bar): Fix typo and
wording.  (Bug#70864).
(toggle-scroll-bar): Fix wording.
2024-05-11 08:29:22 +03:00
Eric Abrahamsen
41bfca0005 Update gnus-draft-check-draft-articles to use find-buffer-visiting
* lisp/gnus/gnus-draft.el (gnus-draft-check-draft-articles): Don't loop
through all the buffers; this removes the need for the `file-remote-p'
check. Also give the user some nicer feedback about what's going on.
2024-05-10 12:38:57 -07:00
Eric Abrahamsen
b1e94b7bd3 Remove extra message-set-auto-save-file-name call in Gnus drafts
Bug#70579

* lisp/gnus/gnus-draft.el (gnus-draft-setup): This function is already
being called as part of the message-mail -> message-mode call
above. Running it twice results in a jump in assigned article numbers,
and the corresponding active value of the drafts group.
2024-05-10 10:29:00 -07:00
Juri Linkov
5d8c2bad21 Support customization of sorting order for Imenu completion candidates
* lisp/imenu.el (imenu--completion-buffer):
Set completion-extra-properties to '(:category imenu).
(imenu--flatten-index-alist): Use imenu--subalist-p to handle
newer format (INDEX-NAME INDEX-POSITION FUNCTION ARGUMENTS...)
as well (bug#70846).

* doc/emacs/misc.texi (DocView Navigation): Fix typo.
2024-05-10 19:48:00 +03:00
Jim Porter
ffc70962ca ; Clean up some 'require' and 'declare-function' calls in Eshell
* lisp/eshell/em-ls.el:
* lisp/eshell/esh-cmd.el:
* lisp/eshell/esh-mode.el:
* lisp/eshell/esh-ext.el: Remove superfluous 'declare-function' calls.

* lisp/eshell/esh-proc.el (pcomplete): Require this explicitly instead
of transitively.
2024-05-10 09:27:30 -07:00
Mattias Engdegård
184d6e8c02 Avoid resizing mutation in subst-char-in-string
* lisp/subr.el (subst-char-in-string):
Use string-replace to avoid resizing mutation and O(n^2) time.
2024-05-10 15:45:15 +02:00
Eli Zaretskii
3129fed4be Fix 'dictionary-tooltip-mode'
* lisp/tooltip.el (tooltip-event-buffer): Make sure 'posn-window'
returns a window before calling 'window-buffer'.

* lisp/net/dictionary.el (dictionary-default-dictionary)
(dictionary-tooltip-dictionary): Doc fixes.
(dictionary-tooltip-dictionary): Change default value to t, which
means the same dictionary as 'dictionary-default-dictionary'.
(dictionary-do-search): If NOMATCHING is non-nil, do not insert
anything into the current buffer, as that is unexpected when
showing definitions in tooltips.
(dictionary-word-at-mouse-event): Be defensive about the values
returned by 'tooltip-event-buffer' and 'posn-point': they can be
unexpected when the mouse pointer is on the tool bar or mode line
etc.
(dictionary-display-tooltip): Ignore errors in this function.
(dictionary-tooltip-mode): Ignore mouse-movement events on tool
bar and tab-bar.
(dictionary-dictionaries): Decode the server response to present
dictionaries in human-readable form.  Document in the doc string
the format of the return value.
2024-05-10 15:56:30 +03:00
Juri Linkov
4306aba2d0 * lisp/imenu.el (imenu-flatten): New defcustom (bug#70846).
(imenu-level-separator): Adjust the docstring.
(imenu--flatten-index-alist): New function revived
from the initial implementation of this package.
(imenu-choose-buffer-index): Use imenu--flatten-index-alist
when imenu-flatten is non-nil.
(imenu-buffer-menubar): Remove obsolete variable.

* doc/emacs/programs.texi (Imenu): Document imenu-flatten.
2024-05-10 09:52:09 +03:00
Jim Porter
33878f29d1 ; Remove unnecessary defvars defined in a file we already 'require'
* lisp/eshell/esh-cmd.el (eshell-output-handle, eshell-error-handle):
Remove superfluous declarations.
2024-05-09 22:02:00 -07:00
Po Lu
671c9e08b2 Fix bug#70856
* lisp/pixel-scroll.el (pixel-scroll-precision-scroll-down)
(pixel-scroll-precision-scroll-up): Apply finer threshold for
the minimum unit of scrolling.
(pixel-scroll-precision-scroll-down-page): Document true
restrictions on DELTA.  (bug#70856)
2024-05-10 11:01:29 +08:00
Andrew G Cohen
d335f28aa9 Don't limit gnus thread searches to a single message
* lisp/gnus/gnus-search.el (gnus-search-single-p): Searches for a
single message id finish after finding this one message; thread searches
continue until all messages are found.
2024-05-10 08:39:35 +08:00
Andrew G Cohen
006d5b70f3 Improve doc-type determination in doc-view
* lisp/doc-view.el (doc-view-set-doc-type): If buffer-file-name is not
set try the buffer-name to identify the doc type.
2024-05-10 08:25:48 +08:00
Andrew G Cohen
e29eb0e0f1 Find correct parent for articles in gnus
* lisp/gnus/gnus-sum.el (gnus-summary-refer-parent-article): When an
article's headers have been altered, use the altered headers to find the
parent.
2024-05-10 08:25:48 +08:00
Andrew G Cohen
082666e528 ; * lisp/mail/smtpmail.el (smtpmail-try-auth-method): quote symbol. 2024-05-10 08:25:48 +08:00
Jim Porter
42c0686d61 ; Fix an edge case with Eshell globs when the directory part is quoted
* lisp/eshell/esh-util.el (eshell-split-filename): Escaping shouldn't
matter for splitting the name (no other shells handle it like this).

* test/lisp/eshell/em-glob-tests.el
(em-glob-test/convert/quoted-start-directory): New test.
2024-05-09 17:15:14 -07:00
Jakub Ječmínek
e2e8c892ce ; Reference the xoauth2 method in nnimap-authenticator docstring
* lisp/gnus/nnimap.el (nnimap-authenticator): Update variable
documentation to include xoauth2 method.
2024-05-09 17:02:18 -07:00
Eli Zaretskii
f9832e80b8 ; * lisp/textmodes/ispell.el (ispell-message): Add commentary. 2024-05-09 20:44:52 +03:00