diff options
Diffstat (limited to 'lib/eos')
| -rw-r--r-- | lib/eos/jao-buffers.el | 43 |
1 files changed, 35 insertions, 8 deletions
diff --git a/lib/eos/jao-buffers.el b/lib/eos/jao-buffers.el index 2390cf2..c3f4063 100644 --- a/lib/eos/jao-buffers.el +++ b/lib/eos/jao-buffers.el @@ -20,6 +20,8 @@ ;;; Code: +(require 'eldoc) + ;;;; lines ;;;###autoload @@ -35,7 +37,7 @@ (defun jao-display-below-eldoc (buffer alist) (let ((w (selected-window))) - (pop-to-buffer "*eldoc*" nil t) + (pop-to-buffer (eldoc-doc-buffer) nil t) (jao-display-buffer-below-selected buffer alist) (select-window w t))) @@ -45,13 +47,6 @@ (window-height . ,(or height 25)))) ;;;###autoload -(defun jao-attach-below-eldoc (rx &optional h) - (add-to-list 'display-buffer-alist - `(,rx - (display-buffer-reuse-window jao-display-below-eldoc) - (height . (or ,h 0.5))))) - -;;;###autoload (defmacro jao-with-attached-buffer (name-rx height &rest body) (declare (indent defun)) `(let ((display-buffer-alist '(,(jao-attached-buffer-entry name-rx height)))) @@ -62,6 +57,38 @@ (add-to-list 'display-buffer-alist (jao-attached-buffer-entry name-rx height))) +;;;; eldoc +;;;###autoload +(defun jao-eldoc-toggle () + "Toggle eldoc's documentation buffer." + (interactive) + (let ((buffer (eldoc-doc-buffer))) + (if-let* ((w (and buffer (get-buffer-window buffer)))) + (delete-window w) + (eldoc-doc-buffer t)))) + +;;;###autoload +(add-to-list 'display-buffer-alist + '("\\*eldoc\\( .*\\)?\\*" + (display-buffer-reuse-window) + (dedicated . t))) + +(defsubst jao-eldoc-window () (get-buffer-window (eldoc-doc-buffer))) + +;;;###autoload +(defun jao-clear-below-eldoc () + "Delete any windows below the eldoc buffer, if visible" + (interactive) + (unless (jao-eldoc-window) (jao-eldoc-toggle)) + (delete-other-windows-vertically (jao-eldoc-window))) + +;;;###autoload +(defun jao-attach-below-eldoc (rx &optional h) + (add-to-list 'display-buffer-alist + `(,rx + (display-buffer-reuse-window jao-display-below-eldoc) + (height . (or ,h 0.5))))) + ;;;; same mode ;;;###autoload (defun jao-buffer-same-mode (&optional mode pre-fn switch-fn) |
