2011-11-28 5 views
6

exaclty가있는 두 개의 함수를 포함하여 작은 R 패키지에 동일한 인수가 하나만있는 경우를 가정 해 봅니다. 나는 다음과 같은 태그를 사용하는 첫 번째 함수 내 roxygen2 문서에서roxygen2 태그를 사용할 때 인수 설명이 .Rd 파일에 들어 있습니다. @inheritParams

fct1 <- function(r, K){...} 
fct2 <- function(r, p, K){...} 

: 예를 들면 다음과 같습니다

#' @param p description of argument p 
#' @inheritParams fct1 
: 두 번째 함수의

#' @param r description of argument r 
#' @param K description of argument K 

을, 나는 다음과 같은 태그를 사용

코드를 roxygenize로 처리 한 후 함수 fct2의 .Rd 파일은 p, r, K 순서로 인수를 표시합니다. 사용법 섹션과 동일한 순서로 사용하고 싶습니다. : r, p, K. .Rd 파일을 수동으로 변경하지 않고 어떻게이 주문을받을 수 있습니까?

@inheritParams를 사용하여 복사 및 붙여 넣기를 피하려고합니다.

감사합니다.

+1

https://github.com/klutometis/roxygen/issues – hadley

+0

@hadley에서 버그를 신고하십시오. github에 대한 계정이없는 버그를 신고 할 수 있습니까? 감사합니다. – user1069707

+1

아니요. 그러나 계정은 무료이며 쉽게 설정할 수 있습니다. 불행히도 이러한 스팸으로 가득 찬 날짜에는 계정이 필요합니다. – hadley

답변

2

동일한 문제가 있습니다. 지금은 잘못된 인수 순서를 피하기 위해 약간의 트릭을 사용합니다. (예를 들어, 별도의 .R 파일)

사용 코드 :

#' Function arguments 
#' 
#' @keywords integral 
#' 
#' @name fargs 
#' 
#' @param r .. 
#' @param p .. 
#' @param K .. 
#' 
#' 
NULL 

와 두 기능

#' @inheritParams fargs 

를 사용합니다.

이 경우는 쉽지만, 더 복잡한 예에서 U는이 코드의 여러 블록 (모든 유형의 인수에 대해 별도의 블록)을 사용할 수 있습니다. 어쩌면 그렇게 간단한 방법은 아니지만 어디에서나 동일한 코드를 반복하지 않아도됩니다. 그 블록을 별도의 args.R 파일에 저장하므로 모든 상속 인수가 하나의 파일에 있습니다.

또 다른 방법은 템플릿을 사용하는 것이지만이 방법은 유연하지 않으며 모든 블록에 대해 별도의 .R 파일을 만들어야합니다. 그래서 나는 simmilary 코드 블록을 사용하도록 조언한다.