diff options
| author | jao <jao@gnu.org> | 2026-01-21 13:39:57 +0000 |
|---|---|---|
| committer | jao <jao@gnu.org> | 2026-01-21 13:39:57 +0000 |
| commit | 4e71898553e91f629c91fc13a123f85eb1475bae (patch) | |
| tree | 061a54223db2910d51be4b3c075c5247760d879d | |
| parent | bfdb1665ca86d1b7ff52a0f839ea6ee6a5f3d59f (diff) | |
| download | elibs-4e71898553e91f629c91fc13a123f85eb1475bae.tar.gz elibs-4e71898553e91f629c91fc13a123f85eb1475bae.tar.bz2 | |
afio: side buffers
| -rw-r--r-- | custom/jao-custom-programming.el | 9 | ||||
| -rw-r--r-- | init.el | 10 | ||||
| -rw-r--r-- | lib/eos/jao-afio.el | 10 |
3 files changed, 23 insertions, 6 deletions
diff --git a/custom/jao-custom-programming.el b/custom/jao-custom-programming.el index c9e33da..8a324f8 100644 --- a/custom/jao-custom-programming.el +++ b/custom/jao-custom-programming.el @@ -118,7 +118,9 @@ ("p" "previous error" flymake-goto-prev-error) ("c" "consult flymake" consult-flymake)]) - :bind (:map flymake-mode-map (("M-m" . jao-transient-flymake)))) + :bind (:map flymake-mode-map (("M-m" . jao-transient-flymake) + ("M-n" . flymake-goto-next-error) + ("M-p" . flymake-goto-prev-error)))) ;;;; outline minor mode (use-package outline @@ -305,7 +307,6 @@ (setq rust-mode-treesitter-derive nil) :config (use-package smartparens-rust :demand t) - (jao-define-attached-buffer "\\*cargo-.+\\*" 22) :bind (:map rust-mode-map ("<f3>" . hs-toggle-hiding) ("C-c a" . eglot-code-actions) @@ -328,6 +329,10 @@ (use-package rust-playground :ensure t) +(add-to-list 'display-buffer-alist + '("\\*\\(cargo-.+\\|rustic-compilation\\)\\*" + (display-buffer-reuse-window jao-display-below-eldoc) + (height . 0.5))) ;;;; Clojure (use-package clojure-mode @@ -51,7 +51,7 @@ warning-suppress-types '((comp))) ;;; Paths -(defvar jao-local-lisp-dir (jao-d-l "~/.local/lib/elisp" "~/lib/elisp") +(defvar jao-local-lisp-dir (jao-d-l "~/.emacs.d/lib" "~/lib/elisp") "Directory for external elisp libraries and repos") (defvar jao-data-dir (expand-file-name "data" jao-emacs-dir) @@ -635,7 +635,7 @@ ;;; Calendar, diary ;;;; diary -(setq diary-file (expand-file-name "diary" jao-org-dir) +(setq ;; diary-file (expand-file-name "diary" jao-org-dir) diary-display-function 'diary-fancy-display diary-mail-addr "jao@localhost" diary-comment-start ";;" @@ -923,6 +923,12 @@ (delete-other-windows-vertically) (display-buffer-below-selected buffer alist)) +(defun jao-display-below-eldoc (buffer alist) + (let ((w (selected-window))) + (pop-to-buffer "*eldoc*" nil t) + (jao-display-buffer-below-selected buffer alist) + (select-window w t))) + (defun jao-attached-buffer-entry (name-rx height) `(,name-rx (display-buffer-reuse-window jao-display-buffer-below-selected) diff --git a/lib/eos/jao-afio.el b/lib/eos/jao-afio.el index 74e1d78..72461dd 100644 --- a/lib/eos/jao-afio.el +++ b/lib/eos/jao-afio.el @@ -1,6 +1,6 @@ ;;; jao-afio.el --- workspaces in just one frame -*- lexical-binding: t; -*- -;; Copyright (C) 2020, 2021, 2022, 2024, 2025 jao +;; Copyright (C) 2020, 2021, 2022, 2024, 2025, 2026 jao ;; Author: jao <mail@jao.io> ;; Keywords: frames @@ -83,6 +83,8 @@ (unless (jao-afio--current-config) (jao-afio--init (window-frame (get-buffer-window (current-buffer)))))) +(defvar jao-afio-side-buffers '("*eldoc*")) + ;;; utilities (defun jao-afio-trisect (&optional force) (interactive) @@ -96,7 +98,11 @@ (switch-to-buffer (other-buffer b)) (split-window-horizontally) (switch-to-buffer b) - (balance-windows))) + (balance-windows) + (when-let* ((b (seq-keep #'get-buffer jao-afio-side-buffers))) + (other-window -1) + (switch-to-buffer (car b)) + (other-window 1)))) ((> fw 162) (delete-other-windows) (split-window-horizontally) |
