R:我们可以判断函数是否是从RStudio内部调用的吗?

R:我们可以判断函数是否是从RStudio内部调用的吗?,r,rstudio,R,Rstudio,我想要一个函数,当从RStudio内部调用它时,使用RStudio的查看器,否则使用系统浏览器。现在,我已经通过try()实现了这一点: res多亏@Roland给我指出了这一点,我才找到了这个问题的一个非常简单的布尔答案: > nzchar(Sys.getenv("RSTUDIO_USER_IDENTITY")) # TRUE when inside RStudio # FALSE when o

我想要一个函数,当从RStudio内部调用它时,使用RStudio的查看器,否则使用系统浏览器。现在,我已经通过
try()
实现了这一点:


res多亏@Roland给我指出了这一点,我才找到了这个问题的一个非常简单的布尔答案:

> nzchar(Sys.getenv("RSTUDIO_USER_IDENTITY")) # TRUE  when inside RStudio
                                              # FALSE when outside RStudio

在RStudio网站的讨论中给出了一些其他方法,但我喜欢这一种;据我所知,它简短、严谨、可靠。

请注意,一个专门的智者可能会把垃圾扔进你的系统环境,只是为了“朋克”你在这里。:-。
> nzchar(Sys.getenv("RSTUDIO_USER_IDENTITY")) # TRUE  when inside RStudio
                                              # FALSE when outside RStudio