conf.py 3.36 KB
Newer Older
zhangwenwei's avatar
zhangwenwei committed
1
2
3
4
5
6
7
8
9
10
11
12
# Configuration file for the Sphinx documentation builder.
#
# This file only contains a selection of the most common options. For a full
# list see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html

# -- Path setup --------------------------------------------------------------

# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
zhangwenwei's avatar
Doc  
zhangwenwei committed
13
import os
14
import subprocess
zhangwenwei's avatar
Doc  
zhangwenwei committed
15
import sys
zhangwenwei's avatar
zhangwenwei committed
16
17
from m2r import MdInclude
from recommonmark.transform import AutoStructify
zhangwenwei's avatar
Doc  
zhangwenwei committed
18
19

sys.path.insert(0, os.path.abspath('..'))
zhangwenwei's avatar
zhangwenwei committed
20
21
22

# -- Project information -----------------------------------------------------

zhangwenwei's avatar
Doc  
zhangwenwei committed
23
24
25
project = 'MMDetection3D'
copyright = '2020-2023, OpenMMLab'
author = 'MMDetection3D Authors'
zhangwenwei's avatar
zhangwenwei committed
26

zhangwenwei's avatar
zhangwenwei committed
27
28
29
30
31
32
33
34
35
version_file = '../mmdet3d/version.py'


def get_version():
    with open(version_file, 'r') as f:
        exec(compile(f.read(), version_file, 'exec'))
    return locals()['__version__']


zhangwenwei's avatar
zhangwenwei committed
36
# The full version, including alpha/beta/rc tags
zhangwenwei's avatar
zhangwenwei committed
37
release = get_version()
zhangwenwei's avatar
zhangwenwei committed
38
39
40
41
42
43
44
45
46
47
48
49

# -- General configuration ---------------------------------------------------

# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
    'sphinx.ext.autodoc',
    'sphinx.ext.napoleon',
    'sphinx.ext.viewcode',
    'recommonmark',
    'sphinx_markdown_tables',
zhangwenwei's avatar
zhangwenwei committed
50
    'sphinx.ext.autosectionlabel',
zhangwenwei's avatar
zhangwenwei committed
51
52
]

zhangwenwei's avatar
Doc  
zhangwenwei committed
53
autodoc_mock_imports = [
54
55
    'matplotlib', 'nuscenes', 'PIL', 'pycocotools', 'pyquaternion',
    'terminaltables', 'mmdet3d.version', 'mmdet3d.ops'
zhangwenwei's avatar
Doc  
zhangwenwei committed
56
]
zhangwenwei's avatar
zhangwenwei committed
57
autosectionlabel_prefix_document = True
zhangwenwei's avatar
zhangwenwei committed
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88

# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']

# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
#
source_suffix = {
    '.rst': 'restructuredtext',
    '.md': 'markdown',
}

# The master toctree document.
master_doc = 'index'

# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']

# -- Options for HTML output -------------------------------------------------

# The theme to use for HTML and HTML Help pages.  See the documentation for
# a list of builtin themes.
#
html_theme = 'sphinx_rtd_theme'

# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
zhangwenwei's avatar
zhangwenwei committed
89
90


91
92
93
94
def builder_inited_handler(app):
    subprocess.run(['./stat.py'])


zhangwenwei's avatar
zhangwenwei committed
95
def setup(app):
96
    app.connect('builder-inited', builder_inited_handler)
zhangwenwei's avatar
zhangwenwei committed
97
98
99
100
101
102
103
104
105
    app.add_config_value('no_underscore_emphasis', False, 'env')
    app.add_config_value('m2r_parse_relative_links', False, 'env')
    app.add_config_value('m2r_anonymous_references', False, 'env')
    app.add_config_value('m2r_disable_inline_math', False, 'env')
    app.add_directive('mdinclude', MdInclude)
    app.add_config_value('recommonmark_config', {
        'auto_toc_tree_section': 'Contents',
        'enable_eval_rst': True,
    }, True)
wangtai's avatar
wangtai committed
106
    app.add_transform(AutoStructify)