April 11, 2007

Verbosio progress, 04/11/2007

The goal is in sight... literally.

A few days ago, I checked in another viewing extension to Verbosio, one that shows you what the document would really look like. It's not editable yet - it's just an iframe - but at least now you can see what your changes do to your document. (No screenshots yet - what's so pretty about an iframe?)

It also means I'm finally done writing mostly component code and now I can get back to writing mostly chrome code. I can finally make Verbosio into an editing application instead of a clunky DOM Inspector clone. :-)

I'm working now on integrating my markup template system with the visual rendering. Just this evening I landed sample code from the experimental branch to mark a starting point. I'm also beginning to figure out a little more clearly what Verbosio and its extensions need from each other.

Already I'm thinking about a Verbosio 0.1 alpha 1 release in the near future (read: within a few weeks). I will have a very tough time deciding what makes 0.1a1 and what should come later, though.

The changelog since March 7, 2007 is in the extended entry.

2007-04-11 19:12  ajvincent

	* verbosio/src/: core/content/template.css,
	  core/content/verbosio.dtd, core/content/bindings/template.xml,
	  markup-languages/xul/content/templates.xml,
	  markup-languages/xul/content/xul-language.dtd,
	  markup-languages/xul/locale/en-US/xul-language/templates.dtd,
	  markup-languages/xul/skin/xul-language/xul-language.css: Initial
	  landing of main templates code from verbosio/experimental.

2007-04-11 19:09  ajvincent

	* verbosio/src/core/content/verbosio.css: Add license boilerplate
	  to verbosio.css.

2007-04-11 18:12  ajvincent

	* verbosio/src/core/: components/verbosio-utils.js,
	  content/verbosio.js, idl/xeIVerbosioUtilsService.idl: Add code
	  for reading Verbosio extension metadata documents.  Interpreting
	  them will come later.

2007-04-11 17:17  ajvincent

	* verbosio/src/backport.pl.in: Adjust backport.pl.in to include
	  verbosio-data.xml.

2007-04-11 17:15  ajvincent

	* verbosio/src/: make-project.pl,
	  markup-languages/xul/verbosio-data.xml: Add sample data file for
	  Verbosio extensions, so Verbosio can identify a language an
	  extension provides.  Also adjust make-project.pl to generate
	  slightly cleaner objdirs.

2007-04-11 12:42  ajvincent

	*
	  verbosio/src/generic-viewers/preview-edit/content/preview-edit.js:
	  Add an error event listener on the preview iframe to silence most
	  errors from content.

2007-04-11 11:15  ajvincent

	* verbosio/src/core/content/bindings/verbosio.xml: Add support for
	  changing documents via Ctrl+PGUP, Ctrl+PGDN.	Also add support
	  for changing viewers via Alt+PGUP, Alt+PGDN.	Finally, shave a
	  few lines of inefficiency off the command event handler for tabs.

2007-04-11 03:56  ajvincent

	*
	  verbosio/src/generic-viewers/preview-edit/content/preview-edit.js:
	  Show the document the user is editing in a preview panel.

2007-04-11 03:54  ajvincent

	* verbosio/src/core/components/xeTestEngine.js: Adjust baseURIMap
	  automated test to account for ../ cases.

2007-04-11 03:53  ajvincent

	*
	  verbosio/src/document-packs/xul-application/components/xul-application.js:
	  Clean up file paths with ../ in them, and resolve file:// URI's
	  to local file paths.

2007-04-11 03:50  ajvincent

	* verbosio/src/core/components/documentFile.js: Minor adjustment to
	  documentFile component for URL handling.

2007-04-11 03:49  ajvincent

	* verbosio/src/core/components/xeBaseURIMap.js: Fix typo in base
	  URI map:  XPCOM error code was incorrectly named.

2007-04-09 12:40  ajvincent

	* verbosio/src/core/content/bindings/verbosio.xml: Viewer tabs for
	  the document viewer binding should start out disabled.

2007-04-08 22:56  ajvincent

	* verbosio/src/make-project.pl: Add preview / WYSIWYG document
	  viewer to the Verbosio build process.

2007-04-08 22:55  ajvincent

	* verbosio/src/generic-viewers/preview-edit/: VER_LAST,
	  chrome.manifest.in, install.rdf.in, content/preview-edit.dtd,
	  content/preview-edit.js, content/preview-edit.xul,
	  locale/en-US/preview-edit/.cvsignore,
	  locale/en-US/preview-edit/preview-edit.properties,
	  skin/preview-edit/preview-edit.css: Initial landing of the
	  preview-edit extension.  Note this is just a framework; there is
	  no actual support for previewing documents yet.

2007-04-08 21:31  ajvincent

	* verbosio/src/generic-viewers/source-edit/content/:
	  source-edit.js, bindings/source-editor.xml: Use sanitized content
	  from entity manager for XML documents.  Fix subtle dataloss bug
	  in re-parsing of XML documents.  Source edit transactions should
	  be managed by notifyEvent(), not the input event handler.

2007-04-08 21:26  ajvincent

	* verbosio/src/markup-languages/xul/components/xul-document.js: XUL
	  documents shouldn't lose an existing doctype.  Also, remove more
	  noisy dump statements for XUL document wrapper invariants.

2007-04-08 21:20  ajvincent

	* verbosio/src/core/components/entityManager.js: Entity manager
	  doesn't implement nsISecurityCheckedComponent.

2007-04-08 21:18  ajvincent

	* verbosio/src/core/components/documentFile.js: Add a few useful
	  dump statements, fix strict warnings in documentFile.js.

2007-04-08 21:15  ajvincent

	* verbosio/src/code-languages/css/components/css-document.js:
	  Remove some noisy dump statements in css-document.js component.

2007-04-08 20:11  ajvincent

	* verbosio/src/markup-languages/xul/components/xul-document.js: Use
	  the entity manager's getSanitizedContent() method to handle
	  DTD's, entities.

2007-04-08 19:59  ajvincent

	* verbosio/src/generic-viewers/source-edit/VER_LAST: Back out rev
	  1.2 to VER_LAST.  It's too soon to update this.

2007-04-08 19:57  ajvincent

	* verbosio/src/generic-viewers/source-edit/: VER_LAST,
	  content/bindings/source-editor.xml: Get source code through a
	  document wrapper's entity manager, and remove the
	  findEndOfDoctype code, which Verbosio utilities already takes
	  care of.

2007-04-08 19:54  ajvincent

	* verbosio/src/core/components/entityManager.js: Implement code for
	  sanitizing the source code contents of a XML document.

2007-04-08 19:50  ajvincent

	* verbosio/src/core/content/verbosio.dtd: Add MARKUP_NS namespace.

2007-04-08 17:47  ajvincent

	* verbosio/src/core/content/tools/domTreeViewMaker.js: DOM tree
	  view maker should display entity reference nodes when it hits a
	   element.

2007-04-08 17:31  ajvincent

	* verbosio/src/core/components/: entityManager.js, xeTestEngine.js:
	  Add parsing of text entities to the entity manager.

2007-04-08 16:42  ajvincent

	* verbosio/src/core/components/entityManager.js: Fix some minor
	  bugs in entity manager:  don't check node value, exclude children
	  of markup:entity-ref elements, and make sure all entity ref
	  fragments have their own DTD's, so entities referencing entities
	  can still be parsed.

2007-04-08 16:38  ajvincent

	* verbosio/src/core/components/documentFile.js: Normalize XML
	  documents.

2007-04-07 17:01  ajvincent

	* verbosio/src/core/: components/entityManager.js,
	  components/xeTestEngine.js, content/entityTest.xul: Fix minor
	  bustages in entity handling, and create a baseline testcase for
	  the entity manager.

2007-04-06 21:49  ajvincent

	* verbosio/src/core/content/tasksOverlay.xul: Well-formedness error
	  fix, for a missing quote.

2007-04-06 19:32  ajvincent

	* verbosio/src/core/components/entityManager.js: XML entity
	  manager:  implement most of the mapping functionality.  Still
	  non-functional (it should be surrounding nodes in entity refs,
	  but isn't for some reason).

2007-04-04 09:44  ajvincent

	* verbosio/src/: core/components/entityManager.js,
	  markup-languages/xul/components/xul-document.js, misc/uuid.txt:
	  Add framework for XML entity manager code.  Not yet fully
	  implemented.

2007-03-29 16:38  ajvincent

	* verbosio/src/core/content/tools/domTreeViewContext.dtd: Fix
	  regression with key bindings:  overlays only apply to one element
	  per ID-type attribute.

2007-03-29 11:37  ajvincent

	* verbosio/src/core/content/: verbosio.xul,
	  tools/domTreeViewContext.dtd: Add native-app key bindings for
	  cut, copy, paste, delete edit commands.  Note there is no
	  equivalent to insert commands.

2007-03-28 23:06  ajvincent

	* verbosio/src/core/content/: verbosio.js, verbosio.xul,
	  tools/xeTransactionCommon.js: Initial check-in of Verbosio cut,
	  copy, paste commands and code to call on them.

2007-03-28 23:02  ajvincent

	*
	  verbosio/src/document-packs/xul-application/components/xul-application.js:
	  Add transaction listener for XUL application pack.

2007-03-28 23:01  ajvincent

	* verbosio/src/markup-languages/xul/components/xul-language.js:
	  Clarify QueryInterface calls.

2007-03-26 11:16  ajvincent

	* verbosio/src/: code-languages/css/components/css-document.js,
	  misc/uuid.txt: Forgot to mark a couple UUID's for a given
	  component.

2007-03-19 19:25  ajvincent

	* verbosio/src/code-languages/css/components/css-document.js: Add
	  an initial class invariant on CSS document packs.

2007-03-19 19:23  ajvincent

	* verbosio/src/core/components/xeTestEngine.js: Test engine needs
	  to set the correct length for data (bypass mozilla.org bug
	  374562).

2007-03-19 17:10  ajvincent

	* verbosio/src/core/content/tools/ecma-debug.js: Remove
	  chrome://verbosio/content/tools/ecma-debug.js; replaced by
	  resource://app/res/ecma-debug.js
	  (verbosio/src/core/app-resources/ecma-debug.js).

2007-03-19 17:06  ajvincent

	* verbosio/src/:
	  code-languages/xul-application/components/application-ini.js,
	  document-packs/verbosio-app/components/verbosio-app.js,
	  misc/component.js.in: Replace remaining references to
	  chrome://verbosio/content/tools/ecma-debug.js with
	  resource://app/res/ecma-debug.js.

2007-03-19 16:59  ajvincent

	* verbosio/src/: core/components/DTDDocumentWrapper.js,
	  core/components/XMLDocumentWrapper.js,
	  core/components/documentFile.js,
	  core/components/nodePositionService.js,
	  code-languages/css/components/css-document.js,
	  code-languages/css/components/css-language.js,
	  code-languages/javascript/components/js-document.js,
	  code-languages/javascript/components/jsLanguagePack.js,
	  core/components/textDocumentWrapper.js,
	  core/components/verbosio-utils.js,
	  core/components/xblLanguagePack.js,
	  core/components/xeFileSearch.js, core/components/xeTestEngine.js,
	  core/components/xmlLanguagePack.js, core/content/verbosio.xul,
	  document-packs/xul-application/components/xul-application.js,
	  markup-languages/xul/components/xul-language.js: Replace
	  remaining references to
	  chrome://verbosio/content/tools/ecma-debug.js with
	  resource://app/res/ecma-debug.js.

2007-03-19 16:40  ajvincent

	* verbosio/src/markup-languages/xul/components/xul-document.js:
	  Convert XUL document wrapper to use ECMA Debugging functions from
	  resource://app/res/ecma-debug.js.

2007-03-19 16:35  ajvincent

	* verbosio/src/core/app-resources/ecma-debug.js: Copy
	  verbosio/src/core/content/tools/ecma-debug.js rev 1.9 to
	  verbosio/src/core/app-resources/ecma-debug.js rev 1.1.

2007-03-19 16:32  ajvincent

	* verbosio/src/core/content/tools/ecma-debug.js: Bug fixes for
	  invariant class contracts.

2007-03-19 16:30  ajvincent

	* verbosio/src/: backport.pl.in, make-project.pl: Add support for
	  resource://app/res/ building.

2007-03-19 15:49  ajvincent

	* verbosio/src/core/content/tools/ecma-debug.js: Allow
	  InvariantContract's _generateContract method to look for an
	  existing contract function and adopt it.  Also, prepare to move
	  ecma-debug.js to resource://app/res/ecma-debug.js.

2007-03-18 14:34  ajvincent

	* verbosio/src/core/: components/verbosio-utils.js,
	  components/xeTestEngine.js, idl/xeIVerbosioUtilsService.idl: Add
	  initial support for Verbosio clipboard manipulation, including
	  caching an object closely related to the clipboard contents.

2007-03-17 19:26  ajvincent

	* verbosio/src/: core/content/tools/ecma-debug.js,
	  markup-languages/xul/components/xul-document.js: Add class
	  invariant support for JS-based XPCOM components.

2007-03-14 20:32  ajvincent

	* verbosio/src/: misc/uuid.txt, core/idl/xeIEntityManager.idl,
	  core/idl/xeIXMLDocumentWrapper.idl: Add interface for managing
	  XML entity references in a document.	Not implemented yet; this
	  is a sketch.

2007-03-09 20:18  ajvincent

	* verbosio/src/: core/components/DTDDocumentWrapper.js,
	  core/components/documentFile.js,
	  document-packs/xul-application/components/xul-application.js:
	  Replace  href pseudo-attributes with
	  virtual:// equivalents.  Note this messes up a few things
	  downstream (like source code editing), but this should fix most
	  of bug 16341.

2007-03-09 14:54  ajvincent

	* verbosio/src/: make-project.pl, core/components/xeTestEngine.js,
	  code-languages/css/VER_LAST, code-languages/css/install.rdf.in,
	  code-languages/css/components/css-document.js,
	  code-languages/css/components/css-language.js: Initial
	  implementation of CSS language pack extension (including document
	  wrapper).
Posted by WeirdAl at April 11, 2007 6:33 PM
Comments

Yey! An alpha soon! I look forward to seeing it.

Posted by: Shawn Wilsher at April 12, 2007 6:44 AM