NSIS:LangString X多次设置为0,浪费空间

时间:2018-07-30 08:02:57

标签: nsis

我想为更多的语言定义function escapeHTML(str) { return str.replace(/[&<>"'\/]/g, function (s) { var entityMap = { "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': '&quot;', "'": '&#39;', "/": '&#x2F;' }; return entityMap[s]; }); } 。这是一个例子

LangString

但是我得到了警告LangString TEXT_LICENSE_TITLE ${ENGLISH_LANG} "Installer" LangString TEXT_LICENSE_TITLE ${NORWEGIAN_LANG} "installatør"

我认为我的命令正确。这是我的代码

LangString "TEXT_LICENSE_TITLE" set multiple times for 0, wasting space

然后

!insertmacro MUI_LANGUAGE "Norwegian"
!insertmacro MUI_LANGUAGE "English"

那么我该如何摆脱这个警告?我使用LangString TEXT_LICENSE_TITLE ${ENGLISH_LANG} "Installer" LangString TEXT_LICENSE_TITLE ${NORWEGIAN_LANG} "installatør" !define MUI_TEXT_LICENSE_TITLE $(TEXT_LICENSE_TITLE)

1 个答案:

答案 0 :(得分:2)

0是默认/“最后使用”的语言ID,之所以使用它,是因为您没有传递有效的ID。

正确的语法是

LangString TEXT_LICENSE_TITLE ${LANG_ENGLISH} "English text"

请注意,第二个参数使用{ }括号,而不是( )${}在编译时扩展一个定义(在这种情况下需要),另一个扩展一个langstring。如果我没记错的话,定义的名称是LANG_*