mirror of
https://github.com/nlohmann/json.git
synced 2026-10-10 16:37:14 +00:00
Fix inaccuracies in the documentation
- version history: json_base_class_t (3.11.3), JSON_HAS_CPP_11 (3.10.0), JSON_HAS_RANGES exclusions, define-type macros, ABI tags - releases: 3.12.0 raised the minimum CMake version - from_*: the (ptr, len) overloads are deleted, not removed, in 4.0.0 - contains/count/find: document the deleted integral overloads - add JSON_HAS_RANGE_VIEW_CONVERSION and list the JSON_HAS_* macros in the macro overview - mention BON8 and error_handler where binary formats are listed - broken links, outdated URLs, warning count, Hunter v0.26.12 - copy_markdown_source hook: expand snippets in the Markdown copies Signed-off-by: Niels Lohmann <mail@nlohmann.me>
This commit is contained in:
34 files changed
+193
-30
No files matched your search
@@ -2,12 +2,30 @@
|
||||
|
||||
# Creates a `<path>.md` sibling of each HTML output (for example,
|
||||
# `features/comments/` becomes `features/comments.md`) so agents and tools can
|
||||
# fetch the raw Markdown directly instead of parsing rendered HTML.
|
||||
# fetch the raw Markdown directly instead of parsing rendered HTML. The
|
||||
# `--8<-- "path"` lines of pymdownx.snippets are expanded with the extension's
|
||||
# own preprocessor and the settings from mkdocs.yml, so the copies contain the
|
||||
# included example code and files instead of the include directives.
|
||||
|
||||
import io
|
||||
import os
|
||||
import shutil
|
||||
|
||||
import markdown
|
||||
from pymdownx.snippets import SnippetMissingError
|
||||
|
||||
_pages = []
|
||||
_snippets = None
|
||||
|
||||
|
||||
def on_config(config):
|
||||
global _snippets
|
||||
md = markdown.Markdown(
|
||||
extensions=["pymdownx.snippets"],
|
||||
extension_configs={"pymdownx.snippets": config["mdx_configs"].get("pymdownx.snippets", {})},
|
||||
)
|
||||
_snippets = md.preprocessors["snippet"]
|
||||
_snippets.auto_append = [] # the glossary is only needed to render abbreviations
|
||||
return config
|
||||
|
||||
|
||||
def on_files(files, config):
|
||||
@@ -22,4 +40,11 @@ def on_post_build(config):
|
||||
url = file.url.rstrip("/")
|
||||
target = os.path.join(site_dir, (url or "index") + ".md")
|
||||
os.makedirs(os.path.dirname(target), exist_ok=True)
|
||||
shutil.copyfile(file.abs_src_path, target)
|
||||
with io.open(file.abs_src_path, encoding="utf-8", newline="") as source:
|
||||
text = source.read()
|
||||
try:
|
||||
text = "\n".join(_snippets.run(text.split("\n")))
|
||||
except (SnippetMissingError, OSError):
|
||||
pass # keep the include directives; the regular build reports the missing file
|
||||
with io.open(target, "w", encoding="utf-8", newline="") as copy:
|
||||
copy.write(text)
|
||||
Reference in new issue
Block a user