Page 1 of 3

IDEs for LÖVE

Posted: Thu May 03, 2012 2:40 pm
by Naurgul
Hi, I'm new to both Lua and LÖVE so please bear with me. I've spent a few hours reading old threads but couldn't find a satisfactory answer, so here goes:

Can someone give me a summary of what IDEs are available for LÖVE? I'm mostly looking for features like running the game with one click from inside the IDE, debug mode with breakpoints and watches and all that, auto-complete.

More specifically:
  • How possible is it to use Eclipse for this purpose? What features can be made available and how would one go about making them work (detailed instructions are appreciated)?
  • Decoda was mentioned a few times. Is it worth using it as a full-fledged IDE for LÖVE? If I understand the instructions in this thread correctly, all I need to do to make it work is install LÖVE with LuaJIT instead of vanilla LÖVE and fill in the appropriate arguments in the settings in Decoda? (detailed instructions for this are also appreciated).
  • There are a few dedicated IDEs for LÖVE mentioned from time to time. Are these worth it? The threads they were posted in seem abandoned.
  • Does anyone have experience from both sides of the IDE debate? I mean, someone that has tried doing everything in Notepad++ and debugging using only printing on the console AND has also tried working with a fully-fledged IDE. How would you compare the two approaches and which one did you end up sticking with?
Thanks in advance to anyone that can provide some guidance! :megagrin:

Re: IDEs for LÖVE

Posted: Thu May 03, 2012 3:44 pm
by josefnpat
Naurgul wrote:Hi, I'm new to both Lua and LÖVE so please bear with me. I've spent a few hours reading old threads but couldn't find a satisfactory answer, so here goes:

Can someone give me a summary of what IDEs are available for LÖVE? I'm mostly looking for features like running the game with one click from inside the IDE, debug mode with breakpoints and watches and all that, auto-complete.

More specifically:
  • How possible is it to use Eclipse for this purpose? What features can be made available and how would one go about making them work (detailed instructions are appreciated)?
  • Decoda was mentioned a few times. Is it worth using it as a full-fledged IDE for LÖVE? If I understand the instructions in this thread correctly, all I need to do to make it work is install LÖVE with LuaJIT instead of vanilla LÖVE and fill in the appropriate arguments in the settings in Decoda? (detailed instructions for this are also appreciated).
  • There are a few dedicated IDEs for LÖVE mentioned from time to time. Are these worth it? The threads they were posted in seem abandoned.
  • Does anyone have experience from both sides of the IDE debate? I mean, someone that has tried doing everything in Notepad++ and debugging using only printing on the console AND has also tried working with a fully-fledged IDE. How would you compare the two approaches and which one did you end up sticking with?
Thanks in advance to anyone that can provide some guidance! :megagrin:
I have used a lot of IDE's (albeit not for love) and when it comes right down to it, I find that using a code editor and a terminal is just about the strongest way to do it. Not only does it enforce a minimal workflow (which stops you from being coddled with auto completes, and having to run very large overhead IDE software, like eclipse) but it is extremely portable and clean. In a lot of cases, IDE's will add project files that will make a mess of things. Basically, IDE's enforce lazy behavior imo.

But I'm not bashing IDE's. They're good for programmers who are not entirely familiar with the syntax of the language or the warning/errors that come out of the interpreter. In the end, you ought to use what you find yourself most productive with.

My workflow is this:
  • Write some code in gEdit
  • Alt tab to terminal, press up (`love ./game.love`), and enter
  • Test the code I just wrote
  • Kill the window, and return to step 1
Keep in mind I am biased. I run a linux box :)

Re: IDEs for LÖVE

Posted: Thu May 03, 2012 3:52 pm
by kclanc
I am the author of love studio, so I can give a brief summary of its current features. It is currently slightly buggy, but I did use it in a game jam once, and I found it to be quite effective. (Of course, my opinion is a bit biased.)

-Runs on windows 7 and vista computers (as far as I know--it's hard to tell since I only have one computer to test it on)
-Breakpoints, step-over, step-in, resume, break on runtime errors.
-Basic coroutine debugging support (it's undocumented, but calling love.debugger.debugThread(someCoroutine) can be used to show the state of a coroutine)
-locals, globals, and upvalues browsers
-Two panel layout.
-Syntax error highlighting.
-A syntax error panel which lists all syntax errors in a project and prevents the user from running the game when any exist.
-A convenient open-from-project feature, where you open a file by pressing ctrl-o, typing in the name of the file, and pressing enter.

I am hard at work on the following feature:
-Class system aware intellisense. I am unsure how this is going to turn out; it could end up being a flop.

Also, here are features that I would like to add, but don't have time to:
- Documentation.
- Linux version
- A sampling profiler
- Watch window
- interactive lua console

viewtopic.php?f=5&t=7741
EDIT: love studio now supports love 0.8.0

Re: IDEs for LÖVE

Posted: Thu May 03, 2012 4:30 pm
by Robin
Naurgul wrote:
  • There are a few dedicated IDEs for LÖVE mentioned from time to time. Are these worth it? The threads they were posted in seem abandoned.
I wouldn't use them if I were you. At a time, it seemed writing your own LÖVE-themed IDE was some sort of rite of passage for a lot of new folks (and it is always the "newbies" that make those things), all of which eventually end up forgotten and unfinished. (Sorry, kclanc, but it is unlikely that yours will be any different.)

Use what you want to use, text editor or IDE, that's what I'd say. Anything more powerful than Notepad will suffice. It will probably have automatic indentation and syntax highlighting built in. Then either set up a short cut to run your game or keep a terminal window handy.

I don't know how well IDEs with special debugging facilities for Lua play with LÖVE, not much of an IDE user myself.

Re: IDEs for LÖVE

Posted: Thu May 03, 2012 6:50 pm
by Inny
I totally don't recommend this workflow for newbies, but I use GVim. The following two commands, plus regular vimfu, are enough to get me through at least the programming half of whatever it is I do.

Code: Select all

:cd /path/to/my/love/project
:!love .
Of course, I could use vim in a terminal window, but I like the gtk vim better. Drag-and-drop window separators work better for me than trying to remember that 10^w> makes the editing space a litle larger.

Again, not for newbies, unless you're ready to sink a solid week into learning vim and a month into building muscle memory.

Re: IDEs for LÖVE

Posted: Thu May 03, 2012 7:05 pm
by Robin
Inny wrote:Drag-and-drop window separators work better for me than trying to remember that 10^w> makes the editing space a litle larger.
I use vim in the terminal with mouse support. ;)

Re: IDEs for LÖVE

Posted: Thu May 03, 2012 9:42 pm
by Naurgul
Thanks for the information, guys! Any specific help about how exactly to integrate Eclipse or Decoda with LÖVE?

Re: IDEs for LÖVE

Posted: Fri May 04, 2012 8:54 am
by Ellohir
On Win and Linux I use SciTE: https://love2d.org/wiki/Scite

I edit the code in a simple text editor with highlighing, and to try it I go to "main.lua" tab and press F5. For me it's the faster way to work.

Re: IDEs for LÖVE

Posted: Fri May 04, 2012 3:51 pm
by kclanc
Have you looked at the intellij plugin for lua? Someone once posted instructions for setting that IDE up for love development, and its features list looks pretty nice. I don't know whether or not the debugger is compatible with love, though.

Re: IDEs for LÖVE

Posted: Fri May 04, 2012 4:25 pm
by Naurgul
kclanc wrote:Have you looked at the intellij plugin for lua? Someone once posted instructions for setting that IDE up for love development, and its features list looks pretty nice. I don't know whether or not the debugger is compatible with love, though.
Thanks. You are probably referring to this post, aren't you? I guess I could try that as well, although the instructions seem vague to me. Also, the lua plugin for Intellij seems to consider its debugging features as experimental. So, I'd rather avoid that if I can find a more stable alternative.