If want a parameter to start with ; or # put it in quotes.
\\<b\\>Plug-ins\\</b\\>
To call a plugin, use 'plugin::command [parameters]'. For more info see \R{plugindlls}{Plugin DLLs}.
\c nsExec::Exec "myfile"
\\<b\\>Numbers\\</b\\>
For parameters that are treated as numbers, use decimal (the number) or hexadecimal (with 0x prepended to it, i.e. 0x12345AB), or octal (numbers beginning with a 0 and no x).
Colors should be set in hexadecimal RGB format, like HTML but without the #.
\c IntCmp 1 0x1 lbl_equal
\c
\c SetCtlColors $HWND CCCCCC
\\<b\\>Strings\\</b\\>
To represent strings that have spaces, use quotes:
\c MessageBox MB_OK "Hi there!"
Quotes only have the property of containing a parameter if they begin the parameter. They can be either single quotes, double quotes, or the backward single quote.
To extend a command over multiple lines, use a backslash (\\) at the end of the line, and the next line will effectively be concatenated the end of it. For example:
If a file named "nsisconf.nsh" in the same directory as makensis.exe exists, it will be included by default before any scripts (unless the /NOCONFIG command line parameter is used).