Как сделать перекрестную ссылку на уравнение в файле справки R / roxygen2

StackOverflow https://stackoverflow.com/questions/9373253

Вопрос

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

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

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

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

родовое слово

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

<цитата>

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

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

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

Обновить

Общий ответ - "нет". (ууууу ...)

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

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

Это было полезно?

Решение

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

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top