1
votes

This question probably applies to other emacs modes than haskell-mode, since I assume emacs has got a general way of opening windows for automatically created buffers:

haskell-mode for emacs enables me to hit C-c C-l to load the contents of the current buffer into a Haskell interactive session, which automatically causes emacs to open the buffer for the session in a split window in the current frame. Since I am running a setup with multiple emacs clients connected to a server, I really don't want to show the buffer in each open frame I've got. Is there a way to prevent emacs from doing this kind of thing?

2
And where do you want it to be shown? - Diego Sevilla
It shouldn't be. If the buffer for the interactive system is just created in the background, I can place it in the frame/window I desire by myself. - Ulrik Rasmussen
The 'most correct' solution that I've found is posted here. Here is the relevant entry in the Emacs manual explaining how the variables and underlying process works. - 732

2 Answers

3
votes

Ah, I found a solution just after posting this :).

Adding

(setq special-display-buffer-names
      '("*haskell*" "*Help*"))

to my .emacs tells emacs to open these buffers in a frame instead of a split.

Edit: But still, an even better solution would be for emacs never to create frames/splits automatically, but just silently create special buffers in the background. I can't figure out how to specify this though.

0
votes

in init.el

(setq split-height-threshold 5)
(setq split-width-threshold 5)