Giter VIP home page Giter VIP logo

nsis's Introduction

NSIS Bundle for Sublime Text 3

NSIS (Nullsoft Scriptable Install System) is an open source program and scripting language to create Windows installers. This package provides syntax highlighting and build tools.

Note: This package is compatible with Sublime Text 3 (Build 3103 or higher). Click here for a Sublime Text 2 version of this package.

Screenshots

Light Theme Dark Theme

Installation

Easiest way to install the plugin is to use Package Control.

Alternatively you can git clone directly into Packages directory in the Sublime Text 3 application settings area.

Using Git

Go to your Sublime Text 3 Packages directory and clone the repository using the command below:

git clone https://github.com/SublimeText/NSIS

Download Manually

  • Download the files using the GitHub .zip download option
  • Unzip the files and rename the folder to NSIS
  • Copy the folder to your Sublime Text 3 Packages directory

Portable NSIS support

Support for portable NSIS can be achieved by putting the main NSIS program directory path in your PATH environment variable.

nsis's People

Contributors

aroben avatar ckaminski avatar gentoo90 avatar idleberg avatar jeffory avatar jsadeli avatar robotroll avatar wernight avatar zenpoy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nsis's Issues

$var inside quotes

The current language definition does not highlight variables/definitions within any kind of quotes, this should probably be changed.

Highlighting color changed with 2.0 release

Hi,

the colors of the keywords changed with the new version. I expected the update to also highlight the variables in strings, but with the same color as before:

Old:
image

New:
image

I use the Afterglow theme in standard configuration. There was no change to the theme.
Sublime version: Dev Channel, Build 3125

Add Goto Definition/Reference support

This package currently lacks Goto Definition / Goto Reference support. As far as I know, there are at least four scenarios where this makes sense:

1. Functions

# Definition
Function someFunction
FunctionEnd

# Reference
Call someFunction

2. Macros

# Definition
!macro someMacro
!macroend

# Reference
!insertmacro someMacro

3. Defines

# Definition
!define VERSION "1.2.3"

# Reference
DetailPrint "This is version ${VERSION}"

4. Variables

# Definition
Var "someVar"

# Reference
DetailPrint "Printing $someVar"

Note: When variables are declared, no value is assigned. Hence, the benefit Goto Definition might be limited

Example:

# Definition
Var "someVar"

# Value assignment
StrCpy $someVar "World"

# Reference
DetailPrint "Hello $someVar"

# Value re-assignment
StrCpy $someVar "John Doe"

All PRs to add Goto Definition / Goto Reference support are appreciated!

build support fails on ST3

Currently PackageControl allows you to install this (and lists it as ST3 compatible) but running Build (Ctrl+B) the package complains about not being able to find the .bat file.

Discuss: Tagged releases, new syntax file-format

CC @jeffory @FichteFoll

Is there any opposition to tagging releases? I would like to convert the current TextMate file to the new format for for syntax definitions and thought that versioning illustrate this cut nicely.

The conversion itself can be done using convert_syntax.py inside the Default package in (build 3103 and later).

Proposal:

  • 1.0.0 for TextMate XML (.tmLanguage)
  • 2.0.0 for Sublime Text YAML (.sublime-syntax)

Any arguments against this?

st4 support?

i installed NSIS plugin via package control of sublime text 4, on status bar it hints "installation sucessfully", but indeed not. Nothing happend.

Package description

Could someone please change the package description and remove the 2 from "Sublime Text 2". The versioned releases are now live on Package Control and I think the description should communicate it works with ST2 and ST3.

Multiline Comments

I have noticed that multiline comments are not working as they should, Sublime Text will comment out every single line rather than using /multiline comments/. I had a quick look at the tmLanguage file, but couldn't figure out why the multiline comments aren't working. No big deal, but I didn't want to leave this unmentioned.

Improve block highlighting

In my opinion, the highlighting of blocks (Section/SectionEnd, Function/FunctionEnd, PageEx/PageExEnd) should be adjusted to match that other languages. Specifically, the mentioned commands to open/close a block should be highlighted as other.keyword.nsis, while their names should be entity.name.function.nsis.

Adjusting Section is fairly complex, since there many cases to consider, e.g. optional quotes around the name, optional parameters, special prefixes and section indices.

Section NameOfSection
SectionEnd

Section "Name of Section with Spaces"
SectionEnd

Section -hiddenSection
SectionEnd

Section "-hidden section"
SectionEnd

Section # hidden section
SectionEnd

Section !boldSection
SectionEnd

Section "!bold section"
SectionEnd

Section /o "optional section"
SectionEnd

Section "section with named index" SECTION_INDEX
SectionEnd

All PRs to improve block highlighting are appreciated.

Error loading syntax file - Sublime 3114

Hello,

with Sublime 3114 the syntax file for Nsis is causing following error:
image

The corresponding lines in the file are:

- match: (\!include|\!insertmacro)\b
  captures:
  match: keyword.control.import.nsis

Regards,
Robin

Add Goto Symbol support

This package currently lacks Goto Symbol support. It's up to discussion which language features deserve this, but there are several options to choose from:

All PRs to add Goto Symbol are appreciated!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.