Как сделать перекрестную ссылку на уравнение в файле справки R / roxygen2 - PullRequest
13 голосов
/ 21 февраля 2012

Я нахожусь в процессе документирования некоторых своих функций для создаваемого пакета R.

Я использую разметку roxygen, хотя это в значительной степени не имеет отношения к моему вопросу.

Я поместил уравнения в мою документацию, используя \deqn{...}.Мой вопрос: Есть ли способ перекрестной ссылки на это уравнение позже?

Например, в моем Rd-файле:

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

Могу ли я позже сделатьчто-то вроде:

Ссылаясь на уравнение \ ref {test}, ...

Я пробовал \eqref{test}, \ref{test} (которые оба получают "неизвестно"макрос "и не связываться), а также \link{test} (который жалуется, что не может найти функцию test, потому что это действительно просто для связи с другими функциями).

В противном случае я боюсь, что может иметьсделать что-то хакерское и добавить -- (1) и Refer to equation (1) вручную в \deqn и т. д. в файле Rd ...

Обновление

Общий ответкажется "нет".(awww ...)

Однако я могу написать виньетку и использовать там "нормальные" латексные / пакеты.В любом случае, я только что заметил, что матричные уравнения, которые я потратил целую вечность, помещая в мой файл roxygen / Rd, выглядят ужасно в ?myFunction версии справки (они отображаются как буквальный источник латекса).Это позор, потому что они выглядят прекрасно в pdf-версии справки.

@ Итератор указал на существование условного текста , поэтому я буду выполнять математику ASCII в.Rd файлы, но математика латекса в pdf руководстве / виньетка.

1 Ответ

5 голосов
/ 22 февраля 2012

Я собираю свои комментарии выше в ответ, для пользы других.

Во-первых, я на самом деле не знаю, поддерживает ли .Rd тегирование уравнений. Тем не менее, формат .Rd является настолько строгим подмножеством LaTeX и производит очень примитивный вывод текста, что включение в его формат обширных уравнений может оказаться болезненным делом без особой выгоды для пользователя.

Альтернатива - использовать виньетки пакетов или даже внешнюю документацию (как это делает Хэдли Уикхем для некоторых из его пакетов). Это позволит вам использовать PDF-файлы или другую документацию, как душе угодно. Таким образом, вы можете включать скриншоты, графики, все самые забавные расширения LaTeX, которые есть только у вас, и, что наиболее важно, расширения AMS, которые мы все знаем и любим.

Тем не менее, можно указать различную визуализацию данного раздела документации (в формате .Rd) на основе интерфейса, такого как текст для консоли, красивые символы для HTML и т. Д., И условный текст поддерживает такое изменение формата.

Это хороший вопрос. Я не знаю ответа относительно осуществимости, но у меня были похожие вопросы о документировании функций и уравнений вместе, и это исследование того, что выполнимо с помощью файлов .Rd, убедило меня использовать виньетки PDF, а не файлы .Rd.

...