My Work on a Lua IDE
4 Attachment(s)
I know this may not be for everyone, but I have been working on a Lua IDE within IntelliJ.
If you would like to try it out, there is a free version of IntelliJ 10: http://www.jetbrains.com/idea/free_java_ide.html There are loads of pictures here on the wiki page: http://bitbucket.org/sylvanaar2/lua-for-idea/wiki/Home ohloh page: http://www.ohloh.net/p/idlua "how to" screencast showing how to set up the WOW APIs and FrameXML libraries for completions and documentation. http://www.screencast.com/t/78ltrNMsC7 Here's an (incomplete) feature list 1. Basic Completions 2. Quick Documentation with Multiple documentation providers 3. Resolving Globals in project and libraries 4. Custom API Support including custom function signatures (Experimental) 5. Function Information via Quickhelp 6. Lua Standard Library Information via Quickhelp (ctrl-Q) 7. Hilighting of Upvalues and Fields 8. Goto Symbol 9. Safe Delete (Experimental) 10. Rename Identifier (Experimental) 11. JavaHelp For Lua 5.1 12. Execution in the Kahlua interpreter 13. Go to definition 14. find usages 15. Code formatting 16. Keyword completion 17. 1 quickfix 18. 5 code intentions 19. 6 code inspection 20. Highlighting global vs local variables 21. Script execution and run configurations 22. Kahlua interpreter window for interactive script execution (repl) 23. Comes with an embedded Lua compiler written in Java (Kahlua) 24. Structure view 25. Syntax checking 26. Syntax highlighting - including proper handling of extended syntax comments and quotes 27. Customizable highlighting colors 28. Code folding for code blocks and comments 29. Brace Matching for do blocks, long strings and comments, and (, { , [ 30. Minor feature: comment in/out. To install the Lua plugin, use the plugin manager inside IntelliJ To do so, choose File/Settings/Plugins, and Locate the Lua plugin and right click it and choose install. I am using it for my plugin development now. The global vs local highlighting is very handy! Here are some screencasts so you can see it in action: Unbalanced Assignment Quickfix Custom APIs and Parameter Info Code Formatter Lua API Documentation Another example of how its being used |
Gj, I was trying to find some editor that supports LUA as in syntax highlight and also smart "find usages" and local/global highlight, e.g. Would love to be able to spot errors before compiling, like parsing the code in the editor and underlining problems in red or something -guess this is for the future. ;)
|
updated to version 0.8
experimental support for "find usages" and "go to definition" - mind you *alot* of cases don't work, but its a definite start |
Quote:
"find usages" support has just been added in an experimental capacity (i.e it only partially works). |
updated to 0.8.1 - identifier resolution fixes
try ctrl-clicking various identifiers (currently only works with locals) |
Updated to 0.8.2 - support for for loop identifiers
|
I've never used IntelliJ before so I know nothing about it.
Is there a way to have it show a list of my own functions sorted by the filename they're in ? |
Quote:
Give it a try...its pretty easy to get up and running. |
0.8.4 support for the vexing
Code:
local a; local a=a |
Quote:
supposed to be listed in the structure window but for me this was empty. I had to delete the project and restart and then it showed up :) Thanks for your help :D |
Updated the feature list.
|
downloading now, i need a better IDE than SciTE one that I found somewhere here on WoWI, I hate the window management when I need more than file up at the same time. so here's hoping :)
|
Quote:
|
i was looking through your screen shots, and it had an instruction to include the Lua directory when creating a project... I dont have Lua on my computer, do I need that library?
|
Quote:
With Kahlua as the SDK, your code will execute in the embedded interpreter (assuming you even try to run it) Oh, if you are on IRC, i can help you set up - its actually pretty easy. |
alrighty, well ill definitely give it a go. I'll have to figure out to make the indentions work how I like...
like if im typing on a line thats 4 spaces out then hit enter, the cursor is 4 spaces out, but i usually like to double tap enter when breaking things up like if 1 == 1 then someLogic someStuff someMoreButDifferentStuff end but when i double tap enter, it sets the cursor at the first column, instead of the 4th... into the options i go :) |
well, I have to code for all the text alignment and formatting as well. so there may be cases where it doesn't behave optimally.
if you can give steps to reproduce and expected behavior, i can see what i can do. |
well lets just say this
Code:
function myAddonFrame_OnEvent(self, event, ...) right now what im experimenting in the IDE is if i type like this Code:
function myAddonFrame_OnEvent(self, event, ...) for further attempts at clarification, say my cursor is on row 2 column 4 and I hit enter, my cursor is in row 3 column 4. now if I hit enter again without typing anything, im in row 4 column 1. so now to keep the same indention, i have to Tab or space out to get to row 4 column 4. EDIT:: --- Actually, ive been noticing now, alot of the times it works as expected, and only occasionally does it do as I am describing above... probably user error :) |
I found the error I think. I'll wait for some more feedback from you before pushing out a new version.
|
Went ahead an pushed a new version. You can update within the ide.
The new version is 0.8.17 |
All times are GMT -6. The time now is 02:56 PM. |
vBulletin © 2024, Jelsoft Enterprises Ltd
© 2004 - 2022 MMOUI