This repository contains the code of the LaTeX+Markdown template that is used to typeset ISTQB documents.
To typeset ISTQB documents on your computer, take the following steps:
-
Download the Docker image
istqb_product_base
.For example, here is how you would do this in a terminal of a Linux system:
$ docker pull ghcr.io/istqborg/istqb_product_base
-
Download one of ISTQB document repositories with Git.
For example, here is how you would download the example documents from the
istqb_product_template
repository in a terminal of a Linux system:$ git clone https://github.com/istqborg/istqb_product_template
-
Typeset the documents with the Docker image.
For example, here is how you would typeset the example documents to PDF in a terminal of a Linux system:
$ docker run --rm -it -v "$PWD"/istqb_product_template/:/mnt -w /mnt ghcr.io/istqborg/istqb_product_base compile-tex-to-pdf
Compiled file "/mnt/accreditation-guidelines.tex" to "ISTQB-CT-TEMP-Accreditation Guidelines-v0.1-EN.pdf" Compiled file "/mnt/body-of-knowledge.tex" to "ISTQB-CT-TEMP-Body of Knowledge-v0.1-EN.pdf" Compiled file "/mnt/release-notes.tex" to "ISTQB-CT-TEMP-Release Notes-v0.1-EN.pdf" Compiled file "/mnt/sample-exam-answers.tex" to "ISTQB-CT-TEMP-Sample Exam -- Answers-v0.1-EN.pdf" Compiled file "/mnt/sample-exam-questions.tex" to "ISTQB-CT-TEMP-Sample Exam -- Questions-v0.1-EN.pdf" Compiled file "/mnt/syllabus.tex" to "ISTQB-CT-TEMP-Syllabus-v0.1-EN.pdf"
Besides typesetting documents to PDF with the
compile-tex-to-pdf
command, you can also convert them to HTML, EPUB, and DOCX, among other things. Here is how you would list the available commands in a terminal of a Linux system:$ docker run --rm -it ghcr.io/istqborg/istqb_product_base --help
usage: template.py [-h] {find-files,fixup-languages,fixup-line-endings,validate-files,convert-eps-to-pdf,convert-xlsx-to-pdf,convert-md-questions-to-yaml,convert-yaml-questions-to-md,compile-tex-to-pdf,compile-tex-to-html,compile-tex-to-epub,compile-tex-to-docx} ... Process ISTQB documents written with the LaTeX+Markdown template positional arguments: {find-files,fixup-languages,fixup-line-endings,validate-files,convert-eps-to-pdf,convert-xlsx-to-pdf,convert-md-questions-to-yaml,convert-yaml-questions-to-md,compile-tex-to-pdf,compile-tex-to-html,compile-tex-to-epub,compile-tex-to-docx} find-files Produce a newline-separated list of different types of files in this repository fixup-languages Determine and add `babel-language` to language definitions if missing fixup-line-endings Convert all text files to Unix-style line endings validate-files Validate the different types of files in this repository convert-eps-to-pdf Convert all EPS files in this repository to PDF convert-xlsx-to-pdf Convert all XLSX files in this repository to PDF convert-md-questions-to-yaml Convert all MD files with questions definitions to YAML convert-yaml-questions-to-md Convert all YAML files with questions definitions to MD compile-tex-to-pdf Compile all TeX files in this repository to PDF compile-tex-to-html Compile all TeX files in this repository to HTML compile-tex-to-epub Compile all TeX files in this repository to EPUB compile-tex-to-docx Compile all TeX files in this repository to DOCX options: -h, --help show this help message and exit
For more information about the LaTeX+Markdown template, consult the following materials:
- An example ISTQB document that documents how the template can be used by authors.
- A whitepaper that documents how the template can be extended to further document types by programmers.