Saturday, June 21, 2008

Adding Shared Editing To Your Favorite Text Editor

With ECF 2.0/Ganymede, ECF introduces Real-Time Shared Editing. By default, the ECF real-time shared editing capability has been added to the JDT Java Source Code editor and Eclipse's Default Text Editor.

I've begun documenting how those with other types of Eclipse-based text editors (e.g. C/C++, php, javascript, xml editors, etc) can add real-time shared editing to their editors...simply by adding a little bit of markup to plugin.xml. See here for explanation and example.

8 comments:

Eugene Kuleshov said...

Scott, I believe there been discussion about adding random actions to popup menus in Eclipse dev mailing lists not that long time ago... So, I wonder if it would be better to add such menu to the main Source menu instead of the root item in popup menu.

Also, current "sharing menu" require quite a loot of precise mouse clicking and it won't scale well when you have really large address book/roster. Perhaps it is better to use ECF's user selection dialog like Chris implemented while ago instead of currentt dynamic and hierarchical menus. That dialog would also fit better with the Platform command handlers and could be bound to a keyboard actions.

Scott Lewis said...

Eugene,

If you would like to reference the discussion you mention on the wiki page please go ahead. It would be most welcome.

RE: current sharing menu behavior. There are ways to address scaling that we have considered but not yet implemented (e.g. flattening the hierarchy, only showing entries that are running eclipse-editor-sharing clients, etc). Although a dialog may/will be fine too, I'm withholding judgment for a little while until further experience is gained and we're a little further outside the realm of opinion than we are now. Having said that, though, there's no requirement that we stay permanently with our current UI, and so your UI implementations would/will always be welcome.

Anonymous said...

If the strategy is to use the contribution item, its class shouldn't be internal.

Scott Lewis said...

>If the strategy is to use the >contribution item, its class >shouldn't be internal.

True. But this API (docshare) is internal.provisional...because it's not finished yet...and is likely to change significantly as per bug
https://bugs.eclipse.org/bugs/show_bug.cgi?id=234142

I will add a comment to this effect on the wiki page.

Eugene Kuleshov said...

Scott, the discussion thread is there. Also note that dialog would allow much more flexibility. It could have quick filter and also maintain the history of recent selections (similarly to how it works in JDTs "Open Type" dialog), so it generally would reduce typing or clicking a lot. I doubt you could come up with menu optimizations that would bring it to the same level. :)

Scott Lewis said...

Eugene,

Please send the discussion thread to ecf-dev and/or place it on some wiki page so that it is known to all interested parties (and all working on various parts of ECF/docshare).

RE: dialog...I doubt you could come up with the optimizations to make it convenient...but let's see what you can do :).

Anonymous said...

> But this API (docshare) is
> internal.provisional...because
> it's not finished yet...and is
> likely to change significantly as
> per bug
https://bugs.eclipse.org/bugs/show_bug.cgi?id=234142

What is the timeframe for 2.1?

Scott Lewis said...

>What is the timeframe for 2.1?

The team hasn't decided yet, but I would expect Sept or Oct 2008. It is possible that it would be earlier (e.g. late Aug), but I don't yet know about the availability of other committers and contributors.