Сообщение Python Sphinx referencing long names дало один ответ, который был очень близок к тому, что я искал в отношении директив подстановки для имен длинных классов.Python Sphinx/замена покоя для длинных имен, определяющих правило замещения в том же исходном файле
def exampleFunction():
'''Here is an example docstring referencing another
|ReallyLongExampleClassName|
.. |ReallyLongExampleClassName| replace::
:class:`.ReallyLongExampleClassName`
В приведенном выше примере определение правила замены находится в пределах одного блока pydoc. Я надеялся, что сделать что-то вроде этого:
"""define all rst links/substitutions used in this file
.. |ReallyLongExampleClassName| replace:: :class:`.ReallyLongExampleClassName`
.. |AnotherExampleClassName| replace:: :class:`.AnotherExampleClassName`
"""
# more code
# more code
def exampleFunction():
'''Here is an example docstring referencing another
|ReallyLongExampleClassName|
# define function
Поскольку каждый файл в вопросе специфичен, использование rst_epilog не распространяется очень хорошо. Возможно ли это.
Поскольку в каждом исходном файле есть уникальная уникальность в ссылках, которые им нужны, rst_epilog не работает в нашем случае. Кроме того, наша работа по генерации pydoc выполняется за кулисами. Участникам нашего набора lib не нужно беспокоиться о том, как это делается, им просто нужно отформатировать свои pydocs соответственно. Это в духе попыток сохранить для них все просто, и поэтому мы не раскрываем какую-либо конфигурацию pydoc стандартным вкладчикам. – marco
Возможно, первое включение директивы - лучший выбор. Я обновил свой ответ с этим предложением. – Phil
Спасибо, я посмотрел на это, но это означает, что пользователю нужно будет добавить дополнительные файлы в поддержку документации. Я надеялся на что-то похожее, но это просто невозможно. – marco