views:

139

answers:

2

I am looking for javascript/css editors that are a good alternative to using aptana.

The following are features I care about:

1) "learning-based" auto-complete within the file. Aptana does not necessarily know what all possible auto-complete values are, but it tries to guess based on references in the file.

2) auto-complete for css. A very big feature for me.

3) An integrated JSLint or something similar.

4) The ability to specify jslint header comments in a file. Basically I can indicate which objects, functions, etc are global so that they don't throw unused reference errors when used. This is big because my SSJS framework has a few globally injected functions that we need for things like included files. And I want JSLint to report useful errors vs a bunch of noise.

Anyone know of any decent editor that does this?

As a side note: I use windows/linux not mac. So please constraint on that.

A: 

With a dynamic language like js you're probably not going to do much better on auto-complete than textmate / e. There's a reason so many web developers use it. But you're just never really going to get good auto-complete with a dynamic language.

Chuck Vose
+2  A: 

Try Ctrl+Space on Jetbrains Web IDE http://www.jetbrains.com/webide/ in a css file. It can also refactor CSS (Alt+Enter), such, as expand CSS shorthand or optimize expanded CSS to shorthand. IntelliJ CSS auto completion is also awesome if you are working on Java related project.

Chandra Patni
does it work for non-standard web projects? Basically I have javascript on the server so it does not follow standard layouts or have a j2ee server etc. I tried out intellij and it wanted a j2ee web project, not just any-ol project with .js files.
Dmitriy Likhten
Web IDE has nothing specific to Java/J2EE.
Chandra Patni
Web IDE, RubyMine and IntelliJ IDEA all share the same excellent JavaScript, CSS and HTML support. It works well. RubyMine and WebIDE allow you to work with directories instead of creating projects.
Tim Down
Does it contain JSLint headers and such for things like /*global foo*/
Dmitriy Likhten