diff options
| -rw-r--r-- | exwm-buffer-groups.el | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/exwm-buffer-groups.el b/exwm-buffer-groups.el index 8cbaed4..543495e 100644 --- a/exwm-buffer-groups.el +++ b/exwm-buffer-groups.el @@ -90,6 +90,24 @@ workspace." nil nil nil nil current-buffer)))) (switch-to-buffer buffer-or-name)) +(defun exwm-buffer-groups-kill-buffer (buffer-or-name) + "Kill the buffer specified by BUFFER-OR-NAME. +If called interactively, read the buffer name using +`completing-read', completing only on buffers in the current +workspace." + (interactive + (list + (let ((buffers-in-workspace (map 'list + #'buffer-name + (elt exwm-buffer-groups-buffers + exwm-workspace-current-index))) + (current-buffer (buffer-name (other-buffer (current-buffer))))) + ;; Clean up so that "nil" isn't showing up in the list. + (exwm-buffer-groups--remove-buffers) + (completing-read "Switch to buffer: " buffers-in-workspace + nil nil nil nil current-buffer)))) + (kill-buffer buffer-or-name)) + (defun exwm-buffer-groups-move (nth) "Moves the current buffer to the NTH workspace." (interactive |