|
162 | 162 | labscript_suite_doc_version = 'latest' |
163 | 163 |
|
164 | 164 | # add intersphinx references for each component |
| 165 | +labscript_intersphinx_mapping = {} |
165 | 166 | for ls_prog in labscript_suite_programs: |
166 | | - intersphinx_mapping[ls_prog] = ( |
| 167 | + val = ( |
167 | 168 | 'https://docs.labscriptsuite.org/projects/{}/en/{}/'.format( |
168 | 169 | ls_prog, labscript_suite_doc_version |
169 | 170 | ), |
170 | 171 | None, |
171 | 172 | ) |
| 173 | + labscript_intersphinx_mapping[ls_prog] = val |
| 174 | + if ls_prog != project: |
| 175 | + # don't add intersphinx for current project |
| 176 | + # if internal links break, they can silently be filled by links to existing online docs |
| 177 | + # this is confusing and difficult to detect |
| 178 | + intersphinx_mapping[ls_prog] = val |
172 | 179 |
|
173 | 180 | # add intersphinx reference for the metapackage |
174 | 181 | if project != "the labscript suite": |
175 | | - intersphinx_mapping['labscript-suite'] = ( |
| 182 | + val = ( |
176 | 183 | 'https://docs.labscriptsuite.org/en/{}/'.format(labscript_suite_doc_version), |
177 | 184 | None, |
178 | 185 | ) |
| 186 | + intersphinx_mapping['labscript-suite'] = val |
| 187 | + labscript_intersphinx_mapping['labscript-suite'] = val |
179 | 188 |
|
180 | 189 | # Make `some code` equivalent to :code:`some code` |
181 | 190 | default_role = 'code' |
@@ -225,7 +234,7 @@ def setup(app): |
225 | 234 | with open(Path(__file__).resolve().parent / 'components.rst', 'w') as f: |
226 | 235 | f.write( |
227 | 236 | template.render( |
228 | | - intersphinx_mapping=intersphinx_mapping, |
| 237 | + intersphinx_mapping=labscript_intersphinx_mapping, |
229 | 238 | programs=labscript_suite_programs, |
230 | 239 | current_project=project, |
231 | 240 | img_path=img_path |
|
0 commit comments