问题是,我正在将游戏从英语翻译成波兰语。我要翻译的文本在 lua 文件中。我已经翻译了大部分游戏,但我正在寻找一种方法来自动将英语文本替换为波兰语文本。我有一些 lua 文件(非常大),其中包含要翻译的代码和文本,我有.txt
包含英语句子的文件,我想在 lua 文件中替换它们,我有相同数量的其他 txt 文件,其中包含波兰语中逐行(以相同顺序)的句子。我需要一个脚本的帮助,该脚本将从 中获取第一行english.txt
,在 lua 中搜索它,如果找到,将其替换为第一行polish.txt
,然后从english.txt
等。我尝试了很多应用程序,但没有一个有这个功能。有人建议我使用awk
,grep
或sed
,但我不知道如何将它们用于我的目的。
编辑:对不起。我忘记了旧文件是.lua。现在是 .sjson
您可能认为这工作量太大,但有一些现有的方法可以在程序中处理国际化,例如gettext,请参阅wikipedia和GNU 网站。基本上,工具用于从程序的源代码中提取字符串,并将它们收集到一个文件中。有人翻译这些以提供一种新语言,然后稍微修改程序,以便在运行时根据用户的
LANG
设置选择正确的语言文件。虽然最初是为 C 编程语言完成的,但现在它可用于其他几种语言,包括根据 GNU 网站的lua 。
要了解它在 C 中的工作原理,这里有一个简短但完整的教程。