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