Building static HTML help pages in R 2.10.x on Windows
On 07/01/2010 2:58 PM, Kevin Wright wrote:
On Thu, Jan 7, 2010 at 9:32 AM, Duncan Murdoch <murdoch at stats.uwo.ca> wrote:
On 07/01/2010 10:00 AM, Michal Kulich wrote:
On 7.1.2010 15:52, Duncan Murdoch wrote:
Not necessarily. The current help system can display information about the current session, e.g. the result of ls(), as a simple example. But if you use a single background session you won't get relevant
information.
Duncan Murdoch
Sorry, I must admit I don't get it.
A more useful example than ls() would be methods(). I think it would be nice to have a list of methods included in the man page for a generic function, and links to their pages if they have their own man pages. You might want to list all installed methods, with some sort of highlighting to indicate which ones are already attached, or perhaps be able to toggle between installed and attached, or whatever. None of that is possible with static help, not even a list of installed methods, because someone might install a new package that offers some others after the static help has already been built.
You just need to use some imagination.
OK, I'll try imagining this approach:
- Static help pages are installed with R.
- install.packages() launches a subroutine to fix the \link references that
need updating. Uninstalling needs to do the same. (Busywork, but that's
why we have computers.)
- I have an R object "foo". I type ShowMeAllMethodsFor("foo",
installed=TRUE, attached=TRUE) which checks all installed packages and
attached packages for appropriate methods, then serves up a dynamic help
page with links to the relevant static help pages, color-coded by
installed/attached.
I don't like the fragmentation of the R help system. This just produces yet another set of pages which are not reachable from anywhere but one place. The help system should be a network of pages which are all interconnected. I should be able to click on something in the ?plot page and get to the ?plot.formula page (which I can do now, based on a static link) or the ?plot.foo page (which hasn't been written yet, but will be by the time I look at ?plot). Duncan Murdoch