Author-driven visual changes


Quickly changing the look and feel of text is WP's core value proposition. Pretty, but dumb. And it takes a lot of mousing around to set the properties on all those unrelated objects. Hurts my arm. Let me keep my keys on the keyboard, please. Let me apply style changes to branches and not leaves.

 --Test subject

Since the semantic authoring platform was developed to displace WordPerfect, various markup-based style controls (control surfaces) were implemented.

Elements can function as visual control surfaces. <p/> adds whitespace. <t/> doesn't. <frame/> adds a border. <block/> doesn't. Mapping the oXmlRename Element function to Alt-N enables quickly changing how data looks by changing the element name. This frequently happens when tuning inline markup to adjust prominence.

Global attributes provide most of the visual control surfaces, overriding the CSS stylesheet defaults. Some of the simplest attributes are direct pass through. @borders, @padding, and @style accept standard CSS syntax. Many css properties were renamed to simplify authoring: @bgcolor, @p.left, @p.right, @face (typeface).

Some attributes add support for fixed values. @scale, for example, sets font-size using arbitrary values. @sgscale contains a standardized and generalized set of values based on the square root of the golden ratio. It started as a reference, for quickly bringing up a list of values, before being given an active role.

@color and @bgcolor are defined with a number of named colors that map to a color library. One of the color pallets is for modeling knowledge flows. Another attribute, @kstyle, applies background, foreground, and border color combinations based on the value of the @k attribute, which describes the element's role in knowledge flows.

A few controls are more aspirational than functional. @lineheight never seems to work. @max-height and the pagination settings are waiting for more powerful engines.

A variety of @sh* attributes show and hide control panels, table grids, id values, purple numbers, included content, and <xi:include/> controls. A couple more activate CPU-crushing focus and hover behaviors.