[Rd] issues with dev.new avoiding RStudio plot device on unix?

Skye Bender-deMoll skyebend at skyeome.net
Sat Sep 26 06:42:14 CEST 2015


Sorry, should have given more background.  x11 works fine on all my 
systems when called by x11().  I'm the maintainer of a package that uses 
the animation library, which has performance issues when used with the 
RStudio plot device.  But if you call plot.new() when using RStudio, you 
get an RStudio device, not the standard device for the platform because 
it overrides the device option.  So I've had to have the library do 
platform detection and platform-specific device calls, which R CMD check 
doesn't like.  I believe that noRStudioGD argument was avoided to give 
users a way around this, but it doesn't seem to be behaving correctly in 
the unix interactive case.

On 09/25/2015 08:31 PM, Ott Toomet wrote:
> Can you describe your problem a bit more?
>
> * What kind of unix system do you have?Â
> * Can you run other X11 programs?
>
> I had a similar issue, and the problem was that the computer was not set
> up to support X11.  As a minimum, you have to install /xauth/, and
> potentially also other libraries if you want to install packages from
> source.
>
> Best,
> Ott
>
> On Fri, Sep 25, 2015 at 11:53 AM, Skye Bender-deMoll
> <skyebend at skyeome.net <mailto:skyebend at skyeome.net>> wrote:
>
>     Hi R-devl,
>
>     I'm still unable to force opening an *interactive* non-Rstudio
>     platform-specific plot device on *unix* systems.
>
>     dev.new() add a new argument 'noRStudioGD' in R 3.1.1.  Thank you.
>     It works for me when using RStudio on Windows, but on the unix
>     system it opens a pdf device instead of an interactive device when
>     using an interactive RStudio session (with R_DEFAULT_DEVICE and
>     R_INTERACIVE_DEVICE not set).
>
>     Do other unix RStudio users see this behavior?
>
>     It appears that the relevant line of dev.new (and in zzz.R):
>
>     Â  Â else if (nzchar(dsp) && .Platform$GUI %in% c("X11", "Tk"))
>     Â  Â  Â  Â  Â  Â  Â X11
>     Â  Â else defdev
>
>
>     but when I step through in debugger, I see that
>
>     Browse[2]> .Platform$GUI
>     [1] "RStudio"
>
>     so instead of returning X11, it returnd defdev (pdf)
>
>     perhaps changing to
>
>     .Platform$GUI %in% c("X11", "Tk", "RStudio")
>
>     would work, but seems a little strange logically.
>
>
>     best,
>     Â -skye
>
>     p.s.  I wonder if instead of having a noRStudioGD=TRUE flag, it
>     might be a more future-proof design to have an
>     avoid.devices='RStudioGD' argument  in case users need to induce
>     similar behavior to avoid other current or future devices?Â
>     Probably to late now tho.
>
>     ______________________________________________
>     R-devel at r-project.org <mailto:R-devel at r-project.org> mailing list
>     https://stat.ethz.ch/mailman/listinfo/r-devel
>
>
>
>
> --
> Ott Toomet
>
> Visiting Researcher
> School of Information
> Mary Gates Hall, Suite 310
> University of Washington
> Seattle, WA 98195
>



More information about the R-devel mailing list