2011-03-11 6 views
91

La manière dont fonctionne Roxygen semble fonctionner, la première ligne étant la \title, tout le reste est dans le \details, puis toutes les directives @foo traitent ces éléments. Mais la documentation de R est plus riche que cela. Je peux avoir "\section{Llamas}{Are they ungulates?}" dans les fichiers .Rd.Sections arbitraires dans docs roxygen

Mais je ne peux pas faire en sorte que Roxygen fasse autre chose que d'envelopper tout dans \ details. Est-ce que je manque quelque chose?

J'ai une solution hacky, qui est de coller un } inégalé avant mon \section. Ceci termine alors la section \details. Je dois alors ne pas mettre une fin } dedans, parce que roxygen colle en pensant sa fermeture le \details. Eeeeeurrrrrrrrgh.

+2

excellente question. Je suppose que vous avez raison de dire que cela ne peut pas être fait pour le moment. Mais Hadley Wickham a récemment mentionné qu'il détenait la clé du développement futur de Roxygen, alors j'espère que quelque chose d'incroyable apparaîtra dans un proche avenir. – Andrie

+4

En fonction de la profondeur que vous souhaitez obtenir, vous pouvez offrir à Hadley de l'aider avec ce qu'il fait. Je sais que son travail est incroyable, mais après tout, 'Vell, il est juste un type zis, tu sais?'. Vous pouvez lire attentivement le code Hadley a publié à github https://github.com/hadley/roxygen et peut-être lui envoyer un e-mail et lui demander ... – PaulHurleyuk

+1

Bien sûr. J'ai vu Hadley ici aussi, alors il peut être au courant. Au début, je pensais avoir manqué quelque chose dans les documents, comme une directive "@section lamas" ou similaire. – Spacedman

Répondre

16

Ce support a été ajouté (au moins dans roxygen2). Vous avez juste besoin d'ajouter @section Llamas: et puis tout ce qui se passe jusqu'à ce qu'une nouvelle directive soit rencontrée sera dans une section Llamas. Voici un exemple

#' Llama llama llama 
#' 
#' More about llamas 
#' 
#' @section Llamas: 
#' Are they ungulates? 
#' 
#' @section Not llamas: 
#' This section is not about llamas. It is not very interesting. 
#' 
#' @param notused A parameter that isn't used at all! 
#' @export 
llama <- function(notused){ 
    return("LLAMA LLAMA LLAMA") 
} 

qui donne les éléments suivants pour le fichier .rd

\name{llama} 
\alias{llama} 
\title{Llama llama llama} 
\usage{ 
    llama(notused) 
} 
\arguments{ 
    \item{notused}{A parameter that isn't used at all!} 
} 
\description{ 
    More about llamas 
} 
\section{Llamas}{ 
    Are they ungulates? 
} 

\section{Not llamas}{ 
    This section is not about llamas. It is not very 
    interesting. 
} 
+3

Llamas rock !!!! – BrodieG

Questions connexes