Modify eshell-variable-aliases-list buffer-locally
* eat.el (eat-eshell-mode): Don't modify 'eshell-variable-aliases-list'. * eat.el (eat--eshell-local-mode): Modify 'eshell-variable-aliases-list'.
This commit is contained in:
parent
0e1af38de9
commit
5b965543a0
1 changed files with 19 additions and 18 deletions
37
eat.el
37
eat.el
|
@ -7522,6 +7522,14 @@ symbol `buffer', in which case the point of current buffer is set."
|
||||||
#'eat--eshell-synchronize-scroll)
|
#'eat--eshell-synchronize-scroll)
|
||||||
(setq filter-buffer-substring-function
|
(setq filter-buffer-substring-function
|
||||||
#'eat--filter-buffer-substring)
|
#'eat--filter-buffer-substring)
|
||||||
|
(make-local-variable 'eshell-variable-aliases-list)
|
||||||
|
(setq eshell-variable-aliases-list
|
||||||
|
`(("TERM" eat--eshell-term-name t)
|
||||||
|
("TERMINFO" eat-term-terminfo-directory t)
|
||||||
|
("INSIDE_EMACS" eat-term-inside-emacs t)
|
||||||
|
("EAT_SHELL_INTEGRATION_DIR"
|
||||||
|
eat-term-shell-integration-directory t)
|
||||||
|
,@eshell-variable-aliases-list))
|
||||||
;; Make sure glyphless character don't display a huge box glyph,
|
;; Make sure glyphless character don't display a huge box glyph,
|
||||||
;; that would break the display.
|
;; that would break the display.
|
||||||
(eat--setup-glyphless-chars)
|
(eat--setup-glyphless-chars)
|
||||||
|
@ -7531,7 +7539,17 @@ symbol `buffer', in which case the point of current buffer is set."
|
||||||
(t
|
(t
|
||||||
(when eat-enable-blinking-text
|
(when eat-enable-blinking-text
|
||||||
(eat-blink-mode -1))
|
(eat-blink-mode -1))
|
||||||
(mapc #'kill-local-variable locals)))))
|
(mapc #'kill-local-variable locals)
|
||||||
|
(setq eshell-variable-aliases-list
|
||||||
|
(cl-delete-if
|
||||||
|
(lambda (elem)
|
||||||
|
(member elem
|
||||||
|
'(("TERM" eat--eshell-term-name t)
|
||||||
|
("TERMINFO" eat-term-terminfo-directory t)
|
||||||
|
("INSIDE_EMACS" eat-term-inside-emacs t)
|
||||||
|
("EAT_SHELL_INTEGRATION_DIR"
|
||||||
|
eat-term-shell-integration-directory t))))
|
||||||
|
eshell-variable-aliases-list))))))
|
||||||
|
|
||||||
(declare-function eshell-gather-process-output "esh-proc"
|
(declare-function eshell-gather-process-output "esh-proc"
|
||||||
(command args))
|
(command args))
|
||||||
|
@ -7618,13 +7636,6 @@ symbol `buffer', in which case the point of current buffer is set."
|
||||||
(eat--eshell-local-mode +1))))
|
(eat--eshell-local-mode +1))))
|
||||||
(add-hook 'eshell-mode-hook #'eat--eshell-local-mode)
|
(add-hook 'eshell-mode-hook #'eat--eshell-local-mode)
|
||||||
(add-hook 'eshell-directory-change-hook #'eat--eshell-update-cwd)
|
(add-hook 'eshell-directory-change-hook #'eat--eshell-update-cwd)
|
||||||
(setq eshell-variable-aliases-list
|
|
||||||
`(("TERM" eat--eshell-term-name t)
|
|
||||||
("TERMINFO" eat-term-terminfo-directory t)
|
|
||||||
("INSIDE_EMACS" eat-term-inside-emacs t)
|
|
||||||
("EAT_SHELL_INTEGRATION_DIR"
|
|
||||||
eat-term-shell-integration-directory t)
|
|
||||||
,@eshell-variable-aliases-list))
|
|
||||||
(advice-add #'eshell-gather-process-output :around
|
(advice-add #'eshell-gather-process-output :around
|
||||||
#'eat--eshell-adjust-make-process-args)
|
#'eat--eshell-adjust-make-process-args)
|
||||||
(when (>= emacs-major-version 29)
|
(when (>= emacs-major-version 29)
|
||||||
|
@ -7651,16 +7662,6 @@ symbol `buffer', in which case the point of current buffer is set."
|
||||||
(remove-hook 'eshell-mode-hook #'eat--eshell-local-mode)
|
(remove-hook 'eshell-mode-hook #'eat--eshell-local-mode)
|
||||||
(remove-hook 'eshell-directory-change-hook
|
(remove-hook 'eshell-directory-change-hook
|
||||||
#'eat--eshell-update-cwd)
|
#'eat--eshell-update-cwd)
|
||||||
(setq eshell-variable-aliases-list
|
|
||||||
(cl-delete-if
|
|
||||||
(lambda (elem)
|
|
||||||
(member elem
|
|
||||||
'(("TERM" eat--eshell-term-name t)
|
|
||||||
("TERMINFO" eat-term-terminfo-directory t)
|
|
||||||
("INSIDE_EMACS" eat-term-inside-emacs t)
|
|
||||||
("EAT_SHELL_INTEGRATION_DIR"
|
|
||||||
eat-term-shell-integration-directory t))))
|
|
||||||
eshell-variable-aliases-list))
|
|
||||||
(advice-remove #'eshell-gather-process-output
|
(advice-remove #'eshell-gather-process-output
|
||||||
#'eat--eshell-adjust-make-process-args)
|
#'eat--eshell-adjust-make-process-args)
|
||||||
(when (>= emacs-major-version 29)
|
(when (>= emacs-major-version 29)
|
||||||
|
|
Loading…
Add table
Reference in a new issue