]> git.eshelyaron.com Git - emacs.git/log
emacs.git
2 years agoData argument to `signal` should be a list
Mattias Engdegård [Tue, 3 Jan 2023 13:03:58 +0000 (14:03 +0100)]
Data argument to `signal` should be a list

* lisp/calendar/iso8601.el (iso8601-parse, iso8601-parse-date)
(iso8601-parse-time, iso8601-parse-zone, iso8601-parse-duration)
(iso8601-parse-interval):
* lisp/emacs-lisp/cl-lib.el (cl-values-list):
* lisp/emacs-lisp/comp.el (comp-decrypt-arg-list)
(comp-spill-lap-function, comp-emit-switch)
(comp-compute-dominator-tree, comp-final):
* lisp/image.el (image-type):
* lisp/image/exif.el (exif--parse-jpeg, exif--parse-exif-chunk)
(exif--parse-directory, exif--read-chunk, exif--read-number-be)
(exif--read-number-le):
* lisp/vc/vc.el (vc-default-last-change):
Wrap obvious non-list data arguments to `signal` in a list.

2 years agoFix potential crash with fast mouse position enabled
Po Lu [Tue, 3 Jan 2023 07:12:39 +0000 (15:12 +0800)]
Fix potential crash with fast mouse position enabled

* src/xterm.c (x_free_frame_resources): Clear
last_mouse_motion_frame and last_mouse_frame if required.

2 years agoMerge from origin/emacs-29
Stefan Kangas [Tue, 3 Jan 2023 05:30:17 +0000 (06:30 +0100)]
Merge from origin/emacs-29

6dd3e352f44 Extract common code into ruby-base-mode to derive from
94e330243e1 ruby-ts-mode: Indentation fixes
9b24417dda8 ruby-ts--font-lock-settings: Use more standard faces
9e6536e4d96 ruby-ts-mode: Standardize the string literal highlights
1a9a1fdebf6 Improve fontification in java-ts-mode (bug#60492)
dfdf9c21cbe Fontification improvements in typescript-ts-mode (bug#60500)
68e68dfeefe Improve fontification consistency in js-ts-mode (bug#60503)
aef869e74f4 ; Update tree-sitter manual
4ef12cfb1fc ; Fix tree-sitter manual title case
aab8ddca5e1 ; nt/INSTALL: Update for Emacs 29.
809fbb0e8c4 ; Update copyright notice in tramp-sh.el
f8f5202487c (typescript/tsx-ts-mode): Split font-lock feature list in...
a86a213e1ac js-ts-mode: Move 'string-interpolation' to font-lock level 3
d26b523886e Fix shrinking of the tab-bar
3f7ea621b90 ; Fix typos in ruby-ts-mode.el
9599b054316 ; Skip ruby-ts tests if grammar is not available
ff35ac9dfab Fix default-port regression in erc-select-read-args
b7ad0b40148 ; Clarify doc strings of 'call-process' and 'call-process...

2 years agoExtract common code into ruby-base-mode to derive from
Dmitry Gutov [Tue, 3 Jan 2023 01:10:49 +0000 (03:10 +0200)]
Extract common code into ruby-base-mode to derive from

* lisp/progmodes/ruby-mode.el (ruby-base-mode):
New major base mode, to set up common vars and hooks.
(ruby-mode-variables): Delete.  Move most code to ruby-base-mode.
And some -- to ruby-mode body.
(ruby-mode): Derive from ruby-base-mode.  Also move some setup
to there.

* lisp/progmodes/ruby-ts-mode.el (ruby-ts-mode):
Derive from ruby-base-mode.  Remove duplicating settings.

2 years agoruby-ts-mode: Indentation fixes
Dmitry Gutov [Tue, 3 Jan 2023 00:26:00 +0000 (02:26 +0200)]
ruby-ts-mode: Indentation fixes

* lisp/progmodes/ruby-ts-mode.el (ruby-ts--align-keywords):
Fix for 'def' (which was misread as 'method' in the check).
(ruby-ts--indent-rules): Indent the curly block closer the same
way as the 'do ... end' closer.

2 years agoruby-ts--font-lock-settings: Use more standard faces
Dmitry Gutov [Mon, 2 Jan 2023 22:41:25 +0000 (00:41 +0200)]
ruby-ts--font-lock-settings: Use more standard faces

* lisp/progmodes/ruby-ts-mode.el (ruby-ts--font-lock-settings):
Use more standard faces for regexp literals and string
interpolation delimiters (following js-ts-mode).

2 years agoruby-ts-mode: Standardize the string literal highlights
Dmitry Gutov [Mon, 2 Jan 2023 21:26:39 +0000 (23:26 +0200)]
ruby-ts-mode: Standardize the string literal highlights

* lisp/progmodes/ruby-ts-mode.el (ruby-ts--font-lock-settings):
Use font-lock-string-face for %w() and `...`.
Use font-lock-constant-face (just like we do for symbol literals)
for symbol array literals, %i().
Combine the matchers for string content and heredocs.

2 years agoImprove fontification in java-ts-mode (bug#60492)
Theodor Thornhill [Mon, 2 Jan 2023 12:46:25 +0000 (13:46 +0100)]
Improve fontification in java-ts-mode (bug#60492)

* lisp/progmodes/java-ts-mode.el (java-ts-mode--font-lock-settings):
Add expression_statement with only identifier support.

2 years agoFontification improvements in typescript-ts-mode (bug#60500)
Jostein Kjønigsen [Mon, 2 Jan 2023 19:56:41 +0000 (20:56 +0100)]
Fontification improvements in typescript-ts-mode (bug#60500)

- highlight method-definitins in interfaces.
- only highlight variable-declarations, not variables
  everywhere (consistency with other modes).
- move highlighting of method invocations to level 4

* lisp/progmodes/typescript-ts-mode.el:
(typescript-ts-mode--font-lock-settings): Update rules.
(typescript-ts-mode, tsx-ts-mode): Update feature list.

2 years agoImprove fontification consistency in js-ts-mode (bug#60503)
Jostein Kjønigsen [Mon, 2 Jan 2023 20:26:36 +0000 (21:26 +0100)]
Improve fontification consistency in js-ts-mode (bug#60503)

* lisp/progmodes/js.el (js--treesit-font-lock-settings): Highlight
declared parameters in functions, methods and arrow-expressions as
variables.

2 years ago; Update tree-sitter manual
Yuan Fu [Mon, 2 Jan 2023 22:15:36 +0000 (14:15 -0800)]
; Update tree-sitter manual

* doc/lispref/positions.texi (List Motion): Replace
treesit-defun-prefer-top-level with treesit-defun-tactic.

2 years ago; Fix tree-sitter manual title case
Yuan Fu [Mon, 2 Jan 2023 22:15:05 +0000 (14:15 -0800)]
; Fix tree-sitter manual title case

* doc/lispref/elisp.texi:
* doc/lispref/modes.texi:
* doc/lispref/parsing.texi: Change to title case.

2 years agoImprove interactive file-saving performance
Paul Eggert [Mon, 2 Jan 2023 18:00:41 +0000 (10:00 -0800)]
Improve interactive file-saving performance

* src/fileio.c (init_fileio):
No longer any need to set write-region-inhibit-fsync here.
(syms_of_fileio): Default write-region-inhibit-fsync to t (Bug#60474).

2 years ago; nt/INSTALL: Update for Emacs 29.
Eli Zaretskii [Mon, 2 Jan 2023 18:56:52 +0000 (20:56 +0200)]
; nt/INSTALL: Update for Emacs 29.

2 years ago; Update copyright notice in tramp-sh.el
Michael Albinus [Mon, 2 Jan 2023 18:50:07 +0000 (19:50 +0100)]
; Update copyright notice in tramp-sh.el

* lisp/net/tramp-sh.el (tramp-perl-encode, tramp-perl-decode):
Remove copyright notice, Tramp is copyrighted by FSF anyway.

2 years ago(typescript/tsx-ts-mode): Split font-lock feature list into 4 values
Dmitry Gutov [Mon, 2 Jan 2023 18:42:52 +0000 (20:42 +0200)]
(typescript/tsx-ts-mode): Split font-lock feature list into 4 values

* lisp/progmodes/typescript-ts-mode.el (typescript-ts-mode)
(tsx-ts-mode): Split font-lock feature list into 4 values.

2 years agojs-ts-mode: Move 'string-interpolation' to font-lock level 3
Dmitry Gutov [Mon, 2 Jan 2023 17:59:50 +0000 (19:59 +0200)]
js-ts-mode: Move 'string-interpolation' to font-lock level 3

* lisp/progmodes/js.el (js-ts-mode):
Move 'string-interpolation' to font-lock level 3.

2 years agoFix shrinking of the tab-bar
Eli Zaretskii [Mon, 2 Jan 2023 15:02:05 +0000 (17:02 +0200)]
Fix shrinking of the tab-bar

* src/haikufns.c (haiku_change_tab_bar_height):
* src/pgtkfns.c (pgtk_change_tab_bar_height):
* src/nsfns.m (ns_change_tab_bar_height):
* src/w32fns.c (w32_change_tab_bar_height):
* src/xfns.c (x_change_tab_bar_height): Don't let the number of
tab-bar lines degenerate to zero due to integer division.
(Bug#60210)

2 years ago; Fix typos in ruby-ts-mode.el
Stefan Kangas [Mon, 2 Jan 2023 14:17:59 +0000 (15:17 +0100)]
; Fix typos in ruby-ts-mode.el

2 years ago; Skip ruby-ts tests if grammar is not available
Stefan Kangas [Mon, 2 Jan 2023 13:58:37 +0000 (14:58 +0100)]
; Skip ruby-ts tests if grammar is not available

* test/lisp/progmodes/ruby-ts-mode-tests.el: Properly skip tests if
there is no grammar for ruby.

2 years agoFix default-port regression in erc-select-read-args
F. Jason Park [Thu, 29 Dec 2022 14:43:19 +0000 (06:43 -0800)]
Fix default-port regression in erc-select-read-args

* lisp/erc/erc.el (erc--warn-unencrypted): New function, likely
temporary, to warn new users connecting interactively to the default
server, "irc.libara.chat", via the default non-TLS port, 6667.
(erc-select-read-args): Remove stray code from incomplete feature
introduced by bug#56514.  Ensure connecting always works with default
port, which is non-TLS.  Respect `erc-prompt-for-password' when user
pastes URL containing password component into "server" prompt.  Maybe
add `erc--warn-unencrypted' as one-off hook for impending connection.
* test/lisp/erc/erc-tests.el (erc-select-read-args): Always expect
password prompt and sometimes a non-TLS port when `erc' called
interactively.  (Bug#60428.)

2 years ago; Clarify doc strings of 'call-process' and 'call-process-region'
Eli Zaretskii [Mon, 2 Jan 2023 11:52:25 +0000 (13:52 +0200)]
; Clarify doc strings of 'call-process' and 'call-process-region'

* src/callproc.c (Fcall_process, Fcall_process_region): Document
that the destination buffer can be specified by its name.
(Bug#60477)

2 years agoMerge from origin/emacs-29
Stefan Kangas [Mon, 2 Jan 2023 11:06:37 +0000 (12:06 +0100)]
Merge from origin/emacs-29

4520f09dd8b ; * admin/git-bisect-start: Update failing commits
2569ede9c49 Update to Org 9.6-81-g563a43
d9ed736f0a7 ruby-ts-mode: Remove some currently unused functions
45618447203 ruby-ts-mode: Highlight singleton method definitions and ...
0562006da3b Add ruby-ts-mode
84e7c2fbc85 Fix fontification of C++ reference return types (bug#60441)
1864b65af60 ; Minor fix for treesit--install-language-grammar-1 (bug#...
8994f87ad40 Adjust function-call fontification in csharp-ts-mode (bug...
411647a3f65 ; Fix NEWS.
7b0b17df67e Rewrite Antinews in ELisp manual for Emacs 29
f12f72b0e09 ; * lisp/simple.el (primitive-undo): Clarify error messag...
7fd822e7f52 Update Antinews in the user manual for Emacs 29
da77d70deeb ; * test/lisp/emacs-lisp/copyright-tests.el: Fix and futu...
2baf9e107c1 Fix shortdoc-tests failure with respect to regexp-opt-cha...
5aeb8de32ee ; Fix copyright years in 2 more files.

# Conflicts:
# etc/NEWS

2 years ago; * admin/git-bisect-start: Update failing commits
Gregory Heytings [Mon, 2 Jan 2023 09:58:23 +0000 (09:58 +0000)]
; * admin/git-bisect-start: Update failing commits

2 years agoUpdate to Org 9.6-81-g563a43
Kyle Meyer [Mon, 2 Jan 2023 03:24:28 +0000 (22:24 -0500)]
Update to Org 9.6-81-g563a43

2 years agoruby-ts-mode: Remove some currently unused functions
Dmitry Gutov [Mon, 2 Jan 2023 01:51:11 +0000 (03:51 +0200)]
ruby-ts-mode: Remove some currently unused functions

* lisp/progmodes/ruby-ts-mode.el (ruby-ts--grand-parent-is)
(ruby-ts--ancestor-start, ruby-ts--ancestor-is):
Remove some currently unused functions.

2 years agoruby-ts-mode: Highlight singleton method definitions and setters
Dmitry Gutov [Mon, 2 Jan 2023 01:29:15 +0000 (03:29 +0200)]
ruby-ts-mode: Highlight singleton method definitions and setters

* lisp/progmodes/ruby-ts-mode.el (ruby-ts--font-lock-settings):
Highlight singleton method definitions and setters.

2 years agoAdd ruby-ts-mode
Perry Smith [Mon, 2 Jan 2023 00:57:38 +0000 (02:57 +0200)]
Add ruby-ts-mode

* etc/NEWS: Mention the new mode.

* lisp/progmodes/ruby-ts-mode.el: New file.

* test/lisp/progmodes/ruby-ts-mode-tests.el: New file.

* lisp/progmodes/eglot.el (eglot-server-programs):
Add ruby-ts-mode to the Ruby entry.

Co-authored-by: Dmitry Gutov <dgutov@yandex.ru>
2 years agoFix fontification of C++ reference return types (bug#60441)
Daniel Martín [Sat, 31 Dec 2022 00:45:27 +0000 (01:45 +0100)]
Fix fontification of C++ reference return types (bug#60441)

* lisp/progmodes/c-ts-mode.el (c-ts-fontify-error): Treat
reference_declarator nodes the same as pointer_declarator nodes when
calculating the identifier to fontify.

2 years ago; Minor fix for treesit--install-language-grammar-1 (bug#60465)
Yuan Fu [Mon, 2 Jan 2023 00:15:02 +0000 (16:15 -0800)]
; Minor fix for treesit--install-language-grammar-1 (bug#60465)

* lisp/treesit.el (treesit--install-language-grammar-1): Fix.

2 years agoFix build with older versions of gnutls
Andreas Schwab [Sun, 1 Jan 2023 23:31:00 +0000 (00:31 +0100)]
Fix build with older versions of gnutls

* src/gnutls.c (key_file2_aux): Use GNUTLS_PKCS_* constants only
if defined.

2 years agoAdjust function-call fontification in csharp-ts-mode (bug#60376)
Jostein Kjønigsen [Sun, 1 Jan 2023 16:27:06 +0000 (17:27 +0100)]
Adjust function-call fontification in csharp-ts-mode (bug#60376)

- Ensure method-invocations are highlighted only on level 4.
- Ensure consistent fontification of variable declarations
  (don't highlight usage of all variables).
- Fix issues with highlighting types in new() expressions.
- Fix issues with generic types in variable-declarations not using "var".
- Use fewer, more general queries for function-invocations. simplify code.

* lisp/progmodes/csharp-mode.el (csharp-ts-mode--font-lock-settings):
Change rules.
(csharp-ts-mode): Update feature list.

2 years ago; Fix NEWS.
Eli Zaretskii [Sun, 1 Jan 2023 17:38:24 +0000 (19:38 +0200)]
; Fix NEWS.

2 years agoRewrite Antinews in ELisp manual for Emacs 29
Eli Zaretskii [Sun, 1 Jan 2023 17:37:22 +0000 (19:37 +0200)]
Rewrite Antinews in ELisp manual for Emacs 29

* doc/lispref/anti.texi (Antinews): Rewrite for Emacs 29.
* doc/lispref/elisp.texi (Top): Update the top-level menu for
Antinews.

2 years ago; * lisp/simple.el (primitive-undo): Clarify error message (bug#60467)
Eli Zaretskii [Sun, 1 Jan 2023 15:49:10 +0000 (17:49 +0200)]
; * lisp/simple.el (primitive-undo): Clarify error message (bug#60467)

2 years agoUpdate Antinews in the user manual for Emacs 29
Eli Zaretskii [Sun, 1 Jan 2023 15:38:23 +0000 (17:38 +0200)]
Update Antinews in the user manual for Emacs 29

* doc/emacs/anti.texi (Antinews): Rewrite for Emacs 29.
* doc/emacs/emacs.texi (Top): Adjust the top-level menu.

2 years ago; * test/lisp/emacs-lisp/copyright-tests.el: Fix and future-safe.
Mattias Engdegård [Sun, 1 Jan 2023 12:18:50 +0000 (13:18 +0100)]
; * test/lisp/emacs-lisp/copyright-tests.el: Fix and future-safe.

2 years agoUpdate Modus themes to version 4 and add new themes
Protesilaos Stavrou [Sun, 1 Jan 2023 12:14:09 +0000 (14:14 +0200)]
Update Modus themes to version 4 and add new themes

* etc/NEWS: Document the addition of four new Modus themes.

* doc/misc/modus-themes.org: Update the manual.

* etc/themes/modus-operandi-deuteranopia-theme.el:
* etc/themes/modus-operandi-theme.el:
* etc/themes/modus-operandi-tinted-theme.el:
* etc/themes/modus-vivendi-deuteranopia-theme.el:
* etc/themes/modus-vivendi-theme.el:
* etc/themes/modus-vivendi-tinted-theme.el: Add theme files.

* etc/themes/modus-themes.el: Update main file to the latest version.

Detailed release notes here:
<https://protesilaos.com/codelog/2023-01-01-modus-themes-4-0-0/>.

The inclusion of the four new Modus themes was discussed on
emacs-devel:
<https://lists.gnu.org/archive/html/emacs-devel/2022-12/msg00834.html>.

2 years agoFix shortdoc-tests failure with respect to regexp-opt-charset
Mattias Engdegård [Sun, 1 Jan 2023 11:52:47 +0000 (12:52 +0100)]
Fix shortdoc-tests failure with respect to regexp-opt-charset

* test/lisp/emacs-lisp/shortdoc-tests.el (regexp-opt): Require.
`regexp-opt-charset` is not autoloaded, and whether `regexp-opt` is
preloaded is configuration-dependent.

2 years ago; Fix copyright years in 2 more files.
Eli Zaretskii [Sun, 1 Jan 2023 11:08:15 +0000 (13:08 +0200)]
; Fix copyright years in 2 more files.

2 years agoImprove Haiku font size fallback
Po Lu [Sun, 1 Jan 2023 11:01:53 +0000 (11:01 +0000)]
Improve Haiku font size fallback

* src/haikufont.c (haikufont_open): If pixel_size is zero, don't
use a font parameter that doesn't exist.

2 years agoFix copyright years of NEWS.29.
Eli Zaretskii [Sun, 1 Jan 2023 10:51:16 +0000 (05:51 -0500)]
Fix copyright years of NEWS.29.

2 years agoMerge from origin/emacs-29
Eli Zaretskii [Sun, 1 Jan 2023 10:47:47 +0000 (05:47 -0500)]
Merge from origin/emacs-29

cae528457c ; Add 2023 to copyright years.
b394359261 Improve documentation of 'isearch-open-overlay-temporary'
ab3210e709 Document 'use-package' in the 2 main manuals

# Conflicts:
# etc/refcards/ru-refcard.tex
# lib/explicit_bzero.c
# m4/explicit_bzero.m4

2 years ago; Merge from origin/emacs-29
Eli Zaretskii [Sun, 1 Jan 2023 10:46:25 +0000 (05:46 -0500)]
; Merge from origin/emacs-29

The following commit was skipped:

f0e9775b18 ; Auto-commit of loaddefs files.

2 years agoMerge from origin/emacs-29
Eli Zaretskii [Sun, 1 Jan 2023 10:46:24 +0000 (05:46 -0500)]
Merge from origin/emacs-29

72a81e2022 ; * lisp/treesit.el (treesit-simple-indent-presets): Fix t...
ddfeee3e8a Build recipe interactively in treesit-install-language-gra...
6837469780 ; Add REVISION to treesit-language-source-alist
0dc788aa01 ; Remove GRAMMAR-DIR from treesit-language-source-alist
f9aef67c36 Tweak csharp-mode font-lock-settings (bug#60376)
46362c0a3a ; * doc/lispref/tips.texi (Documentation Tips): Add indexing.
9a386b682e Revert a recent change which causes errors
9871ee8b14 ; More fixes for documentation of 'defalias'
f309651b67 ; Fix handling of 'not' by 'buffer-match-p'
9292f595a7 ; Fix typos
43c7e05a2a Fix misspelled functions in shortdoc groups
01acecc79c Simplify introduction of use-package manual
2a7e072e53 ; Fix documentation of 'defalias'
eee2aeca25 Fix python-shell-buffer-substring when retrieving a single...
bfdad6c4e5 ; Fix recent treesit-related changes

2 years ago; Add 2023 to copyright years.
Eli Zaretskii [Sun, 1 Jan 2023 10:31:12 +0000 (05:31 -0500)]
; Add 2023 to copyright years.

2 years agoImprove documentation of 'isearch-open-overlay-temporary'
Eli Zaretskii [Sun, 1 Jan 2023 09:04:22 +0000 (11:04 +0200)]
Improve documentation of 'isearch-open-overlay-temporary'

* lisp/isearch.el (isearch-open-overlay-temporary): Document that
the overlay passed to the 'isearch-open-invisible-temporary'
function cannot be deleted too early.  (Bug#60399)

2 years agoDocument 'use-package' in the 2 main manuals
Eli Zaretskii [Sun, 1 Jan 2023 08:38:11 +0000 (10:38 +0200)]
Document 'use-package' in the 2 main manuals

* doc/emacs/custom.texi (Init Examples):
* doc/lispref/loading.texi (Named Features): Document 'use-package'
and its most important features.

2 years agovc-git-dir-extra-headers: Improve detection of rebases
Sean Whitton [Sun, 1 Jan 2023 05:55:42 +0000 (22:55 -0700)]
vc-git-dir-extra-headers: Improve detection of rebases

* lisp/vc/vc-git.el (vc-git--cmds-in-progress): New function.
(vc-git-dir-extra-headers): Use it.

2 years agovc-git: Don't assume .git is a directory
Sean Whitton [Sun, 1 Jan 2023 05:45:10 +0000 (22:45 -0700)]
vc-git: Don't assume .git is a directory

* lisp/vc/vc-git.el (vc-git--git-path): New function.
(vc-git-dir-extra-headers)
(vc-git-merge-branch)
(vc-git-resolve-when-done): Use it.

2 years agoUpdate publicsuffix.txt from upstream
Stefan Kangas [Sun, 1 Jan 2023 05:01:59 +0000 (06:01 +0100)]
Update publicsuffix.txt from upstream

* etc/publicsuffix.txt: Update from
https://publicsuffix.org/list/public_suffix_list.dat
dated 2022-12-19 14:09:50 UTC.

2 years ago; Auto-commit of loaddefs files.
Stefan Kangas [Sun, 1 Jan 2023 04:08:28 +0000 (05:08 +0100)]
; Auto-commit of loaddefs files.

2 years ago; Auto-commit of loaddefs files.
Stefan Kangas [Sun, 1 Jan 2023 04:08:26 +0000 (05:08 +0100)]
; Auto-commit of loaddefs files.

2 years ago; * lisp/treesit.el (treesit-simple-indent-presets): Fix typo.
Yuan Fu [Sun, 1 Jan 2023 01:10:50 +0000 (17:10 -0800)]
; * lisp/treesit.el (treesit-simple-indent-presets): Fix typo.

Well it's sort of a typo :-)

2 years agoBuild recipe interactively in treesit-install-language-grammar
Yuan Fu [Sat, 31 Dec 2022 23:13:50 +0000 (15:13 -0800)]
Build recipe interactively in treesit-install-language-grammar

If there is not existing recipe for a language, prompt to build the
recipe interactively.

* lisp/treesit.el (treesit--install-language-grammar-build-recipe):
New functions.
(treesit-install-language-grammar): Use the new function.

2 years ago; Add REVISION to treesit-language-source-alist
Yuan Fu [Sat, 31 Dec 2022 22:55:10 +0000 (14:55 -0800)]
; Add REVISION to treesit-language-source-alist

This allows users to install a particular version or branch.  Prompted
by bug#60427 and bug#60223.

* lisp/treesit.el (treesit-language-source-alist)
(treesit--install-language-grammar-1): Add REVISION.

2 years ago; Remove GRAMMAR-DIR from treesit-language-source-alist
Yuan Fu [Sat, 31 Dec 2022 22:27:51 +0000 (14:27 -0800)]
; Remove GRAMMAR-DIR from treesit-language-source-alist

Removing it doesn't affect building all the language grammars in
batch.sh, so it must be an artifact I added for something else and
later forgot to remove.

* lisp/treesit.el (treesit-language-source-alist)
(treesit--install-language-grammar-1): Remove GRAMMAR-DIR.

2 years agoTweak csharp-mode font-lock-settings (bug#60376)
Theodor Thornhill [Fri, 30 Dec 2022 19:26:09 +0000 (20:26 +0100)]
Tweak csharp-mode font-lock-settings (bug#60376)

* lisp/progmodes/csharp-mode.el (csharp-ts-mode--font-lock-settings):
Rearrange features.
(csharp-ts-mode): Rearrange features.

2 years ago; * doc/lispref/tips.texi (Documentation Tips): Add indexing.
Eli Zaretskii [Sat, 31 Dec 2022 16:47:51 +0000 (18:47 +0200)]
; * doc/lispref/tips.texi (Documentation Tips): Add indexing.

2 years agoRevert a recent change which causes errors
Eli Zaretskii [Sat, 31 Dec 2022 16:32:54 +0000 (18:32 +0200)]
Revert a recent change which causes errors

* lisp/subr.el (buffer-match-p): Undo last change, as it causes an
error in a timer function of show-paren-mode.

2 years ago; More fixes for documentation of 'defalias'
Eli Zaretskii [Sat, 31 Dec 2022 15:01:22 +0000 (17:01 +0200)]
; More fixes for documentation of 'defalias'

* doc/lispref/functions.texi (Defining Functions): Document
other possible values of DEFINITION in a defalias.
(Bug#60432)

2 years ago; Fix handling of 'not' by 'buffer-match-p'
Philip Kaludercic [Sat, 31 Dec 2022 14:04:18 +0000 (15:04 +0100)]
; Fix handling of 'not' by 'buffer-match-p'

* lisp/subr.el (buffer-match-p): Look up the cadr instead of the cdr
for the negation in 'not'.
* doc/lispref/buffers.texi (Buffer List): Update documentation.
(Bug#58951)

2 years ago; Fix typos
Stefan Kangas [Mon, 26 Dec 2022 09:43:57 +0000 (10:43 +0100)]
; Fix typos

2 years agoFix misspelled functions in shortdoc groups
Stefan Kangas [Sat, 31 Dec 2022 11:31:13 +0000 (12:31 +0100)]
Fix misspelled functions in shortdoc groups

* lisp/emacs-lisp/shortdoc.el (file, list): Fix misspelled function
names: 'file-writable-p' and 'seq-reduce'.
* test/lisp/emacs-lisp/shortdoc-tests.el (subr-x): Require.
(shortdoc-all-functions-fboundp): New test.

2 years agoSimplify introduction of use-package manual
Kévin Le Gouguec [Tue, 27 Dec 2022 14:40:43 +0000 (15:40 +0100)]
Simplify introduction of use-package manual

* doc/misc/use-package.texi (Getting Started): Do not advise requiring
the package, since the macro is autoloaded; also correct the macro's
name.  (Bug#60366)

2 years agowhitespace: Use `define-globalized-minor-mode' for global mode
Richard Hansen [Sat, 10 Dec 2022 05:57:15 +0000 (00:57 -0500)]
whitespace: Use `define-globalized-minor-mode' for global mode

* lisp/whitespace.el (global-whitespace-mode): Fix interoperability
between `whitespace-mode' and `global-whitespace-mode' by using
`define-globalized-minor-mode'.  (Bug#60334)
* test/lisp/whitespace-tests.el (whitespace-tests--global): Add a
regression test.

2 years ago; Fix documentation of 'defalias'
Eli Zaretskii [Sat, 31 Dec 2022 08:44:53 +0000 (10:44 +0200)]
; Fix documentation of 'defalias'

* doc/lispref/functions.texi (Defining Functions): Document that a
defalias's DEFINITION can be a macro.  (Bug#60432)

2 years agoFix python-shell-buffer-substring when retrieving a single statement
kobarity [Thu, 22 Dec 2022 14:08:40 +0000 (23:08 +0900)]
Fix python-shell-buffer-substring when retrieving a single statement

* lisp/progmodes/python.el (python-shell-buffer-substring): Do not add
"if True:" line when retrieving a single statement.
(python-shell-send-region): Add a reference to
`python-shell-buffer-substring' in docstring.
* test/lisp/progmodes/python-tests.el (python-shell-buffer-substring-13)
(python-shell-buffer-substring-14, python-shell-buffer-substring-15)
(python-shell-buffer-substring-16, python-shell-buffer-substring-17):
New tests. (Bug#60142)

2 years ago; Fix recent treesit-related changes
Eli Zaretskii [Sat, 31 Dec 2022 08:13:15 +0000 (10:13 +0200)]
; Fix recent treesit-related changes

* lisp/treesit.el (treesit-language-source-alist)
(treesit--install-language-grammar-1): Doc fixes.

* src/treesit.c (Ftreesit_language_abi_version): Fix a typo in
function's Lisp name.  Doc fix.
(Ftreesit_language_available_p): Fix a typo in the function's C
name.

* doc/lispref/parsing.texi (Language Grammar): Fix wording.

2 years agoFix the build broken by latest GnuTLS-related changes
Eli Zaretskii [Sat, 31 Dec 2022 07:24:32 +0000 (09:24 +0200)]
Fix the build broken by latest GnuTLS-related changes

* src/gnutls.c (key_file2_aux): Don't use GNUTLS_PKCS_PBES2_*
constants that are defined only in latest versions of GnuTLS.
(Bug#50507)
(Fgnutls_boot): Mention in the doc string that some flags of
'gnutls_certificate_set_x509_key_file2' are only supported since
GnuTLS 3.6.3.

2 years agoMerge from origin/emacs-29
Stefan Kangas [Sat, 31 Dec 2022 05:30:21 +0000 (06:30 +0100)]
Merge from origin/emacs-29

ab1f245f1a1 Show tree-sitter query source when signaling query error
0b58ea0e602 ; * lisp/treesit.el (treesit--install-language-grammar-1)...
724da28763c Add version tags and mention the new options in NEWS
8675f4136c7 Add new options for Ruby code indentation
4922de626f0 ; Fix doc strings of 'treesit-install-language-grammar'
69b2aaaaded ; Fix recently modified docs of 'set-face-attribute' (bug...
0248fc9e1ac Add treesit-install-language-grammar
0237c5927e9 Add treesit-language-abi-version
312f82d36f0 Change "language definition" to "language grammar" in man...
fba35657da5 ; * lisp/progmodes/c-ts-mode.el (c-ts-mode--fill-paragrap...
dec1b37a32b ; * doc/lispref/parsing.texi (Accessing Node Information)...
39265abf0cc * test/lisp/net/tramp-tests.el (tramp-test32-shell-comman...
ebf65c7e7e3 * lisp/eshell/em-tramp.el (tramp): Require also at runtim...

# Conflicts:
# etc/NEWS

2 years ago; * src/gnutls.c (Fgnutls_boot): Fix typo.
Po Lu [Sat, 31 Dec 2022 01:10:36 +0000 (09:10 +0800)]
; * src/gnutls.c (Fgnutls_boot): Fix typo.

2 years agoFix last change in gnutls.c
Po Lu [Sat, 31 Dec 2022 01:10:23 +0000 (09:10 +0800)]
Fix last change in gnutls.c

* src/gnutls.c (Fgnutls_boot): Pacify
--enable-check-lisp-object-type and Haiku GCC warning involving
`key_file2_aux'.

2 years agoShow tree-sitter query source when signaling query error
Yuan Fu [Sat, 31 Dec 2022 00:57:45 +0000 (16:57 -0800)]
Show tree-sitter query source when signaling query error

* src/treesit.c (treesit_compose_query_signal_data): Add QUERY_SOURCE
parameter.
(treesit_ensure_query_compiled)
(Ftreesit_query_capture): Add query source.

2 years ago; * lisp/treesit.el (treesit--install-language-grammar-1): Minor fix.
Yuan Fu [Sat, 31 Dec 2022 00:23:39 +0000 (16:23 -0800)]
; * lisp/treesit.el (treesit--install-language-grammar-1): Minor fix.

2 years agoAdd version tags and mention the new options in NEWS
Dmitry Gutov [Fri, 30 Dec 2022 22:12:51 +0000 (00:12 +0200)]
Add version tags and mention the new options in NEWS

* etc/NEWS: Mention the new options (bug#60186).

* lisp/progmodes/ruby-mode.el (ruby-block-indent)
(ruby-after-operator-indent, ruby-method-call-indent)
(ruby-parenless-call-arguments-indent): Add version tags.

2 years agoAdd new options for Ruby code indentation
Dmitry Gutov [Fri, 30 Dec 2022 21:58:26 +0000 (23:58 +0200)]
Add new options for Ruby code indentation

* lisp/progmodes/ruby-mode.el (ruby-block-indent)
(ruby-after-operator-indent, ruby-method-call-indent)
(ruby-parenless-call-arguments-indent): New options (bug#60186).
(ruby-smie-grammar): Specify associativity for "?".
(ruby-smie--indent-to-stmt): Add optional argument.

* test/lisp/progmodes/ruby-mode-resources/ruby.rb: New cases.

* test/lisp/progmodes/ruby-mode-resources/ruby-method-call-indent.rb:
* test/lisp/progmodes/ruby-mode-resources/ruby-block-indent.rb:
* test/lisp/progmodes/ruby-mode-resources/ruby-after-operator-indent.rb:
* test/lisp/progmodes/ruby-mode-resources/
ruby-parenless-call-arguments-indent.rb: New files.

* test/lisp/progmodes/ruby-mode-tests.el: Add indentation tests for new files.

2 years agoCorrect suppression of suspicious eq type warning
Mattias Engdegård [Fri, 30 Dec 2022 12:48:47 +0000 (13:48 +0100)]
Correct suppression of suspicious eq type warning

* lisp/emacs-lisp/byte-run.el (with-suppressed-warnings):
* lisp/emacs-lisp/bytecomp.el (bytecomp--warn-dodgy-eq-arg):
Suppress warning using (suspicious FUNCTION), where FUNCTION is
not always `eq`.

2 years ago; Fix Eshell tests on macOS
Jim Porter [Fri, 30 Dec 2022 18:40:08 +0000 (10:40 -0800)]
; Fix Eshell tests on macOS

* test/lisp/eshell/esh-cmd-tests.el (esh-cmd-test/if-statement-pipe)
(esh-cmd-test/if-else-statement-pipe):
* test/lisp/eshell/esh-io-tests.el (esh-io-test/pipeline/subcommands):
Allow trailing newlines in the output.

2 years agoAdd :pass and :flags to gnutls-boot for :keylist
Nikolaos Chatzikonstantinou [Mon, 26 Sep 2022 15:08:18 +0000 (11:08 -0400)]
Add :pass and :flags to gnutls-boot for :keylist

* lisp/net/gnutls.el (gnutls-boot-parameters): Add the keys :pass and
:flags, and update the documentation.
* src/gnutls.c (gnutls-boot): Add the keys :pass and :flags, and
update the documentation.
(syms_of_gnutls): Add the symbols :pass, :flags, and the symbols that
correspond to the enumeration constants of the GnuTLS enum
`gnutls_pkcs_encrypt_flags_t'.
(key_file2_aux): Private helper function that translates a list of
symbols to its corresponding `unsigned int' value of the GnuTLS C enum
`gnutls_pkcs_encrypt_flags_t'.

(Bug#50507)

2 years ago; Fix doc strings of 'treesit-install-language-grammar'
Eli Zaretskii [Fri, 30 Dec 2022 15:10:22 +0000 (17:10 +0200)]
; Fix doc strings of 'treesit-install-language-grammar'

* lisp/treesit.el (treesit-install-language-grammar)
(treesit--install-language-grammar-1): Doc fixes.

2 years ago; Fix recently modified docs of 'set-face-attribute' (bug#52493)
Eli Zaretskii [Fri, 30 Dec 2022 14:43:38 +0000 (16:43 +0200)]
; Fix recently modified docs of 'set-face-attribute' (bug#52493)

* doc/lispref/display.texi (Attribute Functions): Clarify wording
and restore removed information about resetting attributes to
'unspecified' for future frames.

* lisp/faces.el (set-face-attribute): Minor copyedit of doc
string.

2 years agoAdd treesit-install-language-grammar
Yuan Fu [Fri, 30 Dec 2022 10:56:26 +0000 (02:56 -0800)]
Add treesit-install-language-grammar

Per discussion on emacs-devel, I added function to install and compile
language grammars.

* lisp/treesit.el (treesit-language-source-alist): New variable.
(treesit-install-language-grammar)
(treesit--call-process-signal)
(treesit--install-language-grammar-1): New functions.

2 years agoAdd treesit-language-abi-version
Yuan Fu [Fri, 30 Dec 2022 10:54:13 +0000 (02:54 -0800)]
Add treesit-language-abi-version

Also rename treesit-language-version to treesit-library-abi-version,
because the old name is somewhat misleading.

* doc/lispref/parsing.texi (Language Grammar): Update.
* src/treesit.c (Ftreesit_library_abi_version): Rename.
(Ftreesit_language_abi_version): New function.

2 years ago; fix misplaced bracketing of `and` inside `when`
Mattias Engdegård [Fri, 30 Dec 2022 10:30:23 +0000 (11:30 +0100)]
; fix misplaced bracketing of `and` inside `when`

2 years ago; remove incorrect quoting of condition names
Mattias Engdegård [Fri, 30 Dec 2022 10:11:14 +0000 (11:11 +0100)]
; remove incorrect quoting of condition names

2 years agoChange "language definition" to "language grammar" in manual.
Yuan Fu [Fri, 30 Dec 2022 08:47:22 +0000 (00:47 -0800)]
Change "language definition" to "language grammar" in manual.

"Language grammar" is apparently the more widely used term among
people talking about tree-sitter.  To avoid confusion, I think it's
good to use that rather than "language definition", which is a term
that I made up :-)

Feel free to revert this if it is too much change.

* doc/lispref/elisp.texi:
* doc/lispref/modes.texi:
* doc/lispref/parsing.texi:
* lisp/treesit.el: Change "language definition" to "language grammar".

2 years ago; * lisp/progmodes/c-ts-mode.el (c-ts-mode--fill-paragraph): Fix.
Yuan Fu [Fri, 30 Dec 2022 08:34:42 +0000 (00:34 -0800)]
; * lisp/progmodes/c-ts-mode.el (c-ts-mode--fill-paragraph): Fix.

2 years ago; * doc/lispref/parsing.texi (Accessing Node Information): Fix typo.
Yuan Fu [Fri, 30 Dec 2022 04:54:42 +0000 (20:54 -0800)]
; * doc/lispref/parsing.texi (Accessing Node Information): Fix typo.

2 years ago* test/lisp/net/tramp-tests.el (tramp-test32-shell-command): Fix test.
Michael Albinus [Fri, 30 Dec 2022 08:26:56 +0000 (09:26 +0100)]
* test/lisp/net/tramp-tests.el (tramp-test32-shell-command): Fix test.

2 years ago* lisp/eshell/em-tramp.el (tramp): Require also at runtime. (Bug#60402)
Michael Albinus [Fri, 30 Dec 2022 08:26:41 +0000 (09:26 +0100)]
* lisp/eshell/em-tramp.el (tramp): Require also at runtime.  (Bug#60402)

2 years agoFix reference-counting of Eshell I/O handles
Jim Porter [Sat, 24 Dec 2022 22:31:50 +0000 (14:31 -0800)]
Fix reference-counting of Eshell I/O handles

This ensures that output targets in Eshell are only closed when Eshell
is actually done with them.  In particular, this means that
"{ echo foo; echo bar } | rev" prints "raboof" as expected
(bug#59545).

* lisp/eshell/esh-io.el (eshell-create-handles): Structure the handles
differently so the targets and their ref-count can be shared.
(eshell-duplicate-handles): Reimplement this to share targets between
the original and new handle sets.  Add STEAL-P argument.
(eshell-protect-handles, eshell-copy-output-handle)
(eshell-interactive-output-p, eshell-output-object): Account for
changes to the handle structure.
(eshell-close-handle): New function...
(eshell-close-handles, eshell-set-output-handle): ... use it.
(eshell-get-targets): Remove.  This only existed to make the previous
implementation of 'eshell-duplicate-handles' work.

* lisp/eshell/esh-cmd.el (eshell-with-copied-handles): New argument
STEAL-P.
(eshell-do-pipelines): Use STEAL-P for the last item in the pipeline.
(eshell-parse-command): Don't copy handles for the last command in the
list; explain why we can't use STEAL-P here.
(eshell-eval-command): When queuing input, set 'eshell-command-body'
and 'eshell-test-body' for the 'if' conditional (see
'eshell-do-eval').

* test/lisp/eshell/esh-io-tests.el (esh-io-test/redirect-pipe): Split
into...
(esh-io-test/pipeline/default, esh-io-test/pipeline/all): ... these.
(esh-io-test/pipeline/subcommands): New test.

* test/lisp/eshell/esh-cmd-tests.el (esh-cmd-test/for-loop-pipe)
(esh-cmd-test/while-loop-pipe, esh-cmd-test/if-statement-pipe)
esh-cmd-test/if-else-statement-pipe): New tests.
(esh-cmd-test/while-loop): Use 'pop' to simplify the test a bit.

* test/lisp/eshell/eshell-test-helpers.el
(eshell-test--max-subprocess-time): Rename to...
(eshell-test--max-wait-time): ... this.
(eshell-wait-for): New function...
(eshell-wait-for-subprocess): ... use it.

* test/lisp/eshell/eshell-tests.el (eshell-test/queue-input): Fix this
test.  Previously, it didn't correctly verify that the original
command completed.

* test/lisp/eshell/em-tramp-tests.el
(em-tramp-test/should-replace-command): New macro...
(em-tramp-test/su-default, em-tramp-test/su-user)
(em-tramp-test/su-login, em-tramp-test/sudo-shell)
(em-tramp-test/sudo-user-shell, em-tramp-test/doas-shell)
(em-tramp-test/doas-user-shell): ... use it.

2 years agoMerge from origin/emacs-29
Stefan Kangas [Fri, 30 Dec 2022 05:45:13 +0000 (06:45 +0100)]
Merge from origin/emacs-29

644c71d6788 lisp/textmodes/bibtex.el: fix bibtex-beginning-of-entry (...
ab38abfdf75 lisp/textmodes/bibtex.el: Treat $ as punctuation in BibTe...
d086cd6cf87 Clarify the documentation of 'set-face-attribute'
dafa6d6badd Handle non-string values in pcomplete
beed746f944 Fix completion when completion-auto-select is set
7ccb88486eb ; * etc/DEBUG: Update MS-Windows specifics for GDB 13 and...
558b59d81b9 Add color fontification in css-ts-mode (bug#60405)
a96a7c81151 ; * lisp/textmodes/css-mode.el (css-ts-mode): Fix imenu s...
793641a3db5 ; * lisp/progmodes/js.el: Fix byte-compile warning.
0aea1cf8190 * lisp/hi-lock.el (hi-lock--regexps-at-point): Fix bug (b...
60418e6f09c * src/keyboard.c (echo_add_key): Use recently rebound C-h...
706ed852855 Avoid assertion violations in treesit.c with --enable-che...
38c35bf0f6a Clean up treesit-default-defun-skipper and add comments
9371d488be6 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
9d814bea460 ; whitespace.el: Use the new 'ert-with-buffer-selected' i...
784e509bded Fix c-ts-mode bracket indentation (bug#60398)

2 years agoAvoid some obsolescent tz abbrevs in doc.
Paul Eggert [Fri, 30 Dec 2022 03:16:10 +0000 (19:16 -0800)]
Avoid some obsolescent tz abbrevs in doc.

2 years agoDocument calc-time-zone abbreviation obsolescence
Paul Eggert [Fri, 30 Dec 2022 03:16:09 +0000 (19:16 -0800)]
Document calc-time-zone abbreviation obsolescence

* doc/misc/calc.texi (Time Zones): Document that alphabetic
time zone abbreviations are obsolescent and in some cases wrong.

2 years agoUse RFC 822 abbrevs in sunrise-sunset strings
Paul Eggert [Fri, 30 Dec 2022 03:16:09 +0000 (19:16 -0800)]
Use RFC 822 abbrevs in sunrise-sunset strings

* lisp/calendar/solar.el (sunrise-sunset): Use RFC 822 time zone
abbreviations like "+0530" instead of idiosyncratic abbreviations
like "UTC+330min".

2 years agoAdd nndiary-headers obsolescence comment
Paul Eggert [Fri, 30 Dec 2022 03:16:09 +0000 (19:16 -0800)]
Add nndiary-headers obsolescence comment

* lisp/gnus/nndiary.el (nndiary-headers): Add comment
about alphabetic time zone names being obsolescent.

2 years agoDefault mbox "From " time zone to -0000
Paul Eggert [Fri, 30 Dec 2022 05:27:45 +0000 (21:27 -0800)]
Default mbox "From " time zone to -0000

* lisp/mail/rmailout.el (rmail-nuke-pinhead-header):
Default the time zone to "-0000" instead of "EST", as "-0000" is
the RFC-2822-and-later standard for unknown time zones.

2 years agoIn cal-dst, be consistent re default to UTC
Paul Eggert [Fri, 30 Dec 2022 03:16:09 +0000 (19:16 -0800)]
In cal-dst, be consistent re default to UTC

* lisp/calendar/cal-dst.el (calendar-standard-time-zone-name)
(calendar-daylight-time-zone-name):
When using alphabetic time zone abbreviations, default to "UTC"
rather than to "EST" or "EDT", to be consistent with the behavior
when using numeric time zone abbreviations.
Also, in the numeric time zone use "-0000" rather than "+0000"
to show that the time zone is unknown; this is the RFC 5322
standard.

2 years agoFix newsticker timezone decode
LdBeth [Fri, 30 Dec 2022 03:16:09 +0000 (19:16 -0800)]
Fix newsticker timezone decode

'newsticker--decode-rfc822-date' has the regex pattern for
North American timezones but the actual timezone conversion
for them was not implmented. Now cond cases are added to
handle them as specified in RFC822.

Copyright-paperwork-exempt: yes