Bleeding Edge - Source Code → 1.0.1 RC1 installer
The icons which Win2k and Win9x systems display for the installer and the other NSIS-based programs are ugly. This appears to be caused by using a newer NSIS compiler to build the installer and the NSIS-based programs.
-
Message #141
This appears to be caused by using a newer NSIS compiler
Confirmed by experiments with different compilers - the problem was introduced in NSIS 2.32. The problem seems to be related to the content of the icon file: some files containing multiple images are OK, others are not.
brian04/30/08 21:44:30 -
-
Message #149
This bug was fixed in the NSIS 2.37 compiler. A new release candidate (RC2) has been built using the new compiler.
brian05/11/08 16:05:16 -
-
Message #151
Brian,
The icon issue has been solved in RC2. Thanks.
But a Japanese user find another _very_ minor problem.
In the last dialog of the installer (add user wizard),
the installer asks whether to show the Readme file or not.
There's an unwanted Yen mark in this page.
1.0.1 RC2 (and RC1) has this problem:
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/ShowReadme_101RC2.png
1.0.0 is ok:
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/ShowReadme_100.png
Since this string comes from the NSIS, I think this may be
a bug of the NSIS.
Naoki
amatubu05/12/08 15:29:57 -
-
Message #152
In the last dialog of the installer (add user wizard) ... There's an unwanted Yen mark
Thanks for the screenshots showing the problem.
Since this string comes from the NSIS, I think this may be a bug of the NSIS.
I agree, but at the moment I don't know where the problem is.
NSIS 2.22 was used to build the 1.0.0 release, NSIS 2.36 was used for RC1 and NSIS 2.37 for RC2. Between NSIS 2.22 and 2.36 a lot of things changed in the way NSIS handles language strings. But the string NSIS uses to define the "Readme" text on the FINISH page is still the same as it was in NSIS 2.22:
From the Japanese.nsh file used to build the 1.0.0 release (NSIS 2.22):
MUI_TEXT_FINISH_SHOWREADME "Readme ‚ð•\ަ‚·‚é(&S)"
From the Japanese.nsh file used to build the 1.0.1 RC2 release (NSIS 2.37):
MUI_TEXT_FINISH_SHOWREADME "Readme ‚ð•\ަ‚·‚é(&S)"
I tried a binary comparison of these two strings and found no differences.
On Japanese systems I think the Yen mark is used to replace the "\" character in paths like C:\Data\Test and that "Readme" string contains a "\" character ... but why is it being interpreted differently now?
The current installer uses the default NSIS text for that "Show Readme" box but NSIS allows this string to be customised. If you like I could try doing this for the next release candidate. We can test this using a very simple NSIS script.
brian05/12/08 16:49:17 -
-
Message #153
On Japanese systems I think the Yen mark is used to replace the "\" character in paths like C:\Data\Test and that "Readme" string contains a "\" character ... but why is it being interpreted differently now?
I think I know the answer! I tried running the 1.0.0 and 1.0.1RC2 installers on my Win98SE system and found that although the text does not appear in Japanese there is a visible difference: the "\" character is being duplicated, probably by the function used to fix paths which are displayed using the InstallOptions? plugin.
From 1.0.0:
http://www.sugelan.co.uk/popfile/dev/build/win98se-100.png
From 1.01.RC2:
http://www.sugelan.co.uk/popfile/dev/build/win98se-101rc2.png
brian05/12/08 17:13:14 -
Message #154
On Japanese systems I think the Yen mark is used to replace the "\" character in paths like C:\Data\Test and that "Readme" string contains a "\" character ... but why is it being interpreted differently now?
Yes. Some Japanese characters encoded in Shift-JIS contain the Yen mark (= "\" character) and they sometimes cause problems.
Perhaps NSIS escapes the Yen mark by adding an extra "\" character.
The current installer uses the default NSIS text for that "Show Readme" box but NSIS allows this string to be customised. If you like I could try doing this for the next release candidate. We can test this using a very simple NSIS script.
OK. Let's try the customized string.
What can I do?
Naoki
amatubu05/12/08 17:17:52 -
-
Message #155
Let's try the customized string.
I've made a simple script that makes it easy to try using a different string for that checkbox:
http://www.sugelan.co.uk/popfile/dev/build/readme-demo.zip
The problem is that NSIS is passing the string through a function (NSIS2IO) which does the following conversions:
\ gets changed to \\
$\r gets changed to \r
$\n gets changed to \n
$\t gets changed to \t
The current default string contains "\" which gets changed to "\\" and results in that Yen symbol appearing in the string.
You will need to try find a new string that can avoid getting changed by that NSIS2IO function. Of course this will only fix the text on the FINISH page - there may be other places where text is being corrupted.
I've reported this problem in the NSIS support forum.
brian05/12/08 19:38:14 -
-
Message #156
Brian,
I've made a simple script that makes it easy to try using a different string for that checkbox:
Thanks.
I've tested the script and found it strange.
First, the test program has no problem. The string is exactly same as the default string, but there's no problem:
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/readme1.png
Second, I replaced the line 19 with the following. But there's still no problem:
!define MUI_FINISHPAGE_SHOWREADME_TEXT "$(MUI_TEXT_FINISH_SHOWREADME)"
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/readme2.png
Third, I commented out the line 19. The problem finally appeared:
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/readme3.png
I don't know why, but I like the second one. :-)
Naoki
amatubu05/13/08 13:42:00 -
-
Message #157
Thanks for testing the script, Naoki.
I was hoping you'd report that the script worked. When I tested it on my Win98SE system it did not duplicate the "\" character but on my Vista system I could not be sure. Win98SE shows weird characters for that string but Vista manages to show some Japanese (or what looks like Japanese) characters for that string and I could still see a Yen symbol.
I'll update the installer to use "$(MUI_TEXT_FINISH_SHOWREADME)". I suppose this works because MUI does not use the NSIS2IO function if the default string is overridden in the script.
I need to go through all of my NSIS scripts to find the places where MUI default strings are used and make similar changes. I think all I need to worry about are the strings on the WELCOME and FINISH pages but I am not sure as I use so many strings in my NSIS-based programs!
I've also posted an update in the NSIS support forum to let others know about this workaround.
brian05/13/08 15:27:08 -
-
Message #158
I'll update the installer to use "$(MUI_TEXT_FINISH_SHOWREADME)". I suppose this works because MUI does not use the NSIS2IO function if the default string is overridden in the script.
Thanks.
I need to go through all of my NSIS scripts to find the places where MUI default strings are used and make similar changes. I think all I need to worry about are the strings on the WELCOME and FINISH pages but I am not sure as I use so many strings in my NSIS-based programs!
As for Japanese, there's no problem except for the 'ShowReadme?'.
I've searched the backslash character in the NSIS's default strings with the following script:
perl -e "while(<>){print if (/\\[^rnt]/);}" < Japanese.nsh</code>I've found five backslashes in Japanese.nsh and four in Japanese.nlf.
In Japanese.nsh:
${LangFileString} MUI_INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "契約書のすべての条件に同意するならば、下に表示されているオプションのうち、最初のものを選んで下さい。$(^NameDA) をインストールするには、契約書に同意する必要があります。 $_CLICK" ${LangFileString} MUI_UNINNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "契約書のすべての条件に同意するならば、下に表示されているオプションのうち、最初のものを選んで下さい。$(^NameDA) をアンインストールするには、契約書に同意する必要があります。 $_CLICK" ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "コンポーネントの上にマウス カーソルを移動すると、ここに説明が表示されます。" ${LangFileString} MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "コンポーネントの上にマウス カーソルを移動すると、ここに説明が表示されます。" ${LangFileString} MUI_TEXT_FINISH_SHOWREADME "Readme を表示する(&S)"In Japanese.nlf:
# ^ShowDetailsBtn 詳細を表示(&D) # ^LicenseTextRB $(^NameDA)をインストールする前に、ライセンス契約書を確認して下さい。契約書の全ての条件に同意するならば、下に表示されているオプションのうち、最初のものを選んで下さい。 $_CLICK # ^UnLicenseTextRB $(^NameDA)をアンインストールする前に、ライセンス契約書を確認して下さい。契約書の全ての条件に同意するならば、下に表示されているオプションのうち、最初のものを選んで下さい。 $_CLICK # ^SpaceAvailable 利用可能なディスクスペース:
And, 'MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO', 'MUI_TEXT_FINISH_SHOWREADME', 'ShowDetailsBtn?' and 'SpaceAvailable?' are used in the POPFile installer.
There's no problem with 'MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO':
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/setup1.png
'MUI_TEXT_FINISH_SHOWREADME' has been had a problem:
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/ShowReadme_101RC2.png
There's no problem with 'ShowDetailsBtn?':
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/setup3.png
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/adduser1.png
There's no problem with 'SpaceAvailable?':
http://idisk.mac.com/amatubu/Public/POPFile/v1.0.1/setup2.png
Naoki
amatubu05/14/08 14:54:51
-
-
-
-
-
-
-
-