1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
# mkdocs-gen-files
**[Plugin][] for [MkDocs][] to programmatically generate documentation pages during the build**
[](https://pypi.org/project/mkdocs-gen-files/)
[](https://github.com/oprypin/mkdocs-gen-files/blob/master/LICENSE.md)
[](https://github.com/oprypin/mkdocs-gen-files/actions?query=event%3Apush+branch%3Amaster)
```shell
pip install mkdocs-gen-files
```
**Continue to the [documentation site][].**
[mkdocs]: https://www.mkdocs.org/
[plugin]: https://www.mkdocs.org/user-guide/plugins/
[documentation site]: https://oprypin.github.io/mkdocs-gen-files
## Usage
Activate the plugin in **mkdocs.yml** (`scripts` is a required list of Python scripts to execute, always relative to **mkdocs.yml**):
```yaml
plugins:
- search
- gen-files:
scripts:
- gen_pages.py # or any other name or path
```
Then create such a script **gen_pages.py** (this is relative to the root, *not* to the **docs** directory).
```python
import mkdocs_gen_files
with mkdocs_gen_files.open("foo.md", "w") as f:
print("Hello, world!", file=f)
```
This added a programmatically generated page to our site. That is, the document doesn't actually appear in our source files, it only *virtually* becomes part of the site to be built by MkDocs.
**Continue to the [documentation site][].**
|