aphex/SuperAnt — pull request #3 by luchaos (2013-02-27 20:14:22+00:00)
Title: Multiple project folders, settings location & markdown

hi aphex, since (but not only because) I use ant quite heavily - I'm quite enjoying SuperAnt, thank you! I had to enhance it a bit to fit my needs, though. My suggestions:

in a project with multiple folders always the build.xml file found within the last folder will be executed rather than the one in the first folder. agreed, quite strange behaviour for `path = self.window.folders()[0];` :

![wrong_folder](https://f.cloud.github.com/assets/1280590/202647/9a7910f8-8119-11e2-9988-102b9f717aa5.png)

passing the project and folder path with the `working_dir` key in `SuperAnt.sublime-build` (like it's done in other packages) will correctly hit the buildfile found in the first/uppermost/main folder in a sublime project. additionally, it removes the need of iterating directories manually:

![build-default](https://f.cloud.github.com/assets/1280590/202616/32b3e034-8118-11e2-94b3-c09acc142309.png)

additionally, I wanted to be able to run a build file from another folder from within my project. it fits a workflow where project folders are added, built and removed as they are needed (which happens quite a lot in my case) :

![build-selected](https://f.cloud.github.com/assets/1280590/202618/38374960-8118-11e2-831c-4b5ca23a06f8.png)

to determine which buildfile was chosen all targets are prefixed with the given `name` attribute of the `project` tag or, if missing, defaults to the folder's name that the buildfile lives in. well, prefixing the labels could be a settings option (since there are no user settings apart from the default package ones where this could be overriden ... yet ;)

another settings option could be to list all targets of all build files in all folders. but that's a lot all.

none of those changes should affect your initially intended behaviour of the project build process, apart from showing the project name as prefix to the targets.

time to connect my kinect and compile airkinect :)

regards, lucas