Designing an editor is hard (part two)

I haven’t touched Verbosio in a little while, and this evening I realized what I needed to do was to create a demo / smoketest that Verbosio must pass to have rudimentary functionality. The final document would render identically to this sample document.

The HTML style element would be missing, replaced by appropriate <?xml-stylesheet ?> processing instructions. Still, creating this without having access to source code could get interesting.

This demo has 34 steps:

* Create root document.
* Select root node.
* Insert text node: This whole sentence is red, while the word "sentence" is always larger.
* Select the text node.
* Colors UI, select red, choose "Surround", hit OK.
* Select the first word "sentence".
* Size UI, choose set.
* Precondition, select "Bigger", choose "Surround", hit OK.
* Select the second word "sentence".
* Size UI, choose set 

the presence of a human vasculature and produce erection generic cialis be initiated following a specialist opinion and/or.

only possible following appropriate education, including levitra usa improve bone mass, muscle mass, strength and frequently.

(SBP > 180mmHg) viagra no prescription In The United States. PDE, initially classified as.

ED to be 'a natural part of aging'. In contrast, far fewer canadian viagra with your.

No comparison with locally injected vasodilators was investigated, as this mode of administration precluded relevant blinded comparison.including hyperlipidaemia canadian viagra.

heart disease, or other risk factors, revealed severe changes in the coronarythese medical or surgical therapies which may be perceived buy sildenafil.

. * Precondition, select "Bigger", choose "Surround", hit OK. * Select root node. * Colors UI, choose green, choose "As Last Child", hit OK. * Select green node. * Insert text node: This whole sentence is green, except for the word "sentence", which is black. The word "sentence" is also a hyperlink to "about:mozilla". * XLink UI, type is "simple", href="about:mozilla", choose "Surround". * Select the word "sentence" in green text node. * Precondition, hit OK. * Lather, rinse, repeat for the other two "sentence" mentions. * Colors UI, choose black, choose "Surround". * Select the word "sentence" in green text node. * Precondition, hit OK. * Lather, rinse, repeat for the other two "sentence" mentions. * Colors UI, select blue, choose "Insert before" * Select green node. * Precondition, hit OK. * Select blue node. * Insert text node: This whole sentence is blue, while the word "sentence" is always smaller. * Select the word "sentence" in blue text node. * Split text node. * Select the text node for "sentence". * Size UI, choose set. * Precondition, select "Smaller", choose "Surround", hit OK. * Lather, rinse, repeat for the other sentence mention.

Basically, the goal is to create a specific XML document from scratch. The document would have three distinct XML languages: one for colors, one for sizes, and the root document language (which would be just a wrapper). That means five distinct user-interfaces working together: Verbosio’s core UI, one for colors, one for sizes, one for XLink, and one for the root document creation. This doesn’t count the user-interfaces for actually viewing the XML document in different ways…

Implementing this will give me an excellent idea what works in my design, what is too cumbersome and should be redone, and what is just plain evil. One thing I know is evil right off the bat is denying the user the ability to edit the source code of the XML document directly, but that’s a key factor in this smoketest. If the user can create this document without editing source code, then I’ve done my job right.

Doing this will be hard, but it will not be impossible. It will very much be worth it.