]> git.eshelyaron.com Git - emacs.git/log
emacs.git
18 months agoMark two tests as expensive
Stefan Kangas [Fri, 15 Sep 2023 08:52:03 +0000 (10:52 +0200)]
Mark two tests as expensive

* test/lisp/calendar/todo-mode-tests.el
(todo-test-add-and-delete-file):
* test/lisp/simple-tests.el (simple-tests-shell-command-39067):
Mark tests taking more than 10 seconds to run on a MacBook Pro from
2015 as expensive.

18 months agoFix describing packages where maintainer lacks email
Stefan Kangas [Fri, 15 Sep 2023 07:48:26 +0000 (09:48 +0200)]
Fix describing packages where maintainer lacks email

* lisp/emacs-lisp/package.el (describe-package-1): Fix describing
packages with one maintainer without an email address.  (Bug#65987)

18 months agoAdd dot SVG icons
Yuan Fu [Fri, 15 Sep 2023 07:28:31 +0000 (00:28 -0700)]
Add dot SVG icons

The advantage of SVG dots over Unicode dots is that their size is
fixed.  With Unicode dots, the size varies with the font.

Dot icons can be useful for status indicator: green dot for online,
red dot for offline, etc.

* etc/images/symbols/dot_large_16.pbm:
* etc/images/symbols/dot_large_16.svg:
* etc/images/symbols/dot_medium_16.pbm:
* etc/images/symbols/dot_medium_16.svg:
* etc/images/symbols/dot_small_16.pbm:
* etc/images/symbols/dot_small_16.svg: New file.

18 months agoAllow treesit-font-lock-recompute-features to be language-specific
Yuan Fu [Fri, 15 Sep 2023 04:32:23 +0000 (21:32 -0700)]
Allow treesit-font-lock-recompute-features to be language-specific

* lisp/treesit.el:
(treesit-font-lock-recompute-features): Add LANGUAGE parameter.

18 months ago; * src/process.c (child_signal_notify): Avoid compiler warning (bug#65919).
Eli Zaretskii [Fri, 15 Sep 2023 06:05:14 +0000 (09:05 +0300)]
; * src/process.c (child_signal_notify): Avoid compiler warning (bug#65919).

18 months ago; * src/xterm.c (handle_one_xevent): Cite the bug meant to be fixed.
Po Lu [Fri, 15 Sep 2023 02:35:06 +0000 (10:35 +0800)]
; * src/xterm.c (handle_one_xevent): Cite the bug meant to be fixed.

18 months agoCorrect bug#65919
Po Lu [Fri, 15 Sep 2023 02:30:12 +0000 (10:30 +0800)]
Correct bug#65919

* src/process.c (child_signal_notify): Expunge call to
non-reentrant function from signal handler.

* src/xfns.c (setup_xi_event_mask): Cease selecting for
XI_FocusIn and XI_FocusOut under X toolkit builds.

* src/xterm.c (xi_handle_interaction, xi_handle_focus_change)
(xi_handle_focus_change): Make conditional on GTK 3 or no
toolkit builds.
(xi_handle_delete_frame, x_free_frame_resources): Adjust
correspondingly.
(handle_one_xevent) <EnterNotify, LeaveNotify>: Examine
EnterNotify and LeaveNotify events for focus changes
irrespective of whether XI2 is enabled under the X toolkit and
GTK 2.x.

18 months agoCollapse 'if' forms in Eshell iterative evaluation
Jim Porter [Fri, 15 Sep 2023 00:51:36 +0000 (17:51 -0700)]
Collapse 'if' forms in Eshell iterative evaluation

* lisp/eshell/esh-cmd.el (eshell-do-eval): After evaluating 'if'
conditional, replace the form with the THEN or ELSE body.

18 months ago; Simplify how to use 'eshell-debug-command'
Jim Porter [Fri, 15 Sep 2023 00:51:16 +0000 (17:51 -0700)]
; Simplify how to use 'eshell-debug-command'

Now, 'eshell-debug-command' works more like 'format-message', which is
how we usually use it.

* lisp/eshell/esh-util.el (eshell-always-debug-command): New function.
(eshell-debug-command): Simplify.  Update callers.

18 months agoFix Tramp test on NetBSD
Michael Albinus [Thu, 14 Sep 2023 12:38:27 +0000 (14:38 +0200)]
Fix Tramp test on NetBSD

* test/lisp/net/tramp-tests.el (tramp--test-netbsd-p): New defun.
(tramp--test-check-files): Use it.

18 months agoAvert a crash in the Android last resort font driver
Po Lu [Thu, 14 Sep 2023 08:53:04 +0000 (16:53 +0800)]
Avert a crash in the Android last resort font driver

* java/org/gnu/emacs/EmacsFontDriver.java (FONT_INVALID_CODE):
New constant.
(hasChar, encodeChar): Accept a jint character code rather than
a jchar.

* java/org/gnu/emacs/EmacsSdk23FontDriver.java (hasChar)
(encodeChar): Return 0 or FONT_INVALID_CODE if the character is
not representable in a Java char.

* java/org/gnu/emacs/EmacsSdk7FontDriver.java (hasChar): Ditto.

* src/androidfont.c (android_init_font_driver): Adjust signature
to match.

18 months ago; * src/treesit.c (Ftreesit_parser_set_included_ranges): Minor fix.
Yuan Fu [Thu, 14 Sep 2023 04:41:56 +0000 (21:41 -0700)]
; * src/treesit.c (Ftreesit_parser_set_included_ranges): Minor fix.

18 months agoRefactor treesit-font-lock-fontify-region
Yuan Fu [Thu, 14 Sep 2023 04:04:18 +0000 (21:04 -0700)]
Refactor treesit-font-lock-fontify-region

* lisp/treesit.el (treesit-font-lock-fontify-region): Extract out
treesit--font-lock-fontify-region-1.

18 months ago; * admin/notes/tree-sitter/performance (Facts): Fix filling.
Yuan Fu [Thu, 14 Sep 2023 03:36:47 +0000 (20:36 -0700)]
; * admin/notes/tree-sitter/performance (Facts): Fix filling.

18 months agoFix treesit-font-lock-fontify-region wrt local parsers
Yuan Fu [Thu, 14 Sep 2023 02:16:04 +0000 (19:16 -0700)]
Fix treesit-font-lock-fontify-region wrt local parsers

* lisp/treesit.el (treesit--update-ranges-local): Minor change.
(treesit-font-lock-fontify-region): Don't try to fontify if node is
nil.  Don't use alist-get to get the root node for a language: there
might be multiple root nodes (from multiple local parsers) for the
same language.
(treesit-major-mode-setup): Remove existing local parsers when major
mode is activated.

18 months agoImprove the Android last resort font driver
Po Lu [Thu, 14 Sep 2023 01:57:09 +0000 (09:57 +0800)]
Improve the Android last resort font driver

* java/org/gnu/emacs/EmacsSdk7FontDriver.java (Sdk7Typeface):
Rename fileName to familyName and cease attempting to infer a
style from it.
(EmacsSdk7FontDriver): Employ preset typefaces rather than
enumerating each typeface within the system fonts directory.
(draw): Circumvent kerning difficulties by advancing past each
character individually.

18 months agoImprove process instrumentation in Eshell
Jim Porter [Thu, 14 Sep 2023 01:19:18 +0000 (18:19 -0700)]
Improve process instrumentation in Eshell

* lisp/eshell/esh-proc.el (eshell-insertion-filter): Add more logging,
and try to bulletproof the implementation.
(eshell-sentinel): Add more logging.

18 months agoImprove docstring for treesit-language-at
Yuan Fu [Thu, 14 Sep 2023 01:14:03 +0000 (18:14 -0700)]
Improve docstring for treesit-language-at

* lisp/treesit.el (treesit-language-at-point-function)
(treesit-language-at): Several people has confused over this, make it
extra clear than treesit-language-at requires
treesit-language-at-point-function to work.

18 months agoAdd tree-sitter performance note
Yuan Fu [Thu, 14 Sep 2023 00:56:07 +0000 (17:56 -0700)]
Add tree-sitter performance note

18 months agoUpdate tree-sitter traversing functions' docstrings
Yuan Fu [Thu, 14 Sep 2023 00:55:36 +0000 (17:55 -0700)]
Update tree-sitter traversing functions' docstrings

* src/treesit.c (Ftreesit_search_subtree)
(Ftreesit_search_forward)
(Ftreesit_induce_sparse_tree): Update docstring.

18 months ago; * test/lisp/erc/erc-stamp-tests.el (erc-echo-timestamp): Tag unstable.
F. Jason Park [Wed, 13 Sep 2023 23:04:43 +0000 (16:04 -0700)]
; * test/lisp/erc/erc-stamp-tests.el (erc-echo-timestamp): Tag unstable.

18 months agoFix last Ibuffer change and improve feedback messages
Stephen Berman [Wed, 13 Sep 2023 21:43:54 +0000 (23:43 +0200)]
Fix last Ibuffer change and improve feedback messages

* lisp/ibuf-macs.el (define-ibuffer-op): Emit grammatically
correct message on finishing operation, and don't operate when
there are no marked buffer lines and point is not on a buffer
line.  (bug#64230, Message #21)

* lisp/ibuffer.el (ibuffer-map-lines): Take acting on only one
buffer line and using non-nil 'ibuffer-expert' into account.

18 months agoWhen waiting for processes in Eshell, wait until all the I/O is complete
Jim Porter [Wed, 13 Sep 2023 18:50:39 +0000 (11:50 -0700)]
When waiting for processes in Eshell, wait until all the I/O is complete

This should fix bug#59103, bug#65590, and bug#65601.

* lisp/eshell/esh-proc.el (eshell-sentinel): Set ':eshell-handles' to
nil when finished with I/O.
(eshell-wait-for-process): Wait until ':eshell-handles' is nil.

18 months ago; Fix an Eshell error when calling a lambda with form logging enabled
Jim Porter [Wed, 13 Sep 2023 19:46:58 +0000 (12:46 -0700)]
; Fix an Eshell error when calling a lambda with form logging enabled

* lisp/eshell/esh-cmd.el (eshell-do-eval): Don't call 'symbol-name';
the function might be a closure.

18 months agoFix build error on older macOS versions
Alan Third [Wed, 13 Sep 2023 19:26:54 +0000 (20:26 +0100)]
Fix build error on older macOS versions

* src/nsterm.m (ns_scroll_run): Use srcRect instead of destRect.

18 months ago; * lisp/eshell/esh-cmd.el (eshell-do-eval): Fix 'eshell-manipulate' call.
Jim Porter [Wed, 13 Sep 2023 18:30:32 +0000 (11:30 -0700)]
; * lisp/eshell/esh-cmd.el (eshell-do-eval): Fix 'eshell-manipulate' call.

18 months ago; Fix bootstrap
Stefan Kangas [Wed, 13 Sep 2023 16:22:51 +0000 (18:22 +0200)]
; Fix bootstrap

* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Don't use void variable.

18 months agoFix defcustom :type in replace.el (Bug#65920)
Mauro Aranda [Wed, 13 Sep 2023 15:49:40 +0000 (12:49 -0300)]
Fix defcustom :type in replace.el (Bug#65920)

* lisp/replace.el (list-matching-lines-face)
(list-matching-lines-buffer-name-face): Allow a nil value.

18 months agoShorten docstrings generated by cl-defstruct
Damien Cassou [Tue, 12 Sep 2023 06:28:37 +0000 (08:28 +0200)]
Shorten docstrings generated by cl-defstruct

* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Split the first line of
generated docstrings if either the struct name or a field name is very
long.  This reduces the likelihood of "docstring wider than 80
characters" errors.  (Bug#65790)

18 months agoShorten docstrings generated by cl-defsubst
Damien Cassou [Tue, 12 Sep 2023 06:28:37 +0000 (08:28 +0200)]
Shorten docstrings generated by cl-defsubst

* lisp/emacs-lisp/cl-macs.el (cl-defsubst): Split the first line of
the docstring into 2 lines if the function name is very long.
Additionally, remove the word "inlining" in the generated docstring as
it is not very useful and increases the likelihood of "docstring wider
than 80 characters" errors.  (Bug#65790)

18 months agobytecomp-tests.el: Add new helper function
Damien Cassou [Mon, 11 Sep 2023 19:59:45 +0000 (21:59 +0200)]
bytecomp-tests.el: Add new helper function

* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp--without-warning-test): Add helper function.
(bytecomp-warn--ignore): Use the helper.

18 months agoFix problem with long file names in Tramp
Michael Albinus [Wed, 13 Sep 2023 14:21:13 +0000 (16:21 +0200)]
Fix problem with long file names in Tramp

* lisp/net/tramp-sh.el (tramp-ls-file-attributes): New defconst.
(tramp-do-file-attributes-with-ls): Use it.  (Bug#65324)

18 months agoReorganize Android permissions documentation
Po Lu [Wed, 13 Sep 2023 13:39:22 +0000 (21:39 +0800)]
Reorganize Android permissions documentation

* doc/emacs/android.texi (Android Environment): Illustrate the
behavior of modern Android versions first.  Reported by Stefan
Kangas <stefankangas@gmail.com>.

18 months agoExclude ``regular'' from font adstyle
Po Lu [Wed, 13 Sep 2023 05:42:29 +0000 (13:42 +0800)]
Exclude ``regular'' from font adstyle

* src/sfntfont.c (sfnt_parse_style): Disregard tokens matching
Regular entirely.

18 months agoRequest additional permissions on Android
Po Lu [Wed, 13 Sep 2023 01:25:42 +0000 (09:25 +0800)]
Request additional permissions on Android

* doc/emacs/android.texi (Android Environment): List two
additional permissions within the summary of permissions granted
by default.

* java/AndroidManifest.xml.in: Request READ_CALENDAR and
WRITE_CALENDAR.

18 months agoFacilitate opening content:// files without a linked file name
Po Lu [Wed, 13 Sep 2023 01:24:16 +0000 (09:24 +0800)]
Facilitate opening content:// files without a linked file name

* java/org/gnu/emacs/EmacsOpenActivity.java
(checkReadableOrCopy): If FILE is NULL, return a matching
content URI if possible, else generate a file name with the URI
as a reference.
(onCreate): Catch SecurityException around calls to
openFileDescriptor.

18 months ago; Improve recent change to printing exit status in Eshell
Jim Porter [Wed, 13 Sep 2023 01:13:52 +0000 (18:13 -0700)]
; Improve recent change to printing exit status in Eshell

* lisp/eshell/esh-proc.el (eshell-interactive-filter): Declare.
(eshell-interactive-process-filter): Simplify.
(eshell-sentinel): Call 'eshell-interactive-filter'.

* test/lisp/eshell/esh-proc-tests.el
(esh-proc-test/kill-process/redirect-message): Use
'eshell-with-temp-buffer'.

18 months agoAvoid unnecessary tree-sitter reparse when setting the same range
Yuan Fu [Tue, 12 Sep 2023 07:36:07 +0000 (00:36 -0700)]
Avoid unnecessary tree-sitter reparse when setting the same range

* src/treesit.h (Lisp_TS_Parser)
* src/treesit.c (make_treesit_parser): Remove has_range field, add
last_set_ranges field.
(Ftreesit_parser_set_included_ranges): Return early if the new range
is the same as the old one.
(Ftreesit_parser_included_ranges): Change has_range to
last_set_ranges.

18 months agoMake sure undefined tree-sitter thing doesn't raise an error
Yuan Fu [Tue, 12 Sep 2023 03:59:50 +0000 (20:59 -0700)]
Make sure undefined tree-sitter thing doesn't raise an error

A previous change should've achived this, but that wasn't enough.
This one actually achieves the intended effect, namely,
treesit-node-match-p doesn't raise an error if IGNORE-MISSING is
non-nil, and traverse functions don't raise error by default.

* src/treesit.c (treesit_traverse_validate_predicate): Remove
ignore_missing parameter, return error symbol.
(Ftreesit_node_match_p)
(Ftreesit_search_subtree)
(Ftreesit_search_forward)
(Ftreesit_induce_sparse_tree): Check returned error symbol.
(syms_of_treesit): New symbol.

18 months agoEnsure that Eshell doesn't consider a process complete until stderr is done
Jim Porter [Tue, 12 Sep 2023 05:05:38 +0000 (22:05 -0700)]
Ensure that Eshell doesn't consider a process complete until stderr is done

This will hopefully help resolve some timing issues with subprocesses
in Eshell.  There's now much less chance of output going missing when
using redirects.

* lisp/eshell/esh-proc.el (eshell-gather-process-output): Set
':eshell-stderr-live'...
(eshell-sentinel): ... use it.

18 months agoBe more careful about when to print abnormal exit status in Eshell
Jim Porter [Tue, 12 Sep 2023 04:32:05 +0000 (21:32 -0700)]
Be more careful about when to print abnormal exit status in Eshell

* lisp/eshell/esh-proc.el (eshell-sentinel): Only output abnormal
status when stderr is interactive.

* test/lisp/eshell/esh-proc-tests.el
(esh-proc-test/kill-process/redirect-message): New test.

18 months agoDon't do anything in 'eshell-sentinel' if the process status is "run"
Jim Porter [Fri, 18 Aug 2023 05:40:03 +0000 (22:40 -0700)]
Don't do anything in 'eshell-sentinel' if the process status is "run"

This doesn't change anything right now, but it will prevent future
issues when we add the ability to resume suspended processes in
Eshell.

* lisp/eshell/esh-proc.el (eshell-sentinel): Check for "run" status
earlier.

18 months ago* src/alloc.c (garbage_collect): Run `post-gc-hook` later (bug#65700)
Stefan Monnier [Tue, 12 Sep 2023 18:06:54 +0000 (14:06 -0400)]
* src/alloc.c (garbage_collect): Run `post-gc-hook` later (bug#65700)

18 months agoAddress "Useless clause following default cond clause" warnings
Stefan Monnier [Tue, 12 Sep 2023 16:59:03 +0000 (12:59 -0400)]
Address "Useless clause following default cond clause" warnings

* lisp/gnus/message.el (message-position-point): Fix paren typo.

* lisp/org/org.el: Remove dead-code.

18 months ago(read-char-from-minibuffer): Allow use of `quoted-insert` (bug#65805)
Stefan Monnier [Tue, 12 Sep 2023 16:55:54 +0000 (12:55 -0400)]
(read-char-from-minibuffer): Allow use of `quoted-insert` (bug#65805)

* lisp/subr.el (read-char-from-minibuffer-map): No need to remap
`self-insert-command` any more.
(read-char-from-minibuffer): Use `post-command-hook` to exit as soon as
a char is provided.

18 months agoCorrect the XEmacs version of c-put-char-properties
Alan Mackenzie [Tue, 12 Sep 2023 14:45:47 +0000 (14:45 +0000)]
Correct the XEmacs version of c-put-char-properties

* lisp/progmodes/cc-defs.el (c-put-char-properties): Use the
put-text-property interface rather than make-extent for XEmacs
as well as Emacs.

18 months agoMerge remote-tracking branch 'savannah/master' into master-android-1
Po Lu [Tue, 12 Sep 2023 02:39:51 +0000 (10:39 +0800)]
Merge remote-tracking branch 'savannah/master' into master-android-1

18 months agoExtract font foundry metadata from the OS/2 table
Po Lu [Tue, 12 Sep 2023 02:37:55 +0000 (10:37 +0800)]
Extract font foundry metadata from the OS/2 table

* src/sfnt.c (sfnt_table_names): Append an entry for OS/2
tables.
(sfnt_read_OS_2_table): New function.
(main): Introduce a new test for the OS/2 table reader.

* src/sfnt.h (sfnt_read_OS_2_table): New declaration.

* src/sfntfont.c (sfnt_decode_foundry_name): Delete function.
(sfnt_enum_font_1): Read the font's OS/2 table and extract the
foundry name from there.  Use `misc' if absent.
(sfntfont_desc_to_entity, sfntfont_open): Cease interning
desc->designer, as that is now a symbol.
(syms_of_sfntfont) <Qmisc>: New defsym Qmisc.  (bug#65865)

18 months ago; * lisp/treesit.el (treesit-explore-mode): Support local parsers.
Yuan Fu [Tue, 12 Sep 2023 01:06:23 +0000 (18:06 -0700)]
; * lisp/treesit.el (treesit-explore-mode): Support local parsers.

18 months agoFix tracing for advanced scoring in gnus-logic.el
Łukasz Stelmach [Mon, 21 Nov 2022 21:30:55 +0000 (22:30 +0100)]
Fix tracing for advanced scoring in gnus-logic.el

* lisp/gnus/gnus-logic.el (gnus-score-advanced): Move the tracing code
outside conditional so it's executed for both branches.  (Bug#59458)

18 months agoMatch recent version of GNU global in CEDET
Stefan Kangas [Mon, 11 Sep 2023 23:50:28 +0000 (01:50 +0200)]
Match recent version of GNU global in CEDET

* lisp/cedet/cedet-global.el (cedet-gnu-global-version-check):
Match recent version of GNU global.  (Bug#62581)

18 months agoRemove check for appdefined events on the queue (bug#65843)
Alan Third [Mon, 11 Sep 2023 16:18:31 +0000 (17:18 +0100)]
Remove check for appdefined events on the queue (bug#65843)

It seems this was likely a bug in macOS 10.10.1. I have no way to find
out when it was fixed, but hopefully before 10.10.5, the most recent
release of that version.

* src/nsterm.m (ns_send_appdefined): Remove check for whether previous
appdefined events have been lost.

18 months agoFix crash on child frame creation (bug#65817)
Alan Third [Fri, 8 Sep 2023 18:33:06 +0000 (19:33 +0100)]
Fix crash on child frame creation (bug#65817)

* src/nsterm.m ([EmacsView initFrameFromEmacs:]): Reorder the way the
frame and layers are created.
([EmacsView makeBackingLayer]): Change to the newly renamed method
below.
([EmacsLayer initWithColorSpace:doubleBuffered:]):
([EmacsLayer initWithDoubleBuffered:]): Rename the method and remove
the colorspace argument as it's no longer able to be set on initial
creation.
* src/nsterm.h: Use new method prototype.

18 months agoSimplify the EmacsLayer double buffering code (bug#63187)
Alan Third [Sun, 23 Jul 2023 11:00:30 +0000 (12:00 +0100)]
Simplify the EmacsLayer double buffering code (bug#63187)

18 months agoAvoid confusing message in Ibuffer (bug#64230)
Stephen Berman [Mon, 11 Sep 2023 14:15:29 +0000 (16:15 +0200)]
Avoid confusing message in Ibuffer (bug#64230)

* lisp/ibuffer.el (ibuffer-map-lines): With `ibuffer-auto-mode'
enabled, Ibuffer counts the automatically popped up (and hence not
user-marked) buffer "*Ibuffer confirmation*".  Since Ibuffer
reports how many user-marked buffers were acted upon, and in this
case the reported count would be too high by one, decrement the
count to avoid the confusing message.

18 months agoEglot support for objc-mode
Gerd Möllmann [Mon, 11 Sep 2023 13:02:50 +0000 (15:02 +0200)]
Eglot support for objc-mode

* lisp/progmodes/eglot.el (eglot-server-programs): Add objc-mode to
the list containing c-mode.

18 months agoNew command tramp-revert-buffer-with-sudo
Michael Albinus [Mon, 11 Sep 2023 11:51:58 +0000 (13:51 +0200)]
New command tramp-revert-buffer-with-sudo

* doc/misc/tramp.texi (Ad-hoc multi-hops):
Document tramp-file-name-with-method and tramp-revert-buffer-with-sudo.

* etc/NEWS: New command tramp-revert-buffer-with-sudo.

* lisp/net/tramp-cmds.el (dired-advertise, dired-unadvertise): Declare.
(tramp-dired-buffer-p, tramp-remote-process-p): Rename.
(tramp-file-name-with-method): New defcustom.
(tramp-file-name-with-sudo, tramp-revert-buffer-with-sudo): New defuns.

18 months agoProvide an option to disable font instruction code execution
Po Lu [Mon, 11 Sep 2023 11:45:58 +0000 (19:45 +0800)]
Provide an option to disable font instruction code execution

* etc/PROBLEMS: Mention instruction code woes and illustrate how
to circumvent them.

* src/sfntfont.c (sfntfont_setup_interpreter): Respect
Vsfnt_uninstructable_family_regexp.
(syms_of_sfntfont) <Vsfnt_uninstructable_family_regexp>: New
option.

18 months agoExpunge another instance of ``allows to''
Po Lu [Mon, 11 Sep 2023 07:41:07 +0000 (15:41 +0800)]
Expunge another instance of ``allows to''

* etc/NEWS (Tramp) <tramp-cleanup-some-buffers>: Reword and
rephrase to avoid ``allows to''.

18 months agoRespect vertical centering preferences under Android
Po Lu [Mon, 11 Sep 2023 04:56:37 +0000 (12:56 +0800)]
Respect vertical centering preferences under Android

* src/sfntfont.c (sfntfont_open): Match XLFD name against
Vvertical_centering_font_regexp; if they agree, set
font->vertical_centering.  Also set a suitable full name.

18 months ago; * lisp/erc/erc.el (erc-check-text-conversion): Try fboundp.
F. Jason Park [Mon, 11 Sep 2023 03:44:49 +0000 (20:44 -0700)]
; * lisp/erc/erc.el (erc-check-text-conversion): Try fboundp.

18 months ago; Add newline to erc--scrolltobottom-window-info
F. Jason Park [Mon, 11 Sep 2023 02:29:09 +0000 (19:29 -0700)]
; Add newline to erc--scrolltobottom-window-info

* lisp/erc/erc-goodies.el (erc--scrolltobottom-window-info): Add
`newline'.  (Bug#64855)
* lisp/erc/erc.el (erc-check-text-conversion): Quote variable.

18 months agoProperly set text conversion style within ERC buffers
Po Lu [Mon, 11 Sep 2023 01:32:44 +0000 (09:32 +0800)]
Properly set text conversion style within ERC buffers

* lisp/erc/erc.el (erc-mode): Register
`erc-check-text-conversion' as a local post command hook.
(set-text-conversion-style): New function.  Detect if point is
within the input prompt, then enable or disable text conversion
correspondingly.

18 months agoConsider all windows in erc-scrolltobottom-mode
F. Jason Park [Sat, 22 Jul 2023 07:46:44 +0000 (00:46 -0700)]
Consider all windows in erc-scrolltobottom-mode

* etc/ERC-NEWS: Add entry for option `erc-scrolltobottom-all', and
mention explicit hook-depth intervals reserved by ERC.
* lisp/erc/erc-backend.el (erc--hide-prompt): Change hook depth on
`pre-command-hook' from 91 to 80.
* lisp/erc/erc-goodies.el (erc-input-line-position): Mention secondary
role when new option `erc-scroll-to-bottom-relaxed' is non-nil.
(erc-scrolltobottom-all): New option that decides whether module
`scrolltobottom' affects all windows or just the selected one, as it
always has.
(erc-scrolltobottom-relaxed): New option to leave the prompt
stationary instead of forcing it to the bottom of the window.
(erc-scrolltobottom-mode, erc-scrolltobottom-enable,
erc-scrolltobottom-disable): Use `erc--scrolltobottom-setup' instead
of `erc-add-scroll-to-bottom' for adding and removing local hooks and
instead of ranging over buffers when removing them.  Also add and
remove new hook members when `erc-scrolltobottom-all' is non-nil.
(erc--scrolltobottom-relaxed-commands,
erc--scrolltobottom-window-info,
erc--scrolltobottom-post-force-commands,
erc--scrolltobottom-relaxed-skip-commands): New internal variables.
(erc--scrolltobottom-on-pre-command
erc--scrolltobottom-on-post-command): New functions resembling
`erc-possibly-scroll-to-bottom' that try to avoid scrolling repeatedly
for no reason.
(erc--scrolltobottom-on-pre-command-relaxed,
erc--scrolltobottom-on-post-command-relaxed): New commands to help
implement `erc-scroll-to-bottom-relaxed'.
(erc--scrolltobottom-at-prompt-minibuffer-active): New function to
scroll to bottom on window configuration changes when using the
minibuffer.
(erc--scrolltobottom-all): New function to scroll all windows
displaying the current buffer.
(erc-add-scroll-to-bottom): Deprecate this function because it is now
unused in the default client and trivial to implement otherwise.
(erc--scrolltobottom-setup): New generic function to perform teardown
as well as setup depending on the state of the module's mode variable.
Also add an implementation specifically for `erc-scrolltobottom-all'
that locally modifies different sets of hooks depending on
`erc-scrolltobottom-relaxed'.
(erc--scrolltobottom-on-pre-insert): New generic function that
remembers the last `window-start' and maybe the current screen line
before inserting a message, in order to restore it afterward.
(erc--scrolltobottom-confirm): New function, a replacement for
`erc-scroll-to-bottom' that returns non-nil when it's actually
recentered the window.  For now, used only when
`erc-scrolltobottom-all' is enabled.
(erc-move-to-prompt-setup): Add `erc-move-to-prompt' to
`pre-command-hook' at a depth of 70 in the current buffer.
(erc-keep-place-mode, erc-keep-place-enable): Change hook depth from 0
to 85.
(erc--keep-place-indicator-setup): Add overlay arrow `after-string' in
non-graphical settings in case users have time stamps or other content
occupying the left margin.
(erc-keep-place-indicator-mode, erc-keep-place-indicator-enable):
Change hook depth from 90 to 85 locally so as not to conflict with a
value of t, for append.
(erc--keep-place-indicator-on-global-module): Change hook depth from
90 to 85 locally.
* test/lisp/erc/erc-scenarios-scrolltobottom-relaxed.el: New file.
* test/lisp/erc/erc-scenarios-scrolltobottom.el: New file.
* test/lisp/erc/resources/erc-scenarios-common.el
(erc-scenarios-common--term-size, erc-scenarios-common--run-in-term,
erc-scenarios-common-interactive-debug-term-p,
erc-scenarios-common-with-noninteractive-in-term): New test macro and
supporting helper function and variables to facilitate running
scenario-based tests in an inferior Emacs, in term-mode.
(erc-scenarios-common--at-win-end-p,
erc-scenarios-common--above-win-end-p,
erc-scenarios-common--prompt-past-win-end-p,
erc-scenarios-common--recenter-top-bottom-around,
erc-scenarios-common--recenter-top-bottom,
erc-scenarios-scrolltobottom--normal): New test fixture and assertion
helper functions.
* test/lisp/erc/resources/scrolltobottom/help.eld: New file.
(Bug#64855)

18 months agoAdd optional timezone param to erc-echo-timestamp
F. Jason Park [Thu, 31 Aug 2023 06:15:22 +0000 (23:15 -0700)]
Add optional timezone param to erc-echo-timestamp

* etc/ERC-NEWS: Move `erc-echo-timestamp' from misc section
to own entry, and mention option `erc-echo-timestamp-zone'.
* lisp/erc/erc-stamp.el (erc-echo-timestamps): Mention that some
finagling is required if enabling this option after activating the
module.
(erc-echo-timestamp-format): Add additional Custom choice constants
and make the existing default one of them.
(erc-echo-timestamp-zone): New option to specify timezone for option
`erc-echo-timestamps' and function `erc-echo-timestamp'.
(erc-stamp-mode, erc-stamp-enable, erc-stamp-disable): Call
`erc-stamp--setup' instead of `erc-munge-invisibility-spec'.
(erc-stamp--current-time): Use `current-time' instead of
`erc-current-time'.
(erc-add-timestamp): Improve readability slightly, and change
`fboundp' to `functionp' to avoid signaling an error when the
variable's value is not a symbol.
(erc-munge-invisibility-spec): Perform teardown when boolean flag
options, like `erc-timestamp-intangible' and `erc-echo-timestamps' are
nil.
(erc-stamp--setup): Call `erc-munge-invisibility-spec', possibly
binding timestamp options to nil to force a tear down).
(erc-stamp--last-stamp, erc-stamp--on-clear-message): New function and
helper state variable to tell Emacs not to clear the current timestamp
message when navigating within the same IRC message.
(erc-echo-timestamp): Add optional `zone' parameter, to be passed
directly to `format-time-string', when non-interactive, and massaged
sensibly otherwise.  Set the local variable `erc-stamp--last-stamp'.
* test/lisp/erc/erc-stamp-tests.el (erc-echo-timestamp): New test.
(Bug#60936)

18 months ago; Allow alternate ert-info text in ERC test utility
F. Jason Park [Sat, 26 Aug 2023 02:03:26 +0000 (19:03 -0700)]
; Allow alternate ert-info text in ERC test utility

* test/lisp/erc/erc-tests.el
(erc-tests--assert-printed-in-subprocess): Don't insist that arguments
to the Emacs "-load" invocation option be actual disk files.
* test/lisp/erc/resources/erc-d/erc-d-t.el
(erc-d-t--wait-message-prefix, erc-d-t-wait-for, erc-d-t-ensure-for):
Add and use new variable to make `ert-info' message prefix adjustable.
The immediate use for this is to make it easier to distinguish between
consecutive assertions in which the first waits for a condition and
the second ensures it holds for some duration.
* test/lisp/erc/resources/erc-d/erc-d-u.el
(erc-d-u--read-exchange-default): Skip killed buffers.
* test/lisp/erc/resources/erc-d/erc-d.el: Typo.
* test/lisp/erc/resources/base/assoc/bouncer-history/barnet.eld: Timeouts.
* test/lisp/erc/resources/base/assoc/bouncer-history/foonet.eld: Timeouts.
* test/lisp/erc/resources/base/assoc/bumped/again.eld: Timeouts.
* test/lisp/erc/resources/base/assoc/bumped/foisted.eld: Timeouts.
* test/lisp/erc/resources/base/assoc/bumped/refoisted.eld: Timeouts.
* test/lisp/erc/resources/base/flood/soju.eld: Timeouts.
* test/lisp/erc/resources/base/netid/bouncer/barnet.eld: Timeouts.
* test/lisp/erc/resources/base/netid/bouncer/foonet.eld: Timeouts.
* test/lisp/erc/resources/base/reconnect/aborted-dupe.eld: Timeouts.
* test/lisp/erc/resources/base/reconnect/aborted.eld: Timeouts.
* test/lisp/erc/resources/base/renick/self/qual-chester.eld: Timeouts.
* test/lisp/erc/resources/base/renick/self/qual-tester.eld: Timeouts.
* test/lisp/erc/resources/erc-d/resources/dynamic-barnet.eld: Timeouts.
* test/lisp/erc/resources/erc-d/resources/dynamic-foonet.eld: Timeouts.
* test/lisp/erc/resources/erc-d/resources/linger.eld: Timeouts.
* test/lisp/erc/resources/join/legacy/foonet.eld: Timeouts.

18 months agoAllow login to contain NUH delimiters in erc-parse-user
F. Jason Park [Sat, 2 Sep 2023 03:05:35 +0000 (20:05 -0700)]
Allow login to contain NUH delimiters in erc-parse-user

* lisp/erc/erc.el (erc--parse-user-regexp-legacy,
erc--parse-user-regexp-pedantic): New constants.  The first is the
original pattern that matches across line endings.  The second
disallows multiline strings and interprets excess delimiting
characters as part of the middle, "user" component as per RFC1459.
The latter distinction is largely academic because most servers reject
such logins anyway, but bridges to other protocols and future
extensions may need to exploit this for novel uses.
(erc--parse-user-regexp): New variable, currently set to
`erc--parse-user-regexp-legacy'.
(erc-parse-user): Keep original pattern as default, but do so
indirectly via `erc--parse-user-regexp'.
* test/lisp/erc/erc-tests.el (erc-parse-user): New test.

18 months ago; * .mailmap: Update some entries.
Stefan Kangas [Mon, 11 Sep 2023 00:29:41 +0000 (02:29 +0200)]
; * .mailmap: Update some entries.

18 months agoNew defgroup pixel-scroll-precision
Stefan Kangas [Mon, 11 Sep 2023 00:06:23 +0000 (02:06 +0200)]
New defgroup pixel-scroll-precision

* lisp/pixel-scroll.el (pixel-scroll-precision): New defgroup.
(pixel-scroll-precision-use-momentum)
(pixel-scroll-precision-momentum-tick)
(pixel-scroll-precision-momentum-seconds)
(pixel-scroll-precision-momentum-min-velocity)
(pixel-scroll-precision-initial-velocity-factor)
(pixel-scroll-precision-large-scroll-height)
(pixel-scroll-precision-interpolation-total-time)
(pixel-scroll-precision-interpolation-factor)
(pixel-scroll-precision-interpolation-between-scroll)
(pixel-scroll-precision-interpolate-page)
(pixel-scroll-precision-interpolate-mice): Move to above new
defgroup.  (Bug#57970)
* lisp/mouse.el (mouse): Remove stale comment.

18 months agoWait for all processes in a pipeline before resuming an Eshell command
Jim Porter [Thu, 7 Sep 2023 00:01:06 +0000 (17:01 -0700)]
Wait for all processes in a pipeline before resuming an Eshell command

Previously, we only waited until the tail process was finished, but
now, we wait for all of them.  This is more consistent with other
shells, and prevents some cases of a process's output coming *after*
we continued past its pipeline.

* lisp/eshell/esh-cmd.el (eshell-resume-command): Simplify
conditionals, and check that all the foreground processes are dead
before resuming Eshell command.

* test/lisp/eshell/esh-cmd-tests.el
(esh-cmd-test/pipeline-wait/multi-proc): New test.

18 months ago; Move some Eshell tests to more-topical files
Jim Porter [Thu, 7 Sep 2023 00:00:59 +0000 (17:00 -0700)]
; Move some Eshell tests to more-topical files

eshell-tests.el should mainly be for code in eshell.el.

* test/lisp/eshell/eshell-tests.el (eshell-test/pipe-headproc)
(eshell-test/pipe-tailproc, eshell-test/pipe-subcommand)
(eshell-test/pipe-subcommand-with-pipe)
(eshell-test/subcommand-reset-in-pipeline)
(eshell-test/lisp-reset-in-pipeline): Move to...
* test/lisp/eshell/esh-cmd-tests.el
(esh-cmd-test/pipeline-wait/head-proc)
(esh-cmd-test/pipeline-wait/tail-proc)
(esh-cmd-test/pipeline-wait/subcommand)
(esh-cmd-test/pipeline-wait/subcommand-with-pipe)
(esh-cmd-test/reset-in-pipeline/subcommand)
(esh-cmd-test/reset-in-pipeline/lisp): ... here.

* test/lisp/eshell/eshell-tests.el (eshell-test/pipe-headproc-stdin):
Move to...
* test/lisp/eshell/esh-io-tests.el
(esh-io-test/pipeline/stdin-to-head): ... here.

18 months agoCollect all processes in an Eshell pipeline, not just the head and tail
Jim Porter [Mon, 3 Apr 2023 05:41:29 +0000 (22:41 -0700)]
Collect all processes in an Eshell pipeline, not just the head and tail

This has the extra benefit that Eshell now only considers a pipeline
to be done when *all* of its processes are done (previously, it
checked only the last one in the pipeline).

* lisp/eshell/esh-util.el (eshell-process-pair-p)
(eshell-make-process-pair): Rename to...
(eshell-process-list-p, eshell-make-process-list): ... these, and
handle lists of processes.  Update callers.

* lisp/eshell/esh-cmd.el (eshell-head-process): Use 'car'.
(eshell-tail-process): Get the last element of the list.
(eshell-do-pipelines): Return a list of all processes in the pipeline.
(eshell-do-pipelines-synchronously): Return the result of the first
command (usually t or nil).
(eshell-execute-pipeline): Simplify.
(eshell-do-eval): Pass all processes to 'eshell/wait'.

18 months ago; Make Eshell synchronous pipeline code more similar to asynchronous
Jim Porter [Mon, 3 Apr 2023 04:54:32 +0000 (21:54 -0700)]
; Make Eshell synchronous pipeline code more similar to asynchronous

* lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Use
'eshell-with-copied-handles'.
(eshell-execute-pipeline): Remove now-unnecessary let-bindings.

18 months ago; Move common Eshell pipeline code to a separate function
Jim Porter [Fri, 31 Mar 2023 23:57:18 +0000 (16:57 -0700)]
; Move common Eshell pipeline code to a separate function

* lisp/eshell/esh-cmd.el (eshell-do-pipelines)
(eshell-do-pipelines-synchronously): Move code for manipulating
deferrable command forms to...
(eshell--unmark-deferrable): ... here.

18 months agoFix order of `other' choice in defcustom :type
Mauro Aranda [Sun, 10 Sep 2023 13:45:04 +0000 (10:45 -0300)]
Fix order of `other' choice in defcustom :type

* lisp/font-lock.el (font-lock-verbose)
* lisp/image-mode.el (image-auto-resize)
* lisp/gnus/message.el (message-openpgp-header): Arrange for 'other'
to be the last choice.  (Bug#65852)

18 months agoDoc fix; explain what it means if comint-pager is nil
Stefan Kangas [Sun, 10 Sep 2023 14:44:08 +0000 (16:44 +0200)]
Doc fix; explain what it means if comint-pager is nil

* lisp/comint.el (comint-pager): Doc fix; explain the meaning of the
default nil value.

18 months ago; Suppress relint complaint in test
Mattias Engdegård [Sun, 10 Sep 2023 13:15:12 +0000 (15:15 +0200)]
; Suppress relint complaint in test

* test/src/regex-emacs-tests.el
(regex-tests-mutual-exclusive-inf-rec): This isn't supposed to be a
good regexp.

18 months agoReplace PVEC_FONT as pseudo-vector subtype upper bound
Mattias Engdegård [Sun, 10 Sep 2023 11:24:57 +0000 (13:24 +0200)]
Replace PVEC_FONT as pseudo-vector subtype upper bound

* src/lisp.h (enum pvec_type): Add PVEC_TAG_MAX.
* src/alloc.c (allocate_pseudovector): Use PVEC_TAG_MAX instead of
PVEC_FONT.

18 months ago; Spruce up union vectorlike_header description
Mattias Engdegård [Sun, 10 Sep 2023 11:13:17 +0000 (13:13 +0200)]
; Spruce up union vectorlike_header description

* src/lisp.h (union vectorlike_header): Rewrite the description of the
header word layout, with some useful added precision and the customary
ASCII art for bit fields.

18 months agoFix file name completion in `shell'
Michael Albinus [Sun, 10 Sep 2023 07:53:47 +0000 (09:53 +0200)]
Fix file name completion in `shell'

* lisp/shell.el (shell-completion-vars): Fix setting of
`pcomplete-remote-file-ignore'.  (Bug#65705)

18 months ago; Fix documentation of last change (bug#65621)
Eli Zaretskii [Sun, 10 Sep 2023 07:44:10 +0000 (10:44 +0300)]
; Fix documentation of last change (bug#65621)

* lisp/dired.el (dired-movement-style): Fix doc string and
customization tags.
(dired-next-line, dired-previous-line): Doc fixes.

* etc/NEWS: Fix wording of last added entry.

18 months ago`dired-next-line' movement style (bug#65621)
shynur [Sat, 2 Sep 2023 14:39:00 +0000 (22:39 +0800)]
`dired-next-line' movement style (bug#65621)

Point will skips empty lines and optionally goto the other
end when encountering a boundary.
* lisp/dired.el (dired-movement-style): Control whether to
skip empty lines and whether to cycle through non-empty
lines.
* lisp/dired.el (dired-next-line): Add a new movement style
controlled by `dired-movement-style'.
* etc/NEWS (dired-movement-style):

18 months agoMake ‘mailcap-viewer-passes-test’ return t for viewers without tests
Felix Dietrich [Sun, 6 Aug 2023 04:01:24 +0000 (06:01 +0200)]
Make ‘mailcap-viewer-passes-test’ return t for viewers without tests

* lisp/net/mailcap.el (mailcap-viewer-passes-test):
Make ‘mailcap-viewer-passes-test’ follow its docstring and return t
for viewers without a test.  (Bug#65224)
* test/lisp/net/mailcap-tests.el
(mailcap-viewer-passes-test-w/o-test-returns-t): New test.

18 months ago; List myself as the Android port maintainer
Po Lu [Sun, 10 Sep 2023 06:11:37 +0000 (14:11 +0800)]
; List myself as the Android port maintainer

* admin/MAINTAINERS: Add myself and Android files.

18 months agoUpdate Android port
Po Lu [Sun, 10 Sep 2023 05:46:52 +0000 (13:46 +0800)]
Update Android port

* src/sfntfont.c (sfntfont_probe_widths): Prevent widths of
glyphs representing control characters from affecting the
average width.

18 months agoCorrect many instances of ``allows to''
Po Lu [Sun, 10 Sep 2023 01:33:50 +0000 (09:33 +0800)]
Correct many instances of ``allows to''

Refer to:
lists.gnu.org/archive/html/emacs-devel/2016-01/msg01598.html

* doc/emacs/frames.texi (Tab Bars):

* doc/emacs/maintaining.texi (Tag Syntax):

* doc/lispref/compile.texi (Native Compilation):

* doc/lispref/control.texi (Destructuring with pcase Patterns):

* doc/lispref/display.texi (Overlay Properties, Glyphless Chars):

* doc/lispref/frames.texi (Size Parameters, Layout Parameters)
(Child Frames):

* doc/lispref/minibuf.texi (Minibuffer Windows):

* doc/lispref/processes.texi (Asynchronous Processes):

* doc/lispref/windows.texi (Precedence of Action Functions)
(Mouse Window Auto-selection):

* doc/misc/autotype.texi (Autoinserting):

* doc/misc/efaq.texi (New in Emacs 28):

* doc/misc/idlwave.texi (Examining Variables):

* doc/misc/ses.texi (Quick Tutorial, Standard formula functions):

* doc/misc/tramp.texi (External methods, FUSE-based methods):

* lisp/comint.el (comint-insert-previous-argument-from-end):

* lisp/emacs-lisp/rmc.el (read-multiple-choice):

* lisp/gnus/gnus-util.el:

* lisp/mail/rmailsum.el (rmail-summary-progressively-narrow):

* lisp/mouse.el (mouse-drag-track):

* lisp/net/tramp-sudoedit.el:

* lisp/obsolete/landmark.el:

* lisp/org/org.el (org-startup-truncated, org-file-apps):

* lisp/pixel-scroll.el (pixel-scroll-precision-mode):

* lisp/progmodes/cperl-mode.el (cperl-praise):

* lisp/simple.el (yank-from-kill-ring, kill-visual-line):

* lisp/window.el (delete-window-choose-selected):

* src/ChangeLog.11:

* src/xdisp.c (syms_of_xdisp):

* src/xterm.c (handle_one_xevent): The construct ``allows to
<infinitive>'' is not English inasmuch as no direct object to
``allows'' is provided.  Correct and rephrase each instance of such a
construct within our documentation and commentary.

18 months agoFix treesit-node-at wrt local parsers
Yuan Fu [Sat, 9 Sep 2023 19:35:13 +0000 (12:35 -0700)]
Fix treesit-node-at wrt local parsers

* lisp/treesit.el (treesit-node-at): Don't compute language at point
first.  Because treesit-language-at uses treesit-node-at with a
language argument. Only call treesit-language-at when PARSER-OR-LANG
is nil.

18 months ago; * doc/emacs/android.texi (Android Windowing): Fix markup error.
Po Lu [Sat, 9 Sep 2023 13:59:30 +0000 (21:59 +0800)]
; * doc/emacs/android.texi (Android Windowing): Fix markup error.

18 months agoAdd byte-compiler warning about useless trailing cond clauses
Mattias Engdegård [Sat, 9 Sep 2023 11:04:54 +0000 (13:04 +0200)]
Add byte-compiler warning about useless trailing cond clauses

Warn about clauses after the default clause, as in

    (cond ((= x 0) (say "none"))
          (t (say "some"))
          (say "goodbye"))

because they are very much an indicator of a mistake (such as
misplaced brackets), and since they are deleted by the optimiser, any
other warnings there are lost and the user wouldn't know that
something is wrong otherwise.

* lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Add warning.
* etc/NEWS: Announce.
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-test--with-suppressed-warnings): Add test case.

18 months agoDon't cache warnings between bytecode compilation tests
Mattias Engdegård [Sat, 9 Sep 2023 11:03:42 +0000 (13:03 +0200)]
Don't cache warnings between bytecode compilation tests

* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--with-fresh-warnings): New macro.
(test-byte-comp-compile-and-load, bytecomp--with-warning-test):
Use it.

18 months agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 9 Sep 2023 08:33:47 +0000 (04:33 -0400)]
Merge from origin/emacs-29

b8a8106fa1a ; Add missing space in the manual
5b906b62157 Fix defcustom :type of ielm-indirect-setup-hook
82af484ec15 ; Two updates of etc/TODO
0ab2823f518 ; Describe in PROBLEMS 2 problems with keyboard input
4e7112ab211 ; Fix inaccuracy in ELisp reference manual
34bbb6c8d21 Document NonGNU ELPA in FAQ
2af092741e5 Fix remote path setting in Eshell
4613575d97f ; * lisp/completion.el (dynamic-completion-mode): Fix las...
2f0f33fbf9d Update docs for (co-)maintainer changes
b068fcd4a31 * doc/lispref/strings.texi (Text Comparison): Fix typo (b...
2e2a5f8118c Adapt Tramp manual
d32f00a35bc Improve docstring of message-sendmail-envelope-from
1a668cda8bc Unbreak builds with CHECK_STRUCTS.
77b6e9bb17b Improve documentation of EPG
d3382f94714 ; * lisp/completion.el (dynamic-completion-mode): Doc fix.
1458daf3164 Avoid crashes on macOS with context menus

# Conflicts:
# src/pdumper.c

18 months ago; Merge from origin/emacs-29
Eli Zaretskii [Sat, 9 Sep 2023 08:32:58 +0000 (04:32 -0400)]
; Merge from origin/emacs-29

The following commit was skipped:

14819131fff Fix c-ts-mode BSD style indentation

18 months agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 9 Sep 2023 08:32:45 +0000 (04:32 -0400)]
Merge from origin/emacs-29

bc56da92d8d ; Fix error in 'tex-recenter-output-buffer'
d17c5adc057 Fix regexp for recognizing PBM images
9e9f61866e7 Improve wording in ELisp manual
7427efa033b Fix typo (Bug#65764)
59c66244080 ; * lisp/ido.el (ido-completion-buffer): Fix :type (bug#6...
4ec4b18c2a0 Fix libgccjit build on Haiku
80bdcf8f351 (regexp-tests-backtrack-optimization): Mark it as failing
8a9e653cc82 ; Add regression test for bug#65726
6fad73d7cc5 * src/regex-emacs.c (mutually_exclusive_p): Fix inf-loop ...
1d3d4196073 ; * lisp/files.el (save-some-buffers-functions): Doc fix ...
42b14c6e5bb Bump seq version to 2.24
ff5190a174f Add note on ELPA to admin/notes/bug-triage
f1e4cbe72aa ; * etc/PROBLEMS: Minor wording fix.
fd5593c7f25 * etc/PROBLEMS: Mention bug#65432 and its remedy.
dd896ea1e62 Ignore errors when checking for object initializers (bug#...
3550f44c17c ; Fix typos
5b246b9b817 * CONTRIBUTE: Document making ChangeLogs with Magit.
0bd46619413 Doc fixes for obsolete functions and variables
524c0c34f24 ; * lisp/ffap.el (ffap-rfs-regexp): Fix :type (bug#65698).
f48dccc4675 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
71a85e22668 A revision to the Widget manual
dbbcf4a6599 Fix fontification of " in edit-kbd-macro

# Conflicts:
# test/src/regex-emacs-tests.el

18 months ago; * lisp/progmodes/c-ts-mode.el (treesit-parser-root-node): Declare.
Eli Zaretskii [Sat, 9 Sep 2023 08:29:48 +0000 (11:29 +0300)]
; * lisp/progmodes/c-ts-mode.el (treesit-parser-root-node): Declare.

18 months agoUpdate Android port
Po Lu [Sat, 9 Sep 2023 07:49:47 +0000 (15:49 +0800)]
Update Android port

* src/android-asset.h (android_asset_read_internal): Return an
error indication if an exception arises while reading.
(AAsset_getBuffer): Free BUFFER using the C library free
function.

18 months ago; Fix last change
Jim Porter [Sat, 9 Sep 2023 05:24:06 +0000 (22:24 -0700)]
; Fix last change

* test/lisp/eshell/esh-proc-tests.el
(esh-proc-test/sigpipe-exits-process): Make sure we have no *new*
processes, instead of making sure we have no processes at all.

18 months ago; Fix name of an Eshell test
Jim Porter [Sat, 9 Sep 2023 04:08:57 +0000 (21:08 -0700)]
; Fix name of an Eshell test

* test/lisp/eshell/esh-proc-tests.el
(esh-var-test/output/remote-redirect): Rename to...
(esh-proc-test/output/remote-redirect): ... this.

18 months ago* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause): Fix bug#65833
Stefan Monnier [Sat, 9 Sep 2023 02:17:43 +0000 (22:17 -0400)]
* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause): Fix bug#65833

For some reason the intervals case failed to push the var to
`loop-for-bindings` before pushing to `loop-for-sets`.
AFAICT this was the only place where we made that mistake.

18 months agoMicro-optimize sfnt_interpret_trap
Po Lu [Sat, 9 Sep 2023 02:00:17 +0000 (10:00 +0800)]
Micro-optimize sfnt_interpret_trap

* src/sfnt.c (AVOID) [TEST]: Define to its standard value in
lisp.h.
(sfnt_interpret_trap): Label AVOID.

18 months ago* lisp/tempo.el (tempo-insert): Use `pcase` and `dolist`
Stefan Monnier [Fri, 8 Sep 2023 23:41:28 +0000 (19:41 -0400)]
* lisp/tempo.el (tempo-insert): Use `pcase` and `dolist`