|
145 | 145 | labscript_suite_doc_version = 'latest'
|
146 | 146 |
|
147 | 147 | # add intersphinx references for each component
|
| 148 | +labscript_intersphinx_mapping = {} |
148 | 149 | for ls_prog in labscript_suite_programs:
|
149 |
| - intersphinx_mapping[ls_prog] = ( |
| 150 | + val = ( |
150 | 151 | 'https://docs.labscriptsuite.org/projects/{}/en/{}/'.format(
|
151 | 152 | ls_prog, labscript_suite_doc_version
|
152 | 153 | ),
|
153 | 154 | None,
|
154 | 155 | )
|
| 156 | + labscript_intersphinx_mapping[ls_prog] = val |
| 157 | + if ls_prog != project: |
| 158 | + # don't add intersphinx for current project |
| 159 | + # if internal links break, they can silently be filled by links to existing online docs |
| 160 | + # this is confusing and difficult to detect |
| 161 | + intersphinx_mapping[ls_prog] = val |
155 | 162 |
|
156 | 163 | # add intersphinx reference for the metapackage
|
157 | 164 | if project != "the labscript suite":
|
158 |
| - intersphinx_mapping['labscript-suite'] = ( |
| 165 | + val = ( |
159 | 166 | 'https://docs.labscriptsuite.org/en/{}/'.format(labscript_suite_doc_version),
|
160 | 167 | None,
|
161 | 168 | )
|
| 169 | + intersphinx_mapping['labscript-suite'] = val |
| 170 | + labscript_intersphinx_mapping['labscript-suite'] = val |
162 | 171 |
|
163 | 172 | # Make `some code` equivalent to :code:`some code`
|
164 | 173 | default_role = 'code'
|
@@ -217,7 +226,7 @@ def setup(app):
|
217 | 226 | with open(Path(__file__).resolve().parent / 'components.rst', 'w') as f:
|
218 | 227 | f.write(
|
219 | 228 | template.render(
|
220 |
| - intersphinx_mapping=intersphinx_mapping, |
| 229 | + intersphinx_mapping=labscript_intersphinx_mapping, |
221 | 230 | programs=labscript_suite_programs,
|
222 | 231 | current_project=project,
|
223 | 232 | img_path=img_path
|
|
0 commit comments