Atom
Description
An all around NSIS language package for GitHub's new Atom editor
Grammar
Syntax highlighting of all commands in NSIS versions 2.46 & 3.0b1 and their included plug-ins
Completions
Tab-completions for syntax, useful snippets for quick scaffolding
Extension Packages
You can further extend #nsis support in Atom.
Installation
Atom Package Manager (apm)
Install package from apm install language-nsis
(or use the GUI)
Git
Change to the Atom package directory and clone the repository:
git clone https://github.com/idleberg/atom-language-nsis.git language-nsis
Usage
Completion
With most commands, you can specify available options before completion. For instance, rather than completing RequestExecutionLevel
and then specifying an option, you can directly choose RequestExecutionLevel user
from the completion menu.
To complete compile time commands, variables or predefines, *leave out* special characters:
include
completes to!include
INSTDIR
completes to$INSTDIR
NSIS_VERSION
completes to${NSIS_VERSION}`
However, you have to type __LINE___
to complete to ${__LINE__}
.
There are several special cases for your convenience:
MB_OK
completes toMessageBox MB_OK
onInit
completes to aFunction .onInit
blockLogicLib
completes to!include "LogicLib.nsh"`
Building
There are many ways to compile NSIS scripts in Atom. But before we go into detail, make sure makensis is in your PATH PATH environmental variable.
As of v4.0.0 of this package, you can compile scripts without relying on third-party packages. To do so, select “NSIS: Save & Compile” from the command-palette or use the shortcut Ctrl+Alt+M (that's Shift+Alt+M on Windows.)
Third-party packages
In addition to that, you can choose from the following build packages to compile NSIS:
- build with build provider (e.g. build-makensis), supports linter
- script
- atom-runner
- atom-build