[ESS] do not change window configuration under R debugging

Ramon Diaz-Uriarte rd|@z02 @end|ng |rom gm@||@com
Thu Dec 17 01:55:54 CET 2020

Dear Alex,

Thanks, but it doesn't solve the issue. And creates a new problem ---for
me--- which is that R does not start in the window where I issue M-x R (if
I change the order, and place display-buffer-same-window first, this new
problem does not appear, but the original issue is still not solved).



On Wed, 16-December-2020, at 20:56:55, Alex Branham <alex.branham using gmail.com> wrote:
> Does adding display-buffer-reuse-window and/or
> display-buffer-reuse-mode-window to your display-buffer-alist
> configuration help?
> (setq display-buffer-alist
>       '(("*R" . (display-buffer-reuse-window
>                  display-buffer-reuse-mode-window
>                  display-buffer-same-window))))
> On Wed 16 Dec 2020 at 10:37, Ramon Diaz-Uriarte via ESS-help <ess-help using r-project.org> wrote:
>> Dear All,
>> A week ago I posted this question in stackoverflow
>> (https://stackoverflow.com/questions/65216134/ess-emacs-do-not-change-window-configuration-under-r-debugging-tracebug),
>> so as to be able to include screenshots; maybe it was not a great idea, so
>> here I go without screenshots.
>> I would like to prevent ESS from changing my window configuration but when
>> ESS tracebug is active, entering debugging changes the window
>> configuration.
>> Suppose three windows in the emacs frame: (1) an R file that defines a
>> function; (2) an R script that calls the function defined in (1); (3): the
>> inferior R ess process. If from (2) I send code to the R interpreter, by
>> default (2) gets replaced by (1) (showing the line to be evaluated,
>> etc). The window showing (3) is left where it originally was; so we
>> actually have the buffer that was in (1) shown twice (at 2 and at 1).
>> This happens to me under this configuration (starting emacs as emacs -Q)
>> (package-initialize)
>> (use-package ess)
>> I have an additional configuration (all in the spirit of "do not disrupt my
>> window configuration: I'll tell you in what window to start by issuing M-x
>> R there"):
>> (setq display-buffer-alist
>>       '(("*R" . (display-buffer-same-window)))
>>       )
>> With this configuration, under debug, window (2) now displays the R session
>> (i.e., the inferior R buffer is shown at the original window location 3,
>> and now at 2 also).
>> If I disable tracebug, M-x ess-tracebug, no window changes take place, but
>> I do not want to disable following the execution on the window (window 1)
>> that has the code. I would like to use tracebug but avoid any change to my
>> window configuration: just show (1) with the debugging stuff, but leave (2)
>> alone. How can I do that?
>> Thanks,
>> R.

Ramon Diaz-Uriarte
Department of Biochemistry, Lab B-25
Facultad de Medicina
Universidad Autónoma de Madrid 
Arzobispo Morcillo, 4
28029 Madrid

Phone: +34-91-497-2412

Email: rdiaz02 using gmail.com
       ramon.diaz using iib.uam.es


More information about the ESS-help mailing list