0

I am using the org-roam package, which, while great, uses up the entire side window of my main emacs frame. I would like to use some of that side window to display something else, ideally an eaf browser buffer displaying the roam database using org-roam-server.

However, splitting a side window is not done so easily, when attempted it yields the message Cannot split side window or parent of side window.

The Emacs documentation states

By default, side windows cannot be split via split-window (see Splitting Windows). Also, a side window is not reused or split by any buffer display action (see Buffer Display Action Functions) unless it is explicitly specified as target of that action.

The answer then to specifically target either the org-roam buffer or the eaf buffer using display-buffer-alist. However, I seem to be unable to figure out how

  1. To target the org-roam buffer for splitting or
  2. To tell the eaf buffer to take up the bottom slot in the side window.

I have been experimenting with some code from here and modifying it to at least affect to org-roam buffer, but to no avail. The code mentioned in the link does work, as *info* or *Help* windows do appear in new frames and the right side window respectively.

Below is some code I have been trying to use, to little avail. Does anyone know how I can accomplish what I want? I am admittedly very new to Emacs and Elisp, and this really got me stumped.

(setq
 ;; Maximum number of side-windows to create on (left top right bottom)
 window-sides-slots '(0 1 2 1)
 ;; Default rules
 display-buffer-alist
  `(   
    ("^\\*org-roam)"
    (display-buffer-reuse-window display-buffer-in-previous-window display-buffer-in-side-window)
    (side . top)
    (slot . 0)
    (window-width . 0.33)
    (reusable-frames . visible))
   ))

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.