diff options
-rw-r--r-- | .config/emacs/modules/bd--tabs.el | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/.config/emacs/modules/bd--tabs.el b/.config/emacs/modules/bd--tabs.el index f85c226..a09cf33 100644 --- a/.config/emacs/modules/bd--tabs.el +++ b/.config/emacs/modules/bd--tabs.el @@ -23,13 +23,21 @@ ;;;; use project name if it exists (defun bd/tab-bar-name-function () - (let ((project (project-current))) - (if project - (car (last - (file-name-split - (directory-file-name - (project-root project))))) - (tab-bar-tab-name-current)))) + (mapconcat (lambda (buffer) + (let* ((file (buffer-file-name buffer)) + (project (and file (project-current + nil + (file-name-directory (buffer-file-name buffer)))))) + (if project + (car (last + (file-name-split + (directory-file-name + (project-root project))))) + (tab-bar-tab-name-current)))) + (delete-dups (mapcar #'window-buffer + (window-list-1 (frame-first-window) + 'nomini))) + ", ")) (setopt project-switch-commands '((project-find-file "Find file") |