[ESS] ESS+Polymode Questions

Marc Schwartz m@rc_@chw@rtz @end|ng |rom me@com
Thu Mar 7 18:17:41 CET 2019


Hi Alex,

Thanks for your reply. Responses inline below.

Marc


> On Mar 7, 2019, at 10:24 AM, Alex Branham <alex.branham using gmail.com> wrote:
> 
> 
> On Wed 06 Mar 2019 at 18:53, Marc Schwartz via ESS-help <ess-help using r-project.org> wrote:
> 
>> Three questions:
>> 
>> 1. While the syntax highlighting seems to be generally preserved in terms of fonts and colors from ESS and auctex, the following text:
>> 
>> <<results=*>>=
>> 
>> @
>> 
>> that defines the boundary of an R chunk is bolded in black instead of red. I Googled for polymode colors but did not see anything obvious, so was wondering if someone can point me to the fontlock settings for the above to change it from black to red. Red stands out better for my aging eyes...
> 
> Usually M-x describe-face defaults to the face under point, perhaps
> that's what you need?


It just shows the default 'bold', not a specific font-lock face.

If I revert to the old ESS configuration, so that polymode is disabled, the face appears to be a combination of:

  font-lock-keyword-face

which is actually Purple and colors the text within the '<<' and the '>>=='

and 

  font-lock-constant-face

which is red and colors the boundary symbols above as well as the '@'.

I tried to explicitly specify those in my .emacs in the custom-set-faces section with:

 '(font-lock-constant-face ((((class color) (background light)) (:foreground "Red"))))
 '(font-lock-keyword-face ((((class color) (background light)) (:foreground "Purple"))))

however, they appear to be ignored when polymode is active.

Any workarounds?


> 
>> 2. When starting an R session (M-x R), the new R buffer opens in a new frame to the right of the current frame, rather than in the current frame, as was the case with ESS. Is there a way to change this behavior so that it opens in the current frame? I generally work with my R/Rnw files in the top frame and the R session in the lower frame, so this is a quirk that I would like to change, if possible.
> 
> This is probably a result of ESS respecting `display-buffer'. If you
> want R to start in a window below your current buffer, use something
> like this:
> 
> (add-to-list 'display-buffer '("*R" (display-buffer-reuse-window display-buffer-at-bottom)
>  (window-width . 0.5) (reusable-frames . nil)))
> 
> Let me know if that doesn't do what you want.


I get the following error message:

Symbol's value as variable is void: display-buffer


> 
>> 3. After opening a Rnw file and starting an R session, I get the following message in the flymake log buffer:
>> 
>> Warning [flymake FileName.Rnw[R]]: Disabling backend flymake-proc-legacy-flymake because (error Can’t find a suitable init function)
>> Error [ess-r-flymake  *ess-r-flymake*]: Need ‘lintr‘ version > v1.0.3
>> 
>> I do have lintr version 1.0.3 installed from CRAN and, based upon a Google search, I have the following in my .emacs:
>> 
>> (remove-hook 'flymake-diagnostic-functions 'flymake-proc-legacy-flymake)
>> 
>> prior to both ESS and polymode being loaded.
>> 
>> Is this a temporary situation pending a yet to be released version of lintr, or is there something else going on here?
> 
> Yes, we rely on lintr features not yet released on CRAN. You can get the
> development version with devtools::install_github("jimhester/lintr").


OK, thanks on that. I installed the development version from Github and that seems to have resolved the issue.

Is there any indication as to a time frame for a new release of lintr to CRAN?

Thanks,

Marc


> 
> Thanks,
> Alex



More information about the ESS-help mailing list