Pergunta

Estou documentando algumas das minhas funções para um pacote R que estou criando.

Estou usando a marcação roxygen, embora isso seja bastante irrelevante para a minha pergunta.

Eu coloquei equações em minha documentação usando \deqn{...}. Minha pergunta é: Existe uma maneira de cruzar a referência desta equação mais tarde?

Por exemplo, em meu arquivo Rd:

\deqn{\label{test}
 y = mx + b
}

Posso fazer algo como:

Referindo-se à equação \ ref {test}, ...

Eu tentei \eqref{test}, \ref{test} (que ambos obtêm "macro desconhecida" e não são vinculados) e também \link{test} (que reclama que não consegue encontrar a função test porque é apenas para vincular a outras funções).

Caso contrário, temo que tenha que fazer algo hacky e adicionar -- (1) e Refer to equation (1) manualmente dentro do \deqn etc no arquivo Rd ...

Atualização

A resposta geral parece ser "não". (awww ...)

No entanto, posso escrever uma vinheta e usar látex / pacotes "normais". Em qualquer caso, acabei de notar que as equações de matriz que passei anos colocando em meu arquivo roxygen / Rd parecem horríveis na versão ?myFunction da ajuda (elas aparecem como uma fonte literal de látex). O que é uma pena, porque eles ficam lindos na versão em pdf da ajuda.

@Iterator apontou a existência de texto condicional , então farei matemática ASCII nos arquivos .Rd, mas matemática Latex no manual / vinheta em pdf.

Foi útil?

Solução

Estou compilando meus comentários acima em uma resposta, para o benefício de outros.

Em primeiro lugar, não sei se .Rd suporta ou não a marcação de equações. No entanto, o formato .Rd é um subconjunto tão restrito do LaTeX e produz uma saída de texto muito primitiva, que enfiar equações extensas em seu formato pode ser uma tarefa árdua, sem muitos benefícios para o usuário.

A alternativa é usar vinhetas de pacote , ou mesmo documentação hospedada externamente (como é feito por Hadley Wickham, para alguns de seus pacotes). Isso permitirá que você use PDFs ou outra documentação, para o conteúdo de seu coração. Desta forma, você pode incluir capturas de tela, gráficos, todas as extensões LaTeX mais funk que só você tem e, mais significativamente, as extensões AMS que todos nós conhecemos e amamos.

No entanto, pode-se especificar uma renderização diferente de uma determinada seção da documentação (em .Rd) com base na interface, como texto para o console, caracteres legais para HTML, etc., e texto condicional suporta esse tipo de variação de formato.

É uma boa pergunta. Não sei a resposta sobre a viabilidade, mas tive perguntas semelhantes sobre como documentar funções e equações juntas, e esta investigação sobre o que é viável com arquivos .Rd me convenceu a usar vinhetas em PDF em vez de arquivos .Rd.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top