1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-11 09:20:51 +00:00
Commit Graph

168973 Commits

Author SHA1 Message Date
Stefan Kangas
35d88c657e Document using Flymake together with Eglot
* doc/misc/flymake.texi (Top, Using Flymake): Document using
Flymake together with Eglot.  (Bug#60040)
2023-09-10 21:07:36 +02:00
Jim Porter
2ec41c174f 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.
2023-09-10 10:38:25 -07:00
Jim Porter
e554ee0b5f ; 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.
2023-09-10 10:38:25 -07:00
Jim Porter
f9667836c4 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'.
2023-09-10 10:38:25 -07:00
Jim Porter
dd2438eeaa ; 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.
2023-09-10 10:38:25 -07:00
Jim Porter
6419f318e4 ; 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.
2023-09-10 10:38:25 -07:00
Mauro Aranda
e7e7ce67d2 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)
2023-09-10 17:36:30 +02:00
Eli Zaretskii
3f04efe9e7 ; * src/font.h (struct font): Comment about use of average_width. 2023-09-10 18:31:06 +03:00
Stefan Kangas
c54080aebd 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.
2023-09-10 16:45:59 +02:00
Mattias Engdegård
b6032f0fe4 ; 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.
2023-09-10 15:15:12 +02:00
Mattias Engdegård
90b8762ac8 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.
2023-09-10 14:00:19 +02:00
Mattias Engdegård
2f8204f5c3 ; 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.
2023-09-10 13:59:45 +02:00
Stefan Kangas
459b5f6b6d ; * admin/authors.el (authors-aliases): Update. 2023-09-10 11:40:09 +02:00
Michael Albinus
af1e860570 Fix file name completion in `shell'
* lisp/shell.el (shell-completion-vars): Fix setting of
`pcomplete-remote-file-ignore'.  (Bug#65705)
2023-09-10 09:53:47 +02:00
Eli Zaretskii
d5610127f9 ; 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.
2023-09-10 10:44:10 +03:00
shynur
d04c538e7c `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):
2023-09-10 10:37:43 +03:00
Felix Dietrich
4101464b47 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.
2023-09-10 08:16:22 +02:00
Po Lu
a26f399843 ; List myself as the Android port maintainer
* admin/MAINTAINERS: Add myself and Android files.
2023-09-10 14:11:37 +08:00
Po Lu
df18864aa9 Update Android port
* src/sfntfont.c (sfntfont_probe_widths): Prevent widths of
glyphs representing control characters from affecting the
average width.
2023-09-10 13:48:39 +08:00
Po Lu
c0400151f8 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.
2023-09-10 09:33:50 +08:00
Yuan Fu
93a458f25f
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.
2023-09-09 12:36:49 -07:00
João Távora
0c029ae8bc ; tweak etc/TODO item
* etc/TODO (Support external rules for indentation): Add reference
to discussion.
2023-09-09 12:01:51 -05:00
Po Lu
01ba4d6c5f ; * doc/emacs/android.texi (Android Windowing): Fix markup error. 2023-09-09 21:59:57 +08:00
Mattias Engdegård
c137b5195b 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.
2023-09-09 13:24:31 +02:00
Mattias Engdegård
176b7dad71 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.
2023-09-09 13:24:30 +02:00
Eli Zaretskii
9d27b95b26 Merge from origin/emacs-29
b8a8106fa1 ; Add missing space in the manual
5b906b6215 Fix defcustom :type of ielm-indirect-setup-hook
82af484ec1 ; Two updates of etc/TODO
0ab2823f51 ; Describe in PROBLEMS 2 problems with keyboard input
4e7112ab21 ; Fix inaccuracy in ELisp reference manual
34bbb6c8d2 Document NonGNU ELPA in FAQ
2af092741e Fix remote path setting in Eshell
4613575d97 ; * lisp/completion.el (dynamic-completion-mode): Fix las...
2f0f33fbf9 Update docs for (co-)maintainer changes
b068fcd4a3 * doc/lispref/strings.texi (Text Comparison): Fix typo (b...
2e2a5f8118 Adapt Tramp manual
d32f00a35b Improve docstring of message-sendmail-envelope-from
1a668cda8b Unbreak builds with CHECK_STRUCTS.
77b6e9bb17 Improve documentation of EPG
d3382f9471 ; * lisp/completion.el (dynamic-completion-mode): Doc fix.
1458daf316 Avoid crashes on macOS with context menus

# Conflicts:
#	src/pdumper.c
2023-09-09 04:33:47 -04:00
Eli Zaretskii
22fe8955c2 ; Merge from origin/emacs-29
The following commit was skipped:

14819131ff Fix c-ts-mode BSD style indentation
2023-09-09 04:32:58 -04:00
Eli Zaretskii
0273914921 Merge from origin/emacs-29
bc56da92d8 ; Fix error in 'tex-recenter-output-buffer'
d17c5adc05 Fix regexp for recognizing PBM images
9e9f61866e Improve wording in ELisp manual
7427efa033 Fix typo (Bug#65764)
59c6624408 ; * lisp/ido.el (ido-completion-buffer): Fix :type (bug#6...
4ec4b18c2a Fix libgccjit build on Haiku
80bdcf8f35 (regexp-tests-backtrack-optimization): Mark it as failing
8a9e653cc8 ; Add regression test for bug#65726
6fad73d7cc * src/regex-emacs.c (mutually_exclusive_p): Fix inf-loop ...
1d3d419607 ; * lisp/files.el (save-some-buffers-functions): Doc fix ...
42b14c6e5b Bump seq version to 2.24
ff5190a174 Add note on ELPA to admin/notes/bug-triage
f1e4cbe72a ; * etc/PROBLEMS: Minor wording fix.
fd5593c7f2 * etc/PROBLEMS: Mention bug#65432 and its remedy.
dd896ea1e6 Ignore errors when checking for object initializers (bug#...
3550f44c17 ; Fix typos
5b246b9b81 * CONTRIBUTE: Document making ChangeLogs with Magit.
0bd4661941 Doc fixes for obsolete functions and variables
524c0c34f2 ; * lisp/ffap.el (ffap-rfs-regexp): Fix :type (bug#65698).
f48dccc467 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
71a85e2266 A revision to the Widget manual
dbbcf4a659 Fix fontification of " in edit-kbd-macro

# Conflicts:
#	test/src/regex-emacs-tests.el
2023-09-09 04:32:45 -04:00
Eli Zaretskii
f77ea3b2d7 ; * lisp/progmodes/c-ts-mode.el (treesit-parser-root-node): Declare. 2023-09-09 11:29:48 +03:00
Po Lu
8b9d25b408 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.
2023-09-09 15:50:06 +08:00
Jim Porter
09840a8a2f ; 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.
2023-09-08 22:24:06 -07:00
Jim Porter
1bf036bf3f ; 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.
2023-09-08 21:08:57 -07:00
Stefan Monnier
4785a63ab7 * 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.
2023-09-08 22:17:43 -04:00
Po Lu
ec097d85ff Micro-optimize sfnt_interpret_trap
* src/sfnt.c (AVOID) [TEST]: Define to its standard value in
lisp.h.
(sfnt_interpret_trap): Label AVOID.
2023-09-09 10:00:17 +08:00
Stefan Monnier
285210bee5 * lisp/tempo.el (tempo-insert): Use pcase and dolist 2023-09-08 19:41:28 -04:00
Stefan Monnier
740a1e8f33 * lisp/tempo.el (tempo-find-match-string): Simplify 2023-09-08 19:24:53 -04:00
Stefan Monnier
2e907f6df7 * lisp/tempo.el: Remove left over uses of the dynbind dialect
* lisp/tempo.el (tempo-define-template): Use a real closure.
(tempo-insert, tempo-build-collection): Use lexical scoping.
2023-09-08 19:23:08 -04:00
Stefan Monnier
80d0d0fe5e (tempo-user-elements): Make it a proper hook
* lisp/tempo.el (tempo-user-element-functions): Rename from
`tempo-user-elements`.
(tempo-user-elements): Preserve as obsolete alias.
(tempo-is-user-element): Use `run-hook-with-args-until-success`.
2023-09-08 19:18:28 -04:00
Stefan Monnier
8921202658 * lisp/tempo.el: Remove redundant :groups and use #' 2023-09-08 19:15:11 -04:00
Yuan Fu
a2f977d94e
; * lisp/progmodes/c-ts-mode.el (c-ts-base-mode): Fix typo. 2023-09-08 10:10:32 -07:00
Vincent Lefevre
b8a8106fa1 ; Add missing space in the manual
* doc/lispref/compile.texi (Native-Compilation Variables): Add missing
space.  (Bug#65782)

Copyright-paperwork-exempt: yes
2023-09-08 18:49:23 +02:00
Mauro Aranda
5b906b6215 Fix defcustom :type of ielm-indirect-setup-hook
* lisp/ielm.el (ielm-indirect-setup-hook): Fix :type and remove :safe
property, since it was probably a copy-pasta.  (Bug#65821)
2023-09-08 18:44:34 +02:00
Yuan Fu
a1b38cf72a
Extract c-ts-mode--feature-list out
* lisp/progmodes/c-ts-mode.el (c-ts-mode--feature-list): New variable.
2023-09-08 09:39:54 -07:00
Yuan Fu
98f98c66e0
; * lisp/treesit.el (treesit--indent-1): Get all parsers. 2023-09-08 09:09:14 -07:00
Yuan Fu
2db725fb24
; * lisp/treesit.el (treesit--indent-1): Add missing call. 2023-09-08 09:08:28 -07:00
Stefan Monnier
34b1ed3f5e * lisp/pcomplete.el (pcomplete-completions-at-point): Add hack for bug#65089
Improve our guess for `end` and `buftext` when point is not at the end
of the current "thing to complete".
2023-09-08 11:31:35 -04:00
Stefan Kangas
4eb4fb4ad4 Mark two flyspell functions as internal
* lisp/textmodes/flyspell.el: Minor doc fix.
(flyspell--mode-on, flyspell--mode-off): Rename from
'flyspell-mode-on' and 'flyspell-mode-off'.  The old names are
preserved as obsolete aliases.
2023-09-08 16:47:33 +02:00
Eli Zaretskii
82af484ec1 ; Two updates of etc/TODO
* etc/TODO: Remove the redesign-overlays item (already done in
Emacs 29.1).  Add an item about supporting external indentation
rules.
2023-09-08 16:31:14 +03:00
Eli Zaretskii
0ab2823f51 ; Describe in PROBLEMS 2 problems with keyboard input
* etc/PROBLEMS: Describe problems with WSL and PGTK keyboard
input.  (Bug#65802)  (Bug#65811)
2023-09-08 15:35:05 +03:00
Eli Zaretskii
7572620da2 Avoid errors in EWW when EWW is killed
* lisp/net/eww.el (eww-render): Don't signal errors if the page
being rendered was closed.  (Bug#65678)
2023-09-08 15:11:10 +03:00