Archive: New NSIS Front End


New NSIS Front End
Hello all,

Started coding a front end for NSIS this week end and have attached a zip containing a couple of screen shots for some feedback (hopefully positive!). Some of its features are: function picker and help, syntax highlighting, code completion (for example f + Ctrl J expands to Files "" and places the cursor within the quotes), new project wizard and a code snippet libary.

The editor is pretty fully features with optional line numbering, drag and drop etc, etc Also, as you can see from the screen shots, it's Windows XP aware.

Rather than simply shelling out to the script compiler, the compilers output is captured and displayed within the front end for easy reference.

Haven't decided if I like the three panes or whether they should be dockable/closeable windows.

Anyway it's probably about 2/3 complete, haven't spent any time thinking of a decent name for it, currently FNSIS (boring).

Let me know what you think, good, bas or indifferent.

Marc Keeley


zip
The zip file didn't attach.


cool
i like the looks of this, only question is why are you with the blue color scheme on XP?? silver is soo much sexier :cool: seriously though i like the code highlighting cant wait to play with it.


If you ask me, it looks ok on XP even though XP doesn't have DOS. But what will it look like on a 98(se)-ran box??? But it kinda looks like a HTML editor. I would like to have something that is friendly to use and customizable, and this looks like it. But I don't know if this will be used quite as much (this is possibly for those running XP) as Slate Blue (Which would not run well on XP ... At least I think). But it does look good.

-Duane


Was running the toothpaste colour scheme (from TGSoft) for a couple of days, but went back to the blue, not keen on the silver or olive themes. All in all I think I preferred the flat Whistler beta scheme that they dropped.

On a Windows NT/2000/9x box it looks just like a standard app, boring grey! It only uses the XP style controls if you're running XP.

At the moment I'm limiting the code highlighting to comments and section/function begin and ends. I can colour code pretty much everything, keywords, strings, number... but it ends up looking a mess.

One thing I've been adding tonight (next morning!) is parameter completion, for example is you type SetOverwrite and then "." you get a pop-up allowing you to pick the parameter, in this case on/off/try/ifnewer, again saves your fingers and prevents typos. At the moment this only works with functions with a fixed set of parameters but I'll hope to enhance it at a later date to cope with variable parameters such as file names.

Depends on work as to how much time I can time I can spend on it but I'll let you know as soon as it's ready to play with.


sounds great!


lookin' damn nice

I'd feel more at home if compiler output was done the emacs way in a lil' box at the bottom tho :D


I've changed it so that the help and compiler output are in tabs at the bottom of the screen.


Looks like this will be a very popular app. I know I will use it.

Do you have any estimated release date?

runik


Hope so, that's the idea!

Not sure, work is keeping me busy (the paid type) and I keep thinking of bits and pieces I'd like to add. I might be able to get an initial release out by the end of the weekend but it might be later, unless anyone wants me to make a work-in-progress preview available in which case immediately (well tommorrow - Tue).


This looks real cool. I think you should definately do a preview release.


I've uploaded a preview to my web site for anyone who'd interested to have a play with. There's a short readme explaining what's left to be done, things I'm thinking about implementing and explaining a few of its features.

The URL is:

www.techmarc.ndirect.co.uk/fnsis.zip


We have an error. It says:


Exception EDBISAMEngineError in module FNDIS.EXE at 001603D2.
DBISAM Engine Error # 11010 Invalid path or file name for table 'c:\techmarc\fnsis\Functions.DAT'.


-Duane

Looks like you hardcoded the path.

Rob


Sorry, your're right, I hard coded it last night whilst I was testing, also just noticed I'd built the project to FNDIS.exe rather than FNSIS.exe

Either put everything in c:\techmarc\fnsis or download the new copy, same link. The status bar and menu enabling/disabling code is finished in the new version.


Very nice. Very, very nice.

First program to actually make me *want* XP. I'll try to break it now :)

Keep it up and take care,
-=Gonzotek=-


Glad you like it. No need to try too hard to break it at this point as it isn't finished, but when the "official" release is ready try all you like!


idea
how about you read the NSIS inst dir key in the registry and have it be the default open directory as that is where many users keep their scripts


Personally I keep my install scripts with my projects, \project\setup. Under Win2K and XP it remembers where you last opened a file so if you opened one in the NSIS folder next time you do an open that folder will again be displayed.

Might create a option for it though, for you poor people still struggling along with Windows 9x!


cool / not cool
glad to hear that is how it is set up, i would have figured it out myself but when i tried compiling there was a batch file missing so i never ran it twice...


Create a batch file called RunNSIS.BAT in the FNSIS folder containing:

%1 /cd %2 > out


sooo nice, gives me some ideas for slate blue :P
what language is it written in?

super sweet ass goddamn nice work!


It's coded in Delphi, there's a much wider range of components available both free and commercial compared to VB. Plus the language is better IMO and you don't have to worry about ActiveX distribution, version conflicts and the like.

I'm planning on adding additional function "helpers" but need to finish the wizard and test the thing first. Might try and get them working both ways i.e. when you add a function it lets you choose the parameters and then double clicking on the function in the script editor lets you edit the parameters (like the Wise InstallMaster script editor), but one step at a time.

Basically what I think you should end up with is a wizard that takes care of all aspects of a standard install so you really only need to use the script editor for one off fiddly bits. So the wizard will, in addition to the obvious things, needs to be able to write to the registry/ini files, search for existing installs of the app either from the registry, ini file or by performing a file search and let you do full/custom and minimum installs. But probably not in version 1, next week perhaps ;)


perhaps you would like to release FNSIS under the morphedmedia.com "label"? would increase exposure, free hosting, etc. let me know. i like helping fellow developers :)

that goes out to any of the devs. in the forums: have a cool app?

dan green


I have a web site, but it makes sense to centralise stuff, so thanks I'll probably take you up on that offer. Not particularly looking for exposure just liked the idea of the project and hoped others would find it useful.

I think I read that you're developing your application for a school/college project, I suggest that you download some eval version of commercial installation tools and examine how they go about things, unless you have already.

For example Indigo Rose do Setup Factory which is completely gui based, no script window at all. Wise and Installshield provide both depending on the version (they're large downloads so you might just want to browse through the on-line tours unless you have cable/adsl)


your frontend looks very good

i currently don't have to make any installer though, i'll have an eye on it and test it later


Delphi rules.

:D


I agree, I used to mainly code in VB but after Delphi came along and I tried it I never had the slightest desire to switch back. Although I still also code in VB at work but when I do I realise what the VB people are missing! Personally can't see why anyone with the choice would pick VB, Delphi is slightly more difficult to get to grips with, but not by much, but I think it's advantages are so numerous.


perhaps i should make the switch from vb to delphi then eh? i have 5.0 enterprise, never really used it tho.

but, im thinking that if i learn a new language it should be vc++.

what do you think?


VB is an interpreted language. It can't ever be as powerful as C.
If you're willing to teach yourself a new language go with C. It's far more powerful.


I'd definitely recommend you have a go with Delphi, as your proficient in VB the transition should be fairly painless. There's a document that gets install that goes through Delphi from a VB users perspective, might also be on borland.com, not sure.

To get an idea of the range of Delphi 3rd party controls have a look at http://www.torry.net/

You can move to VC++ if you want to make life hard for yourself! I don't know if you've used it but Visual as in Visual Basic, or CBuilder, it isn't.


uh..
as of VB6 VB is completely compiled... no interpreter needed...


Re: uh..

Originally posted by Kreft
as of VB6 VB is completely compiled... no interpreter needed...
Oh. :D

One of the things VB currently lacks is decent error handling, like Delphi's try, except, finally. Soem people complain it isn't truely object orientated but that's not as big a deal as poor error handling.

What I also like about Delphi is that you compile to an .exe no need for supporting files, be they the VB run-time or ActiveX's, although obviously you can use ActiveX's if you want to.

But, as I said before, the sheer number of 3rd party controls out there makes your life so much easier.

I code in VB, C and Delphi and for 99% of projects I choose Delphi. You get people who say use C++, VB and Delphi are rubbish or visa-versa but how many of them have actually proficient in all 3?


can you point me to the components you used to make your gui? like the menus and stuff? looks so cool, i wanna try it.


Oh, don't know about that

Here all the components I've used:


Oh, don't know about that

Here all the components I've used:

Menu and Toolbar: Toolbar2000 (www.jrsoftware.org/) free for non-commercial use. Plus TTBSkin (tbskin.flatstyle2k.com/) freeware, this patches Toolbar200 to provide Office XP and XP style menus and toolbars.

TWinXP (www.tmssoftware.com) freeware, put it on your form and the app becomes WinXP aware (except for group boxes).

BUPack (www.buypin.com)freeware, big pack of components I've used the folder browse and execute and wait components.

DBISAM (www.elevatesoft.com) commercial, database engine that compiles in to the .exe

Dream Memo (www.www.dream-com.com) commercial, Memo with syntax highligting, code templates and more.

Haven't used this in this project but XPMenu (http://www.shagrouni.com) freeware if you place it on your form the menu and toolbar buttons take on the Office XP look.

Also if you're interested in the XP side have a look at KsDev.com and www.eldos.org (although that site seems to be currently downs).

As I said have a look on the Torry site as well, there's piles of stuff plenty of it freeware.

That should keep you busy for a bit!


I've used VB up until now, but efficient it isn't. If I had time, I'd like to learn to make good stuff with VC++. Although it's far more difficult to learn - it's damn good at making efficient stuff, which VB definitely isn't, and there's the whole VB runtimes thing. Saying that, if you want to knock out a fairly simple program quickly and easily, and you don't care too much how it works internally, then VB is best for it. I've never tried Delphi so I don't know what to say there. Just now all my time's being spent working with ADA, not through choice, but so I can pass my exams. I don't think I'll ever make anything useful with it though, unless I ever feel like making my own missile defence system. Can't wait to get this year over and start learning a language that will actually be useful to me.

Anyway - sorry for getting even further off topic here, enough of this ranting.

Just had a play with fnsis, and it is beautiful. I love it. Most recently used stuff in the file menu would be nice, as would a build button on the toolbar (I know I’ve already got F5 on my keyboard, but it just doesn't seem right without it ;-) ), but I imagine that's all stuff your going to implement that later on anyway.

cheers


As you say VB is good for knocking out prototypes quickly, Delphi is close behind and VC++ way in the distance!

The version I have here has MRU's and also the build button on the toolbar. I'm only managing to spend odd bits of time on it so far this week due to work but hopefully will be able to do more at the weekend.


thanks for the links, i'll have to start on delphi :)