diff options
Diffstat (limited to 'dot_config/emacs/lisp/shell-config.el')
| -rw-r--r-- | dot_config/emacs/lisp/shell-config.el | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/dot_config/emacs/lisp/shell-config.el b/dot_config/emacs/lisp/shell-config.el new file mode 100644 index 0000000..66004df --- /dev/null +++ b/dot_config/emacs/lisp/shell-config.el @@ -0,0 +1,26 @@ +(use-package ghostel + :bind (:map ghostel-semi-char-mode-map + ("C-s" . consult-line) + ;; I'm used to go up/down the shell history with M-n/p from eshell + ;; Simulate this behavior in ghostel by sending C-p and C-n + ("M-p" . (lambda () (interactive) (ghostel-send-key "p" "ctrl"))) + ("M-n" . (lambda () (interactive) (ghostel-send-key "n" "ctrl"))) + :map project-prefix-map + ("m" . ghostel-project) + ("M" . ghostel-project-list-buffers)) + :config + (add-to-list 'project-switch-commands '(ghostel-project "Ghostel") t) + (add-to-list 'project-switch-commands '(ghostel-project-list-buffers "Ghostel buffers") t) + (add-to-list 'ghostel-eval-cmds '("magit-status-setup-buffer" magit-status-setup-buffer))) + +(use-package ghostel-eshell + :ensure nil + :hook (eshell-load . ghostel-eshell-visual-command-mode)) + +(use-package eshell + :ensure nil + :bind (("C-x m" . eshell)) + :custom + (eshell-destroy-buffer-when-process-dies t)) + +(provide 'shell-config) |
