Nếu bạn đặt này trong 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)
của bạn Sau đó, bạn có thể sử dụng :trac:`#123`
và :trac:`r1023`
trong tài liệu của bạn.
Đây có lẽ là cách dễ nhất để tạo liên kết nhanh đến một trang web theo dõi. Nó tự động làm việc cho tất cả các loại TracLinks vì nó sử dụng cơ chế intertrac cho các liên kết.
Nguồn
2010-01-21 17:23:54
Rất tiếc, việc thêm vai trò thật dễ dàng? Mát mẻ! Chỉ register_canonical_role trông đẹp hơn như một trang trí @canonical_role;) – c089
Bạn cũng có thể sử dụng vai trò 'traclinks' từ kho lưu trữ các phần mở rộng Sphinx đã đóng góp: https://bitbucket.org/birkenfeld/sphinx-contrib/src – Eric3