mirror of
https://github.com/slint-ui/slint.git
synced 2025-09-28 04:45:13 +00:00
Improve C++ documentation shell
Doxygen's markdown support can't quite deal with the Github flavor, the language reference looks terrible. So instead, this change switches to using Sphinx, with two extensions that call Doxygen for us and allow including markdown. The result is a read-the-docs themed sphinx site that includes search even in the language reference.
This commit is contained in:
parent
063ff45d0c
commit
e9685c5851
8 changed files with 145 additions and 2571 deletions
1
api/sixtyfps-cpp/docs/.gitignore
vendored
Normal file
1
api/sixtyfps-cpp/docs/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
Pipfile.lock
|
16
api/sixtyfps-cpp/docs/Pipfile
Normal file
16
api/sixtyfps-cpp/docs/Pipfile
Normal file
|
@ -0,0 +1,16 @@
|
|||
[[source]]
|
||||
name = "pypi"
|
||||
url = "https://pypi.org/simple"
|
||||
verify_ssl = true
|
||||
|
||||
[dev-packages]
|
||||
|
||||
[packages]
|
||||
sphinx = "*"
|
||||
breathe = "*"
|
||||
sphinx-rtd-theme = "*"
|
||||
exhale = "*"
|
||||
recommonmark = "*"
|
||||
|
||||
[requires]
|
||||
python_version = "3.8"
|
69
api/sixtyfps-cpp/docs/conf.py.in
Normal file
69
api/sixtyfps-cpp/docs/conf.py.in
Normal file
|
@ -0,0 +1,69 @@
|
|||
# Configuration file for the Sphinx documentation builder.
|
||||
#
|
||||
# This file only contains a selection of the most common options. For a full
|
||||
# list see the documentation:
|
||||
# https://www.sphinx-doc.org/en/master/usage/configuration.html
|
||||
|
||||
# -- Path setup --------------------------------------------------------------
|
||||
|
||||
# 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
|
||||
# sys.path.insert(0, os.path.abspath('.'))
|
||||
|
||||
|
||||
# -- Project information -----------------------------------------------------
|
||||
|
||||
project = 'SixtyFPS C++'
|
||||
copyright = '2020, info@sixtyfps.io'
|
||||
author = 'info@sixtyfps.io'
|
||||
|
||||
# The full version, including alpha/beta/rc tags
|
||||
release = '0.0.1'
|
||||
|
||||
|
||||
# -- General configuration ---------------------------------------------------
|
||||
|
||||
# Add any Sphinx extension module names here, as strings. They can be
|
||||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
||||
# ones.
|
||||
extensions = ["breathe", "recommonmark", "exhale"]
|
||||
|
||||
breathe_projects = {
|
||||
"SixtyFPS": "./docs/xml"
|
||||
}
|
||||
breathe_default_project = "SixtyFPS"
|
||||
|
||||
exhale_args = {
|
||||
"containmentFolder": "./api",
|
||||
"rootFileName": "library_root.rst",
|
||||
"rootFileTitle": "SixtyFPS CPP Reference Documentation",
|
||||
"doxygenStripFromPath": "..",
|
||||
"createTreeView": True,
|
||||
"exhaleExecutesDoxygen": True,
|
||||
"exhaleDoxygenStdin": "INPUT = @CMAKE_CURRENT_SOURCE_DIR@/../include"
|
||||
}
|
||||
|
||||
# Add any paths that contain templates here, relative to this directory.
|
||||
templates_path = ['_templates']
|
||||
|
||||
# List of patterns, relative to source directory, that match files and
|
||||
# directories to ignore when looking for source files.
|
||||
# This pattern also affects html_static_path and html_extra_path.
|
||||
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
|
||||
|
||||
|
||||
# -- 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_rtd_theme'
|
||||
|
||||
# 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']
|
33
api/sixtyfps-cpp/docs/index.rst
Normal file
33
api/sixtyfps-cpp/docs/index.rst
Normal file
|
@ -0,0 +1,33 @@
|
|||
.. LICENSE BEGIN
|
||||
..
|
||||
.. This file is part of the Sixty FPS Project
|
||||
..
|
||||
.. Copyright (c) 2020 Olivier Goffart <olivier.goffart@sixtyfps.io>
|
||||
.. Copyright (c) 2020 Simon Hausmann <simon.hausmann@sixtyfps.io>
|
||||
..
|
||||
.. SPDX-License-Identifier: GPL-3.0-only
|
||||
..
|
||||
.. LICENSE END
|
||||
.. SixtyFPS C++ documentation master file, created by
|
||||
sphinx-quickstart on Mon Aug 24 14:21:19 2020.
|
||||
You can adapt this file completely to your liking, but it should at least
|
||||
contain the root `toctree` directive.
|
||||
|
||||
Welcome to SixtyFPS C++'s documentation!
|
||||
========================================
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
:caption: Contents:
|
||||
|
||||
markdown/langref.md
|
||||
|
||||
api/library_root
|
||||
|
||||
|
||||
Indices and tables
|
||||
==================
|
||||
|
||||
* :ref:`genindex`
|
||||
* :ref:`modindex`
|
||||
* :ref:`search`
|
Loading…
Add table
Add a link
Reference in a new issue