XUL:IDE: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Xul Dev)
 
(10 intermediate revisions by 7 users not shown)
Line 1: Line 1:
There seem to be many projects around to create a development environment up for XUL. I was under the impression that most of the were dead, but reading in the recent days tells me that I wasn't completely right.
There seem to be many projects around to create a development environment up for XUL. I was under the impression that most of them were dead, but reading in the recent days tells me that I wasn't completely right.


I call on developers of those tools to take a minute or two and describe what their tool is, which platform it has, target audience, development team, status etc.
I call on developers of those tools to take a minute or two and describe what their tool is, which platform it has, target audience, development team, status etc.
Line 11: Line 11:


== Existing Projects ==
== Existing Projects ==
=== Verbosio ===
http://sourceforge.net/projects/verbosio/ - [[Xulrunner]] app, not ready for general use
Last update: 2013 October
<pre>Imagine: You have a XUL document you're working on,
and you want to include SVG graphics in the document.
Such a concept is possible only if you have an editor
that supports both XUL and SVG editing. You could, of
course, edit it with a text editor, but people already
design SVG editors, XUL editors, XHTML editors, etc.
What if you could have all these editors working together
on a single document?
This is Verbosio's goal. Verbosio is an architectural
design for overlaying XUL-based editors for XML languages
and language-specific documents into a common tool.
Using Mozilla's XPInstall technology, Verbosio will allow
language-specific tools to combine to give the user a
multifaceted XML editing tool.
</pre>
BUT
<pre>Verbosio is currently available as a XULRunner
application in a preview, not ready for general use.
</pre>


=== Orangevolt EclipseXUL ===
=== Orangevolt EclipseXUL ===


Project owner: Lars Gersmann - single developer.  
Project owner: Lars Gersmann - single developer.  
Last update: 2006


The project is hosted on http://eclipsexul.sourceforge.net/
The project is hosted on http://eclipsexul.sourceforge.net/
Line 47: Line 78:
Project owner: Peter Wilson - single developer.  
Project owner: Peter Wilson - single developer.  
The project is hosted on http://xulapp.mozdev.org/
The project is hosted on http://xulapp.mozdev.org/
Last update: <unknown>


The orginal XulApp version was a prototype incorporating a Project Explorer and drag and drop Form Designer. I also experimented with various forms of source and xml editors. This was originally developed in 2002. For several reasons the project went into hibernation. I have recently posted a  revised version - minus bit rot.
The orginal XulApp version was a prototype incorporating a Project Explorer and drag and drop Form Designer. I also experimented with various forms of source and xml editors. This was originally developed in 2002. For several reasons the project went into hibernation. I have recently posted a  revised version - minus bit rot.
Line 64: Line 97:
*5. A really simple way to access widgets from JS. Goodbye to getElementById.
*5. A really simple way to access widgets from JS. Goodbye to getElementById.
*6. UUID generator (type 1, random node).
*6. UUID generator (type 1, random node).
=== XulBooster ===
Project owner: Frédéric Legens - single developer.
The project is hosted on http://www.xulbooster.org/ (URL defunct as of Sept 2010)
http://sourceforge.net/projects/xulbooster/
Last Update: June, 2008
The XulBooster project is working towards providing a XUL Integrated Development Environment (IDE) Plug-in for the Eclipse platform . This project will include many editors and wizards to develop Xul Extension for Xul applications.
The current release is an beta version, but is already usable. XulBooster requires JRE 5.0 , Eclipse 3.3 and WTP 2.0 .
The following features are implemented and working :
* XUL Wizards (for XUL Project, XUL Page)
* XUL Nature project
* XUL Perspective
* Xul Extension export system
* XUL Editor with (completion, syntax highlightning, folding, structural view, preview)
* XBL editor with (completion, syntax highlightning, folding, structural view)
* SVG editor with (completion, syntax highlightning, folding, structural view, preview)
* XUL snippets
* Extension launcher


=== MozCreator ===
=== MozCreator ===
[updated by rjkeller - April 27, 2005]
[updated by rjkeller - April 27, 2005]
http://mozcreator.mozdev.org/


Java-based Mozilla Development Environment. Currently can build JAR files and Firefox extensions. Tabbed environment and draggable GUI. Automatically generates content.rdf files. Requires Java 1.5.
Java-based Mozilla Development Environment. Currently can build JAR files and Firefox extensions. Tabbed environment and draggable GUI. Automatically generates content.rdf files. Requires Java 1.5.
Line 85: Line 145:


Need Java programmers REALLY bad. If you’re interested, send mail to [mailto:rj.keller@beonex.com rj.keller&#64;beonex.com]
Need Java programmers REALLY bad. If you’re interested, send mail to [mailto:rj.keller@beonex.com rj.keller&#64;beonex.com]
=== XUL Gear ===
[https://addons.mozilla.org/en-US/firefox/addon/162046/ The WYSIWYG XUL Editor]
Last Update: July 2010


=== XcUBE ===
=== XcUBE ===


[http://xcube.sourceforge.net/ The XUL Unified Build Environment]
[http://sourceforge.net/projects/xcube/ The XUL Unified Build Environment]
 
Last update: February, 2005


=== IBM's Compound XML Document Editor ===
=== IBM's Compound XML Document Editor ===


[http://www.alphaworks.ibm.com/tech/cxde Compound XML Document Editor] (requires IBM ID)
[http://www.alphaworks.ibm.com/tech/cxde Compound XML Document Editor] (requires IBM ID)
Last update: Sept, 2006


There's a [http://dl.alphaworks.ibm.com/tech/cxde/viewlets/index.html demo] for editing XUL!
There's a [http://dl.alphaworks.ibm.com/tech/cxde/viewlets/index.html demo] for editing XUL!
Line 101: Line 170:


[http://www.xul.fr/xuldev.html Xul Dev - Project for a complete XUL IDE.]
[http://www.xul.fr/xuldev.html Xul Dev - Project for a complete XUL IDE.]
Last Update: 2009 (??? per copyright)


The IDE will provide a visual interface near the one of Turbo Explorer, with tags for source code files, project and file manager, property editor, and drag and drop  form designer.<br/>
The IDE will provide a visual interface near the one of Turbo Explorer, with tags for source code files, project and file manager, property editor, and drag and drop  form designer.<br/>
Line 106: Line 176:
The licence of the project is Mozilla 1.1.<br/>
The licence of the project is Mozilla 1.1.<br/>
The programming language is C++ but a PHP version is planned (thanks to the Scriptol generator). The development will be detailed on web pages on the home site, and the executable is hosted at Sourceforge.<br/>
The programming language is C++ but a PHP version is planned (thanks to the Scriptol generator). The development will be detailed on web pages on the home site, and the executable is hosted at Sourceforge.<br/>
=== XULExplorer ===
[http://developer.mozilla.org/en/docs/XUL_Explorer XULExplorer] is a good start for experimenting with XUL Applications and Extensions. Built as a XULRunner application, XULExplorer is utilizing XUL to build XUL. It's not a fully featured IDE but it does provide the basics.
Last UpdatE: October, 2008
* Good clean application architecture
* Extensibility through Firefox-style Extensions
* Simple Plain-text editor for XUL Source
* File open/save and undo/redo support
* Code Sidebar with XUL Tags and code Snippets
* Easy XUL Preview in a tab or a separate XUL Window
* Extension Wizard helps build skeleton extensions
* Venkman JavaScript debugger
* Mozilla DOM Inspector
* XUL Validator


== Other ideas ==
== Other ideas ==
Line 134: Line 223:


According to http://vanx.org/next_meeting.htm it seems like they are using it for Application Development
According to http://vanx.org/next_meeting.htm it seems like they are using it for Application Development
=== MozPad ===
There is a lot of discussion in the MozPad group about developing a Mozilla IDE.  A proposal/requirements document is being created on the MozPad [http://www.mozpad.org/doku.php?id=actionitem:ide_proposal wiki].
Last Update: <unknown> - page does not exist as of Sept, 2010

Latest revision as of 14:14, 24 October 2013

There seem to be many projects around to create a development environment up for XUL. I was under the impression that most of them were dead, but reading in the recent days tells me that I wasn't completely right.

I call on developers of those tools to take a minute or two and describe what their tool is, which platform it has, target audience, development team, status etc.

Overall comments are probably directed best to mozilla.dev.tech.xul]

Blogosphere

Re: Eclipsing Firefox (AxelHecht)

Java XUL Parser? (R.J. Keller)

Existing Projects

Verbosio

http://sourceforge.net/projects/verbosio/ - Xulrunner app, not ready for general use

Last update: 2013 October

Imagine: You have a XUL document you're working on, 
and you want to include SVG graphics in the document. 
Such a concept is possible only if you have an editor 
that supports both XUL and SVG editing. You could, of 
course, edit it with a text editor, but people already 
design SVG editors, XUL editors, XHTML editors, etc. 
What if you could have all these editors working together 
on a single document?

 This is Verbosio's goal. Verbosio is an architectural 
design for overlaying XUL-based editors for XML languages 
and language-specific documents into a common tool. 
Using Mozilla's XPInstall technology, Verbosio will allow 
language-specific tools to combine to give the user a 
multifaceted XML editing tool.

BUT

Verbosio is currently available as a XULRunner 
application in a preview, not ready for general use.

Orangevolt EclipseXUL

Project owner: Lars Gersmann - single developer.

Last update: 2006

The project is hosted on http://eclipsexul.sourceforge.net/

The EclipseXUL project includes XUL Wizards (for XUL Project, XUL Page and whole XULRunner Applications), XUL Nature, XUL Perspective, XUL Console, Chrome URI Resolution Support, WTP Editor extensions for XUL and - last but not least - the debugger.

EclipseXUL is based in Eclipse 3.1 and Eclipse Webtools 0.7.

The current CVS Codebase EclipseXUL is a fully working Eclipse Extension mainly for developing XULRunner based Applications.

The following features are implemented and working :

  • XUL Nature
  • XUL Perspective
  • XUL Application Project Wizard

I invested a little more time in the XUL Application Project Wizard. The Wizard generates a complete working XULRunner Application regarding of your input.

Just create a new XUL Application Project and the generated application is ready to run.

  • Chrome URI Resolver (only for XULRunner based Applications right now …)
  • The XUL XML Schema is registered by EclipseXSLT
  • UUID Generator
  • Launch Configuration and Launch Shortcut for XUL Application Projects
  • XULRunner Preferences for configuring XULRunner.

The Codebase is stable and ready for use.

XulApp

Project owner: Peter Wilson - single developer. The project is hosted on http://xulapp.mozdev.org/

Last update: <unknown>

The orginal XulApp version was a prototype incorporating a Project Explorer and drag and drop Form Designer. I also experimented with various forms of source and xml editors. This was originally developed in 2002. For several reasons the project went into hibernation. I have recently posted a revised version - minus bit rot.

A new version is now under development. This will be a complete redesign based as an XulRunner application. It is being designed in a modular fashion using FF extensions.

I am aiming for an extensible Project Explorer which can launch any number of installed tools. I am also hoping to integrate the Explorer with the Subversion source control system.

Currently, I have the IDE shell, project creation and project explorer working. I expect to upload some results within the next few days.

Also part of this development is a new Javascript library called XaLib. This includes the usual stuff, but also some new goodies:

  • 1. File/Directory/Zip handling in a unified manner.
  • 2. A SPARQL RDF query engine.
  • 3. A RDFTemplate processor which can convert Javascript objects into RDF. This can also be used in conjunction with item 2.
  • 4. A mru widget to implement most recently used file menu handling.
  • 5. A really simple way to access widgets from JS. Goodbye to getElementById.
  • 6. UUID generator (type 1, random node).

XulBooster

Project owner: Frédéric Legens - single developer.

The project is hosted on http://www.xulbooster.org/ (URL defunct as of Sept 2010)

http://sourceforge.net/projects/xulbooster/

Last Update: June, 2008

The XulBooster project is working towards providing a XUL Integrated Development Environment (IDE) Plug-in for the Eclipse platform . This project will include many editors and wizards to develop Xul Extension for Xul applications.

The current release is an beta version, but is already usable. XulBooster requires JRE 5.0 , Eclipse 3.3 and WTP 2.0 .

The following features are implemented and working :

  • XUL Wizards (for XUL Project, XUL Page)
  • XUL Nature project
  • XUL Perspective
  • Xul Extension export system
  • XUL Editor with (completion, syntax highlightning, folding, structural view, preview)
  • XBL editor with (completion, syntax highlightning, folding, structural view)
  • SVG editor with (completion, syntax highlightning, folding, structural view, preview)
  • XUL snippets
  • Extension launcher

MozCreator

[updated by rjkeller - April 27, 2005]

http://mozcreator.mozdev.org/

Java-based Mozilla Development Environment. Currently can build JAR files and Firefox extensions. Tabbed environment and draggable GUI. Automatically generates content.rdf files. Requires Java 1.5.

I (R.J. Keller) have yet to update my more recent code on CVS and post a nightly build. Recent internal builds (should be up soon?) includes a GUI editor prototype and support for using my Java XUL parser in a MozCreator project which I whipped up real quick.

We should be coming up to a M2 release really soon. I’m waiting a bit on more hard-core XUL app building (with C++, etc.) until we have a XUL Runner release.

New features we're planning on implementing (first ones will be implemented first):

  • XML project files (already done, just not on CVS yet)
  • GUI editor (already partially implemented)
  • Run compiled applications w/ XUL Runner
  • Syntax highlighting
  • Debugger (or integration with Mozilla XUL JS Debugger)
  • Code completion
  • Dockable GUI (like Visual Studio .NET)
  • Some kind of API browser

Need Java programmers REALLY bad. If you’re interested, send mail to rj.keller@beonex.com

XUL Gear

The WYSIWYG XUL Editor Last Update: July 2010

XcUBE

The XUL Unified Build Environment

Last update: February, 2005

IBM's Compound XML Document Editor

Compound XML Document Editor (requires IBM ID)

Last update: Sept, 2006

There's a demo for editing XUL!

--AxelHecht 03:08, 28 Apr 2005 (PDT) This is one of the editors that could accompany more application and workflow specific plugins. I will write something about that below.

Xul Dev Project

Xul Dev - Project for a complete XUL IDE. Last Update: 2009 (??? per copyright)

The IDE will provide a visual interface near the one of Turbo Explorer, with tags for source code files, project and file manager, property editor, and drag and drop form designer.
Contributors that have small parts of code to share are welcomed.
The licence of the project is Mozilla 1.1.
The programming language is C++ but a PHP version is planned (thanks to the Scriptol generator). The development will be detailed on web pages on the home site, and the executable is hosted at Sourceforge.


XULExplorer

XULExplorer is a good start for experimenting with XUL Applications and Extensions. Built as a XULRunner application, XULExplorer is utilizing XUL to build XUL. It's not a fully featured IDE but it does provide the basics.

Last UpdatE: October, 2008

  • Good clean application architecture
  • Extensibility through Firefox-style Extensions
  • Simple Plain-text editor for XUL Source
  • File open/save and undo/redo support
  • Code Sidebar with XUL Tags and code Snippets
  • Easy XUL Preview in a tab or a separate XUL Window
  • Extension Wizard helps build skeleton extensions
  • Venkman JavaScript debugger
  • Mozilla DOM Inspector
  • XUL Validator


Other ideas

Solid (working title)

Solid (working title) is my pet thought of the day. It mostly vapour right now, though I have a somewhat working wizard to create xulrunner applications from scratch, just that xulrunner wouldn't run them right now. Oh, and that the code is pretty bad, I need to give it a MVC whacking. Though I gave it the l10n whacking already.

The name is pretty close to XUL IDE, and pretty far from the state of the code.

The best I can tell about it right now are a few (potential) scenarios that one (not necessarily I) could implement.

  • creating xulrunner apps via a wizard (done up to refactoring)
  • add a UI page, window, dialog, overlay
  • add a translation
  • add markers to translations for which another locale has had changes, on cvs check out, too (should be fairly easy)
  • port over something like jssh to implement debugging

I hope that I can reuse editors for XML, js, DTDs and property files to some extent, but this needs to be evaluated. Some related projects include

VEP
Hopefully, a graphical design of XUL interfaces would be possible with the help of VEP.
Webtools
Not really sure what the webtools provide yet.
Compound Document Editor (see above)
Some tree and grammar focused editing of mixed namespace document can be done with cxde.

Most of the above also depend on the EMF.

Komodo

What about ActiveState Komodo?

According to http://vanx.org/next_meeting.htm it seems like they are using it for Application Development

MozPad

There is a lot of discussion in the MozPad group about developing a Mozilla IDE. A proposal/requirements document is being created on the MozPad wiki. Last Update: <unknown> - page does not exist as of Sept, 2010