Commit graph

166019 commits

Author SHA1 Message Date
Eli Zaretskii
f1ce49d148 Merge from origin/emacs-29
3899acbb33 ; * src/fringe.c: Fix description of large circle.  (Bug#...
2b10e1827d sql: add missing postgresql types
9ac1259278 Fix display of menu-bar bindings of commands in *Help* bu...
ecdd3a9efa Improve Completion Example section in the Emacs manual
626e1ac62b Improve 'message-server-alist' docstring
327986936c Add index entry for fallback modes
1c4783c330 ; * etc/NEWS: Copyedits and grammar fixes.
3d6f755331 xref-search-program-alist: Fix searching larger file list...
1b8b2cf61b Fix typo and inaccuracy in the ELisp Reference manual
df17682ebf ; Support 'dart-ts-mode' in Eglot
e0dc60e078 ; Fix typos in gdb-mi.el
60560cc7ad Fix description of lexical environment's internals
1456adf424 ; Eglot: fix a typo in a customization type
2f59595f5f ; * etc/NEWS: Grammar fixes.
596b780ab7 Update to Org 9.6.4-2-g0f6ae7
a0b04a2247 Documentation copyedits for 'package-install-upgrade-buil...
580d8278c5 Allow upgrading built-in packages with 'package-install'
329304c23f ; * src/term.c (init_tty): Fix last change.  (Bug#62877)
200dbf7d30 Minor changes in c-ts-mode.el's support of DEFUNs
9686b015a0 Fix strike-through attribute support on TTY frames
39035fbfc5 Avoid crashes in 'describe-keymap' due to shadowing

# Conflicts:
#	etc/NEWS
#	lisp/progmodes/c-ts-mode.el
#	lisp/progmodes/eglot.el
2023-04-21 07:29:14 -04:00
Jim Porter
4416262f59 Add Git hooks to check filenames listed in the commit message
See <https://lists.gnu.org/archive/html/emacs-devel/2023-04/msg00274.html>.

* build-aux/git-hooks/commit-msg-files.awk:
* build-aux/git-hooks/post-commit:
* build-aux/git-hooks/pre-push: New files...
* autogen.sh: ... add them.
2023-04-20 21:40:02 -07:00
Stefan Monnier
c4e038c7be * lisp/emacs-lisp/gv.el: Silly typo 2023-04-20 15:51:44 -04:00
Eli Zaretskii
3899acbb33 ; * src/fringe.c: Fix description of large circle. (Bug#62961) 2023-04-20 13:06:24 +03:00
Ruijie Yu
fd4c9246fc Handle modifications in extensionless zip files (bug#61326)
* lisp/arc-mode.el (archive-*-write-file-member)
(archive-*-expunge): Refactor to correctly modify
extensionless zip archives.
(archive-expunge): Move implementation to a separate helper
function to facilitate testing.
(archive--act-files): New helper function to wrap around
`call-process' calls.
(archive--need-rename-p): New helper function to check whether
a temporary rename is necessary.
(archive--ensure-extension) (archive--maybe-rename): New helper
functions to rename archive if the caller deems it necessary.
(archive--with-ensure-extension): New helper function to handle
writing an archive while ensuring extensionless archives work
correctly by temporarily renaming them.

* test/lisp/arc-mode-tests.el (arc-mode-test-zip-ensure-ext):
New regression test for bug#61326.
2023-04-20 12:26:05 +03:00
Eli Zaretskii
e0c8e4f12f ; Minor fixes for user-facing text in last vc-cvs.el changes
* lisp/vc/vc-cvs.el (vc-cvs-repository-hostname)
(vc-cvs-parse-root): Fix doc strings, text of messages, and use of
"pathname".  (Bug#62693)
2023-04-20 11:53:32 +03:00
Nicolas Martyanoff
2b10e1827d sql: add missing postgresql types
* lisp/progmodes/sql.el: Add multiple missing PostgreSQL types: bigserial,
smallserial, macaddr8, jsonb, jsonpath, built-in range types, object
identifier types (oid & co).
2023-04-20 10:50:04 +03:00
Yuan Fu
cc0f9389b8
Fix treesit-install-language-grammar for non-interactive call
A continuation of bug#62704.

* lisp/treesit.el (treesit-install-language-grammar): Differentiate
between interactive and non-interactive call, and don't prompt when
it's called non-interactively.
2023-04-19 16:25:48 -07:00
Eli Zaretskii
9ac1259278 Fix display of menu-bar bindings of commands in *Help* buffers
* lisp/help-fns.el (help-fns--insert-menu-bindings): Propertize
with 'help-key-binding' face only the menu items, not the arrows
between successive items.  This is because 'char-displayable-p' is
unreliable when we propertize the character with an arbitrary
face: that face could specify a font which doesn't support the
character after all, while 'char-displayable-p' assumes there are
no restrictions on fonts that can be used for displaying the
character.  Also, make the code more efficient by avoiding the
call to 'char-displayable-p' inside the loop.
2023-04-19 20:46:40 +03:00
Eli Zaretskii
a01528c950 ; * src/fns.c (assq_no_signal): Fix a typo in a comment. 2023-04-19 19:30:55 +03:00
Spencer Baugh
ecdd3a9efa Improve Completion Example section in the Emacs manual
This can be a useful substitute for full-on fuzzy completion, as
provided by other completion styles and completion packages.
* doc/emacs/mini.texi (Completion Example): Give an example of
completion with point not at end of minibuffer.  Also, use
@kbd{@key{TAB}} when telling the user to hit TAB.  (Bug#62836)
2023-04-19 15:21:37 +03:00
Robert Pluim
626e1ac62b Improve 'message-server-alist' docstring
* lisp/gnus/message.el (message-server-alist): Fix typo and clarify
what happens if there is already an X-Message-SMTP-Method header.
2023-04-19 12:33:18 +02:00
Robert Pluim
327986936c Add index entry for fallback modes
* doc/emacs/custom.texi (Specifying File Variables): Add index for
'fallback modes'.
2023-04-19 12:29:57 +02:00
Robert Pluim
c279d65199 ; Double space at end of sentence for vc-cvs.el
* lisp/vc/vc-cvs.el (vc-cvs-repository-hostname, vc-cvs-parse-root)
(vc-cvs-parse-status, vc-cvs-after-dir-status): Double space at end of
sentence.
* test/lisp/vc/vc-cvs-tests.el: Double space at end of sentence.
2023-04-19 10:03:28 +02:00
Robert Pluim
1c4783c330 ; * etc/NEWS: Copyedits and grammar fixes. 2023-04-19 08:38:44 +02:00
Olivier Certner
9a2c723f1b VC: Allow `vc-default-revert' (and CVS) to revert a missing file
* lisp/vc/vc.el (vc-default-revert): Fix reverting a missing file case
by not trying to create a backup through `copy-file'.  Notably impacts
CVS, where `vc-cvs-revert' calls `vc-default-revert'.
2023-04-19 03:47:20 +03:00
Olivier Certner
648f58294b VC: CVS: Fix parsing of 'cvs -qn update' for missing files for 1.12
* lisp/vc/vc-cvs.el (vc-cvs-after-dir-status): Fix the name reported
for missing files in the case of CVS 1.12.3+ where name is quoted in
the warning line (it was not before this version).  Use instead the
following U line, where the name is never quoted on all versions.
2023-04-19 03:47:20 +03:00
Olivier Certner
7a921b6b28 VC: CVS: Fix "Root" file parsing
The new "Root" file parsing has been based on CVS' documentation,
which gives the following format for *remote* repositories:
[:method:][[user][:password]@]hostname[:[port]]/pathname/to/repository
and for local ones:
:local:/pathname/to/repository
or
:local:c:/pathname/to/repository
or alternatively ':local:' replaced by ':fork:', or ':local:' omitted
when the path starts with a slash.

[The actual parsing code in CVS is actually a bit more restrictive.
See 'root.c'.]

Most notably, the previous version could not parse an absolute
pathname without an explicit :local: method or :pserver: lines with
passwords.

* lisp/vc/vc-cvs.el (vc-cvs-parse-root): Rewrite.

(vc-cvs-repository-hostname): Cope with `vc-cvs-parse-root' returning
an empty hostname (can only happen if the "Root" file is invalid),
returning nil in this case.

(vc-cvs-parse-uhp): Remove this standalone function formerly used only
by `vc-cvs-parse-root' and which doesn't allow correct parsing anyway.

* test/lisp/vc/vc-cvs-tests.el: New file, with tests for common "Root"
file content.
2023-04-19 03:47:20 +03:00
João Távora
9093834d0b Eglot: unbreak activation/management of derived modes (bug#62907)
After recent changes to how LSP "languageId" is computed from major
modes and stored in the eglot-lsp-server object, the activation of the
'eglot--managed-mode' minor mode in modes _derived_ from some
major-mode mentioned in 'eglot-server-programs' was broken.

This commit restores that by introducing a new helper which uses the
same logic to provide the current-buffer's "languageId" to the server
and to discover if the server should manage the mode at all.  This
ensures the two things stay in sync.

Also, this helper uses the function 'provided-mode-derived-p' to fix
this bug#62907.

* lisp/progmodes/eglot.el (eglot--languageId): New helper.
(eglot-current-server, eglot--TextDocumentItem): Use it.
2023-04-19 00:59:17 +01:00
Dmitry Gutov
08b480e13f flymake-end-of-line-diagnostics-face: Tweak a little
* lisp/progmodes/flymake.el
(flymake-end-of-line-diagnostics-face):
Use height 0.85 and ensure the box doesn't change the line height
(https://debbugs.gnu.org/62029#86).
2023-04-19 01:57:26 +03:00
Dmitry Gutov
3d6f755331 xref-search-program-alist: Fix searching larger file lists on MS Windows
* lisp/progmodes/xref.el (xref-search-program-alist):
Add '-s 10000' to xargs' options when on Windows or DOS.
Apparently the xargs port doesn't currently know how to obey the
system-wide limits (https://debbugs.gnu.org/bug=61667#521).
2023-04-19 01:29:50 +03:00
Shynur
1b8b2cf61b Fix typo and inaccuracy in the ELisp Reference manual
* doc/lispref/loading.texi (Dynamic Modules): Fix a typo.
* doc/lispref/customize.texi (Group Definitions): Faces are also
in the 'custom-group' property of a customization group.
(Bug#62887)

Copyright-paperwork-exempt: yes
2023-04-18 15:03:32 +03:00
Eli Zaretskii
df17682ebf ; Support 'dart-ts-mode' in Eglot
* lisp/progmodes/eglot.el (eglot-server-programs): Add
'dart-ts-mode'.  Patch by Mou Tong <mou.tong@outlook.com>.
(Bug#62879)
2023-04-18 14:49:18 +03:00
Eli Zaretskii
e0dc60e078 ; Fix typos in gdb-mi.el
* lisp/progmodes/gdb-mi.el (gdbmi-bnf-result-state-configs): Fix
typos introduced while fixing bug#10580.  (Bug#62858)
2023-04-18 14:36:28 +03:00
Eli Zaretskii
60560cc7ad Fix description of lexical environment's internals
* doc/lispref/variables.texi (Lexical Binding): Update the
description of how the lexical environment is represented
internally.  (Bug#62840)
2023-04-18 14:30:28 +03:00
Idir Lankri
1456adf424 ; Eglot: fix a typo in a customization type
* lisp/progmodes/eglot.el (eglot-ignored-server-capabilities): Fix the
value associated with the tag "Go to declaration".  (Bug#62849)

Copyright-paperwork-exempt: yes
2023-04-18 14:17:25 +03:00
Basil L. Contovounesios
0d2fdf6e36 Fix verilog-diff-file-with-buffer
* lisp/progmodes/verilog-mode.el: Fix commentary to avoid implying
XEmacs defines diff-command.
(verilog-diff-file-with-buffer): Claim compatibility with Emacs 21
rather than XEmacs in commentary, since the latter does not seem to
define diff-command.  Use get-buffer in place of likely thinko
with-temp-buffer + BUFNAME + current-buffer.  Fix unused
unwind-protect: move temporary file deletion to its unwind
forms (bug#62620).  Avoid race condition between file existence
check and deletion.  Handle list-valued diff-switches.  Avoid
passing empty argument to diff-command.
2023-04-18 11:14:38 +01:00
Michael Albinus
0c99254a3d Fix :package-version in flymake.el
* lisp/progmodes/flymake.el (flymake-end-of-line-diagnostics-face)
(flymake-error-echo-at-eol, flymake-warning-echo-at-eol)
(flymake-note-echo-at-eol): Fix :package-version.
2023-04-18 11:10:12 +02:00
Andrew G Cohen
55a0504c48 * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Fix limiting 2023-04-18 11:17:00 +08:00
Stefan Monnier
b0b968d9af * lisp/emacs-lisp/gv.el (error): Add gv-expander
This fixes incorrect expansion of (setf (case-exhaustive ..) ..),
as found for example in `elpa-admin.el`.
2023-04-17 18:15:45 -04:00
João Távora
db2d6aac30 Flymake: improve new flymake-show-diagnostics-at-end-of-line feature
* lisp/progmodes/flymake.el (flymake-end-of-line-diagnostics-face)
(flymake-error-echo-at-eol, flymake-warning-echo-at-eol)
(flymake-note-echo-at-eol): New faces
(flymake-error, flymake-warning, flymake-note): Use new faces.
(flymake--highlight-line): Rework.
(flymake-after-change-function): Rework.
2023-04-17 19:17:12 +01:00
Robert Pluim
2f59595f5f ; * etc/NEWS: Grammar fixes. 2023-04-17 12:24:30 +02:00
Yuan Fu
a46201f57e
; Fix typos in treesit.c
* src/treesit.c (treesit_traverse_validate_predicate)
(Ftreesit_node_match_p): Fix typos.
2023-04-16 20:35:45 -07:00
Yuan Fu
d005e685e1
New helper function assq_no_signal
* src/fns.c (assq_no_signal): New function.
* src/lisp.h (assoc_no_signal): Declare it.
* src/treesit.c (safe_assq): Remove function.
(treesit_traverse_get_predicate): Change safe_assq to assq_no_signal.
2023-04-16 20:33:51 -07:00
Kyle Meyer
596b780ab7 Update to Org 9.6.4-2-g0f6ae7 2023-04-16 21:13:08 -04:00
Andrew G Cohen
6c81ef4cf9 Include previous summary buffer articles in gnus thread referrals
* lisp/gnus/gnus-search.el (gnus-search-thread): Include all the
current articles along with the thread when searching outside the
current group.
2023-04-17 08:52:38 +08:00
João Távora
2d24eb69ed Eglot: guard against empty 'textDocument/documentSymbol' response
* lisp/progmodes/eglot.el (eglot-imenu): Protect against missing response.
2023-04-17 01:37:19 +01:00
Eli Zaretskii
a0b04a2247 Documentation copyedits for 'package-install-upgrade-built-in' etc
* etc/NEWS: More details about the new option
'package-install-upgrade-built-in'.

* lisp/emacs-lisp/package.el (package-install-upgrade-built-in)
(package--active-built-in-p, package-install): Doc fixes.
(Bug#62720)
2023-04-16 18:11:07 +03:00
Philip Kaludercic
580d8278c5 Allow upgrading built-in packages with 'package-install'
* etc/NEWS: Mention the change
* lisp/emacs-lisp/package.el (package--upgradable-built-in-p): Add new
predicate.
(package-install-upgrade-built-in): Add new user option to enable
feature.
(package-install): Respect new user option.
2023-04-16 15:44:26 +02:00
Mattias Engdegård
3c8167ec0f Fit symbol_redirect snugly in two bits
This allows the C compiler to do away with all default clauses when
switching on the `redirect` field.

* src/lisp.h (enum symbol_redirect): Use values in the 0..3 range,
which also matches the old comment in struct Lisp_Symbol.
(enum symbol_interned, enum symbol_redirect)
(enum symbol_trapped_write): Comment members.  Remove explicit values.
(struct Lisp_Symbol): Shrink the `redirect` member to 2 bits.
Use the correct type for the `interned` field.
Move value comments to their types.
* src/pdumper.c (dump_symbol): Update hashes.
2023-04-16 14:07:36 +02:00
Eli Zaretskii
329304c23f ; * src/term.c (init_tty): Fix last change. (Bug#62877) 2023-04-16 11:16:45 +03:00
Eli Zaretskii
200dbf7d30 Minor changes in c-ts-mode.el's support of DEFUNs
* lisp/progmodes/c-ts-mode.el (c-ts-mode--fontify-DEFUN): Renamed
from 'c-ts-mode--fontify-defun'; all callers changed.
(c-ts-mode-emacs-sources-support): Renamed from
'c-ts-mode-emacs-devel' and made into a defcustom; all users
changed.
(c-ts-mode--emacs-defun-p, c-ts-mode--emacs-defun-at-point)
(c-ts-mode--emacs-current-defun-name): Doc fixes.  (Bug#62825)
2023-04-16 11:12:39 +03:00
Eli Zaretskii
9686b015a0 Fix strike-through attribute support on TTY frames
* src/term.c (init_tty): Fix setting the strike-through capability
with "smxx".  (Bug#62265)
2023-04-16 09:19:15 +03:00
Eli Zaretskii
39035fbfc5 Avoid crashes in 'describe-keymap' due to shadowing
* src/keymap.c (describe_vector): Handle shadowing by something
other than a symbol.  (Bug#62867)
2023-04-16 08:51:22 +03:00
Eli Zaretskii
bc61a1afdd Merge from origin/emacs-29
b7023da662 Make image-map bindings available on image links
d9e96c029b * CONTRIBUTE: Fix a typo
3f71a2a0cf ; * lisp/progmodes/c-ts-mode.el (treesit-node-next-siblin...
adf9c956c2 Add to Eglot support for additional language-servers.
b3603b84bd Partial support for DEFUN in c-ts-mode (bug#62825)

# Conflicts:
#	lisp/progmodes/c-ts-mode.el
2023-04-15 13:05:04 -04:00
Eli Zaretskii
a85279f390 ; Merge from origin/emacs-29
The following commits were skipped:

14e809ddff Fix style and unwinding code in treesit.c
759cdf1e51 Catch signals produced by PRED in tree-sitter search func...
2023-04-15 13:02:06 -04:00
Eli Zaretskii
7191318b71 Merge from origin/emacs-29
864a4dc236 Fix compilation of w32.c with old MinGW system headers
a22eb9ae0f ruby-add-log-current-method: Reduce the use of 'nreverse'
17d803d0a7 Fix detection of WebP images by their signature
43290391ce ; Eglot: make version parseable by version-to-list
6e6e8b5c97 Add more documentation for the keys of `package-vc-select...
7972b76c2c ; vc-checkout: Wrap var lookup in 'bound-and-true-p'
e9fef1d70f vc-checkout: Try to use the vc-dir's backend first
372e024acc ; Fix wallpaper-tests on XFCE
7055fd8e43 Improve documentation related to 'ispell-complete-word'
61fd017abd * configure.ac: Add -lbsd on Haiku.
05971c4d9a Add menu to 'c-ts-mode' and 'c++-ts-mode'

# Conflicts:
#	lisp/progmodes/eglot.el
#	lisp/progmodes/ruby-mode.el
2023-04-15 13:02:04 -04:00
Eli Zaretskii
febf4467bd ; Merge from origin/emacs-29
The following commit was skipped:

954e2d96a9 Update manual about `sort`
2023-04-15 12:44:49 -04:00
Eli Zaretskii
709d558047 Merge from origin/emacs-29
c62afb10cf Fix wallpaper-tests on MS-Windows
f2d212c696 Fix a couple of eglot-tests
338b3718b6 Fix visiting RPM files
b4afee0319 Fix ff-quiet-mode doc
2445100d7d ; Improve documentation of 'match-buffers'
d4d0da96f0 ; Update make-tarball.txt for Emacs 29.
9b0bf694da ; Fix ldefs-boot.el.
0cb86a348c ; Update ChangeLog.4.

# Conflicts:
#	ChangeLog.4
2023-04-15 12:44:48 -04:00
Eli Zaretskii
0fe7fef54b ; Merge from origin/emacs-29
The following commit was skipped:

5e039d5a6e * lisp/ldefs-boot.el: Regenerate.
2023-04-15 12:43:41 -04:00