blob: d6de1d96930716ab0d91a2065c8e8d4371c590d6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
import os
import sys
source_dir = os.path.abspath('.')
if source_dir not in sys.path:
sys.path.insert(0, source_dir)
extensions = ['sphinx.ext.autodoc', 'sphinx.ext.viewcode']
exclude_patterns = ['_build']
if 'test_linkcode' in tags:
extensions.remove('sphinx.ext.viewcode')
extensions.append('sphinx.ext.linkcode')
def linkcode_resolve(domain, info):
if domain == 'py':
fn = info['module'].replace('.', '/')
return "https://foobar/source/%s.py" % fn
elif domain == "js":
return "https://foobar/js/" + info['fullname']
elif domain in ("c", "cpp"):
return f"https://foobar/{domain}/{''.join(info['names'])}"
else:
raise AssertionError()
|