On Tue, 12 Feb 2008, Alistair Gee wrote: > I often want to temporarily modify the options() options, e.g. > > a <- seq(10000001, 10000001 + 10) # some wide object > > with.options <- function(..., expr) { > options0 <- options(...) > tryCatch(expr, finally=options(options0)) > } > > Then I can use: > > with.options(width=160, expr = print(a)) > > But I'd like to avoid explicitly naming the expr argument, as in: > > with.options(width=160, print(a)) > > How can I do this with R's argument matching?
You can't. You could provide a list, though: with.options <- function(optionlist,expr){ option0<-options(optionlist) on.exit(options(options0)) eval.parent(expr) } then with.options(width=160, print(a)) with.options(list(width=160, warn=1), print(a)) -thomas Thomas Lumley Assoc. Professor, Biostatistics [EMAIL PROTECTED] University of Washington, Seattle ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.