Ссылки на локальные страницы для неиндексированных методов - PullRequest
0 голосов
/ 13 апреля 2020

Я использую sphinx для документирования проекта C ++, в котором есть различные страницы, которые документируют класс. В них я использовал :noindex: для методов класса, так как в противном случае они загромождают всю страницу индекса проекта.

.. cpp:function:: void foo(int a)
    :noindex:

Однако одно из отличий также заключается в том, что я не могу создавать локальные ссылки на страницы. Например, в теле do c для другого метода:

The first argument is the same as that to :cpp:func:`foo`.

Без :noindex: на foo() эта ссылка работает. При этом ошибка не генерируется и есть ссылка, но она мертва / бесполезна / никуда не денется.

Как мне обойти это?

1 Ответ

0 голосов
/ 15 апреля 2020

Ручное создание локальных ссылок довольно просто в reStructuredText:

.. _`foo()`
.. cpp:function:: void foo(int a)
    :noindex:

Определяет цель без изменения внешнего вида чего-либо. Чтобы связать это,

The first argument is the same as that to `foo()`_.

Обратите внимание, что расположение подчеркивания находится спереди назад. Галочки нужны, если вы хотите включить скобки; если метка обычная alphanumeri c, их можно отбросить.

Несколько недостатков:

  • Вы не можете перенести это в разметку, например, в моноширинную область или выделите текст ссылки.
  • Кажется, что нет способа заменить текст ссылки.
...