Welcome | Get started | Dive | Contribute | Topics | Reference | Changes | More

Shared documentation pages

Shared Sphinx source files

Some Lino doctrees contain shared Sphinx source files. The master copies of these files are maintained by convention in the book repository. Other repositories act as slaves of the book: they copy these files from the book when you run inv bd in these repositories.

The make_docs_command of the book repository is set to 'python make_docs.py', and the repository has a script make_docs.py in its root directory.

make_docs.py

A Python module that generates the source files for two pages List of known Lino applications and Statistics.

The make_docs_command of a slave repository is set to './make_docs.sh', and the repository has a script make_docs.sh in its root directory.

make_docs.sh

A Shell script that updates shared source files from the master to the slave.

The content of this script is the same for most slaves:

#!/bin/bash
set -e

BOOK=../book/docs
if [ -d $BOOK ] ; then
  cp -au $BOOK/shared docs/
  cp -au $BOOK/copyright.rst docs/
fi

The if [ -d $BOOK ] test is needed because the make_docs.sh file will also be invoked on GitLab where the book repository is not present.

Shared include files

The following files are meant to be included by other files using the include directive.

docs/shared/include/defs.rst
docs/shared/include/tested.rst