home *** CD-ROM | disk | FTP | other *** search
- " Vim syntax file
- " Language: NSIS script, for version of NSIS 1.91 and later
- " Maintainer: Alex Jakushev <Alex.Jakushev@kemek.lt>
- " Last Change: 2002 Jul 24
-
- " For version 5.x: Clear all syntax items
- " For version 6.x: Quit when a syntax file was already loaded
- if version < 600
- syntax clear
- elseif exists("b:current_syntax")
- finish
- endif
-
- syn case ignore
-
-
- "COMMENTS
- syn keyword nsisTodo todo attention note fixme readme
- syn region nsisComment start=";" end="$" contains=nsisTodo
- syn region nsisComment start="#" end="$" contains=nsisTodo
-
- "LABELS
- syn match nsisLocalLabel "\a\S\{-}:"
- syn match nsisGlobalLabel "\.\S\{-1,}:"
-
- "PREPROCESSOR
- syn match nsisPreprocSubst "${.\{-}}"
- syn match nsisDefine "!define\>"
- syn match nsisDefine "!undef\>"
- syn match nsisPreCondit "!ifdef\>"
- syn match nsisPreCondit "!ifndef\>"
- syn match nsisPreCondit "!endif\>"
- syn match nsisPreCondit "!else\>"
- syn match nsisMacro "!macro\>"
- syn match nsisMacro "!macroend\>"
- syn match nsisMacro "!insertmacro\>"
-
- "COMPILER UTILITY
- syn match nsisInclude "!include\>"
- syn match nsisSystem "!cd\>"
- syn match nsisSystem "!system\>"
- syn match nsisSystem "!packhdr\>"
-
- "VARIABLES
- syn match nsisUserVar "$\d"
- syn match nsisUserVar "$R\d"
- syn match nsisSysVar "$INSTDIR"
- syn match nsisSysVar "$OUTDIR"
- syn match nsisSysVar "$CMDLINE"
- syn match nsisSysVar "$PROGRAMFILES"
- syn match nsisSysVar "$DESKTOP"
- syn match nsisSysVar "$EXEDIR"
- syn match nsisSysVar "$WINDIR"
- syn match nsisSysVar "$SYSDIR"
- syn match nsisSysVar "$TEMP"
- syn match nsisSysVar "$STARTMENU"
- syn match nsisSysVar "$SMPROGRAMS"
- syn match nsisSysVar "$SMSTARTUP"
- syn match nsisSysVar "$QUICKLAUNCH"
- syn match nsisSysVar "$HWNDPARENT"
- syn match nsisSysVar "$\\r"
- syn match nsisSysVar "$\\n"
- syn match nsisSysVar "$\$"
-
- "STRINGS
- syn region nsisString start=/"/ skip=/'\|`/ end=/"/ contains=nsisPreprocSubst,nsisUserVar,nsisSysVar,nsisRegistry
- syn region nsisString start=/'/ skip=/"\|`/ end=/'/ contains=nsisPreprocSubst,nsisUserVar,nsisSysVar,nsisRegistry
- syn region nsisString start=/`/ skip=/"\|'/ end=/`/ contains=nsisPreprocSubst,nsisUserVar,nsisSysVar,nsisRegistry
-
- "CONSTANTS
- syn keyword nsisBoolean true false on off
-
- syn keyword nsisAttribOptions hide show nevershow auto force try ifnewer normal silent silentlog
- syn keyword nsisAttribOptions smooth colored SET CUR END RO none listonly textonly both current all
-
- syn match nsisAttribOptions '\/NOCUSTOM'
- syn match nsisAttribOptions '\/CUSTOMSTRING'
- syn match nsisAttribOptions '\/COMPONENTSONLYONCUSTOM'
- syn match nsisAttribOptions '\/windows'
- syn match nsisAttribOptions '\/r'
- syn match nsisAttribOptions '\/oname'
- syn match nsisAttribOptions '\/REBOOTOK'
- syn match nsisAttribOptions '\/SILENT'
- syn match nsisAttribOptions '\/FILESONLY'
- syn match nsisAttribOptions '\/SHORT'
-
- syn keyword nsisExecShell SW_SHOWNORMAL SW_SHOWMAXIMIZED SW_SHOWMINIMIZED
-
- syn keyword nsisRegistry HKCR HKLM HKCU HKU HKCC HKDD HKPD
- syn keyword nsisRegistry HKEY_CLASSES_ROOT HKEY_LOCAL_MACHINE HKEY_CURRENT_USER HKEY_USERS
- syn keyword nsisRegistry HKEY_CURRENT_CONFIG HKEY_DYN_DATA HKEY_PERFORMANCE_DATA
-
- syn keyword nsisFileAttrib NORMAL ARCHIVE HIDDEN OFFLINE READONLY SYSTEM TEMPORARY
- syn keyword nsisFileAttrib FILE_ATTRIBUTE_NORMAL FILE_ATTRIBUTE_ARCHIVE FILE_ATTRIBUTE_HIDDEN
- syn keyword nsisFileAttrib FILE_ATTRIBUTE_OFFLINE FILE_ATTRIBUTE_READONLY FILE_ATTRIBUTE_SYSTEM
- syn keyword nsisFileAttrib FILE_ATTRIBUTE_TEMPORARY
-
- syn keyword nsisMessageBox MB_OK MB_OKCANCEL MB_ABORTRETRYIGNORE MB_RETRYCANCEL MB_YESNO MB_YESNOCANCEL
- syn keyword nsisMessageBox MB_ICONEXCLAMATION MB_ICONINFORMATION MB_ICONQUESTION MB_ICONSTOP
- syn keyword nsisMessageBox MB_TOPMOST MB_SETFOREGROUND MB_RIGHT
- syn keyword nsisMessageBox MB_DEFBUTTON1 MB_DEFBUTTON2 MB_DEFBUTTON3 MB_DEFBUTTON4
- syn keyword nsisMessageBox IDABORT IDCANCEL IDIGNORE IDNO IDOK IDRETRY IDYES
-
- syn match nsisNumber "\<[^0]\d*\>"
- syn match nsisNumber "\<0x\x\+\>"
- syn match nsisNumber "\<0\o*\>"
-
-
- "INSTALLER ATTRIBUTES - General installer configuration
- syn keyword nsisAttribute OutFile Name Caption SubCaption BrandingText Icon
- syn keyword nsisAttribute WindowIcon BGGradient SilentInstall SilentUnInstall
- syn keyword nsisAttribute CRCCheck MiscButtonText InstallButtonText FileErrorText
-
- "INSTALLER ATTRIBUTES - Install directory configuration
- syn keyword nsisAttribute InstallDir InstallDirRegKey
-
- "INSTALLER ATTRIBUTES - License page configuration
- syn keyword nsisAttribute LicenseText LicenseData
-
- "INSTALLER ATTRIBUTES - Component page configuration
- syn keyword nsisAttribute ComponentText InstType EnabledBitmap DisabledBitmap SpaceTexts
-
- "INSTALLER ATTRIBUTES - Directory page configuration
- syn keyword nsisAttribute DirShow DirText AllowRootDirInstall
-
- "INSTALLER ATTRIBUTES - Install page configuration
- syn keyword nsisAttribute InstallColors InstProgressFlags AutoCloseWindow
- syn keyword nsisAttribute ShowInstDetails DetailsButtonText CompletedText
-
- "INSTALLER ATTRIBUTES - Uninstall configuration
- syn keyword nsisAttribute UninstallText UninstallIcon UninstallCaption
- syn keyword nsisAttribute UninstallSubCaption ShowUninstDetails UninstallButtonText
-
- "COMPILER ATTRIBUTES
- syn keyword nsisCompiler SetOverwrite SetCompress SetDatablockOptimize SetDateSave
-
-
- "FUNCTIONS - general purpose
- syn keyword nsisInstruction SetOutPath File Exec ExecWait ExecShell
- syn keyword nsisInstruction Rename Delete RMDir
-
- "FUNCTIONS - registry & ini
- syn keyword nsisInstruction WriteRegStr WriteRegExpandStr WriteRegDWORD WriteRegBin
- syn keyword nsisInstruction WriteINIStr ReadRegStr ReadRegDWORD ReadINIStr ReadEnvStr
- syn keyword nsisInstruction ExpandEnvStrings DeleteRegValue DeleteRegKey EnumRegKey
- syn keyword nsisInstruction EnumRegValue DeleteINISec DeleteINIStr
-
- "FUNCTIONS - general purpose, advanced
- syn keyword nsisInstruction CreateDirectory CopyFiles SetFileAttributes CreateShortCut
- syn keyword nsisInstruction GetFullPathName SearchPath GetTempFileName CallInstDLL
- syn keyword nsisInstruction RegDLL UnRegDLL GetDLLVersion GetDLLVersionLocal
- syn keyword nsisInstruction GetFileTime GetFileTimeLocal
-
- "FUNCTIONS - Branching, flow control, error checking, user interaction, etc instructions
- syn keyword nsisInstruction Goto Call Return IfErrors ClearErrors SetErrors FindWindow
- syn keyword nsisInstruction SendMessage IsWindow IfFileExists MessageBox StrCmp
- syn keyword nsisInstruction IntCmp IntCmpU Abort Quit GetFunctionAddress GetLabelAddress
- syn keyword nsisInstruction GetCurrentAddress
-
- "FUNCTIONS - File and directory i/o instructions
- syn keyword nsisInstruction FindFirst FindNext FindClose FileOpen FileClose FileRead
- syn keyword nsisInstruction FileWrite FileReadByte FileWriteByte FileSeek
-
- "FUNCTIONS - Misc instructions
- syn keyword nsisInstruction SetDetailsView SetDetailsPrint SetAutoClose DetailPrint
- syn keyword nsisInstruction Sleep BringToFront HideWindow SetShellVarContext
-
- "FUNCTIONS - String manipulation support
- syn keyword nsisInstruction StrCpy StrLen
-
- "FUNCTIONS - Stack support
- syn keyword nsisInstruction Push Pop Exch
-
- "FUNCTIONS - Integer manipulation support
- syn keyword nsisInstruction IntOp IntFmt
-
- "FUNCTIONS - Rebooting support
- syn keyword nsisInstruction Reboot IfRebootFlag SetRebootFlag
-
- "FUNCTIONS - Uninstaller instructions
- syn keyword nsisInstruction WriteUninstaller
-
- "FUNCTIONS - Install logging instructions
- syn keyword nsisInstruction LogSet LogText
-
- "FUNCTIONS - Section management instructions
- syn keyword nsisInstruction SectionSetFlags SectionGetFlags SectionSetText
- syn keyword nsisInstruction SectionGetText
-
-
- "SPECIAL FUNCTIONS - install
- syn match nsisCallback "\.onInit"
- syn match nsisCallback "\.onUserAbort"
- syn match nsisCallback "\.onInstSuccess"
- syn match nsisCallback "\.onInstFailed"
- syn match nsisCallback "\.onVerifyInstDir"
- syn match nsisCallback "\.onNextPage"
- syn match nsisCallback "\.onPrevPage"
- syn match nsisCallback "\.onSelChange"
-
- "SPECIAL FUNCTIONS - uninstall
- syn match nsisCallback "un\.onInit"
- syn match nsisCallback "un\.onUserAbort"
- syn match nsisCallback "un\.onInstSuccess"
- syn match nsisCallback "un\.onInstFailed"
- syn match nsisCallback "un\.onVerifyInstDir"
- syn match nsisCallback "un\.onNextPage"
-
-
- "STATEMENTS - sections
- syn keyword nsisStatement Section SectionIn SectionEnd SectionDivider
- syn keyword nsisStatement AddSize
-
- "STATEMENTS - functions
- syn keyword nsisStatement Function FunctionEnd
-
-
- "ERROR
- syn keyword nsisError UninstallExeName
-
-
- " Define the default highlighting.
- " For version 5.7 and earlier: only when not done already
- " For version 5.8 and later: only when an item doesn't have highlighting yet
- if version >= 508 || !exists("did_nsis_syn_inits")
-
- if version < 508
- let did_nsys_syn_inits = 1
- command -nargs=+ HiLink hi link <args>
- else
- command -nargs=+ HiLink hi def link <args>
- endif
-
-
- HiLink nsisInstruction Function
- HiLink nsisComment Comment
- HiLink nsisLocalLabel Label
- HiLink nsisGlobalLabel Label
- HiLink nsisStatement Statement
- HiLink nsisString String
- HiLink nsisBoolean Boolean
- HiLink nsisAttribOptions Constant
- HiLink nsisExecShell Constant
- HiLink nsisFileAttrib Constant
- HiLink nsisMessageBox Constant
- HiLink nsisRegistry Identifier
- HiLink nsisNumber Number
- HiLink nsisError Error
- HiLink nsisUserVar Identifier
- HiLink nsisSysVar Identifier
- HiLink nsisAttribute Type
- HiLink nsisCompiler Type
- HiLink nsisTodo Todo
- HiLink nsisCallback Operator
- " preprocessor commands
- HiLink nsisPreprocSubst PreProc
- HiLink nsisDefine Define
- HiLink nsisMacro Macro
- HiLink nsisPreCondit PreCondit
- HiLink nsisInclude Include
- HiLink nsisSystem PreProc
-
- delcommand HiLink
- endif
-
- let b:current_syntax = "nsis"
-
-