Come fare un riferimento incrociato a un'equazione in un file della guida R / roxygen2
-
28-10-2019 - |
Domanda
Sono in procinto di documentare alcune delle mie funzioni per un pacchetto R che sto creando.
Sto usando il markup roxygen, anche se questo è in gran parte irrilevante per la mia domanda.
Ho inserito delle equazioni nella mia documentazione utilizzando \deqn{...}
. La mia domanda è:
C'è un modo per fare un riferimento incrociato a questa equazione in un secondo momento?
Ad esempio, nel mio file Rd:
\deqn{\label{test}
y = mx + b
}
In seguito posso fare qualcosa come:
Riferendosi all'equazione \ ref {test}, ...
Ho provato \eqref{test}
, \ref{test}
(che ottengono entrambi "macro sconosciuta" e non vengono collegati) e anche \link{test}
(che si lamenta di non poter trovare la funzione test
perché è solo per il collegamento ad altre funzioni).
Altrimenti temo di dover fare qualcosa di hacky e aggiungere -- (1)
e Refer to equation (1)
manualmente all'interno del \deqn
ecc. nel file Rd ...
Aggiorna
La risposta generale sembra essere "no". (awww ...)
Tuttavia, posso scrivere una vignetta e usare pacchetti / latex "normali" lì. In ogni caso, ho appena notato che le equazioni di matrice che ho passato anni a inserire nel mio file roxygen / Rd sembrano orribili nella versione ?myFunction
dell'help (si presentano quasi come una fonte letterale di lattice). Il che è un peccato, perché sono bellissimi nella versione pdf della guida.
@Iterator ha sottolineato l'esistenza di testo condizionale , quindi farò matematica ASCII nei file .Rd, ma matematica Latex nel manuale / vignetta pdf.
Soluzione
Sto compilando i miei commenti sopra in una risposta, a beneficio degli altri.
Per prima cosa, non so se .Rd supporti o meno il tagging delle equazioni. Tuttavia, il formato .Rd è un sottoinsieme così rigoroso di LaTeX e produce un output di testo molto primitivo, che inserire nel suo formato equazioni estese potrebbe essere un'impresa dolorosa senza molti vantaggi per l'utente.
L'alternativa è utilizzare vignette del pacchetto , o anche documentazione ospitata esternamente (come ha fatto Hadley Wickham, per alcuni dei suoi pacchetti). Ciò ti consentirà di utilizzare PDF o altra documentazione, a tuo piacimento. In questo modo, puoi includere screenshot, trame, tutte le estensioni LaTeX più funky che solo tu hai e, soprattutto, le estensioni AMS che tutti conosciamo e amiamo.
Tuttavia, è possibile specificare una diversa visualizzazione di una data sezione della documentazione (in .Rd) basata sull'interfaccia, come il testo per la console, bei caratteri per HTML, ecc. e testo condizionale supporta questo tipo di variazione di formato.
È una buona domanda. Non conosco la risposta in merito alla fattibilità, ma avevo domande simili sulla documentazione di funzioni ed equazioni insieme e questa indagine su ciò che è fattibile con i file .Rd mi ha convinto a utilizzare vignette PDF anziché file .Rd.