From 743f7ccfe85bf15baac412ebbc95e52b3ea9a6db Mon Sep 17 00:00:00 2001 From: "Begerad, Stefan" Date: Mon, 14 Nov 2022 15:28:07 +0100 Subject: [PATCH] feat: enable generation instruction --- .gitignore | 3 ++ Makefile | 20 +++++++++ source/conf.py | 78 +++++++++++++++++++++++++++++++++++ source/index.rst | 22 ++++++++++ source/manual/imprint.md | 19 +++++++++ source/manual/introduction.md | 3 ++ source/readme.md | 36 ++++++++++++++++ 7 files changed, 181 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 source/conf.py create mode 100644 source/index.rst create mode 100644 source/manual/imprint.md create mode 100644 source/manual/introduction.md create mode 100644 source/readme.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f886e54 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +build +venv +*.*~ diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..d0c3cbf --- /dev/null +++ b/Makefile @@ -0,0 +1,20 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line, and also +# from the environment for the first two. +SPHINXOPTS ?= +SPHINXBUILD ?= sphinx-build +SOURCEDIR = source +BUILDDIR = build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) diff --git a/source/conf.py b/source/conf.py new file mode 100644 index 0000000..f650cf8 --- /dev/null +++ b/source/conf.py @@ -0,0 +1,78 @@ +# 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 = 'Handbuch' +copyright = '2022, ' +author = 'Software Ingenieur Begerad (SIB)' + +# The full version, including alpha/beta/rc tags +release = '0.1.0' + + +# -- 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 = [ + 'myst_parser' +] + +# 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 = ['*~','readme.md*'] + + +# -- 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 = 'alabaster' + +# 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'] + +# -- Options for LaTex output ------------------------------------------------- + +latex_elements = { + 'papersize': r'a4paper', + 'fontpkg': r''' +%\usepackage[default]{lato} +%\setmainfont{DejaVu Serif} +%\setsansfont{DejaVu Sans} +%\setmonofont{DejaVu Sans Mono} +''', + 'preamble': r''' +\usepackage[titles]{tocloft} +\cftsetpnumwidth {1.25cm}\cftsetrmarg{1.5cm} +\setlength{\cftchapnumwidth}{0.75cm} +\setlength{\cftsecindent}{\cftchapnumwidth} +\setlength{\cftsecnumwidth}{1.25cm} +''', + 'fncychap': r'\usepackage[Bjornstrup]{fncychap}', + 'printindex': r'\footnotesize\raggedright\printindex', +} +latex_show_urls = 'footnote' diff --git a/source/index.rst b/source/index.rst new file mode 100644 index 0000000..25526fe --- /dev/null +++ b/source/index.rst @@ -0,0 +1,22 @@ +.. dcmnttn documentation master file, created by + sphinx-quickstart on Tue Nov 8 08:21:48 2022. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +RTFM - Das Handbuch der Free Fleet Management Initiative +======================================================== + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + manual/imprint + manual/introduction + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` diff --git a/source/manual/imprint.md b/source/manual/imprint.md new file mode 100644 index 0000000..ce1c529 --- /dev/null +++ b/source/manual/imprint.md @@ -0,0 +1,19 @@ +# Imprint + +© / Copyright: 2022 //TODO tbd + +% Auflage (soweit nicht Erstauflage) +% Umschlaggestaltung, Illustration: vollständiger Name bzw. Institution +% Lektorat, Korrektorat: vollständiger Name bzw. Institution +% Übersetzung: vollständiger Name bzw. Institution +% Weitere Mitwirkende: vollständiger Name bzw. Institution + +Verlag: + +//TODO tbd + +% Druck: Name und Ort der Druckerei + +% ISBN Paperback: 978-3-XXXX-XXXX-X +% ISBN Hardcover: 978-3-XXXX-XXXX-X +% ISBN e-Book: 978-3-XXXX-XXXX-X diff --git a/source/manual/introduction.md b/source/manual/introduction.md new file mode 100644 index 0000000..461f7bc --- /dev/null +++ b/source/manual/introduction.md @@ -0,0 +1,3 @@ +# Introduction + +//TODO tbc diff --git a/source/readme.md b/source/readme.md new file mode 100644 index 0000000..75e6c02 --- /dev/null +++ b/source/readme.md @@ -0,0 +1,36 @@ +# Introduction + +This is the source directory of the Sphinx documentation generator. + +# Build + +You can build HTML files like this. + +``` +sphinx-build -b html +``` + +# Configuration + +## Markdown + +Configure Sphinx for Markdown support like this. + +``` +https://www.sphinx-doc.org/en/master/usage/markdown.html +``` + +NOTE: Make sure to add ```'myst_parser'``` to +```extension``` to the configuration. + +## Exclude Documentation + +Add all files and folders to be excluded from the generation to +```exclude_patterns```. + +# File System + +* `conf.ph`: Sphinx configuration file +* `index.rst`: root document serves as welcome page and contains root of ToC +* `manual`: folder containing source files +* `readme.md`: this file