Salome HOME
updated copyright message
[modules/shaper.git] / src / PythonAPI / doc / source / conf.py
index 9c9b82b1164b163cd602338fd85f3951ead8107a..3696e5546c917d4ab0bae9216ed6d15d410e4724 100644 (file)
@@ -1,5 +1,3 @@
-# -*- coding: utf-8 -*-
-#
 # Shaper python API documentation build configuration file, created by
 # sphinx-quickstart on Thu Oct 15 11:55:42 2015.
 #
 # All configuration values have a default; values that are commented out
 # serve to show the default.
 
+import importlib
 import sys
 import os
+import sphinx
 
 # 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
@@ -36,9 +36,21 @@ extensions = [
     'sphinx.ext.todo',
     'sphinx.ext.coverage',
     'sphinx.ext.viewcode',
-    'sphinx.ext.napoleon',
     'sphinx.ext.autosummary',
 ]
+# Optional extensions
+extra_extensions = ['sphinx_rtd_theme']
+if sphinx.version_info[:2] < (1,3):
+    extra_extensions += ['sphinxcontrib.napoleon']
+else:
+    extra_extensions += ['sphinx.ext.napoleon']
+for ext in extra_extensions:
+    try:
+        importlib.import_module(ext)
+        extensions.append(ext)
+        globals().update({'use_{}'.format(ext):True})
+    except:
+        globals().update({'use_{}'.format(ext):False})
 
 # Add any paths that contain templates here, relative to this directory.
 templates_path = ['_templates']
@@ -53,8 +65,8 @@ source_suffix = '.rst'
 master_doc = 'index'
 
 # General information about the project.
-project = u'Shaper python API'
-copyright = u'2015, Renaud Nédélec'
+project = 'Shaper python API'
+copyright = '2014-2023 CEA, EDF'
 
 # The version info for the project you're documenting, acts as replacement for
 # |version| and |release|, also used in various other places throughout the
@@ -108,12 +120,20 @@ pygments_style = 'sphinx'
 
 # The theme to use for HTML and HTML Help pages.  See the documentation for
 # a list of builtin themes.
-html_theme = 'default'
+if use_sphinx_rtd_theme:
+  html_theme = 'sphinx_rtd_theme'
+else:
+  html_theme = 'default' if sphinx.version_info[:2] < (1,3) else 'classic'
 
 # Theme options are theme-specific and customize the look and feel of a theme
 # further.  For a list of options available for each theme, see the
 # documentation.
-#html_theme_options = {}
+themes_options = {}
+themes_options['classic'] = {
+  'body_max_width':'none',
+  'body_min_width':0,
+}
+html_theme_options = themes_options.get(html_theme, {})
 
 # Add any paths that contain custom themes here, relative to this directory.
 #html_theme_path = []
@@ -206,8 +226,8 @@ latex_elements = {
 # (source start file, target name, title,
 #  author, documentclass [howto, manual, or own class]).
 latex_documents = [
-  ('index', 'ShaperpythonAPI.tex', u'Shaper python API Documentation',
-   u'Renaud Nédélec', 'manual'),
+  ('index', 'ShaperpythonAPI.tex', 'Shaper python API Documentation',
+   'Renaud Nédélec', 'manual'),
 ]
 
 # The name of an image file (relative to this directory) to place at the top of
@@ -236,8 +256,8 @@ latex_documents = [
 # One entry per manual page. List of tuples
 # (source start file, name, description, authors, manual section).
 man_pages = [
-    ('index', 'shaperpythonapi', u'Shaper python API Documentation',
-     [u'Renaud Nédélec'], 1)
+    ('index', 'shaperpythonapi', 'Shaper python API Documentation',
+     ['Renaud Nédélec'], 1)
 ]
 
 # If true, show URL addresses after external links.
@@ -250,8 +270,8 @@ man_pages = [
 # (source start file, target name, title, author,
 #  dir menu entry, description, category)
 texinfo_documents = [
-  ('index', 'ShaperpythonAPI', u'Shaper python API Documentation',
-   u'Renaud Nédélec', 'ShaperpythonAPI', 'One line description of project.',
+  ('index', 'ShaperpythonAPI', 'Shaper python API Documentation',
+   'Renaud Nédélec', 'ShaperpythonAPI', 'One line description of project.',
    'Miscellaneous'),
 ]
 
@@ -268,4 +288,4 @@ texinfo_documents = [
 #texinfo_no_detailmenu = False
 
 autodoc_member_order = 'bysource'
-        
+