docs: update theme; add logo and favicon Signed-off-by: Unai Martinez-Corral <umartinezcorral@antmicro.com>
diff --git a/docs/_static/.keepme b/docs/_static/.keepme deleted file mode 100644 index e69de29..0000000 --- a/docs/_static/.keepme +++ /dev/null
diff --git a/docs/_static/favicon.svg b/docs/_static/favicon.svg new file mode 100644 index 0000000..5535f19 --- /dev/null +++ b/docs/_static/favicon.svg
@@ -0,0 +1 @@ +<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4 13.564L8.175 16v-4.877L4 8.688v4.876zm0-5.659V3.028l4.175 2.435v4.877L4 7.905zm4.852 2.435l3.841-2.241-3.841-2.241v4.482zm-.339-5.463l4.18-2.439L8.513 0l-4.18 2.438 4.18 2.439z" fill="#10CFC9"/></svg> \ No newline at end of file
diff --git a/docs/_static/logo.svg b/docs/_static/logo.svg new file mode 100644 index 0000000..29b511d --- /dev/null +++ b/docs/_static/logo.svg
@@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="288.41299" + height="83.888" + viewBox="0 0 288.41299 83.888" + fill="none" + version="1.1" + id="svg13" + sodipodi:docname="logo.svg" + inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <sodipodi:namedview + id="namedview15" + pagecolor="#505050" + bordercolor="#ffffff" + borderopacity="1" + inkscape:pageshadow="0" + inkscape:pageopacity="0" + inkscape:pagecheckerboard="1" + showgrid="false" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:zoom="2.0675422" + inkscape:cx="144.37432" + inkscape:cy="42.562613" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="1912" + inkscape:window-y="-8" + inkscape:window-maximized="1" + inkscape:current-layer="svg13" /> + <path + fill-rule="evenodd" + clip-rule="evenodd" + d="m 218.704,67.436 c -3.225,0 -6.271,-0.627 -9.137,-1.881 a 23.737,23.737 0 0 1 -7.524,-5.173 25.78,25.78 0 0 1 -5.106,-7.726 c -1.21,-2.956 -1.814,-6.113 -1.814,-9.472 0,-3.36 0.604,-6.495 1.814,-9.406 1.254,-2.911 2.956,-5.464 5.106,-7.659 a 22.92,22.92 0 0 1 7.658,-5.173 c 2.956,-1.254 6.136,-1.88 9.54,-1.88 3.717,0 7.166,0.716 10.346,2.15 3.18,1.432 5.845,3.47 7.995,6.113 l -5.241,5.24 c -1.388,-1.97 -3.247,-3.471 -5.576,-4.501 -2.329,-1.075 -4.837,-1.613 -7.524,-1.613 -3.225,0 -6.069,0.717 -8.532,2.15 -2.419,1.389 -4.3,3.337 -5.643,5.845 -1.344,2.508 -2.016,5.42 -2.016,8.733 0,3.315 0.672,6.248 2.016,8.801 1.388,2.508 3.247,4.48 5.576,5.912 2.329,1.433 4.971,2.15 7.927,2.15 3.135,0 5.823,-0.56 8.062,-1.68 2.284,-1.164 4.031,-2.866 5.24,-5.105 0.758,-1.433 1.279,-3.067 1.562,-4.904 h -14.998 v -7.055 h 23.245 v 1.075 c 0,5.599 -1.008,10.257 -3.023,13.974 -1.971,3.718 -4.681,6.494 -8.129,8.33 -3.449,1.837 -7.39,2.755 -11.824,2.755 z M 123.412,19.737 109.848,49.969 v 4.703 h 22.304 v 12.092 h 7.591 V 54.672 h 6.584 v -6.92 h -6.584 V 35.995 h -7.591 v 11.757 h -12.95 l 12.944,-28.015 z m 39.423,29.291 v 17.736 h -7.726 V 19.737 h 17.467 c 2.956,0 5.599,0.605 7.928,1.814 2.374,1.21 4.232,2.911 5.576,5.106 1.388,2.194 2.083,4.77 2.083,7.726 0,2.956 -0.695,5.531 -2.083,7.726 -1.344,2.194 -3.202,3.896 -5.576,5.105 -2.329,1.21 -4.972,1.814 -7.928,1.814 z m 0,-6.718 h 9.338 c 1.613,0 3.024,-0.313 4.233,-0.94 1.254,-0.672 2.239,-1.59 2.956,-2.755 0.716,-1.21 1.075,-2.62 1.075,-4.232 0,-1.613 -0.359,-3.001 -1.075,-4.166 a 7.019,7.019 0 0 0 -2.956,-2.754 c -1.209,-0.672 -2.62,-1.008 -4.233,-1.008 h -9.338 z m 100.99,-22.573 -19.349,47.027 h 8.196 l 3.615,-9.07 h 20.212 l 3.583,9.07 h 8.331 L 269.199,19.737 Z m 10.02,31.24 -7.407,-18.75 -7.473,18.75 z M 86.199,20.368 h 25.382 l -3.162,7.054 h -22.22 v 12.765 h 16.498 l -3.162,7.054 H 86.199 V 67.395 H 78.473 V 20.369 h 7.726 z" + fill="#1226aa" + id="path2" + style="fill:#ffffff;fill-opacity:1" /> + <g + clip-path="url(#clip0_311_258)" + fill="#1226aa" + id="g6" + transform="translate(-121.678,-25.111)" + style="fill:#ffffff;fill-opacity:1"> + <path + d="M 121.677,96.199 144.306,109 V 83.456 L 121.677,70.655 Z m 0,-29.683 V 40.972 l 22.629,12.801 v 25.544 z m 26.232,12.801 20.772,-11.751 -20.772,-11.754 z m -1.8,-28.662 22.572,-12.771 -22.572,-12.773 -22.573,12.773 22.573,12.77 z" + id="path4" + style="fill:#ffffff;fill-opacity:1" /> + </g> + <defs + id="defs11"> + <clipPath + id="clip0_311_258"> + <path + fill="#ffffff" + transform="translate(121.678,25.11)" + d="M 0,0 H 47.003 V 83.889 H 0 Z" + id="path8" /> + </clipPath> + </defs> +</svg>
diff --git a/docs/conf.py b/docs/conf.py index d302154..1569b7e 100644 --- a/docs/conf.py +++ b/docs/conf.py
@@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright (C) 2017-2020 The Project X-Ray Authors. +# Copyright (C) 2017-2022 The Project X-Ray Authors. # # Use of this source code is governed by a ISC-style # license that can be found in the LICENSE file or at @@ -19,31 +19,24 @@ # All configuration values have a default; values that are commented out # serve to show the default. +# Updated documentation of the configuration options is available at +# https://www.sphinx-doc.org/en/master/usage/configuration.html + +from pathlib import Path import re - -# Markdown support import recommonmark - -# 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 -# documentation root, use os.path.abspath to make it absolute, like shown here. -# import os -import sys +from sys import path as sys_path import subprocess -sys.path.insert(0, os.path.abspath('.')) +sys_path.insert(0, os.path.abspath('.')) from markdown_code_symlinks import LinkParser, MarkdownSymlinksDomain # -- General configuration ------------------------------------------------ -# If your documentation needs a minimal Sphinx version, state it here. -# -needs_sphinx = '3.0' - -# Add any Sphinx extension module names here, as strings. They can be -# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom -# ones. +project = 'Project X-Ray' +author = 'F4PGA Authors' +copyright = f'{author}, 2018 - 2022' # yapf: disable extensions = [ @@ -58,30 +51,21 @@ ] # yapf: enable -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] +emplates_path = ['_templates'] -# The suffix(es) of source filenames. -# You can specify multiple suffix as a list of string: source_suffix = ['.rst', '.md'] source_parsers = { '.md': 'markdown_code_symlinks.LinkParser', } -# The master toctree document. master_doc = 'index' -# General information about the project. -project = u'Project X-Ray' -copyright = u'2018, SymbiFlow Team' -author = u'SymbiFlow Team' - # Enable github links when not on readthedocs on_rtd = os.environ.get('READTHEDOCS', None) == 'True' if not on_rtd: html_context = { "display_github": True, # Integrate GitHub - "github_user": "symbiflow", # Username + "github_user": "f4pga", # Username "github_repo": "prjxray", # Repo name "github_version": "master", # Version "conf_py_path": "/doc/", @@ -93,26 +77,11 @@ subprocess.check_call('git fetch origin --tags', cwd=docs_dir, shell=True) subprocess.check_call('make links', cwd=docs_dir, shell=True) -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# # The full version, including alpha/beta/rc tags. release = re.sub('^v', '', os.popen('git describe ').read().strip()) # The short X.Y version. version = release -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -# -# This is also used if you do content translation via gettext catalogs. -# Usually you set "language" from the command line for these cases. -language = None - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -# This patterns also effect to html_static_path and html_extra_path - # yapf: disable exclude_patterns = [ '_build', @@ -130,87 +99,22 @@ # -- Options for HTML output ---------------------------------------------- -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -# -html_theme = 'sphinx_materialdesign_theme' +html_show_sourcelink = True -# 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 = 'sphinx_symbiflow_theme' + html_theme_options = { - # Specify a list of menu in Header. - # Tuples forms: - # ('Name', 'external url or path of pages in the document', boolean, 'icon name') - # - # Third argument: - # True indicates an external link. - # False indicates path of pages in the document. - # - # Fourth argument: - # Specify the icon name. - # For details see link. - # https://material.io/icons/ - 'header_links': [ - ('Home', 'index', False, 'home'), - ("GitHub", "https://github.com/SymbiFlow/prjxray", True, 'link') - ], - - # Customize css colors. - # For details see link. - # https://getmdl.io/customize/index.html - # - # Values: amber, blue, brown, cyan deep_orange, deep_purple, green, grey, indigo, light_blue, - # light_green, lime, orange, pink, purple, red, teal, yellow(Default: indigo) - 'primary_color': - 'deep_purple', - # Values: Same as primary_color. (Default: pink) - 'accent_color': - 'purple', - - # Customize layout. - # For details see link. - # https://getmdl.io/components/index.html#layout-section - 'fixed_drawer': - True, - 'fixed_header': - True, - 'header_waterfall': - True, - 'header_scroll': - False, - - # Render title in header. - # Values: True, False (Default: False) - 'show_header_title': - False, - # Render title in drawer. - # Values: True, False (Default: True) - 'show_drawer_title': - True, - # Render footer. - # Values: True, False (Default: True) - 'show_footer': - True + 'repo_name': 'f4pga/prjxray', + 'github_url' : 'https://github.com/f4pga/prjxray', + 'globaltoc_collapse': True, + 'color_primary': 'indigo', + 'color_accent': 'blue', } -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] -# Custom sidebar templates, must be a dictionary that maps document names -# to template names. -# -# This is required for the alabaster theme -# refs: http://alabaster.readthedocs.io/en/latest/installation.html#sidebars -html_sidebars = { - '**': [ - 'relations.html', # needs 'show_related': True theme option to display - 'searchbox.html', - ] -} +html_logo = str(Path(html_static_path[0]) / 'logo.svg') +html_favicon = str(Path(html_static_path[0]) / 'favicon.svg') # -- Options for HTMLHelp output ------------------------------------------ @@ -219,53 +123,28 @@ # -- Options for LaTeX output --------------------------------------------- -latex_elements = { - # The paper size ('letterpaper' or 'a4paper'). - # - # 'papersize': 'letterpaper', +latex_elements = {} - # The font size ('10pt', '11pt' or '12pt'). - # - # 'pointsize': '10pt', - - # Additional stuff for the LaTeX preamble. - # - # 'preamble': '', - - # Latex figure (float) alignment - # - # 'figure_align': 'htbp', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, -# author, documentclass [howto, manual, or own class]). latex_documents = [ ( master_doc, 'ProjectX-Ray.tex', u'Project X-Ray Documentation', - u'SymbiFlow Team', 'manual'), + u'F4PGA Authors', 'manual'), ] # -- Options for manual page output --------------------------------------- -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). man_pages = [ (master_doc, 'projectx-ray', u'Project X-Ray Documentation', [author], 1) ] # -- Options for Texinfo output ------------------------------------------- -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) texinfo_documents = [ ( master_doc, 'ProjectX-Ray', u'Project X-Ray Documentation', author, 'ProjectX-Ray', 'One line description of project.', 'Miscellaneous'), ] -# Example configuration for intersphinx: refer to the Python standard library. intersphinx_mapping = {'https://docs.python.org/': None} @@ -273,7 +152,7 @@ # Generate links for markdown-code-symlinks subprocess.check_call("make links", shell=True) - github_code_repo = 'https://github.com/SymbiFlow/prjxray/' + github_code_repo = 'https://github.com/f4pga/prjxray/' github_code_branch = 'blob/master/' docs_root_dir = os.path.realpath(os.path.dirname(__file__))
diff --git a/docs/requirements.txt b/docs/requirements.txt index 622ee48..3a1f776 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt
@@ -1,7 +1,7 @@ -sphinx_materialdesign_theme +http://github.com/SymbiFlow/sphinx_symbiflow_theme/archive/chips.zip#sphinx-symbiflow-theme docutils -sphinx>=3.0 +sphinx sphinx-autobuild breathe @@ -10,4 +10,4 @@ sphinxcontrib-napoleon # Markdown cross-reference solver library -git+https://github.com/SymbiFlow/sphinxcontrib-markdown-symlinks +http://github.com/SymbiFlow/sphinxcontrib-markdown-symlinks/archive/master.zip#sphinxcontrib-markdown-symlinks