diff --git a/.gitignore b/.gitignore
index bf938c8ea..a46520789 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,10 +12,6 @@ build
build_coverage
clang_analyze_build
-doc/xml
-doc/html
-me.nlohmann.json.docset
-
benchmarks/files/numbers/*.json
.wsjcpp-logs/*
@@ -27,10 +23,11 @@ benchmarks/files/numbers/*.json
test/test-*
/.vs
+doc/html
doc/mkdocs/venv/
doc/mkdocs/docs/images
doc/mkdocs/docs/examples
doc/mkdocs/site
doc/mkdocs/docs/__pycache__/
-doc/xml
-/doc/docset/nlohmann_json.docset/
+/doc/docset/JSON_for_Modern_C++.docset/
+/doc/docset/JSON_for_Modern_C++.tgz
diff --git a/doc/Doxyfile b/doc/Doxyfile
index 521c4bdc4..27a75f540 100644
--- a/doc/Doxyfile
+++ b/doc/Doxyfile
@@ -252,7 +252,7 @@ MAN_LINKS = NO
#---------------------------------------------------------------------------
# Configuration options related to the XML output
#---------------------------------------------------------------------------
-GENERATE_XML = YES
+GENERATE_XML = NO
XML_OUTPUT = xml
XML_PROGRAMLISTING = YES
XML_NS_MEMB_FILE_SCOPE = NO
diff --git a/doc/Makefile b/doc/Makefile
index 9addd3401..761dd4368 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -43,7 +43,7 @@ check_output: $(EXAMPLES:.cpp=.test)
clean:
- rm -fr me.nlohmann.json.docset html xml $(EXAMPLES:.cpp=)
+ rm -fr me.nlohmann.json.docset html $(EXAMPLES:.cpp=)
$(MAKE) clean -C docset
$(MAKE) clean -C mkdocs
@@ -70,23 +70,3 @@ upload: clean doxygen check_output
scripts/git-update-ghpages nlohmann/json html
rm -fr html
open http://nlohmann.github.io/json/
-
-
-##########################################################################
-# docset
-##########################################################################
-
-# create docset for Dash
-docset: create_output
- cp Doxyfile Doxyfile_docset
- $(SED) -i 's/DISABLE_INDEX = NO/DISABLE_INDEX = YES/' Doxyfile_docset
- $(SED) -i 's/SEARCHENGINE = YES/SEARCHENGINE = NO/' Doxyfile_docset
- $(SED) -i 's@HTML_EXTRA_STYLESHEET = css/mylayout.css@HTML_EXTRA_STYLESHEET = css/mylayout_docset.css@' Doxyfile_docset
- rm -fr html *.docset
- doxygen Doxyfile_docset
- $(SED) -i 's@< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberFloatType, AllocatorType >@@g' html/*.html
- $(SED) -i 's@< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberFloatType, AllocatorType >@@g' html/*.html
- make -C html
- mv html/*.docset .
- $(SED) -i 's@doxygen@json@' me.nlohmann.json.docset/Contents/Info.plist
- rm -fr Doxyfile_docset html
diff --git a/doc/docset/Makefile b/doc/docset/Makefile
index 262540a0c..e538661ec 100644
--- a/doc/docset/Makefile
+++ b/doc/docset/Makefile
@@ -1,21 +1,25 @@
-nlohmann_json.docset: Info.plist docSet.sql
+JSON_for_Modern_C++.docset: Info.plist docSet.sql
$(MAKE) clean
- mkdir -p nlohmann_json.docset/Contents/Resources/Documents/
- cp info.plist nlohmann_json.docset/Contents
+ mkdir -p JSON_for_Modern_C++.docset/Contents/Resources/Documents/
+ cp icon*.png JSON_for_Modern_C++.docset
+ cp Info.plist JSON_for_Modern_C++.docset/Contents
# build and copy documentation
$(MAKE) build -C ../mkdocs
- cp -r ../mkdocs/site/* nlohmann_json.docset/Contents/Resources/Documents
+ cp -r ../mkdocs/site/* JSON_for_Modern_C++.docset/Contents/Resources/Documents
# patch CSS to hide navigation items
- echo "\n\nheader, footer, navi, div.md-sidebar--primary, nav.md-tabs--active, a.md-content__button { display: none; }" >> nlohmann_json.docset/Contents/Resources/Documents/assets/stylesheets/main.b5d04df8.min.css
+ echo "\n\nheader, footer, navi, div.md-sidebar--primary, nav.md-tabs--active, a.md-content__button { display: none; }" >> "$$(ls JSON_for_Modern_C++.docset/Contents/Resources/Documents/assets/stylesheets/main.*.min.css)"
# fix spacing
- echo "\n\ndiv.md-sidebar div.md-sidebar--secondary, div.md-main__inner { top: 0; margin-top: 0 }" >> nlohmann_json.docset/Contents/Resources/Documents/assets/stylesheets/main.b5d04df8.min.css
+ echo "\n\ndiv.md-sidebar div.md-sidebar--secondary, div.md-main__inner { top: 0; margin-top: 0 }" >> "$$(ls JSON_for_Modern_C++.docset/Contents/Resources/Documents/assets/stylesheets/main.*.min.css)"
# remove "JSON for Modern C++" from page titles
- find nlohmann_json.docset/Contents/Resources/Documents -type f -exec gsed -i 's| - JSON for Modern C++||' {} +
+ find JSON_for_Modern_C++.docset/Contents/Resources/Documents -type f -exec gsed -i 's| - JSON for Modern C++||' {} +
# clean up
- rm nlohmann_json.docset/Contents/Resources/Documents/hooks.py
- rm nlohmann_json.docset/Contents/Resources/Documents/sitemap.*
+ rm JSON_for_Modern_C++.docset/Contents/Resources/Documents/hooks.py
+ rm JSON_for_Modern_C++.docset/Contents/Resources/Documents/sitemap.*
# generate index
- sqlite3 nlohmann_json.docset/Contents/Resources/docSet.dsidx < docSet.sql
+ sqlite3 JSON_for_Modern_C++.docset/Contents/Resources/docSet.dsidx < docSet.sql
+
+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
clean:
- rm -fr nlohmann_json.docset
+ rm -fr JSON_for_Modern_C++.docset JSON_for_Modern_C++.tgz
diff --git a/doc/docset/README.md b/doc/docset/README.md
index b0dd7f81e..230638074 100644
--- a/doc/docset/README.md
+++ b/doc/docset/README.md
@@ -11,3 +11,7 @@ make nlohmann_json.docset
```
The generated folder `nlohmann_json.docset` can then be opened in the documentation browser.
+
+## Licenses
+
+The [JSON logo](https://commons.wikimedia.org/wiki/File:JSON_vector_logo.svg) is public domain.
diff --git a/doc/docset/docset.json b/doc/docset/docset.json
new file mode 100644
index 000000000..f8d478302
--- /dev/null
+++ b/doc/docset/docset.json
@@ -0,0 +1,10 @@
+{
+ "name": "JSON for Modern C++",
+ "version": "3.10.0",
+ "archive": "JSON_for_Modern_C++.tgz",
+ "author": {
+ "name": "Niels Lohmann",
+ "link": "https://twitter.com/nlohmann"
+ },
+ "aliases": ["nlohmann/json"]
+}
diff --git a/doc/docset/icon.png b/doc/docset/icon.png
new file mode 100644
index 000000000..7197d0a75
Binary files /dev/null and b/doc/docset/icon.png differ
diff --git a/doc/docset/icon@2x.png b/doc/docset/icon@2x.png
new file mode 100644
index 000000000..5f2fac87a
Binary files /dev/null and b/doc/docset/icon@2x.png differ