Autocomplete for whole project functions?


#1

Hi!

I’m new with Atom, I come from PHPStorm. I’ve installed some packages for autocompletion and specially the wordpress-api (Usually I develop with Wordpress). In PHPStorm when I install some Wordpress plugin I have autocompletion for the plugin: for example when I’ve installed Advanced Custom Field PHPStorm automatically autocomplete functions like get_field, get_sub_field… Or when I add some custom class to the project the same.

Is Phpstorm “analyzing” the whole project? If not, what PhpStyorm does that Atom doesn’t?

It’s annoying for me the lack of this autocompletion, I have something bad on my Atom installation?, is the usual behaviour?

Thanks.


#2

Yes. This is the primary difference between an IDE, especially one focussed on a certain set of languages, and an editor you can use for any text file.


#3

Yes, I’m totally agree with you. I can’t expect the same functionalities from an IDE into a editor.

But I see a lot of people using Atom/ST/TextMate as their main developing tool. So why it’s worth to use an editor instead of an IDE? I’m not trying to start a battle IDE vs Editor. I only want to understand it, that’s all.


#4

IDEs are typically tuned for a specific language or tightly coupled set of languages. For example, Visual Studio is designed for the .NET languages, Eclipse for Java, Ruby Mine for Ruby, etc. Trying to use Eclipse for Ruby can work … but it isn’t ideal.

In a typical week, I work in:

  • Java
  • Ruby
  • CoffeeScript/JavaScript
  • Elixir
  • and others

Editors generally aren’t tuned to one language or set of tools. I can use the same workflow with whatever language I work in. I don’t become dependent on the IDE working its magic and learn more about the language and tools … and am therefore encouraged to create my own tools that cover pain points that are then portable to whatever environment I move to.

Also, because editors aren’t tied to a specific language or set of tools, the more I learn about working with a particular editor, the more proficient I am at working with any kind of text: Ruby, Java, CSV, Markdown, HTML, XML, configuration files, etc.

Finally, most IDEs are closed source. The technologies that make IDEs possible (such as reentrant grammar parsers for the best syntax highlighting or search models for autocomplete) are proprietary secrets that, while very useful for those IDEs and languages, keep us locked in to older technologies. I want to see generic and open technologies created that can be extended to support whatever I want to work on … not what some company wants to lock me into. And that’s what Atom is working on … but because the only (or at least best) prior art is all proprietary, we have to start at ground zero and build it open from the start.