]> git.eshelyaron.com Git - emacs.git/log
emacs.git
19 months 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.

19 months 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)

19 months 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

19 months 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.

19 months 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.

19 months 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)

19 months 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.

19 months 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.

19 months 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.

19 months 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).

19 months 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.

19 months 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)

19 months 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'.

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

19 months 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.

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

19 months 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)

19 months 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)

19 months 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.

19 months 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.

19 months 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'.

19 months 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.

19 months 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)

19 months 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.

19 months 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)

19 months 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.

19 months 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)

19 months 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.

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

19 months 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)

19 months 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)

19 months 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)

19 months 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)

19 months 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)

19 months 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

19 months 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).

19 months 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.

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

19 months 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)

19 months 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.

19 months 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.

19 months 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'.

19 months 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)

19 months 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

19 months 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.

19 months 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)

19 months 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.

19 months 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

19 months 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.

19 months 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).

19 months 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.

19 months 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)

19 months 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'.

19 months 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.

19 months 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

19 months 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.

19 months 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

19 months 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.

19 months 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.

19 months 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.

19 months 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

19 months 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.
`

19 months 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)

19 months 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)

19 months 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)

19 months 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

19 months 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.

19 months 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

19 months 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'

19 months 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.

19 months 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.

19 months 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)

19 months 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.

19 months 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.

19 months 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.

19 months 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)

19 months 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.)

19 months 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.

19 months 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)

19 months 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.

19 months 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.

19 months 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)

19 months 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)

19 months 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)

19 months 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`".

19 months 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.

19 months 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)

19 months 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.

19 months 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)

19 months 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.

19 months 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)

19 months 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)

19 months 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)

19 months 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)

19 months 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.

19 months agoFix indent for enums in csharp-mode
Theodor Thornhill [Sat, 6 May 2023 19:13:15 +0000 (21:13 +0200)]
Fix indent for enums in csharp-mode

* lisp/progmodes/csharp-mode.el (csharp-guess-basic-syntax): Check for
keywords containing 'enum' on the line before an opening bracket, and
make it behave like a class-open token.

19 months ago; Expand 'package-vc-install' documentation
Philip Kaludercic [Sat, 6 May 2023 18:51:39 +0000 (20:51 +0200)]
; Expand 'package-vc-install' documentation

* lisp/emacs-lisp/package-vc.el (package-vc-install): Go into further
detail on the handling of the REV argument.  (Bug#60418)

19 months agoTeach c-ts-mode about the 'restrict' keyword
Eli Zaretskii [Sat, 6 May 2023 12:15:42 +0000 (15:15 +0300)]
Teach c-ts-mode about the 'restrict' keyword

* lisp/progmodes/c-ts-mode.el (c-ts-mode--keywords): Add
"restrict" and "_Atomic" type qualifiers.  (Bug#63323)

19 months ago* lisp/x-dnd.el (x-dnd-after-move-frame): Skip dead frames. (Bug#63312)
Eli Zaretskii [Sat, 6 May 2023 11:16:36 +0000 (14:16 +0300)]
* lisp/x-dnd.el (x-dnd-after-move-frame): Skip dead frames.  (Bug#63312)

19 months ago; Updated Elispref-Manual: `nil' cannot be defun'ed
Shynur [Fri, 7 Apr 2023 03:45:28 +0000 (11:45 +0800)]
; Updated Elispref-Manual: `nil' cannot be defun'ed

* doc/lispref/functions.texi (Function Cells): Fix inaccuracy.
(Bug#62746)