Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [wtp-dev] WTP JSDT call

Just as an update to the group, we have working QML parsers using Acorn
for CDT¹s Qt support and are working in extending tern.js to understand
QML objects.

Very cool!
 
At the moment, we haven¹t tried to integrate that into
Eclipse but will make a best effort of it to make sure it¹s fast and
scalable.

To integrate your tern-qml with Eclipse, you need:

 * go at in the ECLIPSE_HOME/plugins/ternjs****/node_modules folder (which is the same than https://github.com/angelozerr/tern.java/tree/master/core/ternjs/node_modules)
 * copy your tern-qml + acorn-qml in ECLIPSE_HOME/plugins/ternjs****/node_modules
 * restart your Eclipse, Do teh same thing than https://github.com/angelozerr/tern.java/wiki/Tern-&-Bootstrap-support to declare your tern-qml in the .tern-project or creat eyou at hand the .tern-project in an Eclipse Project (Simple or JSDT project)
 * create a test.js file and QML completion should work in Eclipse IDE.

Please note that tern.java provides an extension point to install your tern plugins (it avoid doing my below explanation at hand). See https://github.com/angelozerr/tern.java/wiki/Tern-IDE-Extension#ternmoduleinstalls
If you wish to use tern.java for QML, I think you should use this extension point.

Please note that tern.java is not linked to Eclipse (you could use it with Netbeans, WebStorm, etc), not linked to JSDT (you could use it with a custom editor). The glue between tern.java and JSDT are done with tern/jsdt plugins https://github.com/angelozerr/tern.java/tree/master/eclipse/jsdt

I¹m pretty confident we can make it happen and have already contributed to
Acorn for things we¹ve needed. I think that¹s an important intangible in
this discussion. If we need changes, the tern/acorn communities seem
pretty friendly to us.

Glad to heard that:) 

Doug.


+1
This sounds excellent. IMHO extending projects like acorn/tern and integrating that
with Eclipse JSDT is a good way forward. I would actually consider JSDT done if all we have
in the JSDT repository is extension points and a curated build recipe for collecting the
implementations from communities out there.

Acorn parser is extensible to add custom grammar. Today it exists:

 * acorn-jsx to support JSX grammar. See https://github.com/RReverser/acorn-jsx  I had started a tern plugin for React/JSX https://github.com/angelozerr/tern-react but I have stopped it, because acorn-jsx is not able to support loose parser (when JS is not valid) See https://github.com/RReverser/acorn-jsx/issues/32
 * acorn-ts for typescript https://github.com/angelozerr/tern-typescript/blob/master/acorn-ts.js which is a POC for the moment. My idea is to support typescript with acorn (and not using TypeScripot Language Service).
 * acorn-flow (see babel project)
 * acorn-qml

I think acorn QML is the most advanced parser because it seems that it supports loose parser, provide a walk for QML and it is integrated with ternjs (great job, I will study it to continue my acorn-ts + tern-typescript).

 

All the talk we have about replacing/extending the current JSDT parser may sound like
we are trying to achieve the opposite. However we only update the parser because
JSDT's current functionality needs to serve us well until the communities create better
alternates.

--
Gorkem



On 2015-11-10, 2:03 PM, "wtp-dev-bounces@xxxxxxxxxxx on behalf of Gorkem
Ercan" <wtp-dev-bounces@xxxxxxxxxxx on behalf of gorkem.ercan@xxxxxxxxx>
wrote:



On 10 Nov 2015, at 10:35, Tom Schindl wrote:

Hi,

The question is what is the AST required for. eg
Tools mostly operate on AST, it is much efficient for tools to use AST
instead of the text document
for things like analysis, conversion, validation etc.

I've used Nashorn a
while back to get a simple AST from _javascript_, although I think it
does
not yet support ES6 and it naturally does not do all the
type-inference.
Does anybody know how Netbeans does his _javascript_ stuff? Do they use
Nashorn?

I have not looked but it would be interesting to know.

I tend to think in small services and an editor needs the following:

Prio 1:
-------
* Syntax highlighting (lexical)
* Outline
* Autocomplete
* Error-Reporting
* Doc-Hover information

Prio 2:
-------
* Syntax highlighting (semantical)
* Refactor/Rename
* Debug

who are potentially totally decoupled from each other! Whether
semantic
highlight is important depends heavily on the language. I think for
imperative languages it is not a must but for something like CSS it
is.

Tom

On 10.11.15 15:22, Gorkem Ercan wrote:

Hi ,
Today's agenda for the call is now online [1]

We will be reviewing the renewal architecture [2] and try to discuss
and
hopefully
conclude on the proposals. I would appreciate if you can take a look
at
the discussion on [2] and contribute
either by attending the meeting, on the mailing list.

Also attached to the agenda screencasts for the JS debugger that
Denis
has been working to revive. I feel that we are ready
to move forward with this work and contribute it to JDST.


[1]
https://wiki.eclipse.org/JSDT/Confcalls/Minutes_20151110#Meeting_Agenda
[2] https://wiki.eclipse.org/JSDT/JSDTRenewalArchitecture

--
Gorkem
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/wtp-dev


--
Thomas Schindl, CTO
BestSolution.at EDV Systemhaus GmbH
Eduard-Bodem-Gasse 5-7, A-6020 Innsbruck
http://www.bestsolution.at/
Reg. Nr. FN 222302s am Firmenbuchgericht Innsbruck
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or
unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/wtp-dev

_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/wtp-dev


Back to the top