Je voudrais ajouter formatage du code à une référence comme celui-ci:Sphinx ajouter formatage du code à: ref:
:ref:`__slots__ <python:slots>`
Mon intersphinx_mapping
définit python
comme ceci:
intersphinx_mapping = {
'python': ('https://docs.python.org/3', None),
}
de sorte que le lien est à https://docs.python.org/3/reference/datamodel.html#slots (slots
est défini dans la section std:label
de https://docs.python.org/3/objects.inv
)
Mon objectif est de formater le re lien ndered dans le style de :py:attr:
ou similaire plutôt que le style de texte par défaut avec lequel :ref:
rend.
Aucune des options suivantes fonctionnent:
... ``:ref:`__slots__ <python:slots>``` ...
yeilds sortie comme...
:ref:`__slots__ <python:slots>`
...... ``:ref:`__slots__ <python:slots>` `` ...
yeilds sortie comme... __slots__ ...
... :ref:```__slots__`` <python:slots>` ...
yeilds sortie comme...: ref: ```__slots__`` <python:> fentes `...
Il existe deux liens internes distincts à
#id1
dans ce cas.... :ref:` ``__slots__`` <python:slots>` ...
yeilds sortie comme...: ref: ``` __slots__`` <python:> fentes` ...
Relpacing ``...``
avec :code:`...`
ou :literal:`...`
à l'intérieur ou à l'extérieur du :ref:
ne aide pas non plus. En fait, il semble que les rôles imbriqués ne sont pas autorisés du tout.
Je voudrais avoir un rôle en ligne qui se traduit par quelque chose qui rend avec un style de code et un lien, comme
...
__slots__
...
Comment puis-je le :ref:
de base (ou équivalent) à apparaître avec la mise en forme de style de code utilisée par :py:attr:
?J'utilise Sphinx 1.6.3 avec Python 3.6.2 dans un environnement Anaconda.
question inverse est ici: Sphinx remove code formatting from custom code reference
Une question tangentiellement pertinente: Nested/Compounded roles: apply multiple roles to overlapping text
Je suis un peu confus par ce que vous voulez. D'abord, voulez-vous cela en ligne et pas dans un 'code-block'? Deuxièmement, voulez-vous que la sortie rendue soit liée aux docs Python pour les slots? Enfin, voulez-vous appliquer un style à la sortie rendue? –
@StevePiercy. Toutes mes excuses pour la confusion. 1) Je voudrais que ': ref:' (ou équivalent) soit en ligne, comme c'est le cas actuellement. 2) Je voudrais que la sortie soit liée aux docs python avec l'étiquette 'slots'. 3) Je voudrais que la sortie soit rendue en police de code, même si ': ref:' ne l'est pas. De préférence avec le style de ': py: attr:' pour ce cas. Si cela signifie appliquer un style, je serais heureux de le faire. –
J'ai mis à jour l'information ci-dessus dans la question. –