Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [wtp-dev] JavaScript Editor with NJSDoc

Hi all,

Earlier this month I made this fork of JSDT available. While working on this my goal was to have it eventually merged back in. This is the reason it is currently using the same plugin names. I would be very happy if it did get merged in. I would like to gauge your interested in merging it.

To summarize the benefits
- Accurate and fast operation content assist with very large code bases
- Accurate and fast operation content assist with indirectly defined class and object structures
- New outline that shows structure with some lexical scope for context
- No change in functionality when not running with NJSDoc recipe

Current cons:
- To take advantage of the new features one must write a NJSDoc recipe file which is less automatic than old behaviour and configure a different builder.
- Adds NJSDoc plugin as a dependency

We'll be working more on this code base - maybe now is a good time to decide whether to rename the plugins or merge. It seems like there has been no significant work on JSDT for 6 months and no new features for much longer. I would be renaming to JSDT2 unless there are objections.

Let me know your thoughts.


On Fri, Apr 12, 2013 at 3:00 PM, John Peberdy <john@xxxxxxxxxx> wrote:

I am pleased to announce availability of my variation of the Eclipse _javascript_ Development Tools (JSDT) that uses NJSDoc [1] as an additional data source.  Using this at work we are able to provide high quality content assist for our sparsely documented and very large code bases.

It's powerful! Without inheritance related JSDoc tags it infers inheritance structures. It tracks multiple definition locations for slots.  It provides advanced type inference for 'this' as well as standard JSDT inference.

It's fast! For a code base of 70,000 lines of _javascript_: Initial reconcile is 800ms. Incremental reconcile after an edit is 70ms. The retained size of the data structure is 6Mb.

This is enabled by NJSDoc - a documentation tool and algorithm that executes _javascript_ code in a modified Rhino runtime. The Rhino runtime stores assignment locations and along with the resulting object structure a precise model is created associating objects with locations and comments in the source.

To learn how to configure see this page:
You can install using this Eclipse update site:

Here are some screen shots:


John Peberdy

Back to the top