Commit graph

165170 commits

Author SHA1 Message Date
Philip Kaludercic
b5bfd808c6 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)
2023-05-16 20:47:34 +02:00
Juri Linkov
c18f9f155f * 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'.
2023-05-15 20:32:04 +03:00
Eli Zaretskii
33485fe8f7 ; 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.
2023-05-15 18:39:49 +03:00
Kyle Meyer
95a724abaa Update to Org 9.6.6 2023-05-14 21:04:37 -04:00
Eli Zaretskii
c665ca79ff ; * admin/make-tarball.txt: Minor copyedits. 2023-05-14 16:11:44 +03:00
Eli Zaretskii
3aef46e466 Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs into emacs-29 2023-05-14 08:02:15 -04:00
Eli Zaretskii
88ca37b858 ; Regenerate files for emacs-29.0.91
* ChangeLog.4:
* etc/AUTHORS: Regenerate.
2023-05-14 07:58:30 -04:00
Eli Zaretskii
4627ede36b ; * lisp/ldefs-boot.el: Regenerate for emacs-29.0.91. 2023-05-14 07:57:52 -04:00
Eli Zaretskii
c90d47619e Bump Emacs version for next pretest
* README:
* configure.ac:
* nt/README.W32:
* msdos/sed2v2.inp: Bump Emacs version to 29.0.91.
2023-05-14 07:32:21 -04:00
Mattias Engdegård
229af8e4b3 ; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-name): typo 2023-05-14 13:23:03 +02:00
Eli Zaretskii
ce7d18cbc0 ; Minor fixes in ELisp manual
* doc/lispref/functions.texi (Declare Form): Improve indexing.
(Obsolete Functions): Add cross-reference.
`
2023-05-14 10:26:03 +03:00
Eli Zaretskii
5c8864fab4 ; * lisp/simple.el (async-shell-command): Doc fix. (Bug#63432) 2023-05-14 10:13:39 +03:00
Gabriel do Nascimento Ribeiro
b96dc472bc 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)
2023-05-14 09:24:16 +03:00
Joseph Turner
1e6a759436 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)
2023-05-13 19:16:57 +02:00
Cyril Arnould
61659f36c8 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
2023-05-13 16:50:55 +03:00
Eli Zaretskii
7acae22f42 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 dde591571a.
(texinfo--fill-paragraph): Bind 'paragraph-separate' to the value
of 'fill-paragraph-separate', to keep 'M-q' happy.
2023-05-13 11:28:38 +03:00
Gregory Heytings
4bda962734 ; * admin/git-bisect-start: Update failing commits 2023-05-13 01:33:21 +02:00
Gregory Heytings
dcf8c01102 Merge branch 'scratch/long-lines-cleanup' into 'emacs-29' 2023-05-13 00:13:44 +02:00
Gregory Heytings
1e3a66df45 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.
2023-05-13 00:11:36 +02:00
Gregory Heytings
f0f08eeb05 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.
2023-05-13 00:11:33 +02:00
Eli Zaretskii
acf4763417 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)
2023-05-12 22:19:35 +03:00
Eli Zaretskii
32b42b333c ; * etc/NEWS: Fix wording in last change. 2023-05-12 17:41:39 +03:00
Eli Zaretskii
09d6070e56 ; 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.
2023-05-12 15:33:06 +03:00
Philip Kaludercic
ba2c76fa2b 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.
2023-05-12 09:41:55 +02:00
Philip Kaludercic
6fa9332e7c 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)
2023-05-12 09:41:55 +02:00
Jonas Bernoulli
60d5a015d1
Update to Transient v0.4.0
Or strictly speaking v0.4.0-1-g428576a4.)
2023-05-11 17:47:30 +02:00
Eli Zaretskii
b8bcd42cab Revert "Don't have nntp-report signal an error"
This reverts commit 032969e8c6.
The commit is being reverted because it caused bug#62845.
2023-05-11 12:59:46 +03:00
Eli Zaretskii
ef1f4068f6 ; * lisp/wid-edit.el (widget-specify-insert): Fix debug spec. (Bug#63437) 2023-05-11 12:54:34 +03:00
Alan Mackenzie
09bf476836 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.
2023-05-10 11:16:32 -04:00
Eli Zaretskii
c9e2a5ec26 ; * lisp/obsolete/autoload.el (make-directory-autoloads): Doc fix. 2023-05-10 16:51:17 +03:00
Eli Zaretskii
346f4ac3bf ; Fix example in ELisp manual
* doc/lispref/minibuf.texi (Yes-or-No Queries): Fix example.
(Bug#63399)
2023-05-10 16:47:14 +03:00
Eli Zaretskii
91fff05ae3 ; Fix wording in Emacs manual
* doc/emacs/search.texi (Replacement and Lax Matches): Fix
wording.  (Bug#63398)
2023-05-10 16:36:14 +03:00
Eli Zaretskii
2438fa2e6c ; Fix minor documentation issue ion replace.el
* lisp/replace.el (query-replace, query-replace-regexp): Doc fix.
(Bug#63397)
2023-05-10 16:01:28 +03:00
Stefan Monnier
93005cd9dc 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`".
2023-05-09 22:30:52 -04:00
Eli Zaretskii
6924c81a6d ; 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.
2023-05-09 12:06:32 +03:00
João Távora
f1675df3d0 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 0e8d8a7228)
2023-05-09 09:42:10 +01:00
Eli Zaretskii
56d2949d44 ; * lisp/leim/quail/persian.el: Fix a typo in last commit. 2023-05-09 08:34:43 +03:00
Eli Zaretskii
d94ea9efca 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)
2023-05-09 08:20:57 +03:00
Eli Zaretskii
387ddc0ccc Improve instructions for dealing with Emacs crashes
* doc/emacs/trouble.texi (Crashing): Show the variant of the
'addr2line' command for MS-Windows.
2023-05-09 07:52:04 +03:00
Mohsen Banan
e6b4784a37 Improved transliterations + improved bidi insertion support for Farsi
* lisp/leim/quail/persian.el ("farsi-transliterate-banan"):
Improve and add transliterations.  (Bug#63361)
2023-05-08 15:27:37 +03:00
Alan Third
c1363a04bb 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 3adc1e7f37)
2023-05-08 09:49:03 +01:00
Andrew G Cohen
7d6855c9ab 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 605414d018)
2023-05-08 08:28:52 +08:00
Nicholas Vollmer
e920dd2b6f 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)
2023-05-07 16:37:24 +03:00
Eli Zaretskii
910a7b30df 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.
2023-05-07 09:13:10 +03:00
Theodor Thornhill
e205f68717 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.
2023-05-06 21:15:21 +02:00
Philip Kaludercic
dfde902f3b ; 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)
2023-05-06 20:51:49 +02:00
Eli Zaretskii
7133784303 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)
2023-05-06 15:15:42 +03:00
Eli Zaretskii
15e06260ae * lisp/x-dnd.el (x-dnd-after-move-frame): Skip dead frames. (Bug#63312) 2023-05-06 14:16:36 +03:00
Shynur
a081b6625b ; Updated Elispref-Manual: `nil' cannot be defun'ed
* doc/lispref/functions.texi (Function Cells): Fix inaccuracy.
(Bug#62746)
2023-05-06 12:46:23 +03:00
Eli Zaretskii
97b818a4fb Fix doc strings of 'mark-sexp' and 'mark-word'
* lisp/emacs-lisp/lisp.el (mark-sexp):
* lisp/simple.el (mark-word): Clarify the doc strings in various
usage cases.  (Bug#62892)
2023-05-06 11:47:31 +03:00