386 lines
12 KiB
Python
386 lines
12 KiB
Python
# -*- coding: utf-8 -*-
|
|
import os
|
|
import ablog
|
|
|
|
project = 'Nerv Project'
|
|
basename = 'nervproject'
|
|
project_uid = basename # ISBN, etc.
|
|
baseurl = 'https://nerv-project.eu/'
|
|
copyright = '2021, Nerv Project ASBL - BCE 0756.741.342 - TVA BE0756741342 - KBR Éditeur 15066 - IBAN BE02751210684040 - BIC AXABBE22'
|
|
author = 'Nerv Project ASBL'
|
|
publisher = 'Nerv Project ASBL'
|
|
site_url = 'https://nerv-project.eu/'
|
|
vcs_uri = "https://procrastinator.nerv-project.eu/"
|
|
repository_name = 'nerv-project/'
|
|
repository_name += 'nerv_website'
|
|
use_ablog = True
|
|
use_bibtex = False
|
|
use_git = True
|
|
language = 'fr'
|
|
html_extra_path = [
|
|
"_static/robots.txt",
|
|
"_static/favicon.ico",
|
|
]
|
|
|
|
version = "0.1"
|
|
release = "0.1"
|
|
|
|
if use_ablog:
|
|
blog_title = project
|
|
blog_baseurl = baseurl
|
|
blog_default_author = 'kujiu'
|
|
blog_default_location = 'BLA'
|
|
blog_authors = {
|
|
'kujiu': ('Kujiu', 'https://kujiu.eu'),
|
|
'ptitgnu': ('PtitGNU', 'https://www.it4freedom.net/blog.html'),
|
|
'springouille': ('Springouille', 'https://www.instagram.com/springouille/'),
|
|
}
|
|
blog_locations = {
|
|
'BLA': (
|
|
"Braine-l'Alleud",
|
|
"https://fr.wikipedia.org/wiki/Braine-l'Alleud"
|
|
),
|
|
}
|
|
post_date_format = 'Le %d %b %Y à %H:%M'
|
|
post_auto_excerpt = 1
|
|
post_auto_image = 1
|
|
post_redirect_refresh = 5
|
|
post_always_section = False
|
|
post_auto_orphan = True
|
|
|
|
blog_feed_fulltext = False
|
|
blog_feed_subtitle = None
|
|
blog_feed_titles = False
|
|
blog_feed_length = 30
|
|
fontawesome_link_cdn = None
|
|
fontawesome_included = True
|
|
fontawesome_css_file = ''
|
|
show_authors = True
|
|
|
|
if use_git:
|
|
from git import Repo
|
|
|
|
repo = Repo(
|
|
os.path.join(
|
|
os.path.dirname(os.path.realpath(__file__)),
|
|
'..'
|
|
)
|
|
)
|
|
repo.config_reader()
|
|
|
|
if not repo.head.is_detached:
|
|
version = repo.head.ref.name
|
|
release = version + ' [' + repo.commit().hexsha[:20] + ']'
|
|
|
|
repository_uri = vcs_uri + repository_name
|
|
issues_uri = repository_uri + "/issues/{issue}"
|
|
issues_pr_uri = repository_uri + "/merge_requests/{pr}"
|
|
issues_commit_uri = repository_uri + "/commit/{commit}"
|
|
issues_user_uri = vcs_uri + "/{user}"
|
|
|
|
extensions = [
|
|
'sphinxemoji.sphinxemoji',
|
|
'sphinxcontrib.actdiag',
|
|
'sphinxcontrib.blockdiag',
|
|
'sphinxcontrib.nwdiag',
|
|
'sphinxcontrib.seqdiag',
|
|
'sphinx_galleria',
|
|
'sphinx.ext.extlinks',
|
|
'sphinx.ext.intersphinx',
|
|
'sphinx.ext.todo',
|
|
'sphinx_issues',
|
|
'sphinx_sitemap',
|
|
'sphinx_fasvg',
|
|
]
|
|
|
|
if use_ablog:
|
|
extensions.append('ablog')
|
|
|
|
if use_git:
|
|
extensions.append('sphinx_git')
|
|
|
|
if use_bibtex:
|
|
extensions.append('sphinxcontrib.bibtex')
|
|
|
|
locale_dirs = ['locale/']
|
|
|
|
if use_ablog:
|
|
locale_dirs.append(
|
|
os.path.join(ablog.get_html_templates_path(), '..', 'locale'),
|
|
)
|
|
|
|
templates_path = ['_templates']
|
|
|
|
source_suffix = '.rst'
|
|
master_doc = 'index'
|
|
|
|
exclude_patterns = []
|
|
pygments_style = 'sphinx'
|
|
|
|
|
|
html_logo = '_static/logo.svg'
|
|
html_theme = 'nervproject'
|
|
html_theme_options = {
|
|
"logoalt": "Deux ronds bleu et orange s'entre-déchirent pour former la lettre N.",
|
|
"social": [
|
|
('solid', 'building', 'BCE 0756.741.342', 'https://kbopub.economie.fgov.be/kbopub/toonondernemingps.html?ondernemingsnummer=756741342', False),
|
|
('solid', 'receipt', 'TVA BE0756741342', 'https://kbopub.economie.fgov.be/kbopub/toonondernemingps.html?ondernemingsnummer=756741342', False),
|
|
('solid', 'books', 'KBR Éditeur 15066', 'https://www.kbr.be', False),
|
|
('brands', 'mastodon', 'mastodon', 'https://tiphon.nerv-project.eu/@nerv_project', True),
|
|
('solid', 'microblog', 'MBin', 'https://deuxfleurs/nerv-project.eu/', False),
|
|
('solid', 'book', 'bookwyrm', 'https://goussedail.nerv-project.eu/', False),
|
|
('solid', 'code-branch', 'forgejo', 'https://procrastinator.nerv-project.eu/nerv-project', True),
|
|
('solid', 'hashtag', 'xmpp', 'xmpp:asbl@clac.nerv-project.eu', True),
|
|
('solid', 'film', 'peertube', 'https://clap.nerv-project.eu/video-channels/kujiu_channel/videos', False),
|
|
('brands', 'youtube', 'youtube', 'https://www.youtube.com/channel/UC6LcFMVZUOs4WbKvV3p1xVw', False),
|
|
('solid', 'podcast', 'podcasts', 'https://kreskenn.nerv-project.eu', False),
|
|
('solid', 'paragraph', 'gemini', 'gemini://nerv-project.eu', False),
|
|
('solid', 'rss', 'rss', 'https://nerv-project.eu/blog/atom.xml', False),
|
|
('solid', 'blog', 'newsletter (web)', 'https://morpork.nerv-project.eu/', False),
|
|
('solid', 'rss', 'newsletter (rss)', 'https://morpork.nerv-project.eu/blog/atom.xml', False),
|
|
('solid', 'envelope', 'newsletter', 'https://sybil.nerv-project.eu/mailman3/lists/newsletter.sybil.nerv-project.eu/', False),
|
|
('solid', 'envelope', 'mailing-lists', 'https://sybil.nerv-project.eu/', False),
|
|
],
|
|
'external_languages': [
|
|
# ('code', 'name', 'baseurl'),
|
|
('fr', 'Français', '/fr'),
|
|
('en', 'English', '/en'),
|
|
],
|
|
"mastodon_user": "@nerv_project@tiphon.nerv-project.eu",
|
|
"fathom": {
|
|
'url': 'https://casanabo.nerv-project.eu',
|
|
'id': 'CVTXH',
|
|
},
|
|
'isso': {
|
|
'prefix': '/',
|
|
'url': 'https://chicard.nerv-project.eu/',
|
|
'require_author': "true",
|
|
'reply_to_self': "true",
|
|
'require_author': "true",
|
|
'require_email': "false",
|
|
'reply_notif': "true",
|
|
'max_comments_top': 20,
|
|
'max_comments_nested': 20,
|
|
'reveal_on_click': 20,
|
|
'avatar': "true",
|
|
'vote': "false",
|
|
'vote_levels': "",
|
|
'feed': "true",
|
|
},
|
|
"license": {
|
|
'text': 'EUPL 1.2',
|
|
'url': "https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12"
|
|
}
|
|
}
|
|
html_static_path = ['_static']
|
|
html_sidebars = {
|
|
'**': [
|
|
'about.html',
|
|
'social.html',
|
|
'ablog/postcard.html',
|
|
'util/sidetoc.html',
|
|
'ablog/recentposts.html',
|
|
'ablog/categories.html',
|
|
'ablog/tagcloud.html',
|
|
'ablog/archives.html',
|
|
'util/searchbox.html',
|
|
],
|
|
}
|
|
html_baseurl = baseurl
|
|
htmlhelp_basename = basename
|
|
|
|
pyppeteer_pdf_options = {
|
|
'printBackground': True,
|
|
'format': 'A4',
|
|
'margin': {
|
|
'top': '0mm',
|
|
'bottom': '0mm',
|
|
'left': '0mm',
|
|
'right': '0mm'
|
|
}
|
|
}
|
|
|
|
gemini_baseurl = 'gemini://nerv-project.eu/'
|
|
gemini_footer = """
|
|
|
|
# Menu
|
|
|
|
=> gemini://nerv-project.eu Accueil
|
|
|
|
## Nerv Project
|
|
|
|
=> gemini://nerv-project.eu/fr/nervproject/histoire.gmi Histoire
|
|
=> gemini://nerv-project.eu/fr/nervproject/organisation.gmi Organisation
|
|
=> gemini://nerv-project.eu/fr/nervproject/missions.gmi Missions
|
|
=> gemini://nerv-project.eu/fr/nervproject/risques.gmi Risques
|
|
=> gemini://nerv-project.eu/fr/nervproject/technologie.gmi Technologie
|
|
|
|
## Outils
|
|
|
|
=> gemini://nerv-project.eu/fr/utils/sphinx_storymaker.gmi Sphinx StoryMaker
|
|
=> gemini://nerv-project.eu/fr/utils/sphinx_studiowriter.gmi Sphinx StudioWriter
|
|
|
|
## Publications
|
|
|
|
=> gemini://nerv-project.eu/fr/publications/series/index.gmi Séries
|
|
=> gemini://nerv-project.eu/fr/publications/oneshots/index.gmi One shots
|
|
|
|
## Le collectif
|
|
|
|
=> gemini://nerv-project.eu/fr/collectif/covid19.gmi Covid 19
|
|
=> gemini://nerv-project.eu/fr/collectif/ressources.gmi Ressources
|
|
=> gemini://nerv-project.eu/fr/collectif/contributeurs/index.gmi Contributeurs
|
|
=> gemini://nerv-project.eu/fr/collectif/mentions_legales.gmi Mentions légales
|
|
=> gemini://nerv-project.eu/fr/collectif/copyright.gmi Droit d'auteur
|
|
=> gemini://nerv-project.eu/fr/collectif/accessibility.gmi Déclaration d'accessibilité
|
|
=> gemini://nerv-project.eu/fr/collectif/confidentiality.gmi Déclaration de confidentialité
|
|
=> gemini://nerv-project.eu/fr/collectif/contact.gmi Contact
|
|
=> gemini://nerv-project.eu/fr/collectif/statuts.gmi Statuts
|
|
=> gemini://nerv-project.eu/fr/collectif/reglement.gmi Règlement
|
|
=> gemini://nerv-project.eu/fr/collectif/registres/index.gmi Registres
|
|
=> gemini://nerv-project.eu/fr/collectif/comptabilite/index.gmi Comptabilité
|
|
=> gemini://nerv-project.eu/fr/collectif/historique.gmi Historique
|
|
|
|
=> gemini://nerv-project.eu/fr/blog/atom.xml Abonnez-vous !
|
|
Nerv Project ASBL - BCE 0756.741.342 - TVA BE0756741342 - KBR Éditeur 15066 - IBAN BE02751210684040 - BIC AXABBE22.
|
|
|
|
Licensed under EUPL 1.2
|
|
|
|
Créé avec Sphinx.
|
|
"""
|
|
|
|
latex_engine = 'xelatex'
|
|
latex_toplevel_sectioning = 'chapter'
|
|
latex_show_urls = 'footnote'
|
|
latex_elements = {
|
|
# 'figure_align': 'htbp',
|
|
# 'extraclassoptions': '',
|
|
'papersize': 'a4paper',
|
|
'pointsize': '12pt',
|
|
'extraclassoptions': 'twoside',
|
|
'fontpkg': r'''
|
|
\defaultfontfeatures{Ligatures=TeX}
|
|
\setmainfont{Linux Biolinum O}
|
|
\setsansfont{Linux Biolinum O}
|
|
'''
|
|
}
|
|
latex_show_pagerefs = True
|
|
latex_documents = [
|
|
(master_doc, basename + '.tex', project,
|
|
author, 'book'),
|
|
]
|
|
|
|
|
|
man_pages = [
|
|
(master_doc, basename.lower(), project, [author], 1)
|
|
]
|
|
|
|
|
|
texinfo_documents = [
|
|
(master_doc, basename, project,
|
|
author, basename, '',
|
|
'Miscellaneous'),
|
|
]
|
|
|
|
|
|
epub_title = project
|
|
epub_author = author
|
|
epub_publisher = publisher
|
|
epub_copyright = copyright
|
|
|
|
epub_identifier = project_uid
|
|
epub_uid = ''
|
|
epub_exclude_files = [
|
|
'index.xhtml',
|
|
'search.xhtml',
|
|
'blog.xhtml',
|
|
'submit_success.xhtml',
|
|
'contact.xhtml',
|
|
'403.xhtml',
|
|
'404.xhtml',
|
|
'blog/archive.xhtml',
|
|
'blog/category.xhtml',
|
|
'blog/drafts.xhtml',
|
|
'blog/author.xhtml',
|
|
'blog/language.xhtml',
|
|
'blog/location.xhtml',
|
|
'blog/location/braine-lalleud.xhtml',
|
|
'blog/language/francais.xhtml',
|
|
'blog/author/kujiu.xhtml',
|
|
'blog/author/ptitgnu.xhtml',
|
|
'blog/2014.xhtml',
|
|
'blog/2015.xhtml',
|
|
'blog/2016.xhtml',
|
|
'blog/2017.xhtml',
|
|
'blog/2018.xhtml',
|
|
'blog/2019.xhtml',
|
|
'blog/2020.xhtml',
|
|
'blog/2021.xhtml',
|
|
'blog/2022.xhtml',
|
|
'blog/2023.xhtml',
|
|
'blog/2024.xhtml',
|
|
'blog/category/accueil.xhtml',
|
|
'blog/category/outils.xhtml',
|
|
'blog/category/la-victoire-des-grelots.xhtml',
|
|
'blog/category/series.xhtml',
|
|
'blog/category/one-shots.xhtml',
|
|
'publications/index.xhtml',
|
|
'publications/series/la_victoire_des_grelots/index.xhtml',
|
|
'publications/series/la_victoire_des_grelots/progression.xhtml',
|
|
'outils/index.xhtml',
|
|
'outils/sphinx_storymaker.xhtml',
|
|
'outils/sphinx_studiowriter.xhtml',
|
|
'google82f190054a773ed9.xhtml',
|
|
'genindex.xhtml',
|
|
'historique.xhtml',
|
|
'apropos.xhtml',
|
|
'nav.xhtml'
|
|
]
|
|
epub_theme = 'nervproject'
|
|
epub_theme_options = html_theme_options
|
|
epub_show_urls = 'footnote'
|
|
|
|
diag_antialias = True
|
|
diag_transparency = True
|
|
diag_html_image_format = "SVG"
|
|
diag_latex_image_format = "PDF"
|
|
diag_fontpath = os.path.dirname(os.path.realpath(__file__))
|
|
diag_fontpath = os.path.join(diag_fontpath, '_static', 'biolinumrah.ttf')
|
|
diag_debug = False
|
|
|
|
actdiag_antialias = diag_antialias
|
|
actdiag_transparency = diag_transparency
|
|
actdiag_html_image_format = diag_html_image_format
|
|
actdiag_latex_image_format = diag_latex_image_format
|
|
actdiag_fontpath = diag_fontpath
|
|
actdiag_debug = diag_debug
|
|
|
|
blockdiag_antialias = diag_antialias
|
|
blockdiag_transparency = diag_transparency
|
|
blockdiag_html_image_format = diag_html_image_format
|
|
blockdiag_fontpath = diag_fontpath
|
|
blockdiag_latex_image_format = diag_latex_image_format
|
|
blockdiag_debug = diag_debug
|
|
|
|
nwdiag_antialias = diag_antialias
|
|
nwdiag_transparency = diag_transparency
|
|
nwdiag_html_image_format = diag_html_image_format
|
|
nwdiag_latex_image_format = diag_latex_image_format
|
|
nwdiag_fontpath = diag_fontpath
|
|
nwdiag_debug = diag_debug
|
|
|
|
seqdiag_antialias = diag_antialias
|
|
seqdiag_transparency = diag_transparency
|
|
seqdiag_html_image_format = diag_html_image_format
|
|
seqdiag_latex_image_format = diag_latex_image_format
|
|
seqdiag_fontpath = diag_fontpath
|
|
seqdiag_debug = diag_debug
|
|
|
|
|
|
if use_bibtex:
|
|
import pybtex.style.formatting
|
|
from pybtex.richtext import Text, Tag
|
|
|
|
class NervPybtexStyle(pybtex.style.formatting.BaseStyle):
|
|
def format_article(self, entry):
|
|
return Text(Tag('em', entry.fields['key']))
|