19sys.path.insert(0, os.path.abspath(
'../../SEImplementation/python/sourcextractor'))
21import sphinx_rtd_theme
39 'sphinx.ext.napoleon',
40 'sphinx.ext.autosummary',
42 'sphinx.ext.inheritance_diagram',
43 'sphinxcontrib.bibtex',
44 'sphinx.ext.githubpages'
48templates_path = [
'_templates']
64project =
'SourceXtractor++'
65filename =
'sourcextractor'
66copyright =
'2019,2020,2021,2022 GenevaU/LMU/CNRS/SorbonneU'
67author =
'SourceXtractor++ team'
92today_fmt =
'%B %d, %Y'
97exclude_patterns = [
'global.rst',
'keys.rst',
'roles.rst']
119pygments_style =
'sphinx'
128todo_include_todos =
True
135add_module_names =
False
137autodoc_mock_imports = [
'.measurement_images',
'_SourceXtractorPy']
144html_theme =
'sphinx_rtd_theme'
153html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
178html_static_path = [
'../theme']
182 app.add_css_file(
"css/custom.css")
236html_show_sourcelink =
False
240html_show_sphinx =
False
274htmlhelp_basename = filename +
'doc'
281'papersize':
'a4paper',
289'preamble':
'\\usepackage{amssymb}',
300 (master_doc, filename +
'.tex', project +
' Documentation',
342 (master_doc, filename, project +
' Documentation',
357 (master_doc, filename, project +
' Documentation',
358 author, project,
'One line description of project.',
384epub_publisher = author
385epub_copyright = copyright
433epub_exclude_files = [
'search.html']
465intersphinx_mapping = {
'https://docs.python.org/':
None}
468bibtex_bibfiles = [
"references.bib"]
470from packaging
import version
as vers
471from pybtex
import __version__
as pybtex_version
472from pybtex.style.formatting.unsrt
import Style
as UnsrtStyle, date, pages, toplevel
474from pybtex.plugin
import register_plugin
477new_version = vers.parse(pybtex_version) >= vers.parse(
"0.22")
483 except AttributeError:
495 if "http" in list(parts)[0]:
497 return richtext.HRef(*parts)
499 return richtext.Tag(
'strong', *parts)
505 formatted_names = names(role, sep=
', ', sep2 =
' and ', last_sep=
', and ')
507 return sentence[ formatted_names ]
509 return formatted_names
512 volume_and_pages = first_of[
517 optional[
'(', field(
'number'),
')' ],
522 words[
'pages', pages ],
525 optional_field(
'adsurl'),
526 optional[ join[
'http://arxiv.org/abs/', field(
'eprint') ]],
527 optional_field(
'url'),
528 optional[ join [
'http://dx.doi.org/', field(
'doi') ]]
531 sentence[ self.
format_names(
'author', as_sentence=
False), field(
'year') ],
532 href2[ myurl, self.format_title(e,
'title') ],
533 sentence(capfirst=
False) [
534 tag(
'emph')[ field(
'journal') ],
535 optional[ volume_and_pages ]],
536 sentence(capfirst=
False) [ optional_field(
'note') ],
542 optional_field(
'adsurl'),
543 optional[ join [
'http://arxiv.org/abs/', field(
'eprint') ]],
544 optional_field(
'url'),
545 optional[ join [
'http://dx.doi.org/', field(
'doi') ]]
548 sentence[ self.
format_names(
'author', as_sentence=
False), field(
'year') ],
549 href2[ myurl, self.format_title(e,
'title') ],
552 sentence(capfirst=
False)[
553 optional[ self.format_editor(e, as_sentence=
False) ],
554 self.format_btitle(e,
'booktitle', as_sentence=
False),
555 self.format_volume_and_series(e, as_sentence=
False),
558 self.format_address_organization_publisher_date(e),
560 sentence(capfirst=
False)[ optional_field(
'note') ],
566 optional_field(
'adsurl'),
567 optional[ join [
'http://arxiv.org/abs/', field(
'eprint') ]],
568 optional_field(
'url'),
569 optional[ join [
'http://dx.doi.org/', field(
'doi') ]]
572 optional[ sentence[ self.
format_names(
'author', as_sentence=
False), optional [ field(
'year') ]]],
573 optional[ href2[ myurl, self.format_title(e,
'title') ]],
574 sentence[ optional[ field(
'howpublished') ]],
575 sentence[ optional_field(
'note') ],
581 volume_and_pages = first_of [
586 optional[
'(', field(
'number'),
')'],
591 words [
'pages', pages],
594 optional_field(
'adsurl'),
595 optional [join [
'http://arxiv.org/abs/'], field(
'eprint')],
596 optional_field(
'url'),
597 optional [join [
'http://dx.doi.org/', field(
'doi')]]
599 template = toplevel [
601 href [myurl, self.format_title(e,
'title')],
602 sentence(capfirst=
False) [
603 tag(
'emph') [field(
'journal')],
604 optional[ volume_and_pages ],
606 sentence(capfirst=
False) [ optional_field(
'note') ],
608 return template.format_data(e)
612 optional_field(
'adsurl'),
613 optional [join [
'http://arxiv.org/abs/', field(
'eprint')]],
614 optional_field(
'url'),
615 optional [join [
'http://dx.doi.org/', field(
'doi')]]
617 template = toplevel [
619 href [myurl, self.format_title(e,
'title')] \
620 if len(myurl.format_data(e)) > 0 \
621 else tag(
'strong') [self.format_title(e,
'title')],
624 sentence(capfirst=
False) [
625 optional[ self.format_editor(e, as_sentence=
False) ],
626 self.format_btitle(e,
'booktitle', as_sentence=
False),
627 self.format_volume_and_series(e, as_sentence=
False),
630 self.format_address_organization_publisher_date(e),
632 sentence(capfirst=
False) [ optional_field(
'note') ],
634 return template.format_data(e)
636register_plugin(
'pybtex.style.formatting',
'adsarxiv', ADSArxivStyle)
get_inproceedings_template(self, e)
get_article_template(self, e)
get_misc_template(self, e)
format_inproceedings(self, e)
format_names(self, role, as_sentence=True)
_format_list(list_, data)