mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-05 22:20:24 -08:00
This really just generalizes Eshell's previous support for iterative evaluation of a single current command to a list of multiple commands, of which at most one can be in the foreground (bug#66066). * lisp/eshell/esh-cmd.el (eshell-last-async-procs) (eshell-current-command): Make obsolete in favor of... (eshell-foreground-command): ... this (eshell-background-commands): New variable. (eshell-interactive-process-p): Make obsolete. (eshell-head-process, eshell-tail-process): Use 'eshell-foreground-command'. (eshell-cmd-initialize): Initialize new variables. (eshell-add-command, eshell-remove-command) (eshell-commands-for-process): New functions. (eshell-parse-command): Make 'eshell-do-subjob' the outermost call. (eshell-do-subjob): Call 'eshell-resume-eval' to split this command off from its parent forms. (eshell-eval-command): Use 'eshell-add-command'. (eshell-resume-command): Use 'eshell-commands-for-process'. (eshell-resume-eval): Take a COMMAND argument. Return ':eshell-background' form for deferred background commands. (eshell-do-eval): Remove check for 'eshell-current-subjob-p'. This is handled differently now. * lisp/eshell/eshell.el (eshell-command): Wait for all processes to exit when running synchronously. * lisp/eshell/esh-mode.el (eshell-intercept-commands) (eshell-watch-for-password-prompt): * lisp/eshell/em-cmpl.el (eshell-complete-parse-arguments): * lisp/eshell/em-smart.el (eshell-smart-display-move): Use 'eshell-foreground-command'. * test/lisp/eshell/esh-cmd-tests.el (esh-cmd-test/background/simple-command) (esh-cmd-test/background/subcommand): New tests. (esh-cmd-test/throw): Use 'eshell-foreground-command'. * test/lisp/eshell/eshell-tests.el (eshell-test/queue-input): Use 'eshell-foreground-command'. * test/lisp/eshell/em-script-tests.el (em-script-test/source-script/background): Make the test script more complex. * test/lisp/eshell/eshell-tests.el (eshell-test/eshell-command/pipeline-wait): New test. * doc/misc/eshell.texi (Bugs and ideas): Remove implemented feature. |
||
|---|---|---|
| .. | ||
| auth.texi | ||
| autotype.texi | ||
| bovine.texi | ||
| calc.texi | ||
| cc-mode.texi | ||
| ChangeLog.1 | ||
| cl.texi | ||
| dbus.texi | ||
| dired-x.texi | ||
| doclicense.texi | ||
| ebrowse.texi | ||
| ede.texi | ||
| ediff.texi | ||
| edt.texi | ||
| efaq-w32.texi | ||
| efaq.texi | ||
| eglot.texi | ||
| eieio.texi | ||
| emacs-gnutls.texi | ||
| emacs-mime.texi | ||
| epa.texi | ||
| erc.texi | ||
| ert.texi | ||
| eshell.texi | ||
| eudc.texi | ||
| eww.texi | ||
| flymake.texi | ||
| forms.texi | ||
| gnus-faq.texi | ||
| gnus.texi | ||
| gpl.texi | ||
| htmlfontify.texi | ||
| idlwave.texi | ||
| ido.texi | ||
| info.texi | ||
| mairix-el.texi | ||
| Makefile.in | ||
| message.texi | ||
| mh-e.texi | ||
| modus-themes.org | ||
| newsticker.texi | ||
| nxml-mode.texi | ||
| octave-mode.texi | ||
| org-setup.org | ||
| org.org | ||
| pcl-cvs.texi | ||
| pgg.texi | ||
| rcirc.texi | ||
| reftex.texi | ||
| remember.texi | ||
| sasl.texi | ||
| sc.texi | ||
| sem-user.texi | ||
| semantic.texi | ||
| ses.texi | ||
| sieve.texi | ||
| smtpmail.texi | ||
| speedbar.texi | ||
| srecode.texi | ||
| texinfo.tex | ||
| todo-mode.texi | ||
| tramp.texi | ||
| trampver.texi | ||
| transient.texi | ||
| url.texi | ||
| use-package.texi | ||
| vhdl-mode.texi | ||
| vip.texi | ||
| viper.texi | ||
| vtable.texi | ||
| widget.texi | ||
| wisent.texi | ||
| woman.texi | ||