Welcome to Epoch Mod Community

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more!

This message will be removed once you have signed in.

nevada_scout

Dash - SQF Editor

27 posts in this topic

Introducing "Dash" - The most advanced SQF editor for Arma ever built.

 

Features:

Dash has many features that aim to make writing SQF code as painless as possible:

- It has full support + syntax highlighting for SQF and SQM files, with the other file types (.ext, .cpp, etc) coming soon.

- It features the "ArmaSense" code-completion engine that suggests Arma script commands and user defined variables as you are typing.

- You can fold code inside curly braces, or create your own folding areas using "//#region" and "//#endregion" to hide code between the two comments.

 

Planned Features:

- Enhanced "ArmaSense" code-completion to suggest user variables that are in scope and defined in any file in the project

- SQF Lexer/Parser to provide Microsoft Word or Visual Studio-style wavy red underlines underneath code that does not compile -- without the need to run your code through a compiler

- RPT file analyser that can link you straight to the code that caused the error you're looking at

- Work directly inside PBO files without needing to pack/unpack them (great for server admins working on their mission/server pbos)

- Custom themes to allow you to change the syntax highlighting colours as you want

 

 

 

Screenshots:

 

dash-for-website.png

 

 

An example of the "ArmaSense" code-completion engine:

 

armasense.gif

 

 

 

In Summary:

 

Dash is being actively developed by myself. It's written in C# and the source code is openly available on GitHub, along with the issue tracker (please, feel free to lend a hand! :) )

 

The full website for the project is here: http://dash.nevadascout.com which includes a download for the installer for the latest version (v1.2 at the time of writing).

 

I'm interested to see what you guys think of this, let me know below! :)

GZA, second_coming, mgm and 2 others like this

Share this post


Link to post
Share on other sites

I'm really liking this man! brilliant idea, this will help so many people learn to code better, keep it up! I can see this being used as my daily tool, only thing I hav a issue with right now is trying to open files directly from explorer doesn't open them, it just opens dash itself not the file other than that no flaws! I can see me donating to this at some point in the future!

Share this post


Link to post
Share on other sites

Thanks man! :)

 

only thing I have a issue with right now is trying to open files directly from explorer doesn't open them, it just opens dash itself not the file other than that no flaws!

 

Ooh, that's a good point! I've added a new issue for this. Thanks for the feedback!

KamikazeXeX likes this

Share this post


Link to post
Share on other sites

Thanks man! :)

 

 

Ooh, that's a good point! I've added a new issue for this. Thanks for the feedback!

Not a problem! Its about time we had a dedicated scripting tool for ArmA related work, NP++ has served me well for the last 2 years! I assume this will also have all the updated script commands for ArmA 3 also?

Share this post


Link to post
Share on other sites

Yep, it has everything I could pull off the Wiki so all the new commands from Arma 3 should be in there. If you find something that's not there, or has the wrong syntax highlighting, let me know!

 

I always used Notepad++, but got annoyed when I'd make silly errors like missing a semi-colon or naming a variable wrong -- and only find out 10 minutes later when I've finally loaded into Arma...

 

"ArmaSense" should help with the latter as it suggests variables and auto-completes their names for you, and the built-in SQF compiler I've got planned for 2.0 will (hopefully) eliminate the former.

 

It'll be awesome when I get the Visual Studio-style red wavy underlines working. That's what I'm looking forward to most!

Share this post


Link to post
Share on other sites

I always used Notepad++, but got annoyed when I'd make silly errors like missing a semi-colon or naming a variable wrong -- and only find out 10 minutes later when I've finally loaded into Arma...

Funny you should say that, this thread was actually suggested just now in a skype group "anyone tried this yet" my response was simply "Nope, but i'm trying it, the amount of times I forget a ' or ; xD"

Aside from that, awesome! good to hear, it'll save me a lot of time looking things up especially with the F12 lookup function, I do love that, if I knew anything more about C# I'd lend you a hand but I've never been any good with anything aside from ArmA but yes, this is a tool a lot of developers need in their tool kits! So eager to see how it develops on!

Brian Soanes and nevada_scout like this

Share this post


Link to post
Share on other sites

I've gotten a lot of great feedback on the Reddit post for it, as well as several new bug reports on GitHub.

 

I'm keen to make Dash the best possible tool for editing SQF, so if you like it now, you'll love what I've got planned for the future ;)

Share this post


Link to post
Share on other sites

I've gotten a lot of great feedback on the Reddit post for it, as well as several new bug reports on GitHub.

 

I'm keen to make Dash the best possible tool for editing SQF, so if you like it now, you'll love what I've got planned for the future ;)

Looks great dude, loving your work :D

Share this post


Link to post
Share on other sites

Been trying it out this morning.  Can't wait to use the compiler!!  Where has this been all my Arma life?!?!    :D

Share this post


Link to post
Share on other sites

Been trying it out this morning.  Can't wait to use the compiler!!  Where has this been all my Arma life?!?!    :D

 

Glad you like it! I can't wait for the compiler either :D

 

If you've got any suggestions, let me know :)

Share this post


Link to post
Share on other sites

Looks promising.  

 

Does it allow for auto update for files (i.e. it will continually load logfiles that are being updated) with the option to pause updating ?.  That would be good to have.  Notepad++ does it but it could be better implemented.

 

Also, the ability to change the highlighting colours from within the program would be good.  Light green on a white background is not so tired eye friendly for example.

 

Very interested in the additional feature so will keep a close eye on the progress.

 

Would also be good to pick out syntax errors like a ");" on a line on its own (ie mistype of "};" ) and things like that that can take quite a while and a lot of squinting to discover.  A parse for possible syntax errors option (sorta like a spell checker) may be a nice way of doing it.  

Share this post


Link to post
Share on other sites

Looks promising.  

 

Does it allow for auto update for files (i.e. it will continually load logfiles that are being updated) with the option to pause updating ?.  That would be good to have.  Notepad++ does it but it could be better implemented.

 

Also, the ability to change the highlighting colours from within the program would be good.  Light green on a white background is not so tired eye friendly for example.

 

Very interested in the additional feature so will keep a close eye on the progress.

 

Would also be good to pick out syntax errors like a ");" on a line on its own (ie mistype of "};" ) and things like that that can take quite a while and a lot of squinting to discover.  A parse for possible syntax errors option (sorta like a spell checker) may be a nice way of doing it.

For log viewing I recommend glogg:

http://glogg.bonnefon.org/

Share this post


Link to post
Share on other sites

Looks promising.  

 

Does it allow for auto update for files (i.e. it will continually load logfiles that are being updated) with the option to pause updating ?.  That would be good to have.  Notepad++ does it but it could be better implemented.

 

Also, the ability to change the highlighting colours from within the program would be good.  Light green on a white background is not so tired eye friendly for example.

 

Very interested in the additional feature so will keep a close eye on the progress.

 

Would also be good to pick out syntax errors like a ");" on a line on its own (ie mistype of "};" ) and things like that that can take quite a while and a lot of squinting to discover.  A parse for possible syntax errors option (sorta like a spell checker) may be a nice way of doing it.  

 

Currently, it doesn't do any auto-updating for files that are changed outside the editor, however for log files, I've been talking to someone on Reddit who suggested implementing an RPT analyser that will run in real time as you're testing your script in Arma.

 

You'll be able to see what's going on as it happens, and go directly to the code causing any errors.

 

Agreed - custom syntax highlighting themes are on the roadmap to come fairly soon :)

 

And yep, the SQF compiler will pick up things like this as you're typing. It'll get highlighted with a red wavy underline and will refuse to compile :)

 

More details here: https://github.com/nevadascout/dash-core/issues/71

Darth_Rogue likes this

Share this post


Link to post
Share on other sites

A modern squint - this is what we sorely needed, hopefully will be a long-term supported project.

 

I have two suggestions

 

1. I would recommend focusing limited development time on core Arma specific/SQF-specific features in the first instance to specialize and excel in there, rather than branching out to side action and possibly being mediocre in many areas.

 

Such as real-time log display. Please note that we can easily get log displaying solution elsewhere, such as (cygwin+tail) or (glogg) and so on.

What we cannot get elsewhere is modern SQF specific code highlighting, correction, IntelliSense completion [which you nicely named - ArmaSense good one!] etc.

 

By the way poster above me - not sure if you are aware but there is already squint in this field which does a great job for Arma 2 already.

It is not updated for Arma 3 and apparently project died in an uninterested developer's hard disk drive, it's great that this one is on GitHub so it hopefully can be picked by another if the current dev lose interest or become unavailable for any reason.

 

2. Please clarify what LICENSE is this under. It is not immediately clear and keyword search in this tread or GitHub does not return a hit for 'license'. I certainly hope it is free software under GPL!

 

Keep it up! :)

Share this post


Link to post
Share on other sites

I intend to develop this long term, and indeed - the source code is available so other people are free to fork it or submit pull requests and I'm happy to merge them in.

 

The SQF compiler and error checker are due for version 2.0, which is a higher priority than the RPT analyser. I want to make this the best possible editor for SQF that it can be, so don't worry about that side of things.

 

There will be a few updates before 2.0 hits which focus on stability, but 2.0 will be the update that has the major enhancements as far as writing SQF goes.

 

 

By the way poster above me

 

I assume you mean me? I'm the developer of Dash :)

 

 

I honestly had given no thought in regards of licences. I'll have a think and publish one later on.

 

Dash is free software that is open source. The only thing I would have an issue with is, if someone forked dash then started selling it. Anything else is (probably) okay by me.

Share this post


Link to post
Share on other sites

I intend to develop this long term, and indeed - the source code is available so other people are free to fork it or submit pull requests and I'm happy to merge them in.

 

The SQF compiler and error checker are due for version 2.0, which is a higher priority than the RPT analyser. I want to make this the best possible editor for SQF that it can be, so don't worry about that side of things.

 

There will be a few updates before 2.0 hits which focus on stability, but 2.0 will be the update that has the major enhancements as far as writing SQF goes.

 

 

 

I assume you mean me? I'm the developer of Dash :)

 

 

I honestly had given no thought in regards of licences. I'll have a think and publish one later on.

 

Dash is free software that is open source. The only thing I would have an issue with is, if someone forked dash then started selling it. Anything else is (probably) okay by me.

Sorry went shorthand there.

I should not have said "the poster above me", it should have been "one of the posters above"...

Specifically I was referring to the post I quoted below.

My point is there already is a dedicated scripting tool for Arma (squint) - it is just out of date and not very productive as of March 2015. I still do use it though. It knows about 70% of arma structures. It can tell when you leave a { open and so on. It *is* an arma dedicated scripting tool. Thanks to axeman for telling me about it.

 

Not a problem! Its about time we had a dedicated scripting tool for ArmA related work, NP++ has served me well for the last 2 years! I assume this will also have all the updated script commands for ArmA 3 also?

 

 

RE Licensing, I suggest you move quickly as without license your code is out to be stolen. It doesn't need to be a difficult choice, there's a site for that :)

http://choosealicense.com/

 

If you put it under GPL it will be free software and people will be at liberty to do whatever they want with it which is beneficial to all in the end IMHO, I suggest you go with GPL.

Share this post


Link to post
Share on other sites

My point is there already is a dedicated scripting tool for Arma (squint) - it is just out of date and not very productive as of March 2015. I still do use it though. It knows about 70% of arma structures. It can tell when you leave a { open and so on. It *is* an arma dedicated scripting tool. Thanks to axeman for telling me about it.

I was totally aware of squint but I've never got on with it, for the simple reason it is outdated and has never really helped me out long term, I was suggested to use it a long time ago but again, it had never really helped much, NP++ was overall easier to use and looks much nicer

Share this post


Link to post
Share on other sites

is it possible to add function to parse whole code in file?

 

seems that feature is missing in other editors

Share this post


Link to post
Share on other sites

Nice work, will definitely be giving it a try.

 

It'll be great to hear your feedback!

is it possible to add function to parse whole code in file?

 

seems that feature is missing in other editors

Yep! This is the biggest feature we've got planned for Dash. Should be arriving in the 2.0 update in a few months time

Share this post


Link to post
Share on other sites

Another question from me :) .  Will you be adding the functionality to parse classes as well (cfgmusic / cfgVehicles etc) from config.cpp / XXXXX.hpp and possibly even config.bin files (presumabily after de bin'ing them with cfgconvert in the background) ?.

 

That would be pretty helpful as class defs are not as well known as common sqf script commands.

SchwEde likes this

Share this post


Link to post
Share on other sites

Whats happened with the project bud? No github commits in 2 months :( I was looking forward to active development

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Latest Donations

  • Donation Box

    Please donate to support the community.
    We appreciate all donations!
  • Advertisement
  • Supporters
  • Advertisement
  • Forum Statistics

    • Total Topics
      26316
    • Total Posts
      242907
  • Member Statistics

    • Total Members
      29361
    • Most Online
      1497

    Newest Member
    loos3r
    Joined