397 |
(unwind-protect |
(unwind-protect |
398 |
(let ((eshell-non-interactive-p t)) |
(let ((eshell-non-interactive-p t)) |
399 |
(add-hook 'minibuffer-setup-hook 'eshell-mode) |
(add-hook 'minibuffer-setup-hook 'eshell-mode) |
400 |
|
(add-hook 'minibuffer-exit-hook 'eshell-add-command-to-history) |
401 |
(add-hook 'eshell-mode-hook 'eshell-return-exits-minibuffer) |
(add-hook 'eshell-mode-hook 'eshell-return-exits-minibuffer) |
402 |
(unless command |
(unless command |
403 |
(setq command (read-from-minibuffer "Emacs shell command: ")))) |
(setq command (read-from-minibuffer "Emacs shell command: ")))) |
404 |
(remove-hook 'eshell-mode-hook 'eshell-return-exits-minibuffer) |
(remove-hook 'eshell-mode-hook 'eshell-return-exits-minibuffer) |
405 |
|
(remove-hook 'minibuffer-exit-hook 'eshell-add-command-to-history) |
406 |
(remove-hook 'minibuffer-setup-hook 'eshell-mode)) |
(remove-hook 'minibuffer-setup-hook 'eshell-mode)) |
407 |
(unless command |
(unless command |
408 |
(error "No command specified!")) |
(error "No command specified!")) |