## ----eval=FALSE---------------------------------------------------------------
# reposRoot <- "path/to/reposRoot"
# ## The names are essential
# contribPaths <- c(source="src/contrib",
# win.binary="bin/windows/contrib/4.0",
# mac.binary="bin/macosx/contrib/4.0")
## ----eval=FALSE---------------------------------------------------------------
# extractVignettes(reposRoot, contribPaths["source"])
## ----eval=FALSE---------------------------------------------------------------
# genReposControlFiles(reposRoot, contribPaths)
## ----eval=FALSE---------------------------------------------------------------
# ## Define classes like this for each logical document chunk
# setClass("pdAuthorMaintainerInfo", contains="PackageDetail")
# setClass("pdVignetteInfo", contains="PackageDetail")
# ## Then define a htmlValue method
# setMethod("htmlValue", signature(object="pdDescriptionInfo"),
# function(object) {
# node <- xmlNode("p", cleanText(object@Description),
# attrs=c(class="description"))
# node
# })
# ## Then you can make use of all this...
# ## Assume object contains a PackageDetail instance
# authorInfo <- as(object, "pdAuthorMaintainerInfo")
# dom$addNode(htmlValue(authorInfo))
## ----eval=FALSE---------------------------------------------------------------
# details <- list(heading=list(tag="h3", text="Details"),
# content="pdDetailsInfo")
# downloads <- list(heading=list(tag="h3", text="Download Package"),
# content="pdDownloadInfo")
# vignettes <- list(heading=list(tag="h3",
# text="Vignettes (Documentation)"),
# content="pdVignetteInfo")
# doSection <- function(sec) {
# dom$addTag(sec$heading$tag, sec$heading$text)
# secObj <- as(object, sec$content)
# dom$addNode(htmlValue(secObj))
# }
# lapply(list(details, downloads, vignettes), doSection)