在所有语言的Inno Setup中使用.islu翻译文件安全吗?
我为我的开源项目WinSCP使用Inno Setup。
到目前为止,我正在从我们项目特定的翻译文件中生成Inno Setup .isl
翻译文件(特别是翻译CustomMessages
部分)。但是.isl
需要转换为ANSI编码。对于根本不具有ANSI编码(如印地语或亚美尼亚语)或ANSI编码有限(如罗马尼亚语)的语言,ANSI编码存在问题。在所有语言的Inno Setup中使用.islu翻译文件安全吗?
我看到一些语言的核心Inno Setup翻译使用.islu
扩展名,(可能)表示内容是UTF-8编码的。我还可以在Inno Setup源代码中看到.islu
仅在Unicode版本的Inno Setup中使用。没关系,因为我只使用Unicode版本。
但我没有在文档中找到任何关于.islu
的提及。
如果我只为所有语言生成.islu
就可以吗?是否有任何缺点(除了无法使用ANSI版本的Inno Setup)?
或者我应该继续使用.isl
来选择具有良好ANSI编码的语言,并且只使用.islu
仅适用于所选语言?
我明显更喜欢第一个简化过程。
还什么LanguageCodePage
应设置为.islu
?尼泊尔官方翻译使用0.不确定这是否是.islu
的一般规则,或者是因为尼泊尔没有ANSI编码。
经过几个月的使用后,我可以确认添加UTF-8 BOM并使用.islu
扩展名用于所有Inno Setup翻译似乎都很好。
的.islu
文件documented since Inno Setup 5.5.9:
如果没有代码页目前存在的语言,设置
LanguageCodePage
为0,使用的语言的文件中的特殊.islu扩展名,编码此文件Unicode格式。注意:这会使您的语言文件无法使用Non Unicode Inno Setup,因此只有在真正需要时才能执行此操作。另请注意:.islu文件中的LanguageName
设置不需要使用上述特殊的“<nnnn>”编码。