Game Development Community

TorqueWrench - a cross-platform opensource TorqueScript IDE

by Jeff Peck · in Torque Game Engine · 01/01/2003 (11:42 am) · 19 replies

Hello,

As some of you may have heard, I've been developing a Python based IDE for Torque using the cross-platform language Python. My reasons for this are twofold, the first (and foremost) is because I'm going to be using py quite a bit in the near future for work related purposes and I wanted a project to wrap my head around it. Secondly, I felt that Tribal IDE was no longer updated and that Torque was lacking a high-quality cross-platform IDE. So, I decided to build one myself, which is the reason for this post.

So far, the basic features you'd expect to see in an IDE (project tree, syntax highlighting, find in files, find and replace etc.) are all in and working, as well as a few more advanced features (collapsable code and a telnet interface). Future planned features include breakpoints and other debugging features.

The reason I put up this post is twofold. 1) I wanted to alert everyone to the existance of this project. and 2) I would like to have people add a list of features (and preferably an example program or even a screenshot if it's applicable) they would like to see in this IDE.

- Jeff Peck AKA Sanguinus

#1
01/01/2003 (12:31 pm)
wishlist:

- bookmarks

- auto comment/remove comment

- macros

- multiple copy/paste buffers
#2
01/01/2003 (12:48 pm)
Some features I'd like to see:

- Support for debugging into TGEPython. I have no idea if this requires extensive changes to the engine, or if it's already working, but it would be immensely useful to be able to debug both .cs and python.

- Having the ability to dump a variable into the debugger. For instance, say I have an instance of AIPlayer. It would be useful if I could see all the properties in it in a nice tree view. Certainly more pleasant than doing it with watches or dump()...

- A classview would be invaluable. Being able to locate functions/classes quickly is very useful. Along with this, intellisense would be great, too... But if it comes down to one or the other, I would prefer a solid classview over a solid intellisense.

- Ability to automate some actions. This might just be shelling out to a batch file, but having the ability to hit a menu item that says, "Package distribution" or "Clean DSOs" or what have you, would be really useful.

- Full feature search and replace. Including regexes would be useful.

One of my all-time favorite text editors is TextPad. www.textpad.com/ is the site... Windows only, but it's still marvelous. (My other favorite text editor is vi :-P) Please lift any features you can from TextPad, especially the more basic ones (ie... I don't care so much about having extensive java support, but having similar context menu capabilities would be useful.)

Anyway... I'm really glad to hear that someone is replacing TribalIDE. :) If you need a tester, or want someone to review your code, or anything else, please feel free to contact me... I'd love to help in any way possible :)
#3
01/01/2003 (4:12 pm)
Slight snag... I need a lexer written in this format - http://www.scintilla.org/Lexer.txt - for TorqueScript if you guys want Syntax Highlighting. Anyone want to take up the challenge? I would, but I have no clue what I'm doing ;-)

~ Sang
#4
01/01/2003 (10:44 pm)
And don't forget there is JEdit, too... ;)
www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=2981
:D
#5
01/20/2005 (9:56 pm)
Any more news on this?
#6
01/21/2005 (1:58 am)
I would almost undoubtedly come under fire for this, but any editor I'd use needs to have, at minimum, vi keybindings, with vi-like searching & replacing.

Gary (-;
#7
01/21/2005 (2:22 am)
Vi? God, I remember when that was the only text editor people used, I cant even remember the keybinding though..... jed or joe or ae.

Anyways, I would like to see an editor that can diff and patch. That would be really usefull, especially when it comes time to upgrade the engine.

Cheers.
#8
01/21/2005 (2:49 am)
I use JEdit and thanks to that god amongst men, Stefan, who I who a debt of gratitude for his JEdit work, I'll never use anything else but then again, that's just me. ;)

- Melv.
#9
01/21/2005 (2:51 am)
Did I mention JEdit? ;)

- Melv.
#10
01/21/2005 (3:05 am)
I'm still working on my editor. But it's windows only. It has Intellisense, autocomplete, class view, bookmarks, full search etc..
It keeps track of all objects and methods created in the script for autocomple purposes.

One of the coolest things I've been messing with is a tree to show how each script calles each script. So you can get a better visual understanding of where things are being called from and why.

Edit: Not trying to steal anyones thunder. Since the post is 2 years old I figured I would just throw that out there.

If anyone can think of something they would want to see, please email me at the address on file.
#11
01/21/2005 (3:10 am)
What they'd want to see? A Linux port :-)

Gary (-;
#12
01/21/2005 (3:20 am)
That probably will happen eventually. I'm creating something that I want to use first. And since I don't use lin/unix at home, it's not really gonna happen right away

. If anyone wants to take it on for linux or apple they're more then welcome to it.
#13
01/21/2005 (6:37 am)
Charlie:
Would you mind release a beta version for testing now? Just wondering.
#14
01/21/2005 (9:24 am)
What have I done, I brought a two year old thread back to life! It is a monster, ahhh!
#15
01/21/2005 (9:38 am)
Might I add a simple request? One thing that I have found that helps me, and keeps me on task, is a task list. I use eclipse for scripting myself, and I love the task-list
#16
02/05/2005 (10:05 pm)
I'll look into task lists.

As far as beta testing, I'm pretty far from it. I'll let you know when I get there
EDIT: Just to clarify a couple of things. I have a lot of things done and a lot of things that break things and fix things that they weren't supposed to fix.

The main problem that I am attacking right now is a problem with the intellisense and autocomplete knowing when and what to populate. In other words when I'm in a datablock It needs to know to only populate functions and stuff according to what the datablock or object needs and leaving everything else.
It sounds simple enough but it's not. Every time you add a carriage return it adds lines between the beginning and ending of said object or block and that's been a problem to keep track of.

What I'm going to do is start a post within the next week or two stating what's there, what's needed and what people would like to see...

I don't like hijacking other people's posts... No matter how old it is:
#17
02/07/2005 (5:37 am)
Chris,
Could you shoot me off an email and say what exactly it is your looking for in a task list. The ones I've seen left me wanting so I would like a fresh idea of what would be good.

BTW I tried to email you at the address on file but it got returned to me
#18
02/10/2005 (10:32 am)
I've unfortunately since dropped the project due to life and getting frustrated with the code for the telnet interface. I might be interested in reviving it since I am currently not involved with any other projects.

I just wanted to toss out, it sounds like different people are looking for different things in the editor... it seems to me what is needed is an editor with an easy-to-use extension system, that way people could implement what they want and share it as an extension. If everyone's favorite feature gets added, I see a lot of feature bloat in the near future.

Just my two cents,
JP
#19
02/10/2005 (3:35 pm)
When I decided that I wanted to make an editor, it was because I wanted something that A) I wanted B) something Torque specific that people learning woiuld be able to use and understand more easily.

Although It has been hard, I still plan on keeping it up. No matter how long it takes me.