XXE (V. 2.11) is an excellent tool. However, I would like to have the
following items added to the User Wish List. Each item is explained in
more detail below so that the topics stand out clearer and are easier to
actually integrate into the Wish List source document. :-)
1) Keyboard-only operation is very important for high productivity. Thus
XXE should support it for each user task, especially for character
input.
2) Enhancement of the new character tool invoked with command
"insertSpecialChars" (favorites, choose character by codepoint,
select character by keyboard).
3) Add a command for vertically recentering the cursor's context.
4) Explain localization results, i.e. include documentation on how
the English GUI items mentionned in the Help and other docs map to
the localized item names.
5) Make navigation between the HTML documentation components easier.
Detailed explanations:
Suggestions concerning XXE's implementation
===========================================
1) Keyboard-only operation
--------------------------
Keyboard-only operation is very important for high productivity. Thus
XXE should support it for each user task.
Currently, in the following cases, XXE does not allow keyboard-only
operation:
- Switching between the "superposed" tools like Attribute tool, Search
tool etc. is not possible (while it is of course possible to use the
HotKeys assigned to the corresponding menu entries, except for the
Character tool which is not in any menu). A key combo like Ctrl-Tab
might be adequate for this task and consistent with other tab-based
interfaces.
- Navigating the document's structure using the Node Path bar ("Find
Element| Advanced" with its XPath-based search can be used for
similar purposes, but is not really the same thing)
- When an XML document consists only of an empty element with
attributes, that element does not get selected when the document
becomes active. So to start editing the attributes with Ctrl-E, I
first need to select the empty element with the mouse. (The
Selection menu's options are not available then either.)
In addition, if an attribute editor has been defined using CSS
command value-editor(), it is is not possible to use the tab key to
move the focus into its field, instead you have to click with the
mouse. This seems to be a side effect of the element being empty -
only if it has content, the tab key may be used to move the cursor
around between its content and one or more attribute value editors.
Is there any way to start editing an empty root element's attributes
using a value editor right after opening the document, using the
keyboard only?
- Entering characters from the Unicode character sets is currently
totally impossible using the keyboard only but requires using the
mouse: there is no menu item for character entry and the Character
tool does not allow to select a character using the keyboard only.
But there is some hope in the new character tool (see below).
2) New character tool invoked with command "insertSpecialChars"
---------------------------------------------------------------
It would be great, if, using this dialog box, it was possible to
select a character using the keyboard only. To this end, the field
with the glyphs would have to be able to receive the focus using the
tab key. Then it should be possible to navigate among the characters
and select a character using e.g. the cursor keys and Enter.
Selecting a character by typing its Unicode Codepoint should equally
be offered, by making use of the character range selection field: it
is already possible to enter the first character of the character
range to be displayed in the glyph boxes field. If that field could
receive the focus (see above), with its first character automatically
receiving the focus in turn, hitting Enter would then suffice to
insert the character into the active document.
Of course, it would be even more desirable if the new functions of the
normal character tool (management of favorites) would also be
available here. Especially, the "virtual" range of favorite characters
available in the "normal" character tool should also be available
here. If so, using a keyboard only should give access to all functions
(management of favorites, copying to clipboard) that are offered to a
mouse user.
3) Command for vertically recentering the cursor's context
----------------------------------------------------------
There should be a command (bindable to a keystroke) that acts
similar to Emacs' "recenter" command (not considering its redraw
aspect), allowing to put the spot that is currently edited at some
vertical position inside the document window (most usefully: at the
top), without using the mouse (mouse wheel or dragging of the
vertical scroll bar). At the moment, it can be quite annoying to
find the cursor at the very bottom of the window, so that the
context below is completely hidden and your neck gets stiff :-). It
might even happen that the cursor has moved beyond the visible area
(e.g. when an value-editor() attribute editor is shown after the
element's content: the screen is not refreshed when the cursor moves
down to something else than element content), making you typing
blindly without even knowing which field you are in. What makes it
worse is that the "old" place of the cursor shows the red bar cursor
without blinking, so it gives the idea of the cursor just being
stuck there, the missing blinking is hard to perceive at first sight.
The usual cursor motion keys (including PageUp etc.) do a very bad
job here: they will rarely allow you to move the line that the
cursor is in to the top of the document window. A new command
parametrizable by the number of lines (?) or rather pixels (plus
perhaps some higher-level values like Top, Center, Bottom) would be
excellent.
Suggestions concerning documentation and localization
=====================================================
4) Localized interface vs. English Documentation
------------------------------------------------
XXE's Online Help, User's Guide and Tutorial are all in English, while
the UI is localized (if available for the desired language). Being
able to communicate with XXE in one's own language is IMO a big
advantage, but sometimes it is difficult to guess which localized UI
item corresponds to which English item described in the documentation
(or having to switch back and forth between English and local
interface to find out the translations).
This problems occurs not only when trying to learn from the
documentation but also when communicating with other users about XXE
issues.
As long as the ideal (?) of a fully localized XXE documentation is out
of reach, XXE's documentation should be enriched with a table showing
the mapping of all localization names for each language. Maybe the
output of the translatexxe utility could be processed to create a HTML
document showing these correspondencies before delivering a localized
version of XXE?
5) Make navigation between the HTML documentation components easier
-------------------------------------------------------------------
Currently, "Home" in one of XXE's documentation files can mean
different things, like the document's first page (e.g. in the Online
Help and many other documents), XXE's home page (e.g. in the User's
Guide). IMHO, clicking on "Home" in any of these documents should
never lead you to XXE's home page, but rather to a place which might
act as some kind of local "XXE documentation center", e.g. index.html
within the docs directory.
Currently, getting back to where you started from is hard; having a
common starting point like this would greatly enhance navigating
between XXE's documentation files.
The link to XXE's home page would best be found in that central
document (where it is missing today!), telling the user where to find
more information.
Yves Forkl