Glossary: Difference between revisions

From NSIS Wiki
Jump to navigationJump to search
No edit summary
m (Format as table for readability - content not changed)
 
(3 intermediate revisions by one other user not shown)
Line 1: Line 1:
: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
{| style="border-collapse: collapse;" class="wikitable"
 
|- style="border: 1px solid #a2a9b1"
: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
|
 
! '''Glossary to assist newbies understand the NSIS User Manual''' (v2.38 on 8/29/08)
:Comment: Text enclosed in /* ... */ or prefixed with ; or #
|-
 
| style="border: 1px solid #a2a9b1" | '''Attribute:'''
:Compile Time Command: Always starts with a bang, eg,  
| style="border: 1px solid #a2a9b1" | 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
|-
| style="border: 1px solid #a2a9b1" | '''Callback:'''
| style="border: 1px solid #a2a9b1" | 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
|-
| style="border: 1px solid #a2a9b1" | '''Command:'''
| style="border: 1px solid #a2a9b1" | 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
|-
| style="border: 1px solid #a2a9b1" | '''Comment:'''
| style="border: 1px solid #a2a9b1" | Text enclosed in /* ... */ or prefixed with ; or #
|-
| style="border: 1px solid #a2a9b1" | '''Compile Time Command:'''
| style="border: 1px solid #a2a9b1" | Always starts with a bang, eg,  
<pre>!ifdef VERSION & NOVERSION
<pre>!ifdef VERSION & NOVERSION
   !error "Warning compile-person: both VERSION and NOVERSION are defined"
   !error "Warning compile-person: both VERSION and NOVERSION are defined"
!endif</pre>  
!endif</pre>  
|-
| style="border: 1px solid #a2a9b1" | '''Compiler Flag:'''
| style="border: 1px solid #a2a9b1" | An Attribute that "affect[s] how the compiler generates code and compresses data": <code>SetCompressor zlib</code>
|-
| style="border: 1px solid #a2a9b1" | '''Constant:'''
| style="border: 1px solid #a2a9b1" | A case-insensitive, read-only variable with built-in value.  Dereferenced as a variable: $EXEPATH
|-
| style="border: 1px solid #a2a9b1" | '''Define:'''
| style="border: 1px solid #a2a9b1" | 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}
|-
| style="border: 1px solid #a2a9b1" | '''File Instruction:'''
| style="border: 1px solid #a2a9b1" | includes the named file(s) in the installer's data block at compile time for extraction to the /oname or SetOutPath folder at run time. (This is included here as hopefully an improvement to "Adds file(s) to be extracted to the current output path")
|-
| style="border: 1px solid #a2a9b1" | '''Function:'''
| style="border: 1px solid #a2a9b1" | A user-created block of commands called explicitly (user function) or automatically (Callback)
|-
| style="border: 1px solid #a2a9b1" | '''Installer:'''
| style="border: 1px solid #a2a9b1" | A wizard that MakeNSIS.exe compiles from a script
|-
| style="border: 1px solid #a2a9b1" | '''Instruction:'''
| style="border: 1px solid #a2a9b1" | A Function or Section command executed when your installer is run, eg, <code>FileClose $0</code>
|-
| style="border: 1px solid #a2a9b1" | '''Page:'''
| style="border: 1px solid #a2a9b1" | The <code>Page</code> family of commands typically specify either <code>Page custom ''creator_function'' ''leave_function''</code> or one of the internal page types, which are <code>license</code>, <code>components</code> (to select), <code>directory</code> (of installation), <code>instfiles</code> (where, installer configuration complete, the Sections are executed), <code>uninstConfirm</code>.  These differ in some behaviors (e.g., <code>Section</code>s define components for the <code>components</code> page only) and the attributes that effect them.  <code>LicenseText</code>'s setting, if any, is only used on the <code>license</code> page, for example
|-
| style="border: 1px solid #a2a9b1" | '''Plug-in:'''
| style="border: 1px solid #a2a9b1" | A DLL file called using form <code>DLLName::FunctionName "param1" "param2" "param3"</code>
|-
| style="border: 1px solid #a2a9b1" | '''Predefine:'''
| style="border: 1px solid #a2a9b1" | A Define with built in value.  Includes four underscores in its name: ${__<''UPCASE''>__}, eg, ${__FILE__}
|-
| style="border: 1px solid #a2a9b1" | '''Register:'''
| style="border: 1px solid #a2a9b1" | A pre-declared variable, one of $0 - $9, $R0 - $R9
|-
| style="border: 1px solid #a2a9b1" | '''Script:'''
| style="border: 1px solid #a2a9b1" | 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
|-
| style="border: 1px solid #a2a9b1" | '''Section:'''
| style="border: 1px solid #a2a9b1" | 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."
|-
| style="border: 1px solid #a2a9b1" | '''Symbol:'''
| style="border: 1px solid #a2a9b1" | Define (Predefine or user <code>!define</code>) or Variable
|-
| style="border: 1px solid #a2a9b1" | '''Variable:'''
| style="border: 1px solid #a2a9b1" | A globally-scoped constant, register, or user variable
|}


:Compiler Flag: An Attribute that "affect[s] how the compiler generates code and compresses data": <code>SetCompressor zlib</code>
[[Category:Help]]
 
: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 <code>!define</code>, or by /D at the command line. Dereferenced with $ and curly brackets: ${VERSION}
 
: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, <code>FileClose $0</code>
 
:Page: The <code>Page</code> family of commands typically specify either <code>Page custom ''creator_function'' ''leave_function''</code> or one of the internal page types, which are <code>license</code>, <code>components</code> (to select), <code>directory</code> (of installation), <code>instfiles</code> (where, installer configuration complete, the Sections are executed), <code>uninstConfirm</code>.  These differ in some behaviors (e.g., <code>Section</code>s define components for the <code>components</code> page only) and the attributes that effect them.  <code>LicenseText</code>'s setting, if any, is only used on the <code>license</code> page, for example
 
:Plug-in: A DLL file called using form <code>DLLName::FunctionName "param1" "param2" "param3"</code>
 
: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, <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
 
: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
::::User define
:::Variable
::::Constant
::::Register
::::User variable
 
:Variable: A globally-scoped constant, register, or user variable

Latest revision as of 09:49, 30 December 2020

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 the /oname or SetOutPath folder at run time. (This is 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