2022-08-09 09:29:02 +00:00
|
|
|
# Building OpenMW documentation
|
|
|
|
|
|
|
|
## Building in Docker (the recommended way)
|
|
|
|
|
|
|
|
### Preparing Docker image
|
|
|
|
|
|
|
|
Run the following commands from OpenMW source directory to build a new Docker image `openmw_doc`:
|
|
|
|
```bash
|
|
|
|
cd docs
|
|
|
|
docker build -t openmw_doc .
|
|
|
|
cd ..
|
|
|
|
```
|
|
|
|
|
|
|
|
(or run script `docs/prepare_docker_image.sh`)
|
|
|
|
|
|
|
|
This step needs to be repeated only if any dependencies were changed.
|
|
|
|
|
|
|
|
The image is based on `readthedocs/build:latest` that is newer than the image readthedocs uses by default (`readthedocs/build:stable`).
|
|
|
|
So if after some readthedocs update the documentation will stop building, there is a chance to detect it before the online docs will break.
|
|
|
|
|
|
|
|
### Generating HTML
|
|
|
|
|
|
|
|
Run the following command from OpenMW source directory to generate the documentation:
|
|
|
|
```bash
|
|
|
|
docker run --user "$(id -u)":"$(id -g)" --volume "$PWD":/openmw openmw_doc \
|
|
|
|
sphinx-build /openmw/docs/source /openmw/docs/build
|
|
|
|
```
|
|
|
|
|
|
|
|
(or run script `docs/build_docs.sh`)
|
|
|
|
|
|
|
|
To view the generated documentation just open `docs/build/index.html` in a browser.
|
|
|
|
|
|
|
|
## Building without Docker (an alternative way)
|
|
|
|
|
|
|
|
Building documentation without Docker is more complicated as it requires multiple dependencies.
|
|
|
|
|
|
|
|
### Installation of required python packages
|
|
|
|
|
|
|
|
From OpenMW source directory
|
|
|
|
```bash
|
|
|
|
pip3 install -r docs/requirements.txt
|
|
|
|
```
|
|
|
|
|
|
|
|
### Installation of openmwluadocumentor:
|
|
|
|
|
|
|
|
**Debian/Ubuntu**
|
|
|
|
|
|
|
|
```bash
|
|
|
|
sudo apt install luarocks
|
|
|
|
git clone https://gitlab.com/ptmikheev/openmw-luadocumentor.git
|
|
|
|
cd openmw-luadocumentor/luarocks
|
2023-01-04 09:26:04 +00:00
|
|
|
luarocks --local pack openmwluadocumentor-0.2.0-1.rockspec
|
|
|
|
luarocks --local install openmwluadocumentor-0.2.0-1.src.rock
|
2022-08-09 09:29:02 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
**Windows**
|
|
|
|
|
|
|
|
- install LuaRocks (heavily recommended to use the standalone package)
|
|
|
|
https://github.com/luarocks/luarocks/wiki/Installation-instructions-for-Windows
|
|
|
|
- `git clone https://gitlab.com/ptmikheev/openmw-luadocumentor.git`
|
|
|
|
- `cd openmw-luadocumentor/luarocks`
|
|
|
|
- open "Developer Command Prompt for VS <2017/2019>" in this directory and run:
|
|
|
|
```bash
|
2023-01-04 09:26:04 +00:00
|
|
|
luarocks --local pack openmwluadocumentor-0.2.0-1.rockspec
|
|
|
|
luarocks --local install openmwluadocumentor-0.2.0-1.src.rock
|
2022-08-09 09:29:02 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
### Generating HTML
|
|
|
|
|
|
|
|
Run the following command from OpenMW source directory to generate the documentation:
|
|
|
|
```bash
|
|
|
|
sphinx-build docs/source docs/build
|
|
|
|
```
|