Eshell/Shell: Default to `M-x shell' in shell switcher.

master
Pierre Neidhardt 2020-05-23 10:46:36 +02:00
parent cc83668eab
commit f5602146eb
1 changed files with 9 additions and 3 deletions

View File

@ -216,6 +216,8 @@ This should be faster then `seq-uniq'."
;; (add-hook 'eshell-mode-hook 'ambrevar/fix-local-epa-file-encrypt-to)
;;; Spawning
(defvar ambrevar/prefer-eshell nil
"If non-nil, default to Eshell instead of M-x shell.")
(when (require 'patch-helm nil 'noerror)
(helm-defswitcher
"Eshell"
@ -225,10 +227,14 @@ This should be faster then `seq-uniq'."
(derived-mode-p 'eshell-mode)
(derived-mode-p 'shell-mode))))
(lambda (&optional name)
;; TODO: Could add an option "prefer-eshell" to choose between Eshell/Shell by default.
(eshell 'new)
(if ambrevar/prefer-eshell
(eshell 'new)
(shell (generate-new-buffer (generate-new-buffer-name "*shell*"))))
(when name
(rename-buffer (format "*eshell<%s>*" name) 'unique)))
(rename-buffer (format "*%sshell<%s>*"
(if ambrevar/prefer-eshell "e" "")
name)
'unique)))
nil
(helm-build-dummy-source
"Create shell buffer"