Function: eshell--unmark-deferrable

eshell--unmark-deferrable is a byte-compiled function defined in esh-cmd.el.gz.

Signature

(eshell--unmark-deferrable COMMAND)

Documentation

If COMMAND is (or ends with) a deferrable command, unmark it as such.

This changes COMMAND in-place by converting function calls listed in eshell-deferrable-commands to their non-deferrable forms so that Eshell doesn't erroneously allow deferring it. For example, eshell-named-command becomes eshell-named-command*.

Source Code

;; Defined in /usr/src/emacs/lisp/eshell/esh-cmd.el.gz
(defun eshell--unmark-deferrable (command)
  "If COMMAND is (or ends with) a deferrable command, unmark it as such.
This changes COMMAND in-place by converting function calls listed
in `eshell-deferrable-commands' to their non-deferrable forms so
that Eshell doesn't erroneously allow deferring it.  For example,
`eshell-named-command' becomes `eshell-named-command*'."
  (let ((cmd command))
    (when (memq (car cmd) '(let progn))
      (setq cmd (car (last cmd))))
    (when (memq (car cmd) eshell-deferrable-commands)
      (setcar cmd (intern-soft
		   (concat (symbol-name (car cmd)) "*"))))
    command))