Function: eshell-unload-modules

eshell-unload-modules is a byte-compiled function defined in esh-module.el.gz.

Signature

(eshell-unload-modules MODULES &optional KIND)

Documentation

Try to unload the specified Eshell MODULES.

KIND can be either core for core modules or extension for extension modules; if nil, KIND defaults to extension.

Source Code

;; Defined in /usr/src/emacs/lisp/eshell/esh-module.el.gz
(defun eshell-unload-modules (modules &optional kind)
  "Try to unload the specified Eshell MODULES.
KIND can be either `core' for core modules or `extension' for
extension modules; if nil, KIND defaults to `extension'."
  ;; We're about to unload this module, but we need to remember whether
  ;; to print messages.
  (let ((verbose eshell-module-loading-messages))
    (dolist (module modules)
      (let ((module-feature (intern (eshell-module--feature-name module kind))))
        (when (featurep module-feature)
          (when verbose (message "Unloading %s..." module))
          (condition-case-unless-debug nil
              (progn
                (unload-feature module-feature)
                (when verbose (message "Unloading %s...done" module)))
            (error (when verbose (message "Unloading %s...failed" module))
                   (lwarn 'eshell :error
                          "Unable to unload Eshell module `%s'"
                          module))))))))