SublimeText / NSIS

Sublime Text plugin for the Nullsoft Scriptable Install System
Apache License 2.0
40 stars 15 forks source link

Add Goto Definition/Reference support #39

Open idleberg opened 5 years ago

idleberg commented 5 years ago

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!