1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-08 04:30:45 -08:00
Commit graph

169547 commits

Author SHA1 Message Date
Visuwesh
2ba3ce27eb ; Update eww-suggest-uris :version.
* lisp/net/eww.el (eww-suggest-uris): Bump it to 30.1 since it was
changed.  (Bug#66926)
2023-11-04 11:48:01 +01:00
Mattias Engdegård
5ab5dfd64c Fix bytecomp-tests--dest-mountpoint test failure
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--dest-mountpoint): Add lexical cookie.

Bug reported and fix suggested by Jens Schmidt
(https://lists.gnu.org/archive/html/emacs-devel/2023-10/msg00719.html)
2023-11-04 10:30:41 +01:00
Eli Zaretskii
7ad9891e94 ; Merge from origin/emacs-29
The following commit was skipped:

33fae4b02d Suggest alternative reason for ERT test duplication error
2023-11-04 05:21:39 -04:00
Eli Zaretskii
050086931a Merge from origin/emacs-29
196def4fa6 Fix description of 'Package-Requires' library header
c177843279 ; * doc/misc/tramp.texi (FUSE setup): Fix typo.
a64336cbb9 * lisp/emacs-lisp/cl-lib.el (cl--defalias): Improve&fix d...
da8b85b577 Add two docstrings in cl-lib.el
2023-11-04 05:21:39 -04:00
Eli Zaretskii
a201b334be ; Merge from origin/emacs-29
The following commits were skipped:

4193912745 Fix Tramp (don't merge)
c22eeba827 ; Fix typo
4f57af7fcc * doc/misc/tramp.texi (Traces and Profiles): Fix indentat...
ccaf801baa * doc/misc/tramp.texi (Traces and Profiles): Fix indentat...
2023-11-04 05:21:38 -04:00
Eli Zaretskii
5de5b7b418 Merge from origin/emacs-29
d5e5ea4e36 Fix guessing commands for zstandard archives in Dired
90db29aff8 Fix eglot.texi (JSONRPC objects in Elisp) example
5ef48ad6a3 ; Fix one author's name.
c4e9a6159a * doc/man/emacsclient.1: Fix --tramp option.
6dca3a8eab Improve `nsm-protocol-check--3des-cipher` docstring
2023-11-04 05:21:38 -04:00
Eli Zaretskii
d8fcb9b711 ; Merge from origin/emacs-29
The following commits were skipped:

04215e616f Recognize backslash in `dns-mode` quoted values
6629e861b3 Make `dns-mode` fontify quoted values correctly
2023-11-04 05:21:38 -04:00
Mattias Engdegård
33fae4b02d Suggest alternative reason for ERT test duplication error
* lisp/emacs-lisp/ert.el (ert-set-test): Amend error message;
maybe the redefinition was caused by a file loaded twice.
(Bug#66782)

Suggested by Xiyue Deng.

(cherry picked from commit 425d23fbea)
2023-11-04 10:50:10 +02:00
Manuel Giraud
c0601fb534 Don't need text properties when sending a mail
* lisp/mail/smtpmail.el (smtpmail-send-data): Don't get text
properties when sending mail data.  (Bug#66880)
2023-11-04 10:41:38 +02:00
Manuel Giraud
ce4a62eece Fix desktop-save on remote dired (bug#66697)
Do not gather "misc data" for dired buffer not meant to be
desktop saved.

lisp/dired.el (dired-desktop-save-p): New function to test if
`dired-directory' should be desktop saved.
(dired-desktop-buffer-misc-data): Use it.
2023-11-04 10:03:33 +02:00
Eli Zaretskii
196def4fa6 Fix description of 'Package-Requires' library header
* doc/lispref/tips.texi (Library Headers): Update the description
of the 'Package-Requires' header.  (Bug#66677)
2023-11-04 09:59:45 +02:00
Eli Zaretskii
5ee66620fd Remove unnecessary assertion added 2 days ago
* src/xdisp.c (get_glyph_face_and_encoding): Remove unnecessary
assertion.  It triggers, for no good reason, when running the
recipe of bug#66922 and typing C-p in the *Warnings* buffer after
the recipe finishes, because the glyph passed to this function is
a STRETCH_GLYPH, not a CHAR_GLYPH.
2023-11-04 09:33:33 +02:00
Stephen Gildea
08fed99ae8 MH-E testing: find locally-installed GNU Mailutils libraries
* test/lisp/mh-e/test-all-mh-variants.sh: LD_LIBRARY_PATH is sometimes
necessary.  This reverts part of commit f1fcd321ff of 24 Nov 2021.
2023-11-03 15:24:21 -07:00
Andrea Corallo
6218278a67 * lisp/emacs-lisp/comp-cstr.el (comp--direct-supertype): Remove unused. 2023-11-03 19:03:51 +01:00
Mattias Engdegård
425d23fbea Suggest alternative reason for ERT test duplication error
* lisp/emacs-lisp/ert.el (ert-set-test):
Amend error message; maybe the redefinition was caused by a file
loaded twice (bug#66782).

Suggested by Xiyue Deng.
2023-11-03 18:06:04 +01:00
Eli Zaretskii
12d1f33ceb ; Fix recent changes in documentation
* lisp/man.el (Man-header-file-path, man): Doc fix.

* etc/NEWS: Fix wording.
2023-11-03 09:41:11 +02:00
Po Lu
9867be2f6c Round underline position and thickness
* src/sfntfont.c (sfntfont_open): Round underline thickness
instead of truncating it, as is proper according to several
inquiries.
2023-11-03 15:20:04 +08:00
Po Lu
e06e61f456 Avoid moving point while analyzing text conversion
* lisp/simple.el (analyze-text-conversion): If neither calling
p-s-i-h nor calling p-t-c-h yields a change to point, return it
to its location before analyze-text-conversion was called.

* src/keyboard.c (kbd_buffer_get_event): See that text
conversion events are uniformly delivered prior to keyboard
events arriving in unison.
2023-11-03 11:34:40 +08:00
Stefan Monnier
fc8d225328 * lisp/emacs-lisp/oclosure.el (oclosure--lambda): Burp in dynbind mode
The "fixes" bug#66867.
2023-11-02 23:12:27 -04:00
Dmitry Gutov
9cbf0bb3ee Remove 'M-.' binding from js-mode and js-ts-mode
* lisp/progmodes/js.el (js-mode-map, js-ts-mode-map): Remove.
The global binding must be a lot more useful for most users
(https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg01295.html).
2023-11-03 01:40:36 +02:00
Michael Albinus
f5b2d23fff Adapt doc for man.el
* etc/NEWS: Rephrase 'Man-support-remote-systems' entry.
Fix typos.

* lisp/man.el (Man-header-file-path, man): Adapt docstrings.
2023-11-02 12:14:13 +01:00
Eli Zaretskii
cb92eb404d ; Improve documentation of recent changes
* etc/NEWS:
* lisp/simple.el (completion-auto-wrap, completion-auto-select)
(first-completion, last-completion, previous-completion)
(next-completion, previous-line-completion)
(next-line-completion): Doc fixes.  (Bug#59486)
2023-11-02 09:56:55 +02:00
Po Lu
dbcb4cedd0 Properly compute overhangs for overstruck text
* src/xdisp.c (get_glyph_face_and_encoding): Account for
non-character glyphs by not attempting to translate them to
characters.
(gui_get_glyph_overhangs, gui_produce_glyphs): If the face is
overstruck, increase the right side bearing by 1 pixel.
2023-11-02 13:18:37 +08:00
F. Jason Park
078cfe8072 Preserve point when inserting date stamps in ERC
* lisp/erc/erc-stamp.el (erc-stamp-mode, erc-stamp-disable): Move
remaining local teardown business to `erc-stamp--setup' and use
`erc-buffer-do' instead of `erc-with-all-buffers-of-server' to
emphasize that all ERC buffers are affected.
(erc-stamp--insert-date-stamp-as-phony-message): Move `erc--msg-props'
binding to `erc-stamp--lr-date-on-pre-modify'.
(erc-stamp--lr-date-on-pre-modify): Bind `erc--msg-props' here so that
the related guard condition in `erc-add-timestamp' is satisfied and
`erc-insert-timestamp-function' runs.  This fixes a regression new in
ERC 5.6 and introduced by c68dc778 "Manage some text props for ERC
insertion-hook members".  Also, `save-excursion' when narrowing to
prevent point from being dislodged after submitting input at the
prompt.
(erc-insert-timestamp-left-and-right): Don't initialize date stamps
when `erc-timestamp-format-left' is nil or consists only of newlines,
and enable fallback behavior in such cases on behalf of users without
informing them.  Allow global hook members to run first so that those
owned by `scrolltobottom' and similar can see the unadulterated input.
Fix wrong hook name.
(erc-stamp--setup): Fix wrong hook name.  Kill all local vars here
instead of sharing this duty with the minor-mode toggle.  (Bug#60936)
2023-11-01 16:14:10 -07:00
F. Jason Park
11e42b405c ; Attempt to fix race in erc-buffer-display test
* test/lisp/erc/erc-fill-tests.el (erc-fill-tests--time-vals,
erc-fill-tests--current-time-value): Rename former to latter and
change type from function to natnum.
(erc-fill-tests--wrap-populate, erc-fill-wrap--merge,
erc-fill-wrap--merge-action): Use `erc-fill-tests--current-time-value'
instead of function `erc-fill-tests--time-vals'.
* test/lisp/erc/erc-scenarios-base-association.el
(erc-scenarios-common--base-association-multi-net): Extend timeout.
* test/lisp/erc/erc-scenarios-base-buffer-display.el
(erc-scenarios-base-buffer-display--reconnect-common): Move some
common assertions here from callers.
(erc-scenarios-base-buffer-display--defwin-recbury-intbuf,
erc-scenarios-base-buffer-display--count-reset-timeout):
Factor out a couple common assertions.  Clarify some comments.
(erc-scenarios-base-buffer-display--defwino-recbury-intbuf):
Factor out a couple common assertions and clarify some comments.
Account for possible concurrency bug leading to intermittent
test failures.
* test/lisp/erc/erc-scenarios-base-misc-regressions.el
(erc-scenarios-base-gapless-connect,
erc-scenarios-base-channel-buffer-revival): Extend timeouts.
* test/lisp/erc/resources/dcc/chat/accept.eld: Extend timeout.
* test/lisp/erc/resources/base/reconnect/options-again.eld: Extend
timeouts.
* test/lisp/erc/resources/erc-d/erc-d.el (erc-d--m): Prevent possible
wrong-type error.
* test/lisp/erc/resources/erc-d/resources/dynamic-foonet.eld: Extend
timeouts.
* test/lisp/erc/resources/erc-scenarios-common.el
(erc-scenarios-common--base-network-id-bouncer): Extend timeout.
2023-11-01 16:14:10 -07:00
Dmitry Gutov
32ed6e610f (project-switch-project): Fix the previous change
* lisp/progmodes/project.el (project-switch-project):
Clear the buffer-local value in the right buffer (bug#66317).
2023-11-01 22:48:51 +02:00
Juri Linkov
8eb9b82ce5 New commands previous-line-completion and next-line-completion (bug#59486)
* lisp/simple.el (completion-list-mode-map): Bind [up] to
'previous-line-completion', and [down] to 'next-line-completion'.
(completion-auto-wrap): Mention `next-line-completion' and
`previous-line-completion' in the docstring.
(previous-line-completion, next-line-completion): New commands.
2023-11-01 19:45:05 +02:00
Michael Albinus
861ac933dd Run `man' also on remote systems
This implements bug#66758

* doc/emacs/programs.texi (Man Page):
Describe Man-support-remote-systems.

* etc/NEWS: Mention user option 'Man-support-remote-systems'.
Fix typos.

* lisp/dired.el (Man-support-remote-systems): Declare.
(dired-do-man): Use it.  Use also `file-local-name'.

* lisp/man.el (Man-support-remote-systems): New defcustom.
(Man-xref-normal-file): Handle remote files.
(Man-default-directory, Man-shell-file-name)
(Man-header-file-path): New defuns.
(Man-init-defvars): Use octal numbers.
(Man-support-local-filenames): Handle remote files.
(Man-completion-table): Use `Man-default-directory' and `process-file'.
(man): Adapt docstring.
(Man-start-calling): Use `Man-default-directory'.
(Man-getpage-in-background): Use `Man-default-directory',
`Man-shell-file-name', `start-file-process' and `process-file'.  Adapt
buffer name.
(Man-update-manpage): Use `Man-shell-file-name' and `process-file'.
(Man-view-header-file): Use `Man-header-file-path'.
2023-11-01 16:54:31 +01:00
Mattias Engdegård
8160485953 Non-recursive marking of buffer-local variables
* src/alloc.c (mark_localized_symbol): Inline into...
(process_mark_stack): ...this code and do don't use recursion.
2023-11-01 16:07:20 +01:00
Jeremy Bryant
445029da58 Add two docstrings in cl-macs.el
* lisp/emacs-lisp/cl-macs.el (cl--simple-exprs-p)
(cl--const-expr-p): Add docstrings
2023-11-01 08:10:24 -04:00
Po Lu
a61cc138ed Prevent errors when generating events above menu bar windows
* src/keyboard.c (make_lispy_position): Pass false to w_f_c,
for the subsequent code is not prepared to encounter menu bar
windows.
2023-11-01 11:15:48 +08:00
Dmitry Gutov
ffe894d0f3 Only override the current project buffer-locally
* lisp/progmodes/project.el (project-switch-project): Only
override the current project buffer-locally.  This is mostly for
the the mode-line indicator (https://debbugs.gnu.org/66317#53).
2023-11-01 04:01:53 +02:00
Dmitry Gutov
8439f83449 Catch 'permission-denied' during project lookup
* lisp/progmodes/project.el (project--find-in-directory):
Catch 'permission-denied' (bug#66317).

Co-Authored-By: Spencer Baugh <sbaugh@catern.com>
2023-11-01 03:58:45 +02:00
Stefan Kangas
60bf6288cf Respect browse-url-default-scheme on Android
* lisp/net/browse-url.el (browse-url-default-android-browser):
Respect 'browse-url-default-scheme'.
2023-11-01 01:39:53 +01:00
Stefan Monnier
b93f931e9e lisp/emacs-lisp/comp-cstr.el: Fix bootstrap
* lisp/emacs-lisp/comp-cstr.el: Remove redundant require of `cl-macs`
and add missing require of `cl-extra`.

* lisp/emacs-lisp/cl-generic.el: Improve warning message.
* lisp/emacs-lisp/cl-extra.el (cl--print-table): Remove redundant arg.
2023-10-31 19:20:58 -04:00
Michael Albinus
c177843279 ; * doc/misc/tramp.texi (FUSE setup): Fix typo. 2023-10-31 17:32:23 +01:00
Stefan Monnier
5f371ca07b * lisp/emacs-lisp/comp.el: Remove redundant requires 2023-10-31 12:24:51 -04:00
Po Lu
090ac50d79 Don't round underline metrics
* src/sfntfont.c (sfntfont_open): Don't round underline position
or thickness, much as the other font drivers don't either.
2023-10-31 21:04:11 +08:00
Po Lu
d3b0162b80 Extract underline positions from PostScript metrics tables
* src/sfntfont.c (struct sfnt_font_desc): Introduce fields where
the font's underline position is recorded.
(sfnt_enum_font_1): Compute the underline position with
information in the post table whenever it exists.
(sfntfont_open): Scale the recorded position and save it into
the font object.
2023-10-31 18:42:15 +08:00
Juri Linkov
dd92ccc7ee * lisp/progmodes/project.el (project-menu-entry): Add 'bound-and-true-p'.
This is needed for compatibility with older versions (bug#66317).
2023-10-31 09:34:03 +02:00
Juri Linkov
dec79825ba Fix project-mode-line-format breaking buffer-file-coding-system (bug#66825)
* lisp/progmodes/project.el (project-mode-line-format):
Let-bind 'last-coding-system-used' to prevent changing
'buffer-file-coding-system' in 'basic-save-buffer'.
2023-10-31 09:22:28 +02:00
Stefan Monnier
a64336cbb9 * lisp/emacs-lisp/cl-lib.el (cl--defalias): Improve&fix docstring 2023-10-30 18:50:47 -04:00
Harald Jörg
31acbcd405 ; cperl-mode.el: Obey comment conventions
* lisp/progmodes/cperl-mode.el: Use ;;; only for "chapter headings".
Eliminate some redundant and misleading comments.  Fix an over-wide line.
2023-10-30 17:19:42 +01:00
Jeremy Bryant
da8b85b577 Add two docstrings in cl-lib.el
* lisp/emacs-lisp/cl-lib.el (cl--set-buffer-substring)
(cl--defalias): Add docstrings.  (Bug#66828)
2023-10-30 13:41:19 +02:00
Mattias Engdegård
0d452d61d0 ; * lisp/emacs-lisp/comp-cstr.el (comp-subtype-p): Hoist above use. 2023-10-30 11:48:04 +01:00
Po Lu
ecc8870981 Ascertain font spacing from post table if present
* src/sfnt.c (sfnt_table_names): Introduce name of post table.
(sfnt_read_post_table): New function.
(main): New tests.

* src/sfnt.h (struct sfnt_post_table): New struct.

* src/sfntfont.c (sfnt_enum_font_1): Read post table, and set
spacing from its is_fixed_pitch value.
(sfntfont_list_1): Compare spacing between both fonts if
supplied in the font spec.
(sfntfont_open): Set FONT_FILE_INDEX as well as
FONT_FULLNAME_INDEX.
2023-10-30 15:33:27 +08:00
Stefan Monnier
bdec2d2d46 comp-cstr.el: The type hierarchy is a DAG, not a tree
Adjust the type operations to account for the fact that types can have
several parents.

* lisp/emacs-lisp/comp-cstr.el (comp--cl-class-hierarchy):
Use `cl--class-allparents`.  Add FIXME.
(comp--direct-supertype): Declare obsolete.
(comp--direct-supertypes): New function.
(comp--normalize-typeset0): Rewrite to use `comp--direct-supertypes`;
adjust to account for the DAG structure; use `cl-set-difference`.
(comp--direct-subtypes): Rewrite.
(comp--intersection): New function.
(comp-supertypes): Rewrite and change return type.
(comp-subtype-p): Simplify.
(comp-union-typesets): Use `comp-supertypes` instead of iterating over
`comp-cstr-ctxt-typeof-types`.
* lisp/emacs-lisp/comp.el (comp--native-compile): Don't catch
errors if we're debugging.
* test/lisp/emacs-lisp/comp-cstr-tests.el: Adjust tests.

* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix mishap when we
evaluate (cl-defstruct cl-structure-object ..) during the compilation
of `cl-preloaded.el`.
* lisp/emacs-lisp/cl-preloaded.el: Add corresponding assertion.
2023-10-30 00:59:19 -04:00
Jim Porter
271d8b70f8 Exclude Git submodules from 'project-files'
* lisp/progmodes/project.el (project--vc-list-files): Exclude Git
submodules (bug#66806).
(project-search, project-query-replace-regexp): Remove now-unneeded
workaround.
2023-10-30 03:42:49 +02:00
Spencer Baugh
1eae0e7edf Teach ffap to look for relative file names under project-root
Now file-name-at-point-functions, which runs
ffap-guess-file-name-at-point, will pick up on a file name at point if
that file name is a relative file name which exists when looked up
from the root of the project.

For example, in test/lisp/progmodes/eglot-tests.el there is the string
lisp/progmodes/eglot.el; if you put point on that and C-x C-f,
lisp/progmodes/eglot.el under the root of the Emacs repo will now be
part of future history.

* lisp/ffap.el (ffap-alist): Add entry for ffap-in-project.
(ffap-in-project): Add. (bug#66668)
2023-10-30 02:57:33 +02:00
Stefan Monnier
b27e2bbb34 Use OClosure to drop advice--buffer-local-function-sample hack
* lisp/emacs-lisp/nadvice.el (advice--forward): New OClosure, to
replace `advice--buffer-local-function-sample`.
(advice--set-buffer-local, advice--buffer-local): Adjust accordingly.
2023-10-29 14:12:22 -04:00