Creating package Vignette
Another workaround is to create a "dummy" vignette which does nothing
but include the pdf file. Something like this:
vignette.Rnw:
% \VignetteIndexEntry{vignette}
% \VignetteKeywords{keywords here}
% \VignettePackage{package name}
\documentclass[a4paper]{article}
\usepackage{hyperref}
\usepackage{pdfpages}
\begin{document}
\includepdf[fitpaper=true,pages=-]{vignette-source.pdf}
\end{document}
Not sure if this is totally kosher, but I did this for my package when
the vignette was too computationally intensive to be submitted to
CRAN.
-Melissa
On Thu, Jul 14, 2011 at 1:00 PM, Ben Bolker <bbolker at gmail.com> wrote:
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 at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel