Glossary: Difference between revisions

From NSIS Wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
'''Glossary to assist newbies understand the NSIS User Manual''' (v2.38 on 8/29/08)
:Attribute: Command that configures your installer's general behavior (unlike an Instruction): <code>AutoCloseWindow true</code>.  Unless it's a Compiler Flag, it's not Section or Function specific and so is specified outside them
:Attribute: Command that configures your installer's general behavior (unlike an Instruction): <code>AutoCloseWindow true</code>.  Unless it's a Compiler Flag, it's not Section or Function specific and so is specified outside them


:Callback: A Function called by the installer at certain points in the install, eg, <code>.onInit</code> is called when the installer is nearly finished initializing
:Callback: A Function called by the installer at certain points in the install, eg, <code>.onInit</code> is called when the installer is nearly finished initializing


:Command: Any non-comment line (possibly \-extended), ie, Compile Time Commands, Attributes, Instructions, and commands related to the definition of Functions, Pages, Sections, and Variables
:Command: Any non-comment line (possibly \-extended), ie, Compile Time Commands, Attributes (and Compiler Flags), Instructions, and commands related to the definition of Functions, Pages, Sections, and Variables


:Comment: Text enclosed in /* ... */ or prefixed with ; or #
:Comment: Text enclosed in /* ... */ or prefixed with ; or #
Line 17: Line 19:


:Define: A symbol defined at runtime by NSIS (a Predefine), by <code>!define</code>, or by /D at the command line. Dereferenced with $ and curly brackets: ${VERSION}
:Define: A symbol defined at runtime by NSIS (a Predefine), by <code>!define</code>, or by /D at the command line. Dereferenced with $ and curly brackets: ${VERSION}
:File instruction: includes the named file(s) in the installer's data block at compile time for extraction to $PLUGINSDIR at run time. (Included here as hopefully an improvement to "Adds file(s) to be extracted to the current output path")


:Function: A user-created block of commands called explicitly (user function) or automatically (Callback)
:Function: A user-created block of commands called explicitly (user function) or automatically (Callback)
Line 32: Line 36:
:Register: A pre-declared variable, one of $0 - $9, $R0 - $R9
:Register: A pre-declared variable, one of $0 - $9, $R0 - $R9


:Script: A (.nsi) text file that sets some attributes (minimally, <code>outfile</code>), usually declares/defines/assigns some symbols, then lists the pages, in order, to walk the (un)installing user through.  Zero or more Functions and at least one Section follow.  For increased power and flexibility, Plug-ins can be called and "header" (.nsh) scripts  <code>!include</code>d
:Script: A (.nsi) text file that sets some attributes (minimally, <code>outfile</code>), usually declares/defines/assigns some Symbols, then lists the Pages, in order, to walk the (un)installing user through.  Zero or more Functions and at least one Section follow.  Plug-ins may be called and header (.nsh) scripts  <code>!include</code>d


:Section: A block of commands "executed in order by the resulting installer."  "If [Attribute] ComponentText is set, the user will have the option of disabling/enabling each visible section.  If a section's name is 'Uninstall' or is prefixed with 'un.', it's an uninstaller section."
:Section: A block of commands "executed in order by the resulting installer."  "If [Attribute] ComponentText is set, the user will have the option of disabling/enabling each visible section.  If a section's name is 'Uninstall' or is prefixed with 'un.', it's an uninstaller section."


:Symbol: General term meaning a define or variable.  The taxonomy:
:Symbol: Define (Predefine or user <code>!define</code>) or Variable  
::Symbol
:::Define
::::Predefine
::::User define
:::Variable
::::Constant
::::Register
::::User variable


:Variable: A globally-scoped constant, register, or user variable
:Variable: A globally-scoped constant, register, or user variable

Revision as of 15:21, 29 August 2008

Glossary to assist newbies understand the NSIS User Manual (v2.38 on 8/29/08)

Attribute: Command that configures your installer's general behavior (unlike an Instruction): AutoCloseWindow true. Unless it's a Compiler Flag, it's not Section or Function specific and so is specified outside them
Callback: A Function called by the installer at certain points in the install, eg, .onInit is called when the installer is nearly finished initializing
Command: Any non-comment line (possibly \-extended), ie, Compile Time Commands, Attributes (and Compiler Flags), Instructions, and commands related to the definition of Functions, Pages, Sections, and Variables
Comment: Text enclosed in /* ... */ or prefixed with ; or #
Compile Time Command: Always starts with a bang, eg,
!ifdef VERSION & NOVERSION
  !error "Warning compile-person: both VERSION and NOVERSION are defined"
!endif
Compiler Flag: An Attribute that "affect[s] how the compiler generates code and compresses data": SetCompressor zlib
Constant: A case-insensitive, read-only variable with built-in value. Dereferenced as a variable: $EXEPATH
Define: A symbol defined at runtime by NSIS (a Predefine), by !define, or by /D at the command line. Dereferenced with $ and curly brackets: ${VERSION}
File instruction: includes the named file(s) in the installer's data block at compile time for extraction to $PLUGINSDIR at run time. (Included here as hopefully an improvement to "Adds file(s) to be extracted to the current output path")
Function: A user-created block of commands called explicitly (user function) or automatically (Callback)
Installer: A wizard that MakeNSIS.exe compiles from a script
Instruction: A Function or Section command executed when your installer is run, eg, FileClose $0
Page: The Page family of commands typically specify either Page custom creator_function leave_function or one of the internal page types, which are license, components (to select), directory (of installation), instfiles (where, installer configuration complete, the Sections are executed), uninstConfirm. These differ in some behaviors (e.g., Sections define components for the components page only) and the attributes that effect them. LicenseText's setting, if any, is only used on the license page, for example
Plug-in: A DLL file called using form DLLName::FunctionName "param1" "param2" "param3"
Predefine: A Define with built in value. Includes four underscores in its name: ${__<UPCASE>__}, eg, ${__FILE__}
Register: A pre-declared variable, one of $0 - $9, $R0 - $R9
Script: A (.nsi) text file that sets some attributes (minimally, outfile), usually declares/defines/assigns some Symbols, then lists the Pages, in order, to walk the (un)installing user through. Zero or more Functions and at least one Section follow. Plug-ins may be called and header (.nsh) scripts !included
Section: A block of commands "executed in order by the resulting installer." "If [Attribute] ComponentText is set, the user will have the option of disabling/enabling each visible section. If a section's name is 'Uninstall' or is prefixed with 'un.', it's an uninstaller section."
Symbol: Define (Predefine or user !define) or Variable
Variable: A globally-scoped constant, register, or user variable