May 1, 2005

How would you design a Mozilla-based XML editor?

Mozilla supports several XML languages now:


  • XHTML

  • XUL

  • MathML

  • SVG

  • RDF

  • XBL

  • XSLT

All things considered, that's quite a list. I'm just wondering: how could we build an editor in Mozilla that was flexible enough to switch from one language to another on the fly? (The problem I see is that there are language-specific editors, but not a central application you could add XML language packs to for editing.)

I myself have only a few ideas, but I'd like to hear yours as well. If we get a big enough list (complete with people who could code it), I may just start organizing a group of us together to work towards it. I'm talking anything from requirements to UI demos.

I just want to see what community feedback there is, and what we can do to lay some groundwork.

(I hope someone will remind me to ask the MozillaZine admins for a "whiteboard" wiki where I can display ideas you can edit. It would make this easier.)

UPDATE: Through the XUL:IDE page I was referenced to (sarcasm is appreciated :) ), I found a sample for IBM's compound editor. I didn't like the fact that you had to do some serious digging to select a XUL element to add... it would be better if they just displayed a menubar specific to XUL when in XUL editing mode.

Posted by WeirdAl at May 1, 2005 12:31 AM
Comments

Why not to extend NVU, if under MPL? Having two different editors seems a bit awkward to me, don't you?

(From Alex: N|Vu extensions are certainly a possibility. But N|Vu is heavily oriented towards (X)HTML. Personally, I'd favor a N|Vu-like XHTML language pack for this multilanguage editor.)

Posted by: funtomas at May 1, 2005 1:21 AM

http://www.glazman.org/weblog/dotclear/index.php?2005/04/13/989-editing-xml-documents

(From Alex: I've been aware of glazou's intent to build such an editor, and I support his efforts 100%... I hadn't read that particular article. I'd been prompted because I wrote my little One-for-one blog entry about a year ago, and nothing happened.)

Posted by: Bouiaw at May 1, 2005 2:49 AM

Uh, what about a generic XML editor which does code completion based on a schema/dtd? Like XMLBuddy for Eclipse.

~Grauw

Posted by: Laurens Holst at May 1, 2005 3:25 AM

yes, yes, yes.

Someone please do it. please please please

Posted by: please at May 1, 2005 3:51 AM

I think my ideal XML-language-editor would look much like Mozilla's "This XML file doesn't appear to be styled, so here's the DOM in a clickable list" view - only editable, and with as much IntelliSense-style completion as can be squeezed from whatever DTDs Mozilla knows about. Oh, and a live preview pane for the document wouldn't go astray. And maybe outliner-style drag-and-drop editing.

I do like NVu as an (X)HTML editor, but the fact is that the traditional word-processor interface doesn't map neatly onto a nice hierarchical tag structure, and NVu's usability suffers as a result. I'm afraid that any attempt at a Nice GUI Editor for any of those other XML dialects would suffer the same malady - so raw text editing is probably the best bet, with as many aids and helpers as you can get.

Posted by: Screwtape at May 1, 2005 4:57 AM

Think Visual Studio 2005, it supports multiple languages. Then add in some kind of Keyword or <tag> that would define sections of a different language.
As for a whiteboard - how about the Wiki? There's a XUL IDE doc there already.

Posted by: Kroc Camen at May 1, 2005 5:11 AM

Disruptive Innovations working on a WYSIWYG XML editor.

http://www.glazman.org/weblog/dotclear/index.php?2005/04/13/989-editing-xml-documents
http://ljouanneau.com/blog/2005/04/13/418-mon-projet-actuel

Posted by: jules at May 1, 2005 5:13 AM

See also http://cuneaform.mozdev.org/

Posted by: anonymous@somewhere.com at May 1, 2005 7:49 AM

You mean something like http://wiki.mozilla.org/XUL:IDE ?

(Someone should remind me that we need more wikis, so that folks find information. Oops, sarcasm.)

Posted by: Axel Hecht at May 1, 2005 8:20 AM

How WYSIWYG could such an editor be? How much functionality would overlap between a WYSIWYG MathML editor and one for SVG?

Posted by: Bob R. at May 1, 2005 8:51 AM

Well, DTD files seem the obvious choice for language configuration.

Then just make a nice xml editor out of it.

Posted by: Jofers at May 1, 2005 11:44 AM

BXE is a mozilla-based XML editor with validation that could serve as a starting point: http://bxe.oscom.org

Posted by: Gregor J. Rothfuss at May 1, 2005 1:59 PM

Komodo?

http://www.activestate.com/Products/Komodo/more_information.plex

Posted by: Anonymous at May 2, 2005 11:26 AM

I don't think DTDs would be it: They do not support namespaces - something what is really necessary to mix different XML-based languages. So, XML Schema and/or RelaxNG support is needed. As far as I know (as I do not have anything to do with developing Mozilla), the XForms group is working on a XML Schema support.

I like the idea of this editor, too. Please keep us uptodate about this topic. Thanks.

Posted by: Christian Juner at May 3, 2005 12:21 PM