Yes, that's where I started - the vignette says: ... Run arbtirary R code with @eval. ... the @eval tag. It evaluates code and treats the result as if it was a literal roxygen tags. This makes it possible to eliminate duplication by writing functions. The first thing I noticed was that it does not say anything about delimiters. By trial and error it seems to consider everything up to the next @... tag in the header. Things that are not R code create an error during devtools::document() processing. It seems the output is captured and processed, i.e. System.time() creates a not-a-string error, but as.character(System.time()) passes ... but then nothing appears in the .Rd - and I haven't been able to find a single example of @eval in use in the wild. No joy.> On 2019-04-22, at 01:29, Jeff Newmiller <jdnewmil at dcn.davis.ca.us> wrote: > > I have not used it... but did you read the vignette [1]? It sounds like it is a bit more meta than you think it is... > > [1] https://cran.r-project.org/web/packages/roxygen2/vignettes/rd.html > > On April 21, 2019 7:44:17 PM PDT, Boris Steipe <boris.steipe at utoronto.ca> wrote: >> Playing with Roxygen features, but can't get @eval to work. E.g. ... >> >> #' @eval sprintf("%s", Sys.time()) >> >> ... does not do what I thought it would (i.e. substitute the tag and >> the expression with the string). Instead I see nothing in the .RD file. >> >> Any working examples out there? >> Thanks! >> Boris >> >> ______________________________________________ >> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide >> http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. > > -- > Sent from my phone. Please excuse my brevity.
What tag are you creating with the eval? Your example wouldn't create valid roxygen code... as I said, it looks rather meta.... On April 21, 2019 10:40:27 PM PDT, Boris Steipe <boris.steipe at utoronto.ca> wrote:>Yes, that's where I started - the vignette says: > > ... Run arbtirary R code with @eval. > > ... the @eval tag. It evaluates code and treats the result as if it > was a literal roxygen tags. This makes it possible to eliminate > duplication by writing functions. > >The first thing I noticed was that it does not say anything about >delimiters. By trial and error it seems to consider everything up to >the next @... tag in the header. Things that are not R code create an >error during devtools::document() processing. It seems the output is >captured and processed, i.e. System.time() creates a not-a-string >error, but as.character(System.time()) passes ... but then nothing >appears in the .Rd - and I haven't been able to find a single example >of @eval in use in the wild. > >No joy. > > > > >> On 2019-04-22, at 01:29, Jeff Newmiller <jdnewmil at dcn.davis.ca.us> >wrote: >> >> I have not used it... but did you read the vignette [1]? It sounds >like it is a bit more meta than you think it is... >> >> [1] >https://cran.r-project.org/web/packages/roxygen2/vignettes/rd.html >> >> On April 21, 2019 7:44:17 PM PDT, Boris Steipe ><boris.steipe at utoronto.ca> wrote: >>> Playing with Roxygen features, but can't get @eval to work. E.g. ... >>> >>> #' @eval sprintf("%s", Sys.time()) >>> >>> ... does not do what I thought it would (i.e. substitute the tag and >>> the expression with the string). Instead I see nothing in the .RD >file. >>> >>> Any working examples out there? >>> Thanks! >>> Boris >>> >>> ______________________________________________ >>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >>> https://stat.ethz.ch/mailman/listinfo/r-help >>> PLEASE do read the posting guide >>> http://www.R-project.org/posting-guide.html >>> and provide commented, minimal, self-contained, reproducible code. >> >> -- >> Sent from my phone. Please excuse my brevity.-- Sent from my phone. Please excuse my brevity.
I see .. you mean code that extends Roxygen. I was thinking something simple like an .Rmd chunk. But just creating an existing tag doesn't do much either: #' @eval sprintf("@section Time: %s", Sys.time() ) Renders as... @eval sprintf("@section Time: ... in the .Rd - more than before, but not what I thought. An actual example would be most enlightening. Thanks Jeff, Boris> On 2019-04-22, at 02:25, Jeff Newmiller <jdnewmil at dcn.davis.ca.us> wrote: > > What tag are you creating with the eval? Your example wouldn't create valid roxygen code... as I said, it looks rather meta.... > > On April 21, 2019 10:40:27 PM PDT, Boris Steipe <boris.steipe at utoronto.ca> wrote: >> Yes, that's where I started - the vignette says: >> >> ... Run arbtirary R code with @eval. >> >> ... the @eval tag. It evaluates code and treats the result as if it >> was a literal roxygen tags. This makes it possible to eliminate >> duplication by writing functions. >> >> The first thing I noticed was that it does not say anything about >> delimiters. By trial and error it seems to consider everything up to >> the next @... tag in the header. Things that are not R code create an >> error during devtools::document() processing. It seems the output is >> captured and processed, i.e. System.time() creates a not-a-string >> error, but as.character(System.time()) passes ... but then nothing >> appears in the .Rd - and I haven't been able to find a single example >> of @eval in use in the wild. >> >> No joy. >> >> >> >> >>> On 2019-04-22, at 01:29, Jeff Newmiller <jdnewmil at dcn.davis.ca.us> >> wrote: >>> >>> I have not used it... but did you read the vignette [1]? It sounds >> like it is a bit more meta than you think it is... >>> >>> [1] >> https://cran.r-project.org/web/packages/roxygen2/vignettes/rd.html >>> >>> On April 21, 2019 7:44:17 PM PDT, Boris Steipe >> <boris.steipe at utoronto.ca> wrote: >>>> Playing with Roxygen features, but can't get @eval to work. E.g. ... >>>> >>>> #' @eval sprintf("%s", Sys.time()) >>>> >>>> ... does not do what I thought it would (i.e. substitute the tag and >>>> the expression with the string). Instead I see nothing in the .RD >> file. >>>> >>>> Any working examples out there? >>>> Thanks! >>>> Boris >>>> >>>> ______________________________________________ >>>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >>>> https://stat.ethz.ch/mailman/listinfo/r-help >>>> PLEASE do read the posting guide >>>> http://www.R-project.org/posting-guide.html >>>> and provide commented, minimal, self-contained, reproducible code. >>> >>> -- >>> Sent from my phone. Please excuse my brevity. > > -- > Sent from my phone. Please excuse my brevity.