]> git.eshelyaron.com Git - emacs.git/commitdiff
; Don't require 'eshell' in other Eshell files
authorJim Porter <jporterbugs@gmail.com>
Mon, 13 Feb 2023 07:25:40 +0000 (23:25 -0800)
committerJim Porter <jporterbugs@gmail.com>
Wed, 15 Feb 2023 23:45:50 +0000 (15:45 -0800)
This isn't necessary and just makes unloading Eshell harder.

* lisp/eshell/em-banner.el:
* lisp/eshell/em-basic.el:
* lisp/eshell/em-cmpl.el:
* lisp/eshell/em-glob.el:
* lisp/eshell/em-prompt.el:
* lisp/eshell/em-rebind.el:
* lisp/eshell/em-smart.el:
* lisp/eshell/em-term.el:
* lisp/eshell/em-tramp.el:
* lisp/eshell/em-xtra.el:
Stop requiring 'eshell', and instead require specific subcomponents.

* lisp/eshell/em-hist.el: Stop requiring 'eshell' and 'em-pred'
(extension modules shouldn't require each other so they can be
independent).
(eshell-hist-parse-modifier): Ensure this can only be called when
'em-pred' is in use, and declare the relevant function.

* lisp/eshell/eshell.el (eshell-non-interactive-p): Move from here...
* lisp/eshell/esh-mode.el (eshell-non-interactive-p): ... to here.

13 files changed:
lisp/eshell/em-banner.el
lisp/eshell/em-basic.el
lisp/eshell/em-cmpl.el
lisp/eshell/em-glob.el
lisp/eshell/em-hist.el
lisp/eshell/em-prompt.el
lisp/eshell/em-rebind.el
lisp/eshell/em-smart.el
lisp/eshell/em-term.el
lisp/eshell/em-tramp.el
lisp/eshell/em-xtra.el
lisp/eshell/esh-mode.el
lisp/eshell/eshell.el

index 8bc497bdeb321f0a531e227f1ce973c01465e1e4..2bee50b80a46f6fd9e43032559a758641e00b5ca 100644 (file)
@@ -43,7 +43,6 @@
 
 (require 'esh-util)
 (require 'esh-mode)
-(require 'eshell)
 
 ;;;###autoload
 (progn
index bfff3bdf56e7d2c73709246840610177057fd0c8..016afe811b27da86aea2c6b3215466a2b53337e0 100644 (file)
 
 ;;; Code:
 
-(require 'esh-util)
-(require 'eshell)
+(require 'esh-cmd)
+(require 'esh-io)
 (require 'esh-opt)
+(require 'esh-util)
 
 ;;;###autoload
 (progn
index 2439f1ed8040e4e9581bee0a4a14e25e7b6924c0..af8ac4278f1abfbb0a99dbfff43f394f9b9577d4 100644 (file)
@@ -74,9 +74,7 @@
 (require 'esh-util)
 (require 'em-dirs)
 
-(eval-when-compile
-  (require 'cl-lib)
-  (require 'eshell))
+(eval-when-compile (require 'cl-lib))
 
 ;;;###autoload
 (progn
index 716f5c32b870fff53066fe32d0931481c7e009fd..c7360fb246ee5c70320bf337aa1c303fa3eb5c72 100644 (file)
@@ -49,8 +49,9 @@
 
 ;;; Code:
 
+(require 'esh-arg)
+(require 'esh-module)
 (require 'esh-util)
-(eval-when-compile (require 'eshell))
 
 ;;;###autoload
 (progn
index 6e0e471d9107e8a312c7176e7861db7de4593557..4796df1604e20a39132632604980c996d497a1c3 100644 (file)
@@ -59,8 +59,6 @@
 (require 'ring)
 (require 'esh-opt)
 (require 'esh-mode)
-(require 'em-pred)
-(require 'eshell)
 
 ;;;###autoload
 (progn
@@ -769,6 +767,8 @@ matched."
 
 (defun eshell-hist-parse-modifier (hist reference)
   "Parse a history modifier beginning for HIST in REFERENCE."
+  (cl-assert (eshell-using-module 'em-pred))
+  (declare-function eshell-parse-modifiers "em-pred" ())
   (let ((here (point)))
     (insert reference)
     (prog1
index b3a0fadf618a99d9191af93a82930bf64bdf7441..9f9e58e83d753ec7791a3a2e6c31961f1de8dc7a 100644 (file)
@@ -27,8 +27,6 @@
 ;;; Code:
 
 (require 'esh-mode)
-(eval-when-compile (require 'eshell))
-
 (require 'text-property-search)
 
 ;;;###autoload
index f147d4323008aeb74be39a963535349ebbdb78d0..75a2848a9d5b7d0c50cac96229535d385641f7c6 100644 (file)
@@ -24,7 +24,6 @@
 ;;; Code:
 
 (require 'esh-mode)
-(eval-when-compile (require 'eshell))
 
 ;;;###autoload
 (progn
index ca04c42978560845cba7ea9f597467edc60a4646..154ff7602126cd92bfcaa701d554763879c3cd15 100644 (file)
@@ -69,7 +69,6 @@
 ;;; Code:
 
 (require 'esh-mode)
-(eval-when-compile (require 'eshell))
 
 ;;;###autoload
 (progn
index a4d777e4a0d74ff1b5173b1ab0ccfcd7ada7296b..ab26da857b7fa6d96306628cf2c818bc8813fe75 100644 (file)
@@ -34,7 +34,6 @@
 (require 'cl-lib)
 (require 'esh-util)
 (require 'esh-ext)
-(eval-when-compile (require 'eshell))
 (require 'term)
 
 ;;;###autoload
index 13dd62e1617efd5f2bd044f0892836f0f3314315..94eb979703315a775f004bae07835810d19386d6 100644 (file)
@@ -29,8 +29,7 @@
 (require 'esh-cmd)
 
 (eval-when-compile
-  (require 'esh-mode)
-  (require 'eshell))
+  (require 'esh-mode))
 
 (require 'tramp)
 
index defaa7b2887c17c95a79cb61eaa7f5e2b72e700d..45c3ea3c0fc1821286a6727d7c1a74982b10d8fa 100644 (file)
@@ -25,8 +25,6 @@
 
 (require 'cl-lib)
 (require 'esh-util)
-(eval-when-compile
-  (require 'eshell))
 
 ;; There are no items in this custom group, but eshell modules (ab)use
 ;; custom groups.
index 1b8f5ff80184edf93a4f13aa4ebe50953a2b86b4..e0af3579edffadc53fa14a68c2a22bb8b0130c00 100644 (file)
@@ -200,6 +200,11 @@ This is used by `eshell-watch-for-password-prompt'."
 (defvar eshell-first-time-p t
   "A variable which is non-nil the first time Eshell is loaded.")
 
+(defvar eshell-non-interactive-p nil
+  "A variable which is non-nil when Eshell is not running interactively.
+Modules should use this variable so that they don't clutter
+non-interactive sessions, such as when using `eshell-command'.")
+
 ;; Internal Variables:
 
 ;; these are only set to nil initially for the sake of the
index 7a7ece5cb7c8a848065902f07dd7692ba3bb53be..0bfc0413cbfd5df9c26030061ef99454f047434c 100644 (file)
@@ -267,10 +267,7 @@ information on Eshell, see Info node `(eshell)Top'."
 (define-obsolete-function-alias 'eshell-return-exits-minibuffer
   #'eshell-command-mode "28.1")
 
-(defvar eshell-non-interactive-p nil
-  "A variable which is non-nil when Eshell is not running interactively.
-Modules should use this variable so that they don't clutter
-non-interactive sessions, such as when using `eshell-command'.")
+(defvar eshell-non-interactive-p)       ; Defined in esh-mode.el.
 
 (declare-function eshell-add-input-to-history "em-hist" (input))