summaryrefslogtreecommitdiffstats
path: root/share/filters/i18n.py
diff options
context:
space:
mode:
Diffstat (limited to 'share/filters/i18n.py')
-rwxr-xr-xshare/filters/i18n.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/share/filters/i18n.py b/share/filters/i18n.py
new file mode 100755
index 0000000..7315b4d
--- /dev/null
+++ b/share/filters/i18n.py
@@ -0,0 +1,26 @@
+#!/usr/bin/env python3
+
+from xml.dom import minidom
+import sys
+
+doc = minidom.parse(sys.argv[1])
+
+filters = doc.getElementsByTagName('filter')
+
+sys.stdout.write("char * stringlst = [")
+
+for filter in filters:
+ label = "N_(\"" + filter.getAttribute('inkscape:label') + "\")"
+ menu = "N_(\"" + filter.getAttribute('inkscape:menu') + "\")"
+ if (filter.getAttribute('inkscape:menu-tooltip')):
+ desc = "N_(\"" + filter.getAttribute('inkscape:menu-tooltip') + "\")"
+ else:
+ desc = ""
+ comment = ""
+
+ if "NR" in label:
+ comment = '/* TRANSLATORS: NR means non-realistic. See menu Filters > Non realistic shaders */\n'
+
+ sys.stdout.write(comment + "\n" + label + ",\n" + menu + ",\n" + desc + ",\n")
+
+sys.stdout.write("];")