i18n: Add header strings to translation catalog
This commit is contained in:
parent
a02c16c1d2
commit
aca1971a12
|
@ -8,7 +8,7 @@ from collections import OrderedDict
|
|||
|
||||
EXTRACT_TAGS = ["description", "brief_description", "member", "constant", "theme_item", "link"]
|
||||
HEADER = '''\
|
||||
# LANGUAGE translation of the Godot Engine class reference
|
||||
# LANGUAGE translation of the Godot Engine class reference.
|
||||
# Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur.
|
||||
# Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md).
|
||||
# This file is distributed under the same license as the Godot source code.
|
||||
|
@ -19,10 +19,26 @@ HEADER = '''\
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Godot Engine class reference\\n"
|
||||
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\\n"
|
||||
"MIME-Version: 1.0\\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\\n"
|
||||
"Content-Transfer-Encoding: 8-bit\\n"
|
||||
|
||||
'''
|
||||
# Some strings used by makerst.py are normally part of the editor translations,
|
||||
# so we need to include them manually here for the online docs.
|
||||
BASE_STRINGS = [
|
||||
"Description",
|
||||
"Tutorials",
|
||||
"Properties",
|
||||
"Methods",
|
||||
"Theme Properties",
|
||||
"Signals",
|
||||
"Enumerations",
|
||||
"Constants",
|
||||
"Property Descriptions",
|
||||
"Method Descriptions",
|
||||
]
|
||||
|
||||
## <xml-line-number-hack from="https://stackoverflow.com/a/36430270/10846399">
|
||||
import sys
|
||||
|
@ -166,7 +182,7 @@ def _strip_and_split_desc(desc, code_block_regions):
|
|||
total_indent = 0
|
||||
return desc_strip
|
||||
|
||||
## make catlog strings from xml elements
|
||||
## make catalog strings from xml elements
|
||||
def _make_translation_catalog(classes):
|
||||
unique_msgs = OrderedDict()
|
||||
for class_name in classes:
|
||||
|
@ -187,12 +203,17 @@ def _make_translation_catalog(classes):
|
|||
unique_msgs[desc_msg].append(desc_obj)
|
||||
return unique_msgs
|
||||
|
||||
## generate the catlog file
|
||||
## generate the catalog file
|
||||
def _generate_translation_catalog_file(unique_msgs, output):
|
||||
with open(output, 'w', encoding='utf8') as f:
|
||||
f.write(HEADER)
|
||||
for msg in BASE_STRINGS:
|
||||
f.write('#: doc/tools/makerst.py\n')
|
||||
f.write('msgid "{}"\n'.format(msg))
|
||||
f.write('msgstr ""\n\n')
|
||||
for msg in unique_msgs:
|
||||
if len(msg) == 0: continue ## ignore
|
||||
if len(msg) == 0 or msg in BASE_STRINGS:
|
||||
continue
|
||||
|
||||
f.write('#:')
|
||||
desc_list = unique_msgs[msg]
|
||||
|
@ -215,7 +236,7 @@ def _generate_translation_catalog_file(unique_msgs, output):
|
|||
def main():
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--path", "-p", default=".", help="The directory containing XML files to collect.")
|
||||
parser.add_argument("--output", "-o", default="translation_catlog.pot", help="The path to the output file.")
|
||||
parser.add_argument("--output", "-o", default="translation_catalog.pot", help="The path to the output file.")
|
||||
args = parser.parse_args()
|
||||
|
||||
output = os.path.abspath(args.output)
|
||||
|
|
|
@ -34,7 +34,7 @@ matches.sort()
|
|||
unique_str = []
|
||||
unique_loc = {}
|
||||
main_po = """
|
||||
# LANGUAGE translation of the Godot Engine editor
|
||||
# LANGUAGE translation of the Godot Engine editor.
|
||||
# Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur.
|
||||
# Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md).
|
||||
# This file is distributed under the same license as the Godot source code.
|
||||
|
@ -45,6 +45,8 @@ main_po = """
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Godot Engine editor\\n"
|
||||
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\\n"
|
||||
"MIME-Version: 1.0\\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\\n"
|
||||
"Content-Transfer-Encoding: 8-bit\\n"
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue