ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   General Authoring Discussion (https://www.esoui.com/forums/forumdisplay.php?f=174)
-   -   Addon Development general questions (https://www.esoui.com/forums/showthread.php?t=1797)

CrazyNatey 06/16/14 12:32 PM

Addon Development general questions
 
I'm looking on breaking into the addon development, but had some questions.

Which IDE is most popularly used to develop ESO Addons?
I can see that ESOUI integrates with Github, but also has it's own SVN Repository. Which Repository is preferred?

ingeniousclown 06/16/14 12:37 PM

No IDEs, just Sublime Text, Notepad++, vim, whatever your favorite text editor is. Sublime Text is amazing though.

katkat42 06/16/14 03:23 PM

ISTR that someone had done an IntelliJ plug-in for lua, but that seems to me like overkill for developing in an environment that's mostly specialized API. (I think the person who did it used IntelliJ professionally and didn't want to switch.) Most of Clown's suggestions above do syntax highlighting and paren matching, though not function or variable name auto-complete. And since Clown mentioned vim, I feel obligated to add EMACS to the list. :p :D

As for version control repos, I think the preference is left up to the add-on developer(s). And again, it's probably overkill to use either for little, one-person projects, which most of ESOUI's offerings are (with some exceptions).

tl;dr: You're probably attributing more sophistication to add-on development than it usually has! :D

Sasky 06/16/14 09:19 PM

I use IntelliJ with the mentioned plugin or Notepad++ for quick edits. You get the syntax highlighting, some error checking (without compiling). As well, someone put up autocomplete files for the API awhile back.

SVN or Git is mainly down to preference, especially since most authors develop solo. You do want to have some sort of VCS though, even if solo-developing. It allows you to save and version your work. You can try out new features on a separate branch and easily fall back if it doesn't work out. As well, you can stash your work, go back to the last release to push out a bugfix, then resume your work.

By the way, the Git on ESOUI (http://git.esoui.com/) is separate from Github. You lose some of the tracking and pull features on Github, but have the package to zip here. Of course, you could easily have Github and Esoui both as remotes.

Taraezor 06/18/14 06:41 AM

I use TextEdit for Mac OSX. Has all the bells and whistles you need for a full blown IDE for LUA AddOn programming.

I.e. nothing.

:D

Seriously, as a hobbyist it is thankfully refreshing from my point of view to NOT have version / change management issues and all this coloured stuff and auto completion happening in the "IDE". For me it would be overkill and take away the fun aspect.

ingeniousclown 06/18/14 08:15 AM

Quote:

Originally Posted by Taraezor (Post 9484)
I use TextEdit for Mac OSX. Has all the bells and whistles you need for a full blown IDE for LUA AddOn programming.

I.e. nothing.

:D

Seriously, as a hobbyist it is thankfully refreshing from my point of view to NOT have version / change management issues and all this coloured stuff and auto completion happening in the "IDE". For me it would be overkill and take away the fun aspect.

I thought that at first, too, but the colors help out a lot by allowing visual recognition to happen much faster. Autocompletion, while not always welcome, can easily increase the speed at which you crank out your code and helps out with the more tedious parts.

Version and change management are not strictly necessary, though. In fact, with ESOUI archiving all the older things, that serves as a rudimentary version control system itself.

Wobin 06/18/14 07:30 PM

ESOUI's package and zip is brilliant. Otherwise if I pull from Github, I have to edit the folder names, and -then- upload them.

Having a button that does all that for me was a godsend. I enjoy the VCS because it allows me to easily see what changed between versions, and if bugs are reported after a new version, it's straightforward to see what code might have effected the bug. Also, developing on more than one machine requires VCS to avoid overwriting things.

As for an 'IDE', SublimeText3 with lualinter saved me a hell of a lot of time, highlighting syntax errors before I even needed to look at the game.

zgrssd 06/19/14 05:44 AM

Quote:

Originally Posted by ingeniousclown (Post 9440)
No IDEs, just Sublime Text, Notepad++, vim, whatever your favorite text editor is. Sublime Text is amazing though.

Any Text editor can be our IDE. Personally I use Notepad++
A manual hit of save of changes and /reloadui ingame is our compialtion order (there is a addon to keybind that later part).

ingeniousclown 06/19/14 08:20 AM

Quote:

Originally Posted by zgrssd (Post 9505)
Any Text editor can be our IDE. Personally I use Notepad++
A manual hit of save of changes and /reloadui ingame is our compialtion order (there is a addon to keybind that later part).

A good text editor does not make an IDE. IDE stands for "Integrated Development Environment". Some text editors, such as Sublime, can become an IDE through plugins, though.

farangkao 06/20/14 06:15 AM

You talk about IDE....I have a little Surprise for you guys ;)



Read more on my own Topic about it.

You won't be disappointed :)

Tar000un 06/21/14 08:11 AM

My /played on a reroll have been three times higher, since using SublimeText 3. x)

zgrssd 06/22/14 01:24 AM

Quote:

Originally Posted by ingeniousclown (Post 9508)
A good text editor does not make an IDE. IDE stands for "Integrated Development Environment". Some text editors, such as Sublime, can become an IDE through plugins, though.

I know what IDE means. The current common features often include:
Keypress compilation & start (not possible here, save & /reloadui is our compile order)
Syntax Highlighting (most forums can do that, editors are the easiest part)
Intelli Sense (http://en.wikipedia.org/wiki/Intelli...de_completion; at least the "help with names" part can be done by notepad++ and everything else.)
Optionally code profiling tools to optimise the code for speed.

What frangkao linked seems to have intellisense with all the know data about the API worked in. Plus some type of API simulator to testrun/profile function calls in a sandbox.

farangkao 06/22/14 01:30 AM

Quote:

Originally Posted by zgrssd (Post 9596)
What frangkao linked seems to have intellisense with all the know data about the API worked in. Plus some type of API simulator to testrun/profile function calls in a sandbox.

Well API Simulator is a bit high praise ;)

What i did is essentially create all Functions, Globals, that i knew, they all return Dummy Data.
So it is possible to Compile and Debug only on a certain level.
i'm doing it with my Mobile Bank Extended Addon ,and it helps alot during developing.

The Real tricky part (still not perfect) is to integrate the XML Files into the equation.
Because not only are their known Objects (Standard Functions etc.) and stuff that is defined in LUA Files (which can be incoperated thru dofile commands), but also the XML Markup is automatically generating objects which needs to be in existants to allow run/debugging.

Basically what i did there is simulate the WINDOW_MANAGER:CreateControl() function so it gives back some dummy Data.



All times are GMT -6. The time now is 05:09 AM.

vBulletin © 2024, Jelsoft Enterprises Ltd
© 2014 - 2022 MMOUI