aboutsummaryrefslogtreecommitdiff
path: root/toolchain
diff options
context:
space:
mode:
authorVolker Krause <vkrause@kde.org>2020-12-18 17:37:32 +0100
committerVolker Krause <vkrause@kde.org>2020-12-24 10:54:45 +0000
commit11ecd86909bd28269ab158c8b291a38e905aea3c (patch)
treec1823ec231bc53b496acec6625de22b5d72df84f /toolchain
parent3f466f67e15bb285b7041a0b6b85d72ffb98e059 (diff)
downloadextra-cmake-modules-11ecd86909bd28269ab158c8b291a38e905aea3c.tar.gz
extra-cmake-modules-11ecd86909bd28269ab158c8b291a38e905aea3c.tar.bz2
Preserve the rich-text subset supported by F-Droid
This should improve the alignment issues currently seen in bullet point lists that we use frequently in the description text.
Diffstat (limited to 'toolchain')
-rwxr-xr-xtoolchain/generate-fastlane-metadata.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/toolchain/generate-fastlane-metadata.py b/toolchain/generate-fastlane-metadata.py
index a345282a..30d16927 100755
--- a/toolchain/generate-fastlane-metadata.py
+++ b/toolchain/generate-fastlane-metadata.py
@@ -30,6 +30,9 @@ languageMap = {
"ca": "ca-ES"
}
+# see https://f-droid.org/en/docs/All_About_Descriptions_Graphics_and_Screenshots/
+supportedRichTextTags = { 'li', 'ul', 'ol', 'li', 'b', 'u', 'i' }
+
# Android appdata.xml textual item parser
# This function handles reading standard text entries within an Android appdata.xml file
# In particular, it handles splitting out the various translations, and converts some HTML to something which F-Droid can make use of
@@ -44,18 +47,18 @@ def readText(elem, found):
if not lang in found:
found[lang] = ""
- # Do we have a HTML List Item?
- if elem.tag == 'li':
- found[lang] += "ยท "
-
# If there is text available, we'll want to extract it
# Additionally, if this element has any children, make sure we read those as well
# It isn't clear if it is possible for an item to not have text, but to have children which do have text
# The code will currently skip these if they're encountered
if elem.text:
+ if elem.tag in supportedRichTextTags:
+ found[lang] += '<' + elem.tag + '>'
found[lang] += elem.text
for child in elem:
readText(child, found)
+ if elem.tag in supportedRichTextTags:
+ found[lang] += '</' + elem.tag + '>'
# Finally, if this element is a HTML Paragraph (p) or HTML List Item (li) make sure we add a new line for presentation purposes
if elem.tag == 'li' or elem.tag == 'p':