diff --git a/.emacs.d/config.org b/.emacs.d/config.org index 5bb0d4b..0979ebc 100644 --- a/.emacs.d/config.org +++ b/.emacs.d/config.org @@ -958,6 +958,7 @@ Functions that use package functionality. (string-match-p (concat "^\\*\\(" "e?shell\\|" + "Compile-Log\\|" "Completions\\|" "clangd\\|" ; lsp c/c++ "Faces\\|" @@ -969,6 +970,21 @@ Functions that use package functionality. "\\).*") name) ))) + + (defun dot/kill-buffer-or-window () + (interactive) + (if (centaur-tabs-hide-tab (buffer-name)) + (kill-buffer-and-window) + (delete-window)) + ) + + (defun dot/buffer-cleanup () + (interactive) + (dolist (buffer (buffer-list)) + (when (centaur-tabs-hide-tab buffer) + (kill-buffer buffer)) + ) + ) ) (defun dashboard-goto-bookmarks () @@ -1102,7 +1118,7 @@ Set custom keybinds to functionality of default modes. #+BEGIN_SRC emacs-lisp ;; Buffers (global-set-key (kbd "C-x C-b") 'ibuffer) - (global-set-key (kbd "M-w") 'kill-this-buffer) + (global-set-key (kbd "M-w") 'kill-buffer-and-window) ;; Config edit/reload (global-set-key (kbd "C-c r") 'config-reload) @@ -1247,16 +1263,17 @@ General.el ~leader key binds. "b" '(:ignore t :which-key "buffer/bookmark") "b a" '(auto-revert-mode :which-key "Auto revert buffer") "b b" '(switch-to-buffer :which-key "Switch buffer") - "b B" '(ibuffer :which-key "List buffers") "b d" '(kill-current-buffer :which-key "Kill buffer") "b h" '(previous-buffer :which-key "Previous buffer") "b k" '(kill-current-buffer :which-key "Kill buffer") "b l" '(next-buffer :which-key "Next buffer") "b m" '(bookmark-set :which-key "Make bookmark") - "b M" '(bookmark-delete :which-key "Delete bookmark") "b n" '(evil-buffer-new :which-key "New empty buffer") "b r" '(revert-buffer :which-key "Revert buffer") "b s" '(basic-save-buffer :which-key "Save buffer") + "b B" '(ibuffer :which-key "List buffers") + "b C" '(dot/buffer-cleanup :which-key "Cleanup buffers") + "b M" '(bookmark-delete :which-key "Delete bookmark") "b S" '(evil-write-all :which-key "Save all buffers") "b " '(previous-buffer :which-key "Previous buffer") "b " '(next-buffer :which-key "Next buffer") @@ -1327,23 +1344,26 @@ General.el ~leader key binds. "u" '(auto-package-update-now :which-key "Update packages") ;; Window - ;; "w" '(:keymap evil-window-map :which-key "window") - "w" '(:ignore t :which-key "window") - "w =" '(balance-windows-area :which-key "Balance windows area") - "w h" '(windmove-left :which-key "Focus window left") - "w j" '(windmove-down :which-key "Focus window down") - "w k" '(windmove-up :which-key "Focus window up") - "w l" '(windmove-right :which-key "Focus window right") - "w o" '(delete-other-windows :which-key "Close other windows") - "w s" '(:ignore t :which-key "split") - "w s h" '(split-follow-horizontally :which-key "Split horizontal") - "w s v" '(split-follow-vertically :which-key "Split vertical") - "w w" '(other-window :which-key "Focus other window") - "w q" '(delete-window :which-key "Close window") - "w " '(windmove-left :which-key "Focus window left") - "w " '(windmove-right :which-key "Focus window right") - "w " '(windmove-up :which-key "Focus window up") - "w " '(windmove-down :which-key "Focus window down") + "w" '(:ignore t :which-key "window") + "w +" '(evil-window-increase-height :which-key "Increase window height") + "w -" '(evil-window-decrease-height :which-key "Decrease window height") + "w <" '(evil-window-decrease-width :which-key "Decrease window width") + "w =" '(balance-windows :which-key "Balance windows") + "w >" '(evil-window-increase-width :which-key "Increase window width") + "w _" '(evil-window-set-height :which-key "Maximize window height") + "w h" '(windmove-left :which-key "Focus window left") + "w j" '(windmove-down :which-key "Focus window down") + "w k" '(windmove-up :which-key "Focus window up") + "w l" '(windmove-right :which-key "Focus window right") + "w o" '(delete-other-windows :which-key "Close other windows") + "w s" '(split-follow-horizontally :which-key "Split horizontal") + "w v" '(split-follow-vertically :which-key "Split vertical") + "w w" '(other-window :which-key "Focus other window") + "w q" '(dot/kill-buffer-or-window :which-key "Close window") + "w " '(windmove-left :which-key "Focus window left") + "w " '(windmove-right :which-key "Focus window right") + "w " '(windmove-up :which-key "Focus window up") + "w " '(windmove-down :which-key "Focus window down") ;; winner-redo (built-in window history) ;; winner-undo )