aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-25 22:23:53 -0400
committerCraig Jennings <c@cjennings.net>2026-06-25 22:23:53 -0400
commit7e9932c12dca5716f739958f4259812e00ee65cc (patch)
treed882213d8970c62d13bc5caea81754e6ff6d3a08
parent19644b7ae9a187d5372edf4179672d529cffcc46 (diff)
downloaddotemacs-7e9932c12dca5716f739958f4259812e00ee65cc.tar.gz
dotemacs-7e9932c12dca5716f739958f4259812e00ee65cc.zip
feat(eshell): run eshell commands through EAT via eat-eshell-mode
Enable eat-eshell-mode so eshell's external commands run in a real EAT terminal: visual commands (vim, htop, less) render properly and ANSI output is faithful, while eshell stays the shell (elisp functions as commands, TRAMP transparency). Activated when eshell loads. EAT handles color natively, so it likely supersedes xterm-color for eshell -- left in place pending an interactive color check.
-rw-r--r--modules/eshell-config.el9
1 files changed, 9 insertions, 0 deletions
diff --git a/modules/eshell-config.el b/modules/eshell-config.el
index c2ec6d152..33b900af6 100644
--- a/modules/eshell-config.el
+++ b/modules/eshell-config.el
@@ -179,6 +179,15 @@ pairs where COMMAND is the `cd' string `eshell/alias' should run."
(delete-window)))
(advice-add 'eshell-life-is-too-much :after 'cj/eshell-delete-window-on-exit)
+;; Run eshell's external commands through EAT (a real terminal): visual commands
+;; (vim, htop, less) render properly and ANSI output is faithful, while eshell
+;; stays the shell -- elisp functions as commands + TRAMP transparency. EAT
+;; handles color itself, so it supersedes xterm-color for eshell; the
+;; xterm-color block below stays for now and steps aside if colors double up.
+(with-eval-after-load 'esh-mode
+ (require 'eat)
+ (eat-eshell-mode 1))
+
(use-package eshell-toggle
:custom
(eshell-toggle-size-fraction 2)