diff --git a/userland/terminal.el b/userland/terminal.el index d47dc0c..d99ed8f 100644 --- a/userland/terminal.el +++ b/userland/terminal.el @@ -33,12 +33,22 @@ 'shell)) (defun theurgy-bottom-shell () + "Put a shell in the bottom of the frame." (interactive) (let ((win (car (window-at-side-list nil 'bottom)))) (if (and win (equal 'bottom (window-parameter win 'window-side))) (delete-window win) (funcall (theurgy-shell))))) +(defun theurgy-main-shell () + "Put a shell in a main window." + (interactive) + (if (get-buffer "*Shell Session*") + (switch-to-buffer "*Shell Session*") + (funcall (theurgy-shell) "*Shell Session*"))) + +(define-key global-map (kbd "C-") 'theurgy-main-shell) + (global-set-key (kbd "M-RET") 'theurgy-bottom-shell) (define-key vterm-mode-map (kbd "M-RET") 'theurgy-bottom-shell)