Reputation: 3263
My question is similar to a question previously posted but never really answered here:
Disable GUI, graphics devices in R
I do not like the R tcltk popups for CRAN mirror selection. They also pop up to choose a package when searching for help on a function in two packages.
Is there any way to disable these windows without disabling X11 completely? I still want plot() commands to work as normal, but disable the little select menus that take forever to load over a remote connection.
For example, if you use ssh, but don't use -X, then the mirror select is just text within R, you type a number. It's fast. This is what I want, but maintaining X11 for plots b.
Anyone know how to maintain graphics windows but disable the "choice" tcltk windows?
Upvotes: 30
Views: 4614
Reputation: 52478
Place this on a new line in ~/.Rprofile
:
options(repos=c(CRAN="https://cran.r-project.org"))
Restart your R session and the CRAN mirror popup again won't hassle you again!
NOTE: if ~/.Rprofile doesn't exist, you can simply create it. Don't forget the . (that makes it a hidden file).
You can just run this once in your terminal (it will append the line mentioned above to the bottom of your ~/.Rprofile file! (saving you having to track it down and manually edit it). Restart your R session so it takes effect, and the CRAN mirror popup won't appear again.
echo 'options(repos=c(CRAN="https://cran.r-project.org"))' >> ~/.Rprofile
You can set any CRAN mirror you want, "https://cran.r-project.org"
is used above because it's a common one.
This useful info comes from here.
Upvotes: 0
Reputation: 5077
You can also specify the repo within the install.packages()
call. This was tested on R/4.3.0
, e.g.
install.packages("withr", repos = "http://cran.us.r-project.org")
Upvotes: 0
Reputation: 32978
Also have a look at the interactivity package in CRAN if you wish to completley disable interactive funky stuff.
Upvotes: 2
Reputation: 37784
Dirk provides ways to avoid the menus altogether, but to answer your question as posed, I think you want
options(menu.graphics=FALSE)
I tracked this option down by finding the class of objects returned from help
(it's help_files_with_topic
), scanning utils:::print.help_files_with_topic
and finding the line
menu(txt, title = gettext("Choose one"), graphics = getOption("menu.graphics"))
Upvotes: 36
Reputation: 368399
Just set a mirror in the startup files. I have this in my ~/.Rprofile
and I never see that prompt:
## Default repo
local({r <- getOption("repos");
r["CRAN"] <- "http://cran.us.r-project.org";
options(repos=r)})
See help(Startup)
for more things you can customize here, and also see this excellent SO question on customizing ~/.Rprofile
.
Edit: As for your additional question just added in the comments, that is different. In this case you could specify the mapply
explicitly by using the namespace and ::
operator. For example, base::mapply(foo, bar)
would unambiguously pick one from the standard library, and similarly help(mapply, package="base")
asks for the help for a given function from a given package.
Upvotes: 12