diff --git a/HIG/source/conf.py b/HIG/source/conf.py --- a/HIG/source/conf.py +++ b/HIG/source/conf.py @@ -18,8 +18,6 @@ # documentation root, use os.path.abspath to make it absolute, like shown here. # -from sphinx.util.console import bold -import requests import os import sys sys.path.insert(0, os.path.abspath('.')) @@ -204,17 +202,8 @@ """ -doxylink = { - 'kirigamiapi' : ('Kirigami2.tags', 'https://api.kde.org/frameworks/kirigami/html/'), # https://api.kde.org/frameworks/kirigami/html/Kirigami2.tags - 'kwidgetsaddonsapi' : ('KWidgetsAddons.tags', 'https://api.kde.org/frameworks/kwidgetsaddons/html/'), # https://api.kde.org/frameworks/kwidgetsaddons/html/KWidgetsAddons.tags - 'plasmaapi' : ('Plasma.tags', 'https://api.kde.org/frameworks/plasma-framework/html/') # https://api.kde.org/frameworks/plasma-framework/html/Plasma.tags -} - -for doc in doxylink.values(): - print(bold("Downloading file {} to {}".format(doc[1] + "/" + doc[0], doc[0]))) - tagFile = open("../" + doc[0], "w") - tagFile.write(requests.get(doc[1] + "/" + doc[0]).text) - tagFile.close() +from globalconf import get_doxylink +doxylink = get_doxylink() rst_prolog = """ diff --git a/Kirigami/source/conf.py b/Kirigami/source/conf.py --- a/Kirigami/source/conf.py +++ b/Kirigami/source/conf.py @@ -12,8 +12,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -from sphinx.util.console import bold -import requests + import os import sys sys.path.insert(0, os.path.abspath('.')) @@ -189,17 +188,8 @@ # -- Extension configuration ------------------------------------------------- -doxylink = { - 'kirigamiapi' : ('Kirigami2.tags', 'https://api.kde.org/frameworks/kirigami/html/'), # https://api.kde.org/frameworks/kirigami/html/Kirigami2.tags - 'kwidgetsaddonsapi' : ('KWidgetsAddons.tags', 'https://api.kde.org/frameworks/kwidgetsaddons/html/'), # https://api.kde.org/frameworks/kwidgetsaddons/html/KWidgetsAddons.tags - 'plasmaapi' : ('Plasma.tags', 'https://api.kde.org/frameworks/plasma-framework/html/') # https://api.kde.org/frameworks/plasma-framework/html/Plasma.tags -} - -for doc in doxylink.values(): - print(bold("Downloading file {} to {}".format(doc[1] + "/" + doc[0], doc[0]))) - tagFile = open("../" + doc[0], "w") - tagFile.write(requests.get(doc[1] + "/" + doc[0]).text) - tagFile.close() +from globalconf import get_doxylink +doxylink = get_doxylink() # -- Options for intersphinx extension --------------------------------------- diff --git a/globalconf.py b/globalconf.py new file mode 100644 --- /dev/null +++ b/globalconf.py @@ -0,0 +1,26 @@ +import requests +from sphinx.util.console import bold + + +_DOXYLINK = { + 'kirigamiapi' : ('Kirigami2.tags', 'https://api.kde.org/frameworks/kirigami/html/'), # https://api.kde.org/frameworks/kirigami/html/Kirigami2.tags + 'kwidgetsaddonsapi' : ('KWidgetsAddons.tags', 'https://api.kde.org/frameworks/kwidgetsaddons/html/'), # https://api.kde.org/frameworks/kwidgetsaddons/html/KWidgetsAddons.tags + 'plasmaapi' : ('Plasma.tags', 'https://api.kde.org/frameworks/plasma-framework/html/') # https://api.kde.org/frameworks/plasma-framework/html/Plasma.tags +} + + +def _download_doxylink(base_url, filename): + url = base_url + '/' + filename + print(bold("Downloading file {} to {}".format(url, filename))) + response = requests.get(url) + if response.status_code != 200: + raise Exception('{} HTTP response received from {}' + .format(response.status_code, url)) + with open('../' + filename, "w") as tagFile: + tagFile.write(response.text) + + +def get_doxylink(): + for doc in _DOXYLINK.values(): + _download_doxylink(doc[1], doc[0]) + return _DOXYLINK