Nodeclipse / nodeclipse

Nodeclipse-1 : Eclipse plugin for Node.js, PhantomJS development (Nodeclipse core plugin); Maven and Gradle (with Android) plugins
https://nodeclipse.github.io/
158 stars 78 forks source link

Nodeclipse + TernIDE distribution #166

Closed paulvi closed 9 years ago

paulvi commented 10 years ago

I think about making Nodeclipse distribution together with TernIDE

@nodeleaf What do you think of TernIDE?

@angelozerr Any advices

angelozerr commented 10 years ago

Cool! It's a great news for Tern IDE.

For your information, JBoss has integrated Tern IDE and Liferay IDE is integrating.

@angelozerr Any advices

I think Tern IDE starts to be mature. node tern plugin which is an official tern plugin work's well, but I think we should add some other tern plugin like express. I would like to improve again the tern-lint to validate existing of require module (ex : require('XXXX') will display an error for XXXX)

ghost commented 10 years ago

I am already using Tern with angularjs eclipse plugin in Nodeclipse projects and this is a nice feature: once the project was "converted" to angularjs every html files within the Nodeclipse project are "ternalized" to angularjs. Next question: and what about the other files in the project ?

I think — he would probably disagree — Angelo bundled Tern as an Eclipse IDE as this neat feature was needing to be exposed someway. But is it really an IDE? I mean: without a project type and a perspective? Hardly to me but I won't argue more here: we already had this discussion...

It would make a lot of sense to inject Tern into a fully implemented IDE and Nodeclipse is certainly the best candidate for this — but this would be a lot of work as the existing "convert project" implementation is possibly acceptable for a Tern IDE but would it still make sense for Nodeclipse IDE?

What would be VERY nice would be a Tern generalization within Nodeclipse projects and express is certainly a serious candidate for this but not the only one: the entire MEAN stack would be a better target I believe.

We already have some parts done — angularjs and ECMA 5 javascript. What's missing to complete a MEAN stack is support for express and mongodb.

And may be a different configuration process as we'll get different javascript API working together within a single project.

On a larger scale, Nodeclipse IDE could then provide a MEAN project type we could select to create a new project template ready to run as it does for node/express already — all files being Ternalized by their type and API.

Is it making sense or should I grab another cup of coffee?

paulvi commented 10 years ago

Is it making sense or should I grab another cup of coffee?

I think you have had enough coffee for today.

TernIDE (is tern.java used within Eclipse, @angelozerr right?) is maturing quickly. Nodeclipse since 0.17 adds Tern nature to new project.

I expect for some questions about code assist as JSDT, Nodeclipse and TernIDE all provide entries, that may be duplicating.


In this issue about actual distribution. There would be composite repository to include both, actually it is already present as http://www.nodeclipse.org/updates/anide/. I just need to be notified about new release https://github.com/angelozerr/tern.java/issues/128 to update the repository on time

Then there will be new entry on Marketplace.

Possibly talk about name https://github.com/angelozerr/angularjs-eclipse/issues/36

angelozerr commented 10 years ago

I think — he would probably disagree — Angelo bundled Tern as an Eclipse IDE as this neat feature was needing to be exposed someway. But is it really an IDE? I mean: without a project type and a perspective? Hardly to me but I won't argue more here: we already had this discussion...

Ok let's me clarify what is tern.java. tern.java gives you the capability to use tern.js in Java context. Tern Java can be used :

There is :

Tern IDE means that it's tern.java with Eclipse IDE. For perspective, views etc, today there is nothing about that, but in the future I think we could have that.

It would make a lot of sense to inject Tern into a fully implemented IDE and Nodeclipse is certainly the best candidate for this — but this would be a lot of work as the existing "convert project" implementation is possibly acceptable for a Tern IDE but would it still make sense for Nodeclipse IDE?

@PaulVI has already integrate tern inside Nodeclipse with a simple mean (generate .tern-project with node tern plugin and add tern nature). It exists other solutions like ternNatureAdapter or directly with Java API. So with that, when user will create a new Node.js project, and if it install Tern IDE, he will benefit with node completion, hover, hyperlink, validation https://github.com/angelozerr/tern.java/wiki/Tern-&-Node.js-support

What would be VERY nice would be a Tern generalization within Nodeclipse projects and express is certainly a serious candidate for this but not the only one: the entire MEAN stack would be a better target I believe.

https://github.com/angelozerr/tern.java/wiki/Tern-IDE-Extension#ternnatureadapters extension point gives you the capability to select well tern modules according the nature of your project. So if one day a tern-express exists, we could add it if project has express nature.

I think if Nodeclipse decided to integrate Tern IDE, it could be become the tools to use to develop tern plugin with the debug mode. See https://github.com/angelozerr/tern.java/wiki/Debugging-tern.js-with-Nodeclipse

paulvi commented 10 years ago

Angelo gave very good summary on current status with all needed links.

ghost commented 10 years ago

@PaulVI has already integrate tern inside Nodeclipse with a simple mean (generate .tern-project with node tern plugin and add tern nature).

Well - YES: we can create an empty or an hello-world Tern project in Nodeclipse. For what purpose I could not really tell: this is a starting point for sure but to go where? The more complex "mean" I had in mind was "MongoDB-Express-Angularjs-Nodejs" or the MEAN stack — binding both front and back ends all written in Javascript within a single project in Eclipse IDE with Tern support everywhere. From my own practice I know what Tern provides to angularjs HTML files: (completion, hover, hyperlink, validation: this is really cool).

I am not a java but a web developer and from where I stand I can only tell you that doing the same for express/nodejs or mongodb JAVASCRIPT files would be very nice.

angelozerr commented 10 years ago

The more complex "mean" I had in mind was "MongoDB-Express-Angularjs-Nodejs"

So you need a tern plugin per framework :

If you integrate Tern IDE inside Nodeclipse you will benefit with tern module https://github.com/angelozerr/tern.java/wiki/Getting-Started#tern-modules Those selection modules can be doen at hand or done with Jav aAPI, extension point like I have explained you.

paulvi commented 10 years ago

for MEAN please follow in https://github.com/angelozerr/tern.java/issues/131 and possibly an issue in @Nodeclipse

Please keep this thread for "distribution"

However, this comment shows that it makes sense to include Angular into the distribution as well...

paulvi commented 9 years ago

Nodeclipse + TernIDE distribution solved as http://marketplace.eclipse.org/content/enide-studio-2014-nodejs-javascript-and-java

paulvi commented 9 years ago

However Enide Studio won't be stand-alone product: it is too hard for me to maintain it for all OSes.