eshell-trap-errors
eshell-trap-errors is a Lisp macro in `esh-cmd.el
'.
(eshell-trap-errors OBJECT)
Trap any errors that occur, so they are not entirely fatal.
Also, the variable `eshell-this-command-hook' is available for the
duration of OBJECT's evaluation. Note that functions should be added
to this hook using `nconc', and *not* `add-hook'.
Someday, when Scheme will become the dominant Emacs language, all of
this grossness will be made to disappear by using `call/cc'...