Archive: Vim Syntax Highlighting for NSIS 2.0+


Vim Syntax Highlighting for NSIS 2.0+
I just finished a syntax highlighting file for VIM, supporting NSIS 2.0+, since there wasn't one available on vim.sf.net. You can download it here. If you find something that I've missed, things you think should be changed, or, find it useful at all, please let me know.

-Scott


DirVerify, GetInstDirError, Nop, LangString, UninstPage, UninstIcon, SetBrandingImage, the /a switch for File, the /e switch for SubSection, the /o switch for Section, $PLUGINSDIR, !ifmacrodef, !ifmacrondef, IDD_LICENSE_FSRB, IDD_LICENSE_FSCB, the /FINAL switch for SetCompressor and the /SD switch for MessageBox are missing. InitPluginsDir, IfSilent, CreateFont and SetCtlColors are not attributes, they're commands. EnabledBitmap and DisabledBitmap are obselete. LoadLanguageFile is an instruction, it's... hmm... atrribute? Uninstaller now has un.onMouseOverSection and un.onSelChange too. There is no un.onInstSuccess and un.onInstFailed, it's un.onUninstSuccess and un.onUninstFailed. It might also be worth getting ${__FILE__}, ${__LINE__}, ${__DATE__}, ${__TIME__} and ${__TIMESTAMP__} in there.


Originally posted by kichik
DirVerify, GetInstDirError, Nop, LangString, UninstPage, UninstIcon, SetBrandingImage, the /a switch for File, the /e switch for SubSection, the /o switch for Section, $PLUGINSDIR, !ifmacrodef, !ifmacrondef, IDD_LICENSE_FSRB, IDD_LICENSE_FSCB, the /FINAL switch for SetCompressor and the /SD switch for MessageBox are missing.
DirVerify, UninstPage, GetInstDirError.
I couldn't find these in the documentation. Do they really exist? The rest have been added.

Originally posted by kichik

InitPluginsDir, IfSilent, CreateFont and SetCtlColors are not attributes, they're commands. EnabledBitmap and DisabledBitmap are obselete. LoadLanguageFile is an instruction, it's... hmm... atrribute? Uninstaller now has un.onMouseOverSection and un.onSelChange too. There is no un.onInstSuccess and un.onInstFailed, it's un.onUninstSuccess and un.onUninstFailed.
Changed.
Originally posted by kichik

It might also be worth getting ${__FILE__}, ${__LINE__}, ${__DATE__}, ${__TIME__} and ${__TIMESTAMP__} in there.
Those are covered by the highlighting for symbols. Unless you think they should be something else? The new version is now available at the same location.

-Scott

They all exist. UninstPage is included in beta 4 (you can find it in the documentation), the others have not yet been documented.


Alright. Added, and submitted.


Originally posted by sdbarker
Those are covered by the highlighting for symbols. Unless you think they should be something else? The new version is now available at the same location.
No, symbols is a good place for those. I just thought you might want to highlight them differently.