Prof Brian Ripley <ripley <at> stats.ox.ac.uk> writes: > > It depends what you mean by 'vignette': the R docs have been unclear > (but R >= 2.13.0 are more consistent). In most cases a 'vignette' is > an Sweave document, the vignette source being the .Rnw file, and the > vignette PDF the processed .pdf file. > > At present vignette() means Sweave documents, as only they have > metadata like titles. This is planned to be changed soon. > > On Thu, 14 Jul 2011, Nipesh Bajaj wrote: > > > Hi all, I was trying to create some vignette files for my newly > > developed package, however wondering whether there could be any > > simpler way to do so. In writing R extension it is advised to go > > through Sweave route, however I have already got a big pdf file and > > want to use this as package vignette. > > > > So far I have manually created the inst/doc folder in the main package > > skeleton, and put that file into this, which is not working by calling > > "vignette(file_name)" after I build and load the package. I am > > file_name is not an argument to vignette(): it is 'topic'. And topics > are normally file basenames (without any extension), not file names. > > > getting following error without opening that pdf file: "vignette > > 'file_name' *not* found" > > > > So I like to know, is there any way to use any arbitrary pdf file as > > vignette? > > By definition, no. > > > > > Any suggestion is highly appreciated.
One possibility: as a workaround, you could include your own "xvignette" function in your package: see below. It won't show you indices, but it will pick up any appropriately named file that you include in the inst/doc directory of your package ... xvignette <- function(vname,pkg,ext="pdf") { vname <- paste(vname,ext,sep=".") fn <- system.file("doc",vname,package=pkg) if (nchar(fn)==0) stop("file not found") utils:::print.vignette(list(pdf=fn)) invisible(fn) } You'll have to somehow alert your package users to the fact that this alternative documentation exists -- perhaps in the help package for the package itself. You might fill in the default value of "pkg" above with your package name to make it easier on the user: I thought about using some version of getPackageName(environment(xvignette)) to do it automatically, but that seems too complicated ... ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel