Usability - RTE
Use this page to suggest and discuss RTE usability improvements for version 4.5. Also, this is the page, where suggestions discussed in the HCI mailing list should go.
- 1 Link management
- 2 Producing nice html-code without having to code
- 2.1 Direct access to all common block elements via block element selector list
- 2.2 Do not abuse blockquote for indentation
- 2.3 Direct access to more inline elements
- 2.4 Direct access to allowed Attributes
- 2.5 Save several klicks for the table editor
- 2.6 A way to create definition lists
- 1.) Selecting some text and dragging the quicklink icon on the target page (or page icon to the selected text/single word? - kasper)
- 2.) Without selecting text first, being able to drag a page into the RTE which creates link to the page having the page title as link text.
Producing nice html-code without having to code
For the philosopy behind this see hci thread Concentrate on the editors 2: RTE improvements.
Direct access to all common block elements via block element selector list
- Make it easy for authors to add <div> (we could call it 'Box' on the surface)
- Make it easy for authors to add <blockquote> (we could call it 'Quotation block')
- Currently it is only possible to hide items of the paragraphs selector box, you cannot add to them.
Do not abuse blockquote for indentation
Currently increasing indent is done by wrapping the element in question by a blockquote. This is bad, because not every indented block contains a quotation. Perhaps it would be a good idea to let site developers define a class for indenting left which than can be applied to a wrapper div? Then it is up to the css how the indenting is done (padding or margin, em, px?).
Direct access to more inline elements
Currently only the following inline elements can be accessed directly:
- b - remapped to <strong>
- i - remapped to <em>
- span - only if RTE.classesCharacter is defined.
- font - which is useless nowadays
Suggestion: A select list like the one for block elements. What is in there should be configurable (addItem, removeItem). By default one could imagine:
- q - Quotation inline
- cite - Citation (do not know whether this is correct english)
- samp - Example
- dfn - Definition
- span - Span
- var - Variable
- code - Code
- kbd - Keyboard
Make corrections possible: If cursor is inside var-element and no text is selected and the author chooses code, remap var to code.
classesCharacter selector should react similar to classesParagraph: if my cursor is inside dfn, the class should be applied for dfn; classesCharacter should not add any markup.
Direct access to allowed Attributes
Defaults for all elements:
- lang/xml:lang (accessibility issue)
- id (side effect: first step towards #links inside one text element)
Save several klicks for the table editor
The create tables dialogue
- if classesTable is defined, let users choose them on creation of table
- three options concerning thead/th/scope
- make first row thead (all cell types automatically set to th and scope to col)
- make first col th (all cell types automatically set to th and scope to row)
- make first row thead and first col th (all cell types of first row th/scope=col, all cells of the first default to th/scope=row with the exeption of the first one in the first row)
- add the caption and summary fields
The row properties dialogue
In the row properties dialogue I can choose whether the row shall become part of thead, tbody or tfoot. So if I choose thead, the cells should be turned into th/scope=col automatically. Otherwise I need as many clicks as I have cells in that row + choosing the right scope.
A way to create definition lists
Some ideas how that could work:
- A button like we have for <ol> and <ul>
- Pressing that button will activate it and will create <dl><dt>|<dt></dl>
- Pressing that button in active state will move the cursor below the </dl>
- Pressing Enter from inside <dt> will add <dd>|</dd>,
- Pressing Enter from inside <dd>|</dd> will create <dt>|</dt>
- A toggle button for <dd> / <dt> is needed to enable more than one <dd>