forked from Shinonome/dots-hyprland
i18n: Fix translatable string extraction tool bug.
This commit is contained in:
@@ -444,7 +444,7 @@ ShellRoot {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
StyledText {
|
StyledText {
|
||||||
text: "Drag or click a region • LMB: Copy • RMB: Edit"
|
text: Translation.tr("Drag or click a region • LMB: Copy • RMB: Edit")
|
||||||
color: root.genericContentForeground
|
color: root.genericContentForeground
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -301,5 +301,6 @@
|
|||||||
"Shell & utilities": "Shell & utilities",
|
"Shell & utilities": "Shell & utilities",
|
||||||
"Qt apps": "Qt apps",
|
"Qt apps": "Qt apps",
|
||||||
"Report a Bug": "Report a Bug",
|
"Report a Bug": "Report a Bug",
|
||||||
"Issues": "Issues"
|
"Issues": "Issues",
|
||||||
|
"Drag or click a region • LMB: Copy • RMB: Edit": "Drag or click a region • LMB: Copy • RMB: Edit"
|
||||||
}
|
}
|
||||||
@@ -154,10 +154,9 @@ def sync_translations(translations_dir: str, source_lang: str = "en_US", target_
|
|||||||
del target_translations[key]
|
del target_translations[key]
|
||||||
print(f" Deleted {len(extra_keys)} extra keys")
|
print(f" Deleted {len(extra_keys)} extra keys")
|
||||||
|
|
||||||
# Save file
|
# Save file (ensure UTF-8, fix for special chars)
|
||||||
with open(target_file, 'w', encoding='utf-8') as f:
|
with open(target_file, 'w', encoding='utf-8', newline='') as f:
|
||||||
json.dump(target_translations, f, ensure_ascii=False, indent=2)
|
json.dump(target_translations, f, ensure_ascii=False, indent=2)
|
||||||
|
|
||||||
print(f" Saved: {target_file}")
|
print(f" Saved: {target_file}")
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
|
|||||||
@@ -56,11 +56,22 @@ class TranslationManager:
|
|||||||
text = match[0] if match else ""
|
text = match[0] if match else ""
|
||||||
else:
|
else:
|
||||||
text = match
|
text = match
|
||||||
|
|
||||||
# Decode escape characters
|
|
||||||
try:
|
try:
|
||||||
clean_text = text.encode().decode('unicode_escape')
|
if '\\u' in text or '\\x' in text:
|
||||||
except:
|
clean_text = bytes(text, "utf-8").decode("unicode_escape")
|
||||||
|
else:
|
||||||
|
clean_text = (
|
||||||
|
text.replace('\\n', '\n')
|
||||||
|
.replace('\\t', '\t')
|
||||||
|
.replace('\\r', '\r')
|
||||||
|
.replace('\\"', '"')
|
||||||
|
.replace('\\\'', "'")
|
||||||
|
.replace('\\f', '\f')
|
||||||
|
.replace('\\b', '\b')
|
||||||
|
.replace('\\\\', '\\')
|
||||||
|
)
|
||||||
|
except Exception:
|
||||||
clean_text = text
|
clean_text = text
|
||||||
|
|
||||||
# Clean text (remove extra whitespace)
|
# Clean text (remove extra whitespace)
|
||||||
|
|||||||
@@ -301,5 +301,6 @@
|
|||||||
"Shell & utilities": "Shell 与工具",
|
"Shell & utilities": "Shell 与工具",
|
||||||
"Qt apps": "Qt 应用",
|
"Qt apps": "Qt 应用",
|
||||||
"Report a Bug": "报告问题",
|
"Report a Bug": "报告问题",
|
||||||
"Issues": "问题追踪"
|
"Issues": "问题追踪",
|
||||||
|
"Drag or click a region • LMB: Copy • RMB: Edit": "拖动或点击一个区域 • 鼠标左键:复制 • 鼠标右键:编辑"
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user