From da98913503c19e2edf6116bf320a5d90c3984e82 Mon Sep 17 00:00:00 2001 From: Benson Chu Date: Thu, 7 May 2020 11:43:14 -0500 Subject: [PATCH] Switch to tab scratch by default when quit --- lisp/switch-tabs.el | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/lisp/switch-tabs.el b/lisp/switch-tabs.el index 76f7a44..1529195 100644 --- a/lisp/switch-tabs.el +++ b/lisp/switch-tabs.el @@ -26,18 +26,17 @@ (defvar show-tab-bar-new-tab nil) -(defun switch-or-create-tab () - (interactive) - (let* ((current-tab (alist-get 'name (tab-bar--current-tab))) - (tab-name - (->> (tab-bar--tabs-recent) - (mapcar #'(lambda (tab) - (alist-get 'name tab))) - (remove-if #'(lambda (tab-name) - (string= tab-name current-tab))) - (ido-completing-read (format "Switch to tab (%s): " - current-tab)))) - (tab-index (tab-bar--tab-index-by-name tab-name))) +(defun switch-or-create-tab (tab-name) + (interactive + (list (let ((current-tab (alist-get 'name (tab-bar--current-tab)))) + (->> (tab-bar--tabs-recent) + (mapcar #'(lambda (tab) + (alist-get 'name tab))) + (remove-if #'(lambda (tab-name) + (string= tab-name current-tab))) + (ido-completing-read (format "Switch to tab (%s): " + current-tab)))))) + (let ((tab-index (tab-bar--tab-index-by-name tab-name))) (if tab-index (tab-bar-select-tab (1+ tab-index)) (tab-bar-new-tab) @@ -61,7 +60,7 @@ old-name)) (tab-bar-close-tab) (when (<= 2 (length (funcall tab-bar-tabs-function))) - (switch-or-create-tab)) + (switch-or-create-tab "scratch")) t))) (defun tab-bar-report ()