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
commitfcf171cc9108bc4501c4e877b110a56d1f605297 (patch)
tree24a1c4b5104ff5fd6dc34341cf46e2e0c65e4c7c
parentb3035c595bfe8b2aa7177ae2c9bfbf2b39a7d585 (diff)
downloaddotemacs-fcf171cc9108bc4501c4e877b110a56d1f605297.tar.gz
dotemacs-fcf171cc9108bc4501c4e877b110a56d1f605297.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 c2ec6d15..33b900af 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)