changeset 171:4b87a9ecffdd

The first somewhat useable version of documentation in PDF. Using lualatex and the IBM Plex fonts. BUGS: - line-breaks - missing symbols
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 11 May 2026 14:38:59 +0200
parents f761694373e0
children ad80fcbf7b47
files Makefile docs/conf.py docs/index-latex.rst docs/intro-latex.rst docs/lexer-intro-latex.rst docs/lexers-latex.rst
diffstat 6 files changed, 76 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Mon May 11 10:52:43 2026 +0200
+++ b/Makefile	Mon May 11 14:38:59 2026 +0200
@@ -4,7 +4,7 @@
 # SPDX-License-Identifier: MIT
 # :-
 
-.PHONY: help all clean distclean dist export build tests flake8 docs clean-docs clean-docs-html install-dev install-docs
+.PHONY: help all clean distclean dist export build tests flake8 docs clean-docs clean-docs-html pdf clean-pdf install-dev install-docs
 
 help:
 	@echo Targets: help, clean, distclean, export, dist, build, tests docs clean-docs
@@ -43,6 +43,13 @@
 clean-docs-html:
 	rm -rf docs/_build/html
 
+pdf:
+	(cd docs && make latex)
+	(cd docs/_build/latex && gmake)
+
+clean-pdf:
+	rm -rf docs/_build/latex
+
 install-dev:
 	python -m pip install -r requirements-dev.txt
 
--- a/docs/conf.py	Mon May 11 10:52:43 2026 +0200
+++ b/docs/conf.py	Mon May 11 14:38:59 2026 +0200
@@ -23,6 +23,8 @@
 
 today = datetime.date.today().isoformat()
 
+master_doc = "index"
+
 # -- Project information -----------------------------------------------------
 # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
 
@@ -126,6 +128,23 @@
 #pygments_style = "sphinx"
 pygments_style = "default"
 
+# --- Options for LaTeX output -----------------------------------------------
+# https://www.sphinx-doc.org/en/master/latex.html
+latex_engine = 'lualatex'
+latex_elements = {
+    "papersize": "a4paper",
+    "babel": r"\usepackage{babel}",
+    "fontpkg": r"\usepackage{plex-otf}",
+    "releasename": "Version",
+}
+latex_theme = "manual"
+latex_show_urls = "footnote"
+latex_show_pagerefs = True
+latex_domain_indices = False
+latex_documents = [
+    ("index-latex", "PygmentsPseudocodeLexer.tex", "The Pygments Pseudocode Lexer", "Franz Glasner", "manual", True),
+]
+
 
 def setup(app):
     #
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docs/index-latex.rst	Mon May 11 14:38:59 2026 +0200
@@ -0,0 +1,21 @@
+.. -*- coding: utf-8; indent-tabs-mode: nil; -*-
+
+:orphan:   
+
+*******************************
+ The Pygments Pseudocode Lexer
+*******************************
+
+Introduction
+============
+
+.. toctree::
+   :maxdepth: 2
+   :caption: Contents:
+
+   intro-latex
+   lexers-latex
+   filters
+
+.. * :ref:`genindex`
+.. * :ref:`modindex`
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docs/intro-latex.rst	Mon May 11 14:38:59 2026 +0200
@@ -0,0 +1,8 @@
+.. -*- coding: utf-8; indent-tabs-mode: nil; -*-
+
+**************
+ Introduction
+**************
+
+.. include:: ../README.rst
+   :start-line: 5
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docs/lexer-intro-latex.rst	Mon May 11 14:38:59 2026 +0200
@@ -0,0 +1,9 @@
+.. -*- coding: utf-8; indent-tabs-mode: nil; -*-
+
+**********   
+ Overview
+**********
+
+The package contains the following lexers:
+
+.. include:: lexerlist.rst
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docs/lexers-latex.rst	Mon May 11 14:38:59 2026 +0200
@@ -0,0 +1,11 @@
+.. -*- coding: utf-8; indent-tabs-mode: nil; -*-
+
+********
+ Lexers
+********
+
+.. toctree::
+
+   lexer-intro-latex
+   lexer-algpseudocode
+   lexer-frpseudocode