(use-package vterm :ensure t :init (setq vterm-always-compile-module t vterm-max-scrollback 100000) :hook (vterm-mode . goto-address-mode) :bind (:map vterm-mode-map ("C-c C-t" . vterm-copy-mode) ("C-l" . vterm-clear)) :config (define-key vterm-mode-map (kbd "C-c C-c") (lambda () (interactive) (vterm-send-string "\C-c")))) (use-package multi-vterm :ensure t :after vterm :bind (("C-c t" . multi-vterm)) :config (defun rul/vterm-new-tab () "Create a new tab and open a new vterm." (interactive) (tab-new) (multi-vterm)) ;; Inside vterm buffers, make C-c t spawn a new tab + vterm (define-key vterm-mode-map (kbd "C-c t") #'rul/vterm-new-tab)) (provide 'rul-terminals)