From 22e41b5a488a0ddc29c21a0f021fe64c156ccbaf Mon Sep 17 00:00:00 2001
From: WRH <12756472+wangruohui@users.noreply.github.com>
Date: Mon, 7 Mar 2022 21:41:10 +0800
Subject: [PATCH] [Docs] Update doc build system (#769)
* stash
* cleanup
* use relpath for dataset.md and modelzoo.md
* basename for reference
---
.gitignore | 4 +++
docs/en/conf.py | 4 +--
docs/en/index.rst | 24 ++++++++--------
docs/en/merge_docs.sh | 67 +++++++++++++++++++++++++------------------
docs/en/stat.py | 13 +++++----
5 files changed, 64 insertions(+), 48 deletions(-)
diff --git a/.gitignore b/.gitignore
index e9e3b93b21..b0ac8bd358 100644
--- a/.gitignore
+++ b/.gitignore
@@ -66,7 +66,9 @@ instance/
# Sphinx documentation
docs/en/_build/
+docs/en/_tmp/
docs/zh_cn/_build/
+docs/zh_cn/_tmp/
# PyBuilder
target/
@@ -128,4 +130,6 @@ mmedit/.mim
# Pytorch Server
*.mar
+
+# MacOS
.DS_Store
diff --git a/docs/en/conf.py b/docs/en/conf.py
index c2b63d3a21..6297f01608 100644
--- a/docs/en/conf.py
+++ b/docs/en/conf.py
@@ -97,8 +97,8 @@
def builder_inited_handler(app):
- subprocess.run(['./merge_docs.sh'])
- subprocess.run(['./stat.py'])
+ subprocess.run(['bash', './merge_docs.sh'])
+ subprocess.run(['python', './stat.py'])
def setup(app):
diff --git a/docs/en/index.rst b/docs/en/index.rst
index 37f10c235c..ef89f9e79c 100644
--- a/docs/en/index.rst
+++ b/docs/en/index.rst
@@ -14,22 +14,22 @@ You can switch between Chinese and English documents in the bottom-left corner o
:maxdepth: 2
:caption: Model Zoo
- modelzoo.md
- inpainting_models.md
- mattors_models.md
- restorers_models.md
- synthesizers_models.md
- video_interpolators_models.md
+ _tmp/modelzoo.md
+ _tmp/inpainting_models.md
+ _tmp/mattors_models.md
+ _tmp/restorers_models.md
+ _tmp/synthesizers_models.md
+ _tmp/video_interpolators_models.md
.. toctree::
:maxdepth: 2
:caption: Datasets
- datasets.md
- inpainting_datasets.md
- matting_datasets.md
- sr_datasets.md
- generation_datasets.md
+ _tmp/datasets.md
+ _tmp/inpainting_datasets.md
+ _tmp/matting_datasets.md
+ _tmp/sr_datasets.md
+ _tmp/generation_datasets.md
.. toctree::
:maxdepth: 2
@@ -42,7 +42,7 @@ You can switch between Chinese and English documents in the bottom-left corner o
:maxdepth: 2
:caption: Tutorials
- config.md
+ _tmp/config.md
.. toctree::
:maxdepth: 2
diff --git a/docs/en/merge_docs.sh b/docs/en/merge_docs.sh
index 127f6b56cb..fa9eea984e 100755
--- a/docs/en/merge_docs.sh
+++ b/docs/en/merge_docs.sh
@@ -1,36 +1,47 @@
#!/usr/bin/env bash
-sed -i '$a\\n
\n' ../../configs/inpainting/*/README.md
-sed -i '$a\\n
\n' ../../configs/mattors/*/README.md
-sed -i '$a\\n
\n' ../../configs/restorers/*/README.md
-sed -i '$a\\n
\n' ../../configs/synthesizers/*/README.md
+mkdir -p _tmp
+rm -r _tmp/*
+cp -r ../../configs/ _tmp/
+find _tmp/configs -name README_zh-CN.md | xargs rm
+
+sed -i '$a\\n
\n' _tmp/configs/inpainting/*/README.md
+sed -i '$a\\n
\n' _tmp/configs/mattors/*/README.md
+sed -i '$a\\n
\n' _tmp/configs/restorers/*/README.md
+sed -i '$a\\n
\n' _tmp/configs/synthesizers/*/README.md
+sed -i '$a\\n
\n' _tmp/configs/video_interpolators/*/README.md
# gather models
-cat ../../configs/inpainting/*/README.md | sed "s/md###t/html#t/g" | sed "s/#/#&/" | sed '1i\# Inpainting Models' | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >inpainting_models.md
-cat ../../configs/mattors/*/README.md | sed "s/md###t/html#t/g" | sed "s/#/#&/" | sed '1i\# Matting Models' | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >mattors_models.md
-cat ../../configs/restorers/*/README.md | sed "s/md###t/html#t/g" | sed "s/#/#&/" | sed '1i\# Super-Resolution Models' | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >restorers_models.md
-cat ../../configs/synthesizers/*/README.md | sed "s/md###t/html#t/g" | sed "s/#/#&/" | sed '1i\# Generation Models' | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >synthesizers_models.md
+cat ../../configs/inpainting/*/README.md | sed "s/md###t/html#t/g" | sed "s/#/#&/" | sed '1i\# Inpainting Models' | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' > _tmp/inpainting_models.md
+cat ../../configs/mattors/*/README.md | sed "s/md###t/html#t/g" | sed "s/#/#&/" | sed '1i\# Matting Models' | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' > _tmp/mattors_models.md
+cat ../../configs/restorers/*/README.md | sed "s/md###t/html#t/g" | sed "s/#/#&/" | sed '1i\# Super-Resolution Models' | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' > _tmp/restorers_models.md
+cat ../../configs/synthesizers/*/README.md | sed "s/md###t/html#t/g" | sed "s/#/#&/" | sed '1i\# Generation Models' | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' > _tmp/synthesizers_models.md
+cat ../../configs/video_interpolators/*/README.md | sed "s/md###t/html#t/g" | sed "s/#/#&/" | sed '1i\# Frame-Interpolation Models' | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' > _tmp/video_interpolators_models.md
# gather datasets
-cat ../../tools/data/generation/README.md > generation_datasets.md
-cat ../../tools/data/inpainting/README.md > inpainting_datasets.md
-cat ../../tools/data/matting/README.md > matting_datasets.md
-cat ../../tools/data/super-resolution/README.md > sr_datasets.md
-
-sed -i 's=(paired-pix2pix/README.md)=(#paired-dataset-for-pix2pix)=g' generation_datasets.md
-sed -i 's=(unpaired-cyclegan/README.md)=(#unpaired-dataset-for-cyclegan)=g' generation_datasets.md
-sed -i 's=(paris-street-view/README.md)=(#paris-street-view-dataset)=g' inpainting_datasets.md
-sed -i 's=(celeba-hq/README.md)=(#celeba-hq-dataset)=g' inpainting_datasets.md
-sed -i 's=(places365/README.md)=(#places365-dataset)=g' inpainting_datasets.md
-sed -i 's=(comp1k/README.md)=(#composition-1k-dataset)=g' matting_datasets.md
-sed -i 's=(div2k/README.md)=(#div2k-dataset)=g' sr_datasets.md
-sed -i 's=(reds/README.md)=(#reds-dataset)=g' sr_datasets.md
-sed -i 's=(vimeo90k/README.md)=(#vimeo90k-dataset)=g' sr_datasets.md
-
-cat ../../tools/data/generation/*/README.md | sed 's/# Preparing/# /g' | sed "s/#/#&/" | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >> generation_datasets.md
-cat ../../tools/data/inpainting/*/README.md | sed 's/# Preparing/# /g' | sed "s/#/#&/" | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >> inpainting_datasets.md
-cat ../../tools/data/matting/*/README.md | sed 's/# Preparing/# /g' | sed "s/#/#&/" | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >> matting_datasets.md
-cat ../../tools/data/super-resolution/*/README.md | sed 's/# Preparing/# /g' | sed "s/#/#&/" | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >> sr_datasets.md
+cat ../../tools/data/generation/README.md > _tmp/generation_datasets.md
+cat ../../tools/data/inpainting/README.md > _tmp/inpainting_datasets.md
+cat ../../tools/data/matting/README.md > _tmp/matting_datasets.md
+cat ../../tools/data/super-resolution/README.md > _tmp/sr_datasets.md
+
+sed -i 's=(paired-pix2pix/README.md)=(#paired-dataset-for-pix2pix)=g' _tmp/generation_datasets.md
+sed -i 's=(unpaired-cyclegan/README.md)=(#unpaired-dataset-for-cyclegan)=g' _tmp/generation_datasets.md
+sed -i 's=(paris-street-view/README.md)=(#paris-street-view-dataset)=g' _tmp/inpainting_datasets.md
+sed -i 's=(celeba-hq/README.md)=(#celeba-hq-dataset)=g' _tmp/inpainting_datasets.md
+sed -i 's=(places365/README.md)=(#places365-dataset)=g' _tmp/inpainting_datasets.md
+sed -i 's=(comp1k/README.md)=(#composition-1k-dataset)=g' _tmp/matting_datasets.md
+sed -i 's=(div2k/README.md)=(#div2k-dataset)=g' _tmp/sr_datasets.md
+sed -i 's=(reds/README.md)=(#reds-dataset)=g' _tmp/sr_datasets.md
+sed -i 's=(vimeo90k/README.md)=(#vimeo90k-dataset)=g' _tmp/sr_datasets.md
+
+cat ../../tools/data/generation/*/README.md | sed 's/# Preparing/# /g' | sed "s/#/#&/" | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >> _tmp/generation_datasets.md
+cat ../../tools/data/inpainting/*/README.md | sed 's/# Preparing/# /g' | sed "s/#/#&/" | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >> _tmp/inpainting_datasets.md
+cat ../../tools/data/matting/*/README.md | sed 's/# Preparing/# /g' | sed "s/#/#&/" | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >> _tmp/matting_datasets.md
+cat ../../tools/data/super-resolution/*/README.md | sed 's/# Preparing/# /g' | sed "s/#/#&/" | sed 's/](\/docs\//](/g' | sed 's=](/=](https://github.com/open-mmlab/mmediting/tree/master/=g' >> _tmp/sr_datasets.md
# merge configs
-cat configs/config_*.md | sed "s/#/#&/" >> config.md
+cp config.md _tmp/
+cat configs/config_*.md | sed "s/#/#&/" >> _tmp/config.md
+
+# clean
+rm -r _tmp/configs
diff --git a/docs/en/stat.py b/docs/en/stat.py
index 24cbd9efcc..bb375eedc8 100755
--- a/docs/en/stat.py
+++ b/docs/en/stat.py
@@ -1,5 +1,6 @@
#!/usr/bin/env python
# Copyright (c) OpenMMLab. All rights reserved.
+
import functools as func
import glob
import re
@@ -17,7 +18,7 @@ def anchor(name):
# Count algorithms
-files = sorted(glob.glob('*_models.md'))
+files = sorted(glob.glob('_tmp/*_models.md'))
# files = sorted(glob.glob('docs/*_models.md'))
stats = []
@@ -59,7 +60,7 @@ def anchor(name):
if 'mmedit' in x)
statsmsg = f"""
-## [{title}]({f})
+## [{title}]({basename(f)})
* Number of checkpoints: {len(ckpts)}
* Number of configs: {len(configs)}
@@ -96,12 +97,12 @@ def anchor(name):
"""
-with open('modelzoo.md', 'w') as f:
+with open('_tmp/modelzoo.md', 'w') as f:
f.write(modelzoo)
# Count datasets
-files = sorted(glob.glob('*_datasets.md'))
+files = sorted(glob.glob('_tmp/*_datasets.md'))
datastats = []
@@ -142,7 +143,7 @@ def anchor(name):
if 'mmedit' in x)
statsmsg = f"""
-## [{title}]({f})
+## [{title}]({basename(f)})
* Number of papers: {len(papers)}
{paperlist}
@@ -174,5 +175,5 @@ def anchor(name):
{datamsglist}
"""
-with open('datasets.md', 'w') as f:
+with open('_tmp/datasets.md', 'w') as f:
f.write(modelzoo)