Commit 429ba6c7 authored by Robert Hensing's avatar Robert Hensing
Browse files

nixosOptionsDoc: Add markdownByDefault parameter

parent d1fc8fa8
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -40,6 +40,8 @@
# `false`, and a different renderer may be used with different bugs and performance
# characteristics but (hopefully) indistinguishable output.
, allowDocBook ? true
# whether lib.mdDoc is required for descriptions to be read as markdown.
, markdownByDefault ? false
}:

let
@@ -152,6 +154,7 @@ in rec {
      python ${./mergeJSON.py} \
        ${lib.optionalString warningsAreErrors "--warnings-are-errors"} \
        ${lib.optionalString (! allowDocBook) "--error-on-docbook"} \
        ${lib.optionalString markdownByDefault "--markdown-by-default"} \
        $baseJSON $options \
        > $dst/options.json

+7 −0
Original line number Diff line number Diff line
@@ -203,6 +203,9 @@ def convertMD(options: Dict[str, Any]) -> str:
    for (name, option) in options.items():
        if optionIs(option, 'description', 'mdDoc'):
            option['description'] = convertString(name, option['description']['text'])
        elif markdownByDefault:
            option['description'] = convertString(name, option['description'])

        if optionIs(option, 'example', 'literalMD'):
            docbook = convertString(name, option['example']['text'])
            option['example'] = { '_type': 'literalDocBook', 'text': docbook }
@@ -214,6 +217,7 @@ def convertMD(options: Dict[str, Any]) -> str:

warningsAreErrors = False
errorOnDocbook = False
markdownByDefault = False
optOffset = 0
for arg in sys.argv[1:]:
    if arg == "--warnings-are-errors":
@@ -222,6 +226,9 @@ for arg in sys.argv[1:]:
    if arg == "--error-on-docbook":
        optOffset += 1
        errorOnDocbook = True
    if arg == "--markdown-by-default":
        optOffset += 1
        markdownByDefault = True

options = pivot(json.load(open(sys.argv[1 + optOffset], 'r')))
overrides = pivot(json.load(open(sys.argv[2 + optOffset], 'r')))