What I want in a code editor or IDE...
- Fast: no slow down when I open files or type. Also if it takes longer than 30 seconds to open a project, it's too slow
- Project navigation: hot key for opening files, tree control for browsing folders and packages
- Debugging: integration with the debugger, including breakpoints, stepping, etc.
- Source control: integrates with my source control tool, checks out edited files, adds new files
Nice to have, but not necessary...
- Unit testing: integrates with JUnit and/or TestNG so I can launch unit tests from within the IDE
- Code completion
- Syntax highlighting
- Error highlighting
- File templates
- Open source
What I DON'T want in a code editor or IDE...
- Build tools
- Fancy plug-in structures that allow the IDE to become whatever some hacker wants
- That includes plug-ins designed for different languages
- Having to troubleshoot exotic errors in order to get basic things like source control and unit testing to work