Sphinx - generar referencias automáticas a las entradas Trac y conjuntos de cambios
-
21-09-2019 - |
Solución
Si pones esto en su config.py
trac_url = 'http://mytratsite/'
from docutils import nodes, utils
from docutils.parsers.rst import roles
import urllib
def trac_role(role, rawtext, text, lineno, inliner, options={}, content=[]):
ref = trac_url + '/intertrac/' + urllib.quote(text, safe='')
node = nodes.reference(rawtext, utils.unescape(text), refuri=ref, **options)
return [node],[]
roles.register_canonical_role('trac', trac_role)
A continuación, se puede utilizar :trac:`#123`
y :trac:`r1023`
en sus documentos.
Esta es probablemente la manera más fácil de hacer una rápida conexión con un sitio trac. Funciona automáticamente para todos los tipos de TracLinks, ya que utiliza el mecanismo de intertrac para los enlaces.
Otros consejos
Sphinx 1.0 ahora soporta enlaces externos utilizando la extensión extlinks
. El uso de un nombre de función configurable (por ejemplo, 'problema') se puede escribir sus enlaces como:
:issue:`123`
y se convierte en http://mytracsite/123
.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow