Archive: Listing NSIS Variables


Listing NSIS Variables
kichik or anyone - is it possible to have all variables used by NSIS listed cathegorically?
I used NSIS readme before NSIS 2.0 (because it had tables and I could select all variables (but anyway, I like the current readme better :))
example list (NSIS 1.9x hightlighter):

OutFile Name Caption SubCaption BrandingText Icon

and so on with one space between.
Any ideas?
BTW, I am making highlighter for ConTEXT (www.fixedsys.com/context) for NSIS2, so I ask.


Hey, if and when you compile the full list, attach it here so I can make a worfile extension for ultraedit please =)
AS for the list itself, I have some leftover stuff from 1.97... its not complete, but its a start.

[edited by kichik, please attach large scripts/texts. attached below :down:]


Use makensis.exe /CMDHELP (there is an example in nsExec that does that). You can also use tokens.cpp from Source directory.


Originally posted by kichik
Use makensis.exe /CMDHELP (there is an example in nsExec that does that). You can also use tokens.cpp from Source directory.
Is that wordfile for NSIS2?

no, its for 1.97.
and it isnt complete =)


I'll use that list to update my syntax file for vim (http://vim.sf.net) when I get back from my parent's place for the holidays. If there's any vim users present, let me know, and I'll post the NSIS 2.0 compatible version here.

-Scott


Originally posted by kichik
Use makensis.exe /CMDHELP (there is an example in nsExec that does that). You can also use tokens.cpp from Source directory.
kichik is only non-flaming always answering to stupid questions mod!
Congrats! This thing works!
Highlighter will be done soon. Thank you, kichik!

Thanks, glad I could help :D


Here it is! Nearly ready, someone please check... ModernUI macro support soon ;)


You forgot `` and '' as string quotes.


So, I need to add ` ' " ?
Well, I have added " - note the StringBegChar in highlighter, not sure if .chl highlighter format supports more... will be done.
Anything else? Some variable in wrong group?


SetAutoClose SetBrandingImage SetDetailsView SetDetailsPrint SetErrors SetRebootFlag SetShellVarContext SetStaticBkColor SetWindowLong ShowWindow InitPluginsDir

Those should be in the second group, not the first.

ReserveFile LangString LangStringUP Page

Those should be in the first group, not the second.


Next version (2.1)

Changelog:
!rearranged some commands (1st->2nd, 2nd->1st group)
+ModernUI support (including language files)
+NSH files support


Suggestions?
kichik, you can download ConTEXT from www.fixedsys.com/context - try it, it is very good! ;)

I am perfectly fine with my EditPlus. Besides, according to the FAQ it doesn't look so complete... Can't word wrap, can't combine PHP and HTML in one file, bugs with large files, can't edit files with zeros in them, and no tabs.


Well, ConTEXT 1.0 is in works, rewritten from scratch, closed beta will happen soon. I wanted you to download ConTEXT to check the NSIS highlighter, not to use it :) Anyway, is highlighiter good now, because I am going to port it to AnyEdit (it uses NSIS;)) when I have keywords properly arranged.
Is that EditPlus good? Does it support NSIS?


I like EditPlus, it's very customizable and is easy to use. It's not free though. I bought it before I even knew C, not to mention NSIS :D

I have written a syntax file for it and sent it to the author a long time ago. The file he has on his website is very old. I have a newer addition on my computer but it changes so rapidly so I don't send it to him. I will send it when NSIS 2 final is out.

If you took all of the words from NSIS the way I told you to then your syntax file is complete. I told EditPlus to treat your file as a NSIS script and all of the words were in the right place.


Thanks for your help kichik! ;) I will port it to AnyEdit soon.


excellent! this will totally help me :)


Attached is the UltraEdit world file I created using the CHL file for a refrence.. It should be updated to 2.0b2 and all that jazz.. Hope this helps someone out there ;)


I am in a process of making a highlighter for another editor (syn Text editor).

This editor has three grops of words for highlighting (and I need exactly three, but I am not exactly sure how to divide them correctly):
1. Objects
2. Constants
3. Keywords

In my previous NSIS highlighter there were three groups of keywords:
a) AddBrandingImage AddSize AutoCloseWindow BGGradient (etc.)
b) Abort BringToFront Call CallInstDLL ClearErrors (etc.)
c) SW_SHOWNORMAL SW_SHOWMAXIMIZED SW_SHOWMINIMIZED (etc.)

Any suggestions of how to put them?


I'd call your sets (a) Properties (b) Commands/Instructions (at a stretch Keywords) (c) Constants. So you've kinda got two of your types covered, but "objects" ... hmmm NSIS doesn't have anything like that except maybe plugin calls (e.g. nsExec::Exec,nsExec::ExecToLog and nsExec::ExecToStack could be seen as three methods on an object called nsExec).


Originally posted by Sunjammer
I'd call your sets (a) Properties (b) Commands/Instructions (at a stretch Keywords) (c) Constants. So you've kinda got two of your types covered, but "objects" ... hmmm NSIS doesn't have anything like that except maybe plugin calls (e.g. nsExec::Exec,nsExec::ExecToLog and nsExec::ExecToStack could be seen as three methods on an object called nsExec).
That would bring me to (let's say):
1. a)
2. c)
3. b)

I know it's not 100% accurate, but it's better than combining both keywords, right? :)

Textpad
Q: i didnt found "PluginDir" (line 44) - this is not descriven in any helpfile. From where did you get it?

BTW this is for TEXTPAD 4 (or higher) (updated this minute)

#
the new MUI strings are missing

MUI_PAGE_WELCOME
MUI_PAGE_COMPONENTS
MUI_COMPONENTSPAGE_SMALLDESC
MUI_PAGE_INSTFILES
MUI_PAGE_FINISH
MUI_FINISHPAGE_SHOWREADME
MUI_ABORTWARNING
MUI_UNPAGE_CONFIRM
MUI_UNPAGE_INSTFILES
MUI_HEADERBITMAP
MUI_BRANDINGTEXT
MUI_LANGUAGE
MUI_INNERDIALOG_TEXT


(not complete)

Maybe it should be InitPluginsDir

http://nsis.sourceforge.net/Docs/Chapter4.html#4.9.7.1


>> InitPluginsDir

No, this is already on the list


Re: Textpad

Originally posted by Brummelchen
Q: i didnt found "PluginDir" (line 44) - this is not descriven in any helpfile. From where did you get it?
I am pretty sure it was present in 2.0b1, by the time I was working on that highlighter.

I think it got changed to "!AddPluginDir", but I am not sure - remove it for now.

How about dim? I don't understand what it really means.

Seems like I will have to do Modern UI strings from scratch (and verify the other ones).

Kichik, Joost and the others are working too fast for us, aren't they? ;)

Here is updated highlighter (this time for syn Text editor).

[Constants] aren't complete; [Objects] and [Keywords] are. Might be useful to someone, so I am posting it here.