diff --git a/doc/capability_templates/capabilities-template.jinja b/doc/capability_templates/capabilities-template.jinja new file mode 100644 index 0000000..dc10cbf --- /dev/null +++ b/doc/capability_templates/capabilities-template.jinja @@ -0,0 +1,20 @@ +{% for item in data.profiles %} +{% set printer = data.profiles[item] %} +{% macro draw_with_underline(text, symbol='-') -%} +{{ escape_rst(text) }} +{{ escape_rst(text) | length * symbol }} +{%- endmacro %} +{{ draw_with_underline(printer.name) }} +{{ escape_rst(printer.notes) }} + +Basic information +^^^^^^^^^^^^^^^^^ + +====================== ================================================================ +Name {{ escape_rst(printer.name|default('Unknown')) }} +Vendor {{ escape_rst(printer.vendor|default('Unknown')) }} +Media width (mm) {{ escape_rst(printer.media.width.mm|default('Unknown')|string) }} +Media width (pixels) {{ escape_rst(printer.media.width.pixels|default('Unknown')|string) }} +DPI {{ escape_rst(printer.media.dpi|default('Unknown')|string) }} +====================== ================================================================ +{% endfor %} \ No newline at end of file diff --git a/doc/conf.py b/doc/conf.py index 9696642..50ad559 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -42,6 +42,7 @@ extensions = [ "sphinx.ext.todo", "sphinx.ext.graphviz", "sphinx.ext.inheritance_diagram", + "sphinxcontrib.datatemplates", "sphinxcontrib.spelling", ] @@ -54,7 +55,7 @@ suppress_warnings = [ todo_include_todos = True # Add any paths that contain templates here, relative to this directory. -templates_path = ["_templates"] +templates_path = ["_templates", "capability_templates"] # The suffix of source filenames. source_suffix = ".rst" diff --git a/doc/index.rst b/doc/index.rst index 4b5eea7..c630a65 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -15,6 +15,7 @@ Content user/installation user/methods user/printers + user/available-profiles user/raspi user/todo user/usage diff --git a/doc/requirements.txt b/doc/requirements.txt index d212805..823892f 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -10,3 +10,4 @@ sphinxcontrib-spelling>=7.2.0 python-barcode>=0.11.0,<1 importlib-metadata importlib_resources +sphinxcontrib.datatemplates diff --git a/doc/user/available-profiles.rst b/doc/user/available-profiles.rst new file mode 100644 index 0000000..7144491 --- /dev/null +++ b/doc/user/available-profiles.rst @@ -0,0 +1,10 @@ +Available profiles +------------------ +:Last Reviewed: 2023-07-27 + +* todo explain capabilities +* todo explain usage +* todo give hints on how to sideload and improve profiles (profile that is bundled with release can be replaced) + +.. datatemplate:json:: ../../capabilities-data/dist/capabilities.json + :template: capabilities-template.jinja diff --git a/tox.ini b/tox.ini index dbc2a0e..1adcd45 100644 --- a/tox.ini +++ b/tox.ini @@ -32,6 +32,7 @@ deps = sphinx>=3.0.0 setuptools_scm python-barcode sphinxcontrib-spelling>=7.2.0 + sphinxcontrib.datatemplates sphinx_rtd_theme commands = sphinx-build -W -b html -d {envtmpdir}/doctrees . {envtmpdir}/html