From 2e1e9690f89abe10e1b889c02b31200e67061dcb Mon Sep 17 00:00:00 2001 From: Sandra Erbel Date: Sun, 24 Mar 2024 13:15:37 +0100 Subject: [PATCH] [TASK] Switch Documentation Rendering to PHP (#737) You can try out the rendering locally with ``` make docs ``` --- .editorconfig | 5 ++ .github/workflows/test-documentation.yml | 17 ++++++ Documentation/GeneratedExtension/Index.rst | 1 - Documentation/Index.rst | 1 - Documentation/Settings.cfg | 63 ---------------------- Documentation/genindex.rst | 7 --- Documentation/guides.xml | 27 ++++++++++ Makefile | 14 +++++ 8 files changed, 63 insertions(+), 72 deletions(-) create mode 100644 .github/workflows/test-documentation.yml delete mode 100644 Documentation/Settings.cfg delete mode 100644 Documentation/genindex.rst create mode 100644 Documentation/guides.xml create mode 100644 Makefile diff --git a/.editorconfig b/.editorconfig index 301f0ef45..117b399da 100644 --- a/.editorconfig +++ b/.editorconfig @@ -57,3 +57,8 @@ indent_style = tab [*{.phpt,htmlt}] insert_final_newline = false + +# Makefile +[{Makefile,**.mk}] +# Use tabs for indentation (Makefiles require tabs) +indent_style = tab diff --git a/.github/workflows/test-documentation.yml b/.github/workflows/test-documentation.yml new file mode 100644 index 000000000..79ac662ea --- /dev/null +++ b/.github/workflows/test-documentation.yml @@ -0,0 +1,17 @@ +name: test documentation + +on: [ push, pull_request ] + +jobs: + tests: + name: documentation + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Test if the documentation will render without warnings + run: | + mkdir -p Documentation-GENERATED-temp \ + && docker run --rm --pull always -v $(pwd):/project \ + ghcr.io/typo3-documentation/render-guides:latest --config=Documentation --no-progress --fail-on-log diff --git a/Documentation/GeneratedExtension/Index.rst b/Documentation/GeneratedExtension/Index.rst index 5efa46235..8cb16438d 100644 --- a/Documentation/GeneratedExtension/Index.rst +++ b/Documentation/GeneratedExtension/Index.rst @@ -161,7 +161,6 @@ reStructuredText and Sphinx can be found in the official TYPO3 documentation: * :ref:`introduction to reST & Sphinx ` * :ref:`h2document:rest-cheat-sheet` * :ref:`h2document:format-rest-cgl` -* :ref:`h2document:rest-common-pitfalls` .. _render-documentation: diff --git a/Documentation/Index.rst b/Documentation/Index.rst index 216f8c428..e0044ea0f 100644 --- a/Documentation/Index.rst +++ b/Documentation/Index.rst @@ -74,4 +74,3 @@ even if you change the extension in the graphical editor. :hidden: Sitemap - genindex diff --git a/Documentation/Settings.cfg b/Documentation/Settings.cfg deleted file mode 100644 index ebeceb77a..000000000 --- a/Documentation/Settings.cfg +++ /dev/null @@ -1,63 +0,0 @@ -# More information about this file: -# https://docs.typo3.org/m/typo3/docs-how-to-document/main/en-us/GeneralConventions/FileStructure.html#settings-cfg - -[general] - -project = Extension Builder -version = main (development) -release = main (development) -copyright = since 2009 by the TYPO3 contributors - -[html_theme_options] - -# "Edit on GitHub" button -github_repository = FriendsOfTYPO3/extension_builder -github_branch = master - -# Footer links -project_home = https://extensions.typo3.org/extension/extension_builder -project_contact = https://typo3.slack.com/archives/C0CEB3BMY -project_repository = https://github.com/FriendsOfTYPO3/extension_builder -project_issues = https://github.com/FriendsOfTYPO3/extension_builder/issues -project_discussions = - -use_opensearch = - -[intersphinx_mapping] - -# Official TYPO3 manuals -h2document = https://docs.typo3.org/m/typo3/docs-how-to-document/main/en-us/ -# t3cheatsheets = https://docs.typo3.org/m/typo3/docs-cheatsheets/main/en-us/ -# t3contribute = https://docs.typo3.org/m/typo3/guide-contributionworkflow/main/en-us/ -t3coreapi = https://docs.typo3.org/m/typo3/reference-coreapi/11.5/en-us/ -t3coreapi-latest = https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ -# t3docteam = https://docs.typo3.org/m/typo3/team-t3docteam/main/en-us/ -# t3editors = https://docs.typo3.org/m/typo3/tutorial-editors/main/en-us/ -t3extbasebook = https://docs.typo3.org/m/typo3/book-extbasefluid/11.5/en-us/ -# t3extexample = https://docs.typo3.org/m/typo3/guide-example-extension-manual/main/en-us/ -# t3home = https://docs.typo3.org/ -# t3install = https://docs.typo3.org/m/typo3/guide-installation/main/en-us/ -# t3l10n = https://docs.typo3.org/m/typo3/guide-frontendlocalization/main/en-us/ -# t3sitepackage = https://docs.typo3.org/m/typo3/tutorial-sitepackage/main/en-us/ -t3start = https://docs.typo3.org/m/typo3/tutorial-getting-started/11.5/en-us/ -t3tca = https://docs.typo3.org/m/typo3/reference-tca/11.5/en-us/ -# t3templating = https://docs.typo3.org/m/typo3/tutorial-templating/main/en-us/ -# t3translate = https://docs.typo3.org/m/typo3/guide-frontendlocalization/main/en-us/ -# t3tsconfig = https://docs.typo3.org/m/typo3/reference-tsconfig/main/en-us/ -# t3tsref = https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/ -# t3ts45 = https://docs.typo3.org/m/typo3/tutorial-typoscript-in-45-minutes/main/en-us/ -# t3viewhelper = https://docs.typo3.org/other/typo3/view-helper-reference/main/en-us/ -# t3upgrade = https://docs.typo3.org/m/typo3/guide-installation/main/en-us/ - -# TYPO3 system extensions -# ext_adminpanel = https://docs.typo3.org/c/typo3/cms-adminpanel/main/en-us/ -# ext_core = https://docs.typo3.org/c/typo3/cms-core/main/en-us/ -# ext_dashboard = https://docs.typo3.org/c/typo3/cms-dashboard/main/en-us/ -# ext_felogin = https://docs.typo3.org/c/typo3/cms-felogin/main/en-us/ -# ext_form = https://docs.typo3.org/c/typo3/cms-form/main/en-us/ -# ext_fsc = https://docs.typo3.org/c/typo3/cms-fluid-styled-content/main/en-us/ -# ext_indexed_search = https://docs.typo3.org/c/typo3/cms-indexed-search/main/en-us/ -# ext_rte_ckeditor = https://docs.typo3.org/c/typo3/cms-rte-ckeditor/main/en-us/ -# ext_scheduler = https://docs.typo3.org/c/typo3/cms-scheduler/main/en-us/ -# ext_seo = https://docs.typo3.org/c/typo3/cms-seo/main/en-us/ -# ext_workspaces = https://docs.typo3.org/c/typo3/cms-workspaces/main/en-us/ diff --git a/Documentation/genindex.rst b/Documentation/genindex.rst deleted file mode 100644 index 806ec56a7..000000000 --- a/Documentation/genindex.rst +++ /dev/null @@ -1,7 +0,0 @@ -.. include:: /Includes.rst.txt - -===== -Index -===== - -.. Sphinx will insert here the general index automatically. diff --git a/Documentation/guides.xml b/Documentation/guides.xml new file mode 100644 index 000000000..de2933882 --- /dev/null +++ b/Documentation/guides.xml @@ -0,0 +1,27 @@ + + + + + + + diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..02cc8ba2d --- /dev/null +++ b/Makefile @@ -0,0 +1,14 @@ +.PHONY: help +help: ## Displays this list of targets with descriptions + @echo "The following commands are available:\n" + @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[32m%-30s\033[0m %s\n", $$1, $$2}' + +.PHONY: docs +docs: ## Generate projects documentation (from "Documentation" directory) + mkdir -p Documentation-GENERATED-temp + docker run --rm --pull always -v "$(shell pwd)":/project -t ghcr.io/typo3-documentation/render-guides:latest --config=Documentation + +.PHONY: test-docs +test-docs: ## Test the documentation rendering + mkdir -p Documentation-GENERATED-temp + docker run --rm --pull always -v "$(shell pwd)":/project -t ghcr.io/typo3-documentation/render-guides:latest --config=Documentation --no-progress --fail-on-log