From 4c5879f102054e36747d7e76e05dd806bea5ea10 Mon Sep 17 00:00:00 2001 From: jao Date: Mon, 28 Nov 2022 03:21:50 +0000 Subject: eat --- init.el | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/init.el b/init.el index 70012d4..e887242 100644 --- a/init.el +++ b/init.el @@ -561,6 +561,7 @@ (pulsar-highlight-face 'jao-themes--hilite)) :config (dolist (f '(jao-prev-window + jao-tracking-next-buffer smartscan-symbol-go-forward smartscan-symbol-go-backward)) (add-to-list 'pulsar-pulse-functions f)) @@ -1589,6 +1590,15 @@ (autoload 'ansi-color-for-comint-mode-on "ansi-color" nil t) (add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on) (defvar jao-use-vterm nil) +(defvar jao-use-eat nil) + +;;;; eat +(use-package eat + :init (setq jao-use-eat t + eat-kill-buffer-on-exit t) + :hook ((eshell-mode . eat-eshell-mode) + (eshell-mode . eat-eshell-visual-command-mode)) + :ensure t) ;;;; term (defvar-local jao-term--cmd nil) @@ -1601,14 +1611,17 @@ (buffer-list))) (defun jao-exec-in-term (cmd &optional name) - (if (and jao-use-vterm (fboundp 'jao-exec-in-vterm)) - (jao-exec-in-vterm cmd name) - (ansi-term "bash" name) - (set-process-sentinel (get-buffer-process (current-buffer)) - (lambda (process event) - (when (string= event "finished\n") - (kill-buffer (process-buffer process))))) - (term-send-string nil (concat cmd " ; exit\n")))) + (cond ((and jao-use-vterm (fboundp 'jao-exec-in-vterm)) + (jao-exec-in-vterm cmd name)) + (jao-use-eat (let ((eat-term-name "xterm-256color")) + (eat cmd) + (setq jao-term--cmd cmd))) + (t (ansi-term "bash" name) + (set-process-sentinel (get-buffer-process (current-buffer)) + (lambda (process event) + (when (string= event "finished\n") + (kill-buffer (process-buffer process))))) + (term-send-string nil (concat cmd " ; exit\n"))))) (defmacro jao-def-exec-in-term (name cmd &rest prelude) `(defun ,(intern (format "jao-term-%s" name)) (&optional term) -- cgit v1.2.3