3
votes

Currently working with NSIS to make an installer on my PC game, and I'm having a weird issue :

I've defined my languages like such

!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_LANGUAGE "French"
!insertmacro MUI_LANGUAGE "Portuguese"
!insertmacro MUI_LANGUAGE "Spanish"
!insertmacro MUI_LANGUAGE "German"
!insertmacro MUI_LANGUAGE "Russian"

I see all languages correctly, excepot for the Russian one. I can't seem to be able to see that one. Is it because it uses a different font or something ? How can I make it display all languages correctly ?

1
Do you not see it in the language selection dialog or are you able to select it but is does not display correctly? NSIS version? Unicode or Ansi installer? MUI? - Anders
@Anders It didn't display at all in the dialog selection, however when I added Unicode true in my script it showed up. However, I have a few manually localized strings that don't display correctly. I'm using Notepad++ to edit my script (don't know if this has anything to do with it). What is the correct encryption for this ? - Bypp

1 Answers

5
votes

When using Unicode true you should save the .nsi/.nsh with LangString's as UTF8 with BOM/signature or as UTF16LE with BOM.

When compiling Ansi installers the language selection dialog will try to filter away languages that cannot be displayed unless you !define MUI_LANGDLL_ALLLANGUAGES.