Skip to content
⌘ NSIS Forum Archive

typos in the docs ...

95 posts

o_owd#
in the Install Options readme,

(NSIS\Docs\InstallOptions\Readme.html)
"Call the DLL
You can call InstallOptions in a page function, check the NSIS documentation for information about the page system."

the link "NSIS documentation" points to "file:///C:/Program%20Files/NSIS/Docs/Chapter4.html#4.5"
the file does not exist.

OJi.
Jnuw#
This is not a typo, but a suggestion for clarity. Under the 4.9.1.5 File section, on the /nonfatal bullet, it currently states:

"If the /nonfatal switch is used and no files are found, a warning will be issued instead of an error."

I think it would be good to add that if the /nonfatal switch is activate or invoked (no files found), the line will no longer be a run-time instruction, and Relative Jumps will not see the line (per jump info below). It would be best to use regular labels around File /nonfatal commands to be safe.

"4.4 Relative jump of +2 will skip one instruction and go to the second instruction from the current instruction...An instruction is every command that is executed at run-time, when the installer is running. MessageBox, Goto, GetDLLVersion, FileRead, SetShellVarContext are all instructions. AddSize, Section, SectionGroup, SectionEnd, SetOverwrite (and everything under Compiler Flags), Name, SetFont, LangString, are not instructions because they are executed at compile time."

Thanks for your time!
Jnuw#
Logged as a bug, 1299100. Thanks for looking at this, and your help on my 2.09 questions from a few minutes ago.

Jnuw
Afrow UK#
Idea

I know that in the history of NSIS we've always had the "NSIS Examples Directory" shortcut, but I think a "NSIS Directory" shortcut would be more helpful as I myself have my projects in a Projects sub-folder.

-Stu
kichik#
I don't think that's necessary. The start menu is meant for a quick start and that folder contains nothing that's not already linked. In your case, I think you'd even do better with a direct link to that projects folder.
Anders#
4.6.1.5 SectionGroup

[/e] Caption [section_group_name index_output]

should be

[/e] section_group_name [index_output]
JasonFriday13#
I found a few typos:

4.8.2.3
Typically the SetCompress flag will effect the commands after it,
should be 'affect'.

Also found that this code changes the compression status:
SetCompress off
SetCompressor lzma

Setcompressor switches SetCompress back to the default compression status (auto). This should be documented or bugfixed.

5.4
!define symbol1 ${symbol2}
After copying and pasting the code, I found that this typo has a 1 after symbol. I thought it was two l's. Maybe it should be changed to symbol_1 and symbol_2 or somthing similar (for clarity).

B2
To ask the user for a reboot if required,
should be 'To ask the user for a reboot, if required,' or 'If required, you can ask the user for a reboot.'

D2
For Windows NT (NT4/2000/XP), it's also possible to create the key in the HKCU hive,
Should this be hive, or should it be changed to folder/directory?
kichik#
Thanks, fixed.

SetCompress off followed by SetCompressor worked fine for me. Please include a complete example.

It should indeed be HKCU hive. That's how the registry objects are called [MSDN].
JasonFriday13#
My bad on SetCompressor. It does work. Maybe instead of saying 'Using lzma compression', it could say 'Using no compression', because I look at this line when I compile my installers with SetCompress off, and I think 'Oh, it's using lzma compression' when it is really not compressed.
glory_man#
From MUI doc:
...
Language Selection Dialog Settings

To remember to users preference, you can define a registry key.
...
Is this correct? I think this is must be:
To remember the...
Guest#
4.9.13.1 SectionSetFlags

... The first bit (lowest) represents whether the section is currently enabled,
I suggest "enabled" --> "selected"

This will also make it consistent with wording in Sections.nsh, e.g. SF_SELECTED
Wladimir Mutel#
In section 4.9.14.2, CreateFont :

GetDlgItem $$0 $HWNDPARENT 1

Should there really be two '$' signs ?
And if yes, then why ?
{_trueparuex^}#
foul language

In section 4.8.1.30, Name :
'CrapSoft MyApp'
==> 'MySoft MyApp'

In section C.1, Get parent directory :
; input, top of stack (e.g. C:\Program Files\Poop)
==> ; input, top of stack (e.g. C:\Program Files\foo)
{_trueparuex^}#
Aannd there was also some poo in the examples.

In these files:
Examples\bigtest.nsi
Examples\InstallOptions\test.ini
Examples\InstallOptions\testnotify.ini

(Not sure if the bigtest.nsi needs fixin)
StrCpy $1 "POOOOOOOOOOOP"
==> StrCpy $1 "FOOOOOOOOOOOO"

Heres a patch anyway.
iceman_k#
Not actually a typo, but missing documentation. The LockWindow command is supported but not documented anywhere.
What exactly does it do? I am guessing it enables or prevents window repainting.
Why would it be needed in an installer? I am not quite sure.
iceman_k#
Yes, I realized I was looking at an older CHM file.
I have every release of NSIS installed on my PC (I use them for regression testing), and I suppose I must have opened an old version of NSIS.chm by mistake.
Even though the command has been supported since 2.0, it was not documented until 2.07.
(But you already knew that).
iceman_k#
OK, I'm pretty sure I didn't mess up this time. 🙂
SetCompressionLevel is not documented. It is supported, since running
makensis /cmdhelp setcompressionlevel
yields:
MakeNSIS v2.14 - Copyright 1999-2006 Nullsoft, Inc.

Portions Copyright (C) 1995-1998 Jean-loup Gailly and Mark Adler (zlib).
Portions Copyright (C) 1996-2002 Julian R Seward (bzip2).
Portions Copyright (C) 1999-2003 Igor Pavlov (lzma).

Contributors: nnop@newmail.ru, Ryan Geiss, Andras Varga, Drew Davidson, Peter Windridge, Dave Laundon, Robert Rainwater,
Yaroslav Faybishenko, Jeff Doozan, Amir Szekely, Ximon Eighteen, et al.

Usage: SetCompressionLevel level_0-9
Same with Nop:

MakeNSIS v2.14 - Copyright 1999-2006 Nullsoft, Inc.

Portions Copyright (C) 1995-1998 Jean-loup Gailly and Mark Adler (zlib).
Portions Copyright (C) 1996-2002 Julian R Seward (bzip2).
Portions Copyright (C) 1999-2003 Igor Pavlov (lzma).

Contributors: nnop@newmail.ru, Ryan Geiss, Andras Varga, Drew Davidson, Peter Windridge, Dave Laundon, Robert Rainwater,
Yaroslav Faybishenko, Jeff Doozan, Amir Szekely, Ximon Eighteen, et al.

Usage: Nop
I just did a search, and these commands were discussed in this thread. LockWindow made it into the docs, the other two didn't.
Comm@nder21#
Nop ?!
"Does nothing."
What is it useful for?!?!
why is this one implemented?

is Nop simply the same as an empty script line?
then, why do you include it? (overhead!)
Afrow UK#
Nop is a blank instruction which takes up a line. Stands for Null Operation. Simply there for relative jumps for example.
It won't add to overhead though because it's just for the compiler.

-Stu
Comm@nder21#
ah, i think i got it ...

so:
Goto +3
Nop

is the same as
Goto +2

thats the revolution we all waited for .. lol
kichik#
It actually adds an instruction to the code as well. It is not just for the compiler. It adds a jump to the next instruction, which is esentially the same as doing nothing.
Afrow UK#
I discovered this one in the compiler:

Error: invalid charaters in variable name "Hello'", use only charaters [a-z][A-Z][0-9] and '_'

Did someone copy and paste lol?

-Stu
e_orz#
In Section:
4.9.1.8 RMDir

The line: RMDir /r /REBOOTOK $INSTIDR
Should be: RMDir /r /REBOOTOK $INSTDIR