]> git.eshelyaron.com Git - emacs.git/log
emacs.git
23 months agoFix tmm-menubar when 'tmm-completion-prompt' is nil
Eli Zaretskii [Sat, 27 May 2023 17:09:40 +0000 (20:09 +0300)]
Fix tmm-menubar when 'tmm-completion-prompt' is nil

* lisp/tmm.el (tmm-prompt): Handle nil value of 'tmm-mid-prompt'.
(tmm-completion-delete-prompt): Don't rely on the exact text of
the completion heading line, as it is now a customizable format
string, and can be nil, meaning no heading line is inserted at
all.  Instead, search for the first character of the menu based on
text properties used for it.  (Bug#63754)

2 years ago; * lisp/progmodes/project.el: avoid warning in loaddefs.
Mattias Engdegård [Fri, 26 May 2023 12:33:12 +0000 (14:33 +0200)]
; * lisp/progmodes/project.el: avoid warning in loaddefs.

(cherry picked from commit 1eb5faa26113afe5895955a74594e3d7cf6ffe98)

2 years ago; * src/lread.c (read0, skip_lazy_string): Fix commentary again.
Eli Zaretskii [Fri, 26 May 2023 12:11:35 +0000 (15:11 +0300)]
; * src/lread.c (read0, skip_lazy_string): Fix commentary again.

2 years agoUse 'font-lock-extend-region-functions' in python-mode
kobarity [Wed, 24 May 2023 13:06:51 +0000 (22:06 +0900)]
Use 'font-lock-extend-region-functions' in python-mode

* lisp/progmodes/python.el (python-font-lock-extend-region): Change
arguments and return value for 'font-lock-extend-region-functions'.
(python-mode): Change from
'font-lock-extend-after-change-region-function' to
'font-lock-extend-region-functions'.  (Bug#63622)

2 years agoFix python-info-docstring-p
kobarity [Wed, 24 May 2023 13:01:12 +0000 (22:01 +0900)]
Fix python-info-docstring-p

* lisp/progmodes/python.el (python-info-docstring-p): Stop using
python-rx string-delimiter.

* test/lisp/progmodes/python-tests.el
(python-font-lock-escape-sequence-bytes-newline)
(python-font-lock-escape-sequence-hex-octal)
(python-font-lock-escape-sequence-unicode)
(python-font-lock-raw-escape-sequence): Mark as expected failures
until another bug in 'python-info-docstring-p' is corrected.
(python-info-docstring-p-7): New test.  (Bug#63622)

2 years ago; * src/lread.c (read0, skip_lazy_string): Fix commentary wording.
Eli Zaretskii [Fri, 26 May 2023 09:30:40 +0000 (12:30 +0300)]
; * src/lread.c (read0, skip_lazy_string): Fix commentary wording.

2 years agoFix cancellation of Wdired
Eli Zaretskii [Fri, 26 May 2023 09:23:19 +0000 (12:23 +0300)]
Fix cancellation of Wdired

* lisp/wdired.el (wdired-abort-changes): Call 'dired-revert'.
Patch by Stephen Berman <stephen.berman@gmx.net>.  (Bug#63676)

2 years agoMerge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29
Eli Zaretskii [Fri, 26 May 2023 09:20:26 +0000 (12:20 +0300)]
Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/emacs into emacs-29

2 years agoHandle #@00 in new reader in a compatible way (bug#63722)
Mattias Engdegård [Thu, 25 May 2023 20:28:25 +0000 (22:28 +0200)]
Handle #@00 in new reader in a compatible way (bug#63722)

This was a regression from Emacs 28.

* src/lread.c (skip_lazy_string, read0): Make #@00 read as nil, which
is a quirk from the old reader that we preserve for compatibility.
* test/src/lread-tests.el (lread-skip-to-eof): Verify it.

Reported by Richard Newton.

2 years ago; Minor fixes in documentation of recently-changed VC commands
Eli Zaretskii [Fri, 26 May 2023 08:09:14 +0000 (11:09 +0300)]
; Minor fixes in documentation of recently-changed VC commands

* lisp/vc/vc.el (vc-print-branch-log, vc-create-branch)
(vc-create-tag, vc-retrieve-tag, vc-switch-branch): Doc fixes.
* lisp/vc/vc-hooks.el (vc-menu-map): Minor wording change in :help
text.

* doc/emacs/maintaining.texi (VC Change Log, Creating Branches):
Minor wording and markup changes.

2 years ago; * etc/NEWS: Describe the Cairo XCB option. (Bug#63589)
Eli Zaretskii [Fri, 26 May 2023 07:07:34 +0000 (10:07 +0300)]
; * etc/NEWS: Describe the Cairo XCB option.  (Bug#63589)

2 years agoDon't mark selection request events
Po Lu [Fri, 26 May 2023 00:43:18 +0000 (08:43 +0800)]
Don't mark selection request events

* src/pgtkterm.c (mark_pgtkterm): Prevent crash by not marking
selection request events, which don't have Lisp_Object members.

2 years agoDisable cairo-xcb support by default
Po Lu [Fri, 26 May 2023 00:41:31 +0000 (08:41 +0800)]
Disable cairo-xcb support by default

* INSTALL (--with-cairo-xcb): Document new option.
* configure.ac (USE_CAIRO_XCB): Implement new option.

2 years ago* lisp/progmodes/project.el: Move :safe from defcustom to autoload (bug#63469)
Juri Linkov [Thu, 25 May 2023 18:40:38 +0000 (21:40 +0300)]
* lisp/progmodes/project.el: Move :safe from defcustom to autoload (bug#63469)

(project-vc-ignores, project-vc-merge-submodules)
(project-vc-include-untracked, project-vc-name)
(project-vc-extra-root-markers, project-kill-buffers-display-buffer-list):
Autoload the line that puts 'safe-local-variable' property on defcustom symbol
instead of using the :safe keyword.

2 years ago* lisp/vc/vc-annotate.el (vc-annotate-mode-menu): Quote vc-annotate-backend.
Juri Linkov [Thu, 25 May 2023 18:33:11 +0000 (21:33 +0300)]
* lisp/vc/vc-annotate.el (vc-annotate-mode-menu): Quote vc-annotate-backend.

When unquoted it might get the nil value when vc-annotate.el is loaded
in non-vc-controlled buffer (bug#63689).

2 years agoAdd vc-create/switch/print-branch to menu and update documentation (bug#63690)
Juri Linkov [Thu, 25 May 2023 18:24:23 +0000 (21:24 +0300)]
Add vc-create/switch/print-branch to menu and update documentation (bug#63690)

* doc/emacs/maintaining.texi (VC Change Log):
Add 'C-x v b l' (vc-print-branch-log).
(Creating Branches): Add @kindex and @findex for vc-create-branch.
(Switching Branches): Add @kindex and @findex for vc-switch-branch.

* lisp/vc/vc-hooks.el (vc-menu-map): Add menu items for new
commands vc-create-branch and vc-switch-branch, and also
vc-print-branch-log.

* lisp/vc/vc.el (vc-print-branch-log): Improve docstring.

2 years agoFix rare crashes in 'try_window_reusing_current_matrix'
Eli Zaretskii [Thu, 25 May 2023 17:50:46 +0000 (20:50 +0300)]
Fix rare crashes in 'try_window_reusing_current_matrix'

* src/xdisp.c (try_window_reusing_current_matrix): Make sure we
never use a mode-line glyph row to start displaying scrolled-in
rows.  (Bug#63711)

2 years agoMake last Tramp change less invasive
Michael Albinus [Thu, 25 May 2023 13:40:45 +0000 (15:40 +0200)]
Make last Tramp change less invasive

* lisp/net/tramp.el (tramp-dissect-file-name): Revert last change.
(tramp-handle-file-name-as-directory)
(tramp-handle-file-name-directory): Let-bind `tramp-default-proxies-alist'.

2 years ago; Fix last change.
Eli Zaretskii [Thu, 25 May 2023 05:58:42 +0000 (08:58 +0300)]
; Fix last change.

2 years ago; * lisp/menu-bar.el (popup-menu): Doc fix.
Eli Zaretskii [Thu, 25 May 2023 05:57:28 +0000 (08:57 +0300)]
; * lisp/menu-bar.el (popup-menu): Doc fix.

2 years ago; Fix last change.
Eli Zaretskii [Tue, 23 May 2023 15:05:07 +0000 (18:05 +0300)]
; Fix last change.

2 years ago; * etc/PROBLEMS: Document problem with GnuPG 2.4.1. (Bug#63256)
Eli Zaretskii [Tue, 23 May 2023 15:04:24 +0000 (18:04 +0300)]
; * etc/PROBLEMS: Document problem with GnuPG 2.4.1.  (Bug#63256)

2 years ago; Support SQLite3 extensions on macOS
Eli Zaretskii [Tue, 23 May 2023 14:53:07 +0000 (17:53 +0300)]
; Support SQLite3 extensions on macOS

* src/sqlite.c (Fsqlite_load_extension): Support *.dylib
extensions.  (Bug#63653)

2 years agoFix 'use-dialog-box-p' and friends
Eli Zaretskii [Tue, 23 May 2023 14:44:23 +0000 (17:44 +0300)]
Fix 'use-dialog-box-p' and friends

* lisp/subr.el (use-dialog-box-p): Use dialog boxes also when
invoked from some window-system gesture.  (Bug#63655)
(y-or-n-p): Fix the description in the doc string of conditions
under which a dialog box will be used.

* src/fns.c (Fyes_or_no_p): Use the same condition for dialog
boxes as in 'use-dialog-box-p'.  Fix the description in the doc
string of conditions under which a dialog box will be used.

* doc/lispref/minibuf.texi (Multiple Queries, Yes-or-No Queries):
Fix the description of conditions under which a dialog box will be
used.

2 years agoAvoid duplicates when adding package dirs to load-path
Stefan Monnier [Mon, 22 May 2023 16:49:26 +0000 (18:49 +0200)]
Avoid duplicates when adding package dirs to load-path

Do not merge to master, we're going to delete this code there.

* lisp/emacs-lisp/package.el (package-activate-1): Check if the path
we're about to add is already in 'load-path', since package autoload
files have been updating 'load-path' for a decade.

2 years agoAvoid duplicate load-path entry when generating package autoloads
Robert Pluim [Mon, 22 May 2023 13:44:21 +0000 (15:44 +0200)]
Avoid duplicate load-path entry when generating package autoloads

'file-name-directory' produces a path ending in '/', so that needs to be
run through 'directory-file-name' to avoid duplicate entries in
'load-path'.  (Bug#63625)

* lisp/emacs-lisp/package.el (package-generate-autoloads): Call
'directory-file-name' on the directory of 'load-file-name'.

2 years ago; Improve documentation of Isearch command properties
Eli Zaretskii [Tue, 23 May 2023 11:58:39 +0000 (14:58 +0300)]
; Improve documentation of Isearch command properties

* doc/emacs/display.texi (Scrolling):
* doc/emacs/search.texi (Not Exiting Isearch): Improve
documentation and indexing of 'scroll-command', 'isearch-scroll',
and 'isearch-move' properties.

2 years agoDisable loading SQLite3 extensions when SQLite3 version is too old
Eli Zaretskii [Tue, 23 May 2023 11:30:31 +0000 (14:30 +0300)]
Disable loading SQLite3 extensions when SQLite3 version is too old

* src/sqlite.c (HAVE_LOAD_EXTENSION): Define to 1 only if
enabling/disabling extension loading is supported as well.
(load_dll_functions, Fsqlite_load_extension): Condition on
HAVE_LOAD_EXTENSION, not on HAVE_SQLITE3_LOAD_EXTENSION.
(Bug#63653)

2 years ago; * lisp/progmodes/project.el (project-switch-use-entire-map): Doc fix.
Eli Zaretskii [Mon, 22 May 2023 18:31:56 +0000 (21:31 +0300)]
; * lisp/progmodes/project.el (project-switch-use-entire-map): Doc fix.

2 years agoFix visiting HTML files encoded in iso-2022 variants
Eli Zaretskii [Mon, 22 May 2023 18:23:58 +0000 (21:23 +0300)]
Fix visiting HTML files encoded in iso-2022 variants

* lisp/international/mule.el (sgml-xml-auto-coding-function)
(sgml-html-meta-auto-coding-function): Handle coding-systems whose
coding-system-type is iso-2022.  (Bug#63644)

2 years ago; Fix markup of some treesit vars in Elisp manual.
Basil L. Contovounesios [Mon, 22 May 2023 14:23:39 +0000 (15:23 +0100)]
; Fix markup of some treesit vars in Elisp manual.

* doc/lispref/modes.texi (Parser-based Font Lock):
(Parser-based Indentation):
* doc/lispref/parsing.texi (Multiple Languages): Use @code in place
of @var when the argument is not a metavariable.

2 years agoSupport 'isearch-allow-scroll' in 'pixel-scroll-precision-mode'
Eli Zaretskii [Mon, 22 May 2023 11:20:38 +0000 (14:20 +0300)]
Support 'isearch-allow-scroll' in 'pixel-scroll-precision-mode'

* lisp/pixel-scroll.el (pixel-scroll-precision)
(pixel-scroll-down, pixel-scroll-up): Put the 'scroll-command'
property on these commands.  (Bug#63640)

2 years agoshr: allow moving between adjacent anchors
Andreas Schwab [Mon, 22 May 2023 11:08:33 +0000 (13:08 +0200)]
shr: allow moving between adjacent anchors

* lisp/net/shr.el (shr-urlify): Put shr-tab-stop only over first
position.

2 years ago; * etc/NEWS: Fix typos.
Michael Albinus [Mon, 22 May 2023 10:20:44 +0000 (12:20 +0200)]
; * etc/NEWS: Fix typos.

2 years agoFix multihop file name expansion in Tramp
Michael Albinus [Mon, 22 May 2023 10:20:27 +0000 (12:20 +0200)]
Fix multihop file name expansion in Tramp

* lisp/net/tramp.el (tramp-dissect-file-name): Set hop to nil if
NODEFAULT.  (Bug#63578)

2 years agoRemove obsolete information from Gnus manual
Jens Schmidt [Sat, 20 May 2023 21:46:42 +0000 (23:46 +0200)]
Remove obsolete information from Gnus manual

The Gnus manual was still referencing long-removed external
marks in section "Archiving Mails".  Without external marks,
that section is almost pointless, so remove it completely.
* doc/misc/gnus.texi (Archiving Mail): Remove section.
(Top, Browsing the Web): Remove references to "Archiving
Mail".  (Bug#63497)

2 years agoPreserve mark in comint-history-isearch
Jens Schmidt [Sat, 20 May 2023 21:03:29 +0000 (23:03 +0200)]
Preserve mark in comint-history-isearch

This preserves mark in `comint-history-isearch-backward' and
friends, which tend to set the mark on completion of the isearch
to unexpected positions.
* lisp/comint.el (comint-history-isearch-end): Set `isearch-opoint'
to point.  (Bug#63616)

2 years agoFix systemd unit completion for old versions of systemd
Liu Hui [Wed, 17 May 2023 08:39:18 +0000 (16:39 +0800)]
Fix systemd unit completion for old versions of systemd

* lisp/pcmpl-linux.el (pcmpl-linux--systemd-units): Use '--no-legend'
for compatibility with older versions of systemctl.  (Bug#63411)

2 years agoFix Skeletons menu-bar menu in Python modes
Eli Zaretskii [Sat, 20 May 2023 14:56:40 +0000 (17:56 +0300)]
Fix Skeletons menu-bar menu in Python modes

* lisp/progmodes/python.el (python-mode, python-ts-mode): Call
'python-skeleton-add-menu-items' here, not in 'python-base-mode',
since the "Python" menu is not yet set up in the latter.
(Bug#63598)

2 years ago; * etc/NEWS: missing definite article
Mattias Engdegård [Sat, 20 May 2023 13:04:06 +0000 (15:04 +0200)]
; * etc/NEWS: missing definite article

2 years ago; * etc/NEWS: PGTK cannot switch to -new automatically (bug#6355).
Eli Zaretskii [Sat, 20 May 2023 12:53:21 +0000 (15:53 +0300)]
; * etc/NEWS: PGTK cannot switch to -new automatically (bug#6355).

2 years agoFix loading SQLite extensions
Eli Zaretskii [Sat, 20 May 2023 12:43:44 +0000 (15:43 +0300)]
Fix loading SQLite extensions

* src/sqlite.c (sqlite3_db_config) [WINDOWSNT]: Load from the DLL.
(Fsqlite_load_extension): Use 'sqlite3_db_config' to enable and
disable loading of extensions.  Add a few free extensions to the
allow-list.  Fix testing for the ".dll" extension.  (Bug#63590)

* test/src/sqlite-tests.el (sqlite-load-extension): Fix the test
to require successful load if the extension does exist.

2 years ago; * etc/NEWS: Fix typos.
Michael Albinus [Sat, 20 May 2023 12:00:56 +0000 (14:00 +0200)]
; * etc/NEWS: Fix typos.

2 years ago* etc/NEWS: Note dotimes loop variable scoping change (bug#63586)
Mattias Engdegård [Sat, 20 May 2023 08:50:25 +0000 (10:50 +0200)]
* etc/NEWS: Note dotimes loop variable scoping change (bug#63586)

2 years agoFix c-ts-mode--top-level-declarator
Yuan Fu [Sat, 20 May 2023 07:45:39 +0000 (00:45 -0700)]
Fix c-ts-mode--top-level-declarator

* lisp/progmodes/c-ts-mode.el:
(c-ts-mode--top-level-declarator): Don't use treesit-node-match-p.

2 years agoImprove c-ts-mode font-lock for function names (bug#63390)
Yuan Fu [Fri, 19 May 2023 23:09:17 +0000 (16:09 -0700)]
Improve c-ts-mode font-lock for function names (bug#63390)

When a function definition has preproc directives in its body, it
can't correctly parse into a function_definition.  This fix tries to
recognize this case and highlight the function_declarator correctly.

* lisp/progmodes/c-ts-mode.el:
(c-ts-mode--font-lock-settings): New rule.
(c-ts-mode--top-level-declarator): New function.

2 years ago* lisp/tab-bar.el: Don't use 'minibuffer-selected-window' (bug#62427).
Juri Linkov [Fri, 19 May 2023 18:14:16 +0000 (21:14 +0300)]
* lisp/tab-bar.el: Don't use 'minibuffer-selected-window' (bug#62427).

(tab-bar-select-tab, tab-bar-new-tab-to):
Use 'window-minibuffer-p' instead of 'minibuffer-selected-window'.
And switch to 'get-mru-window' instead of 'minibuffer-selected-window'.

2 years agoSplit windows horizontally in places that use split to create a new window.
Juri Linkov [Fri, 19 May 2023 18:04:50 +0000 (21:04 +0300)]
Split windows horizontally in places that use split to create a new window.

* lisp/tab-bar.el (tab-bar-new-tab-to):
* lisp/window.el (window-state-put):
To create a new window, split horizontally instead of vertically.
Use 'window-safe-min-width' for the SIZE arg of 'split-window'.
(bug#62592)

2 years agoFix tree-sitter test (bug#63481)
Yuan Fu [Thu, 18 May 2023 21:44:26 +0000 (14:44 -0700)]
Fix tree-sitter test (bug#63481)

* test/src/treesit-tests.el (treesit-basic-parsing): Latest json
parser doesn't return an error on empty buffer or multiple objects
anymore [1].

https://github.com/tree-sitter/tree-sitter-json/commit/40a81c01a40ac48744e0c8ccabbaba1920441199

2 years ago; * lisp/emacs-lisp/benchmark.el (benchmark-progn): Fix declare form.
Eli Zaretskii [Thu, 18 May 2023 14:20:36 +0000 (17:20 +0300)]
; * lisp/emacs-lisp/benchmark.el (benchmark-progn): Fix declare form.

2 years agoAttempt to fix redisplay problems on macOS
Aaron Jensen [Thu, 18 May 2023 11:20:18 +0000 (14:20 +0300)]
Attempt to fix redisplay problems on macOS

* src/nsterm.m (ns_scroll_run): Attempt to fix redisplay
artifacts.  (Bug#63187)

2 years ago; * lisp/simple.el (async-shell-command): Add commentary about 3rd arg.
Eli Zaretskii [Thu, 18 May 2023 11:03:10 +0000 (14:03 +0300)]
; * lisp/simple.el (async-shell-command): Add commentary about 3rd arg.

2 years agoClarify misleading comment in isearch.el
Jens Schmidt [Tue, 16 May 2023 21:31:19 +0000 (23:31 +0200)]
Clarify misleading comment in isearch.el

Clarify a misleading comment in isearch.el as to whether frame events
should exit an isearch or not (Bug#62032, Bug#41338 for background
information).
* lisp/isearch.el (isearch-mode-map): Replace the misleading comment.
(Bug#62032)

Copyright-paperwork-exempt: yes

2 years agoImprove documentation of package-menu commands
Eli Zaretskii [Thu, 18 May 2023 06:41:59 +0000 (09:41 +0300)]
Improve documentation of package-menu commands

* doc/emacs/package.texi (Package Menu): Document that some
package-menu filters accept lists of values interactively.

* lisp/emacs-lisp/package.el (package-menu-execute)
(package-menu-hide-package, package-menu-describe-package)
(package-menu-mark-delete, package-menu-mark-install)
(package-menu-mark-unmark, package-menu-backup-unmark)
(package-menu-quick-help, package-menu-get-status)
(package-menu--find-upgrades, package-menu-mark-upgrades)
(package-menu-filter-by-archive)
(package-menu-filter-by-description)
(package-menu-filter-by-keyword)
(package-menu-filter-by-name-or-description)
(package-menu-filter-by-name, package-menu-filter-by-status)
(package-menu-filter-by-version, package-menu-filter-marked)
(package-menu-describe-package): Doc fixes.

2 years agoFix M-x completion-predicate under python-ts-mode
Basil L. Contovounesios [Wed, 17 May 2023 12:48:09 +0000 (13:48 +0100)]
Fix M-x completion-predicate under python-ts-mode

* lisp/progmodes/python.el (python--completion-predicate)
(python-shell--completion-predicate): Filter M-x completion based on
python-base-mode instead of python-mode.  This allows for
python-ts-mode as well (bug#63552).

2 years ago* Account for `byte-compile-warnings' during native compilation (bug#63302).
Andrea Corallo [Wed, 10 May 2023 11:50:51 +0000 (13:50 +0200)]
* Account for `byte-compile-warnings' during native compilation (bug#63302).

* lisp/emacs-lisp/comp.el (comp-final, comp-run-async-workers):
Forward `byte-compile-warnings' to child processes.

2 years agoAvoid duplicate VC packages in 'package-selected-packages'
Philip Kaludercic [Sun, 14 May 2023 19:22:59 +0000 (21:22 +0200)]
Avoid duplicate VC packages in 'package-selected-packages'

* lisp/emacs-lisp/package-vc.el (package-vc--unpack-1): Check if
'package-selected-packages' already contains the package name.
(bug#63338)

2 years ago* lisp/tab-bar.el (tab-bar-new-tab-to): Set 'window-side' to nil (bug#62427).
Juri Linkov [Mon, 15 May 2023 17:32:04 +0000 (20:32 +0300)]
* lisp/tab-bar.el (tab-bar-new-tab-to): Set 'window-side' to nil (bug#62427).

This is still needed for the case when tab-bar-new-tab-choice is 'window'.

2 years ago; Better warning message when loading tree-sitter fails
Eli Zaretskii [Mon, 15 May 2023 15:39:49 +0000 (18:39 +0300)]
; Better warning message when loading tree-sitter fails

* lisp/treesit.el (treesit-ready-p): Improve diagnostics on
MS-Windows when the tree-sitter library cannot be loaded at run
time.

2 years agoUpdate to Org 9.6.6
Kyle Meyer [Mon, 15 May 2023 01:04:37 +0000 (21:04 -0400)]
Update to Org 9.6.6

2 years ago; * admin/make-tarball.txt: Minor copyedits.
Eli Zaretskii [Sun, 14 May 2023 13:11:44 +0000 (16:11 +0300)]
; * admin/make-tarball.txt: Minor copyedits.

2 years agoMerge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs into emacs-29 emacs-29.0.91
Eli Zaretskii [Sun, 14 May 2023 12:02:15 +0000 (08:02 -0400)]
Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs into emacs-29

2 years ago; Regenerate files for emacs-29.0.91
Eli Zaretskii [Sun, 14 May 2023 11:58:30 +0000 (07:58 -0400)]
; Regenerate files for emacs-29.0.91

* ChangeLog.4:
* etc/AUTHORS: Regenerate.

2 years ago; * lisp/ldefs-boot.el: Regenerate for emacs-29.0.91.
Eli Zaretskii [Sun, 14 May 2023 11:57:52 +0000 (07:57 -0400)]
; * lisp/ldefs-boot.el: Regenerate for emacs-29.0.91.

2 years agoBump Emacs version for next pretest
Eli Zaretskii [Sun, 14 May 2023 11:32:21 +0000 (07:32 -0400)]
Bump Emacs version for next pretest

* README:
* configure.ac:
* nt/README.W32:
* msdos/sed2v2.inp: Bump Emacs version to 29.0.91.

2 years ago; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-name): typo
Mattias Engdegård [Sun, 14 May 2023 09:33:04 +0000 (11:33 +0200)]
; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-name): typo

2 years ago; Minor fixes in ELisp manual
Eli Zaretskii [Sun, 14 May 2023 07:26:03 +0000 (10:26 +0300)]
; Minor fixes in ELisp manual

* doc/lispref/functions.texi (Declare Form): Improve indexing.
(Obsolete Functions): Add cross-reference.
`

2 years ago; * lisp/simple.el (async-shell-command): Doc fix. (Bug#63432)
Eli Zaretskii [Sun, 14 May 2023 07:13:39 +0000 (10:13 +0300)]
; * lisp/simple.el (async-shell-command): Doc fix.  (Bug#63432)

2 years agoIgnore current-prefix-arg in async-shell-command
Gabriel do Nascimento Ribeiro [Sat, 13 May 2023 23:31:24 +0000 (20:31 -0300)]
Ignore current-prefix-arg in async-shell-command

* lisp/simple.el (async-shell-command): Ignore current-prefix-arg and
always pass nil to second argument of `shell-command'.  (Bug#63432)

2 years agoFix building of VC package manuals with relative includes
Joseph Turner [Sat, 6 May 2023 21:49:43 +0000 (14:49 -0700)]
Fix building of VC package manuals with relative includes

* lisp/emacs-lisp/package-vc.el (package-vc--build-documentation):
Invoke makeinfo with -I to ensure the package directory is always
consulted for @include statements.  (Bug#63337)

2 years agoAnother fix for VHDL mode highlighting
Cyril Arnould [Wed, 10 May 2023 07:26:52 +0000 (07:26 +0000)]
Another fix for VHDL mode highlighting

* lisp/progmodes/vhdl-mode.el (vhdl-version): Bump to 3.38.5.
(vhdl-compiler-alist): Fix the regexps and the doc string.

Copyright-paperwork-exempt: yes

2 years agoFix auto-filling in Texinfo mode
Eli Zaretskii [Sat, 13 May 2023 08:28:38 +0000 (11:28 +0300)]
Fix auto-filling in Texinfo mode

This fixes auto-filling in Texinfo buffers.  It was broken by the
fix to bug#49558, which made M-q fill over-long @noindent lines by
refraining from customizing 'paragraph-separate' in Texinfo mode.
The underlying problem here is that 'auto-fill-mode' doesn't call
mode-specific filling functions, but does its job by itself, and
depends on 'forward-paragraph' to find the beginning of the
paragraph as appropriate for calculation of 'fill-prefix', and a
different value of 'paragraph-separate' broke that.  As a side
effect, the change below also changes paragraph-movement commands
in Texinfo back to how they behaved prior to that bugfix, but I
don't see why the paragraph-movement behavior introduced by that
fix made more sense.  Try to move through a series of
@-directives, like a paragraph preceded by several @cindex
entries, and you will see the inconsistencies.  In any case, the
adverse effects of that fix on auto-filling is unacceptable.

* lisp/textmodes/texinfo.el (fill-paragraph-separate): New
variable.
(texinfo-mode): Set 'fill-paragraph-separate' to the default value
of 'paragraph-separate'.  Customize 'paragraph-separate' to the
Texinfo-specific value, as it was before commit dde591571abf.
(texinfo--fill-paragraph): Bind 'paragraph-separate' to the value
of 'fill-paragraph-separate', to keep 'M-q' happy.

2 years ago; * admin/git-bisect-start: Update failing commits
Gregory Heytings [Fri, 12 May 2023 23:31:25 +0000 (23:31 +0000)]
; * admin/git-bisect-start: Update failing commits

2 years agoMerge branch 'scratch/long-lines-cleanup' into 'emacs-29'
Gregory Heytings [Fri, 12 May 2023 22:13:44 +0000 (00:13 +0200)]
Merge branch 'scratch/long-lines-cleanup' into 'emacs-29'

2 years agoAdd an assertion in, and a commentary for, 'get_nearby_bol_pos'
Gregory Heytings [Fri, 12 May 2023 21:56:31 +0000 (21:56 +0000)]
Add an assertion in, and a commentary for, 'get_nearby_bol_pos'

* src/xdisp.c:
(get_nearby_bol_pos): Document the function, and add an assertion
on its return value.

2 years agoFix the return type of 'labeled_restrictions_get_bound'
Gregory Heytings [Fri, 12 May 2023 21:56:28 +0000 (21:56 +0000)]
Fix the return type of 'labeled_restrictions_get_bound'

* src/editfns.c:
(labeled_restrictions_get_bound): Return a Lisp_Object instead of
a pointer to a struct Lisp_Marker.
(unwind_reset_outermost_restriction, reset_outermost_restrictions)
(Fwiden, Fnarrow_to_region): Adapt to the new return type.

2 years agoFix mouse highlight with some fonts in Cairo builds
Eli Zaretskii [Fri, 12 May 2023 19:19:35 +0000 (22:19 +0300)]
Fix mouse highlight with some fonts in Cairo builds

* src/ftcrfont.c (ftcrfont_draw): Don't set the
'background_filled_p' flag of the glyph string.  (Bug#63271)

2 years ago; * etc/NEWS: Fix wording in last change.
Eli Zaretskii [Fri, 12 May 2023 14:41:39 +0000 (17:41 +0300)]
; * etc/NEWS: Fix wording in last change.

2 years ago; Improve and update documentation of built-in package upgrades
Eli Zaretskii [Fri, 12 May 2023 12:33:06 +0000 (15:33 +0300)]
; Improve and update documentation of built-in package upgrades

* doc/emacs/package.texi (Package Statuses, Package Menu)
(Package Installation):
* etc/NEWS: Document the options and caveats of upgrading built-in
packages.

2 years agoEnsure that package menu respects 'package-install-upgrade-built-in'
Philip Kaludercic [Wed, 10 May 2023 06:58:34 +0000 (08:58 +0200)]
Ensure that package menu respects 'package-install-upgrade-built-in'

* lisp/emacs-lisp/package.el (package-menu--find-upgrades): Check if
built-in packages can be upgraded if
'package-install-upgrade-built-in' is non-nil.

2 years agoEnsure that EXTRA-DATA are always written when generating autoloads
Philip Kaludercic [Sun, 7 May 2023 19:37:01 +0000 (21:37 +0200)]
Ensure that EXTRA-DATA are always written when generating autoloads

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Handle
edge-case where no autoloads are found.  (Bug#63260)

2 years agoUpdate to Transient v0.4.0
Jonas Bernoulli [Thu, 11 May 2023 15:47:30 +0000 (17:47 +0200)]
Update to Transient v0.4.0

Or strictly speaking v0.4.0-1-g428576a4.)

2 years agoRevert "Don't have nntp-report signal an error"
Eli Zaretskii [Thu, 11 May 2023 09:59:46 +0000 (12:59 +0300)]
Revert "Don't have nntp-report signal an error"

This reverts commit 032969e8c65ba1ccda8466f6c61f20e0c7293ebf.
The commit is being reverted because it caused bug#62845.

2 years ago; * lisp/wid-edit.el (widget-specify-insert): Fix debug spec. (Bug#63437)
Eli Zaretskii [Thu, 11 May 2023 09:54:34 +0000 (12:54 +0300)]
; * lisp/wid-edit.el (widget-specify-insert): Fix debug spec.  (Bug#63437)

2 years agoMake c-emacs-features use the proper binding of parse-sexp-lookup-properties
Alan Mackenzie [Fri, 14 Apr 2023 10:33:03 +0000 (10:33 +0000)]
Make c-emacs-features use the proper binding of parse-sexp-lookup-properties

This is relevant for bug #58558, although it does not fix it.  Due to a wrong
ordering of with-current-buffer and a let form, the function overwrote the
global value of parse-sexp-lookup-properties and two other variables.

* lisp/progmodes/cc-defs.el (c-emacs-features): Change the nesting of
with-current-buffer and let so that the let bindings get used.

2 years ago; * lisp/obsolete/autoload.el (make-directory-autoloads): Doc fix.
Eli Zaretskii [Wed, 10 May 2023 13:51:17 +0000 (16:51 +0300)]
; * lisp/obsolete/autoload.el (make-directory-autoloads): Doc fix.

2 years ago; Fix example in ELisp manual
Eli Zaretskii [Wed, 10 May 2023 13:47:14 +0000 (16:47 +0300)]
; Fix example in ELisp manual

* doc/lispref/minibuf.texi (Yes-or-No Queries): Fix example.
(Bug#63399)

2 years ago; Fix wording in Emacs manual
Eli Zaretskii [Wed, 10 May 2023 13:36:14 +0000 (16:36 +0300)]
; Fix wording in Emacs manual

* doc/emacs/search.texi (Replacement and Lax Matches): Fix
wording.  (Bug#63398)

2 years ago; Fix minor documentation issue ion replace.el
Eli Zaretskii [Wed, 10 May 2023 13:01:28 +0000 (16:01 +0300)]
; Fix minor documentation issue ion replace.el

* lisp/replace.el (query-replace, query-replace-regexp): Doc fix.
(Bug#63397)

2 years agowith-display-message: Workaround for bug#63253
Stefan Monnier [Wed, 10 May 2023 02:30:52 +0000 (22:30 -0400)]
with-display-message: Workaround for bug#63253

Running arbitrary ELisp code from an atimer is still dangerous,
at least because the regexp engine is not-reentrant, so let's patch up
the case we bumped into.  There are probably many other such holes :-(

* src/alloc.c (garbage_collection_inhibited): Make it non-static.

* src/xdisp.c (garbage_collection_inhibited): Declare it.
(set_message, clear_message): Use it as a proxy for "we're in
a dangerous context like within `probably_quit`".

2 years ago; Don't use literal non-ASCII characters in Texinfo
Eli Zaretskii [Tue, 9 May 2023 09:06:32 +0000 (12:06 +0300)]
; Don't use literal non-ASCII characters in Texinfo

* doc/emacs/mule.texi (Input Methods): Don't use non-ASCII
characters in Texinfo sources, where Texinfo provides an ASCII command
to insert it.

2 years agoFido-mode: never shadow 'external' completion style
João Távora [Fri, 5 May 2023 18:44:11 +0000 (19:44 +0100)]
Fido-mode: never shadow 'external' completion style

As explained in the manual (20.7.2 Fast minibuffer selection)
'fido-mode' and 'fido-vertical-mode' give priority the "flex"
completion style.

In fact, bug#62015 was recently fixed in commit because that priority
was not taking place correctly and some completions were missed.

However, an exception must be made for the 'external' completion
style.

That style, made available by the lisp/external-completion.el library,
is specifically designed to work with backends that provide only a
partial view of all completions.  If we allow 'flex' to step in front
of 'external' it could mean that 'flex' matches something and
'external' isn't triggered as it probably should.

To reproduce have the rust-mode ELPA package and the rust-analyzer LSP
server handy.  Then:

  emacs -Q -f package-initialize main.rs

Where main.rs is this content:

  fn foo1()    {} fn foo2()    {} fn foo3() {}
  fn foobar1() {} fn foobar2() {} fn foobar3() {}

The rust-analyzer server can be quickly configured to return only 3
workspace symbols max, so evaluate:

  (setq-default eglot-workspace-configuration
                '(:rust-analyzer
                    (:workspace (:symbol (:search (:limit 3))))))

Now start M-x eglot and M-x fido-vertical-mode and type C-u M-. to
find an arbitrary symbol in this one-file project.

Type 'f'.  You will see the three foo's are listed, correctly.

Now type '3'.   You will only see "foo3".

But that's wrong because "foobar3" was available, if only the server
had been asked for it.  This commit fixes the situation and no
completions are lost.

As an unfortunate side-effect of this commit, the fontification of
completions-common-part on the matches is lost, but that is not worse
than missing out on completions and there are better ways to recover
the fontification anyway (in external-completion.el).

See also:
https://github.com/joaotavora/eglot/discussions/1219#discussioncomment-5818336

* lisp/icomplete.el (icomplete--fido-ccd): Do not touch entries
with 'external in them.

Do not merge to master.
Backport:

(cherry picked from commit 0e8d8a72284f6b3aaa1bbce73d41c7d84bbc4d3c)

2 years ago; * lisp/leim/quail/persian.el: Fix a typo in last commit.
Eli Zaretskii [Tue, 9 May 2023 05:34:43 +0000 (08:34 +0300)]
; * lisp/leim/quail/persian.el: Fix a typo in last commit.

2 years agoAvoid crashes in --without-all build trying to scale non-ASCII char
Eli Zaretskii [Tue, 9 May 2023 05:20:57 +0000 (08:20 +0300)]
Avoid crashes in --without-all build trying to scale non-ASCII char

* src/fontset.c (face_for_char): Display a non-ASCII character as
glyphless if the ASCII face has no fontset.  (Bug#63283)

2 years agoImprove instructions for dealing with Emacs crashes
Eli Zaretskii [Tue, 9 May 2023 04:52:04 +0000 (07:52 +0300)]
Improve instructions for dealing with Emacs crashes

* doc/emacs/trouble.texi (Crashing): Show the variant of the
'addr2line' command for MS-Windows.

2 years agoImproved transliterations + improved bidi insertion support for Farsi
Mohsen Banan [Sun, 7 May 2023 17:11:55 +0000 (10:11 -0700)]
Improved transliterations + improved bidi insertion support for Farsi

* lisp/leim/quail/persian.el ("farsi-transliterate-banan"):
Improve and add transliterations.  (Bug#63361)

2 years agoFix crash when creating a child frame in NS (bug#63107)
Alan Third [Thu, 27 Apr 2023 19:08:23 +0000 (20:08 +0100)]
Fix crash when creating a child frame in NS (bug#63107)

* src/nsterm.m ([EmacsView initFrameFromEmacs:]): Have a second go at
creating the toolbar.
([EmacsWindow createToolbar:]): If there is already a toolbar or the
EmacsView's layer is not an EmacsLayer, then do nothing.

(cherry picked from commit 3adc1e7f37901235bda83ea65a90644b7b0a8dbf)

2 years agoFix outgoing mime type regression (Bug#62815)
Andrew G Cohen [Sun, 30 Apr 2023 01:55:42 +0000 (09:55 +0800)]
Fix outgoing mime type regression (Bug#62815)

* lisp/net/mailcap.el (mailcap-mime-extensions,
mailcap-parse-mimetype-file, mailcap-mime-types): Don't regexp-quote
mimetypes in a context where they should be strings.
(mailcap--regexp-quote-type): Remove.

(cherry picked from commit 605414d018da47f99dec5019142f584b6eb174c8)

2 years agodefine-minor-mode: sanitize mode function messages
Nicholas Vollmer [Sun, 7 May 2023 04:06:18 +0000 (00:06 -0400)]
define-minor-mode: sanitize mode function messages

* emacs-lisp/easy-mmode.el (define-minor-mode): Ensure mode's
pretty name is not interprted as a message formatting string,
e.g., if the mode name contains a '%'.  (Bug#63343)

2 years agoFix beginning/end-of-defun with tree-sitter
Eli Zaretskii [Sun, 7 May 2023 06:13:10 +0000 (09:13 +0300)]
Fix beginning/end-of-defun with tree-sitter

* lisp/treesit.el (treesit-beginning-of-defun)
(treesit-end-of-defun): Push mark, as other beginning/end-of-defun
functions do.