I'm looking for a text editor (might be more of an IDE with all the features) that at first acts as a normal text editor. However, I need something that I can click an option like "build for production" that will do a number of things (depending on the configuration I have) like:
- Minify the source code (i.e. take out the whitespace)
- Obscure the code for a little extra security and maybe reduce the length of some names of some elements (i.e.
id=navigation-inner-float-right
-->id=a75
). Since it won't greatly improve speed/security, this isn't a major concern of mine, just a personal preference. However, if it did do this, you would have to make sure to change the code universally so it still works. - Compile Less code
- Remove unused code (related: Tool to remove unused CSS)
- Unit tests for any code changed/affected code
Some other perks:
- Open source (although must be gratis)
- Be able to locally debug/run any server-side scripting
- Local MySQL database would be necessary for this feature to be useful
- It'd be nice to have this part fully portable so I can develop on one machine and move to another flawlessly and effortlessly (similar to Vagrant)
- Be able to clean up my code by reformatting with a command/remove trailing whitespace
Languages to be compatible:
- PHP
- Laravel (optional, but I'd really like to play with it)
- HTML
- CSS
- Less
- Javascript
- jQuery (or better... any external library)
- Node.js (optional, but I'd like to play with it)
- RoR (optional, but I'd like to play with it)
To be perfectly honest, an external utility would be fine if it met all of the above expectations. I just feel an IDE that could offer all of this built in would be a little easier to use. Koala seems to be a step in the right direction as a utility, but it is limited to Less/Sass.
Overall, I'm looking for a build system. I've seen mentions of a "build process" (implying a build system) in multiple places including Yahoo!'s developer site, so it seems like they're available. However, that might all be in-house software. Is there something that I can use for free to do the equivalent?