diff --git a/.gitignore b/.gitignore index a63b660f6..30b62bfcf 100644 --- a/.gitignore +++ b/.gitignore @@ -9,7 +9,8 @@ /.idea /cmake-build-* -# Visual Studio Code + +# Visual Studio / Visual Studio Code /.vs/ /.vscode/ /out/ @@ -21,19 +22,20 @@ /build*/ # fuzzers -/tests/parse_*_fuzzer /tests/corpus_* +/tests/parse_*_fuzzer -/venv/ -/docs/mkdocs/docs/examples/ -/docs/mkdocs/docs/__pycache__/ -/docs/mkdocs/site/ -/docs/mkdocs/venv/ +# documentation +/docs/docset/docSet.dsidx /docs/docset/JSON_for_Modern_C++.docset/ /docs/docset/JSON_for_Modern_C++.tgz +/docs/mkdocs/docs/__pycache__/ +/docs/mkdocs/docs/examples/ /docs/mkdocs/docs/images/json.gif +/docs/mkdocs/site/ +/docs/mkdocs/venv/ # serve_header -/serve_header.yml /localhost.pem /localhost-key.pem +/serve_header.yml diff --git a/docs/docset/Makefile b/docs/docset/Makefile index 496ebc7a3..9f432125d 100644 --- a/docs/docset/Makefile +++ b/docs/docset/Makefile @@ -1,7 +1,16 @@ SED ?= $(shell which gsed 2>/dev/null || which sed) -JSON_for_Modern_C++.docset: Info.plist docSet.sql - $(MAKE) clean +MKDOCS_PAGES=$(shell cd ../mkdocs/docs/ && find * -type f -name '*.md' | sort) + +.PHONY: all +all: JSON_for_Modern_C++.tgz + +docSet.dsidx: docSet.sql + # generate index + sqlite3 docSet.dsidx ||' {} + # clean up rm JSON_for_Modern_C++.docset/Contents/Resources/Documents/sitemap.* - # generate index - sqlite3 JSON_for_Modern_C++.docset/Contents/Resources/docSet.dsidx < docSet.sql + # copy index + cp docSet.dsidx JSON_for_Modern_C++.docset/Contents/Resources/ JSON_for_Modern_C++.tgz: JSON_for_Modern_C++.docset tar --exclude='.DS_Store' -cvzf JSON_for_Modern_C++.tgz JSON_for_Modern_C++.docset +# list mkdocs pages missing from the docset index +.PHONY: list_missing_pages +list_missing_pages: docSet.dsidx + @for page in $(MKDOCS_PAGES); do \ + case "$$page" in \ + */index.md) path=$${page/\/index.md/} ;; \ + *) path=$${page/.md/} ;; \ + esac; \ + if [ "x$$page" != "xindex.md" -a "x$$(sqlite3 docSet.dsidx "SELECT COUNT(*) FROM searchIndex WHERE path='$$path/index.html'")" = "x0" ]; then \ + echo $$page; \ + fi \ + done + +.PHONY: clean clean: + rm -f docSet.dsidx rm -fr JSON_for_Modern_C++.docset JSON_for_Modern_C++.tgz