[unrev-II] Possible Editor and Architecture

From: Eric Armstrong (eric.armstrong@eng.sun.com)
Date: Sat Jan 29 2000 - 21:35:54 PST

From: Eric Armstrong <eric.armstrong@eng.sun.com>

This note covers a possible editor and some architecture
ideas. The information here is based on some email
conversations that grew out of the literate programming
group, with the idea of using source code stored in XML
to encourage literate programming.

[The project for maintaining source code in XML is slated
to have it's web page at
But that page isn't active yet. We're still trying to figure out why
the mailing list doesn't work and sort out other admin issues.]

One of the goals for that project has been extensible XML
editor -- one in which you can subclass existing code to
modify it's behavior and then use the subclass in place of
the original. That way, you can change not only the menu
arrangements and keystroke assignments, but the very
operation of the editor itself. (The major benefit of that
strategy is that allows building up a repository of editor
objects that operate in ways that are familiar to a variety
of users. The resulting "editor construction kit" lets you build
the editor of your dreams, or at least one you are familiar

Possible Editor
One option is to use the Apache editor, modifying it to
achieve the desired level of extensibility. Another option is
to use a Java-based XML recently developed by
Grzegorz Skorupa. Grzegorz was kind enough to put it
under a FreeBSD license and make the source available at

(This is the first editor I've seen that works along the lines
I had envisioned -- with a JTree for structure and a secondary
pane for content. Most don't present what I consider a
reasonable interface to the user. Adept being a notable,
and expensive, exception.)

Possible Architecture
As part of the eXtenDE project, Warner Ornstine (who
suggested its name) has been working on an "Extension Cord
Architecture" that allows new components to be added or
replaced in an existing application. [He is currently examining
JEdit, to see if it's EditBus can be used, or modified to work,
with XML. JEdit is at: http://www.gjt.org/~sp/jedit.html]

This work is still in a very early stage, and exists only as a top
level outline right now. However, that architecture might
well be appropriate for the initial DKR prototype.

The heart of the architecture is Cord Manager, which manages
all active Extensions and passes information from Plugs to Outlets.

The primary extensions are:
     Plugs - these send information to the Cord Manager
     Outlets - these accept information from the Cord Manager

Finally, a Cord may consist of many Plugs and Outlets.

--------------------------- ONElist Sponsor ----------------------------

GET A NEXTCARD VISA, in 30 seconds. Get rates as low as 0.0 percent
Intro APR and no hidden fees. Apply NOW.
<a href=" http://clickme.onelist.com/ad/NextcardCreativeCL ">Click Here</a>


Community email addresses:
  Post message: unrev-II@onelist.com
  Subscribe: unrev-II-subscribe@onelist.com
  Unsubscribe: unrev-II-unsubscribe@onelist.com
  List owner: unrev-II-owner@onelist.com

Shortcut URL to this page:

This archive was generated by hypermail 2.0.0 : Tue Aug 21 2001 - 18:56:41 PDT