+def examples_templates_l10n(input_files, output, base):
+ '''Generate pot file from lib/templates and lib/examples'''
+ output = io.open(output, 'w', encoding='utf_8', newline='\n')
+ # only record each item once
+ seen = []
+ for src in input_files:
+ parseExamplesTemplates(src, seen, output)
+ output.close()
+
+
+def parseExamplesTemplates(file, seen, output):
+ # Recursively iterate over subdirectories
+ if os.path.isdir(file):
+ for sfile in glob.glob( os.path.join(file, '*') ):
+ parseExamplesTemplates(sfile, seen, output)
+
+ filename = os.path.normpath(os.path.realpath(file)).split(os.sep)[-1]
+ if os.path.isfile(file):
+ if filename[-4:] != ".lyx":
+ return
+ filename = filename[:-4]
+ if seen.count(filename) or filename[0].islower():
+ return
+
+ seen.append(filename)
+ if filename != "":
+ print(u'#: %s:%d\nmsgid "%s"\nmsgstr ""\n' % \
+ (relativePath(input_files[0], base), 0, filename.replace('_', ' ').replace('%26', '&').replace('%28', '(').replace('%29', ')')), file=output)
+
+
+def tabletemplates_l10n(input_files, output, base):
+ '''Generate pot file from lib/tabletemplates '''
+ output = io.open(output, 'w', encoding='utf_8', newline='\n')
+ # only record each item once
+ seen = []
+ for file in input_files:
+ filename = os.path.normpath(os.path.realpath(file)).split(os.sep)[-1]
+ if os.path.isfile(file):
+ if filename[-4:] != ".lyx":
+ continue
+ filename = filename[:-4]
+ if filename[-4:-1] == "_1x":
+ continue
+ if seen.count(filename):
+ continue
+
+ seen.append(filename)
+ if filename != "":
+ print(u'#: %s:%d\nmsgid "%s"\nmsgstr ""\n' % \
+ (relativePath(input_files[0], base), 0, filename.replace('_', ' ')), file=output)
+ output.close()
+
+