summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBlake Romero <blake@developercraft.com>2025-10-18 20:32:57 +0100
committerBlake Romero <blake@developercraft.com>2025-10-18 20:32:57 +0100
commit4678871f6fa4603fad9c41aafc026039470177fb (patch)
treed1e1dcd834b2ffdfe533610adb5ea6502ab3230c
parentaebca6be26bdcab22d252490e4aaff584f994899 (diff)
Refactor display buffer seetings
-rw-r--r--emacs-config.org106
1 files changed, 89 insertions, 17 deletions
diff --git a/emacs-config.org b/emacs-config.org
index 54381d8..c3f13a6 100644
--- a/emacs-config.org
+++ b/emacs-config.org
@@ -118,37 +118,95 @@ Add advice to enable ~query-replace~ to search the whole buffer or region if sel
(advice-add 'query-replace-regexp :around #'+advice-goto-top-no-region)
#+end_src
-Eshell display settings.
+Switch buffer behaviour.
#+begin_src elisp
- (cl-pushnew '("\\*?e?shell\\*"
+ (setq-default
+ switch-to-buffer-obey-display-actions t
+ switch-to-buffer-in-dedicated-window 'prompt)
+#+end_src
+
+Split behaviour.
+#+begin_src elisp
+ (setq-default
+ split-height-threshold 80
+ split-width-threshold 125)
+#+end_src
+
+Return to window layout when exiting agenda.
+#+begin_src elisp
+ (with-eval-after-load 'org-agenda
+ (setq-default org-agenda-restore-windows-after-quit t))
+#+end_src
+
+*** Display Buffers
+See the following for more info:
+- [[info:elisp#Displaying Buffers][Info "(elisp) Displaying Buffers"]]
+- [[info:elisp#Buffer Display Action Functions][Info "(elisp) Buffer Display Action Functions"]]
+- [[info:elisp#Buffer Display Action Alists][Info "(elisp) Buffer Display Action Alists"]]
+- [[info:elisp#Window Parameters][Info "(elisp) Window Parameters"]]
+
+Shell and terminal display settings.
+#+begin_src elisp
+ (cl-pushnew '("\\*\\(?:.+-\\)?\\(e?shell\\|terminal\\|ansi-term\\)\\*"
(display-buffer-in-side-window)
(side . bottom)
(slot . -1)
- (window-height . 0.5))
+ (window-height . 0.33)
+ (dedicated . t))
display-buffer-alist)
#+end_src
Calendar display settings.
#+begin_src elisp
(cl-pushnew '("Calendar"
- (display-buffer-in-side-window)
- (side . bottom)
- (slot . 1)
- (window-height . 0.25))
+ (display-buffer-below-selected)
+ (window-height . fit-window-to-buffer)
+ (dedicated . t))
display-buffer-alist)
#+end_src
-Org Agenda display settings.
+# Org Agenda display settings.
+# #+begin_src elisp
+# (add-to-list 'display-buffer-alist
+# `("\\*Org Agenda\\*"
+# (display-buffer-in-tab
+# display-buffer-in-direction)
+# (ignore-current-tab . t)
+# (direction . bottom)
+# (window-height . .2)
+# (tab-name . " 🚀️ Agenda")
+# (dedicated . t)
+# ;; Optional
+# (tab-group . "Agenda")))
+# #+end_src
+
+Org agenda.
+#+begin_src elisp
+ ;; (cl-pushnew '("\\*Org Agenda\\*"
+ ;; (display-buffer-in-side-window)
+ ;; (side . right)
+ ;; (window-width . (fit-window-to-buffer . 'ceiling)))
+ ;; display-buffer-alist)
+
+ ;; (cl-pushnew '("\\*Org Agenda\\*"
+ ;; (display-buffer-use-least-recent-windown)
+
+ ;; )
+ ;; display-buffer-alist)
+#+end_src
+
+Edit org source blocks.
+#+begin_src elisp
+ (cl-pushnew '("\\*Org Select\\*"
+ (display-buffer-at-bottom))
+ display-buffer-alist)
+#+end_src
+
+Edit org source blocks.
#+begin_src elisp
- (add-to-list 'display-buffer-alist
- `("\\*Org Agenda\\*"
- (display-buffer-in-tab display-buffer-in-direction)
- (ignore-current-tab . t)
- (direction . bottom)
- (window-height . .2)
- (tab-name . " 🚀️ Agenda")
- ;; Optional
- (tab-group . "Agenda")))
+ (cl-pushnew '("\\*Org Src .+\\*"
+ (display-buffer-full-frame))
+ display-buffer-alist)
#+end_src
diff buffer display settings.
@@ -160,6 +218,20 @@ diff buffer display settings.
display-buffer-alist)
#+end_src
+Occur mode display settings.
+#+begin_src elisp
+ (cl-pushnew '(;; Match
+ (derived-mode . occur-mode)
+ ;; Display Functions
+ (display-buffer-reuse-window
+ display-buffer-below-selected)
+ ;; Parameters
+ (window-height . (fit-window-to-buffer . 'ceiling))
+ (body-function . select-window)
+ (dedicated . t))
+ display-buffer-alist)
+#+end_src
+
** Editor
Tab behaviour settings.
#+begin_src elisp