XXE is an excellent product that I've been using for many years by now. But I fully agree with Daniel Dekany, Jean Jordaan, Manuel Collado and Kevin Flynn that it would benefit a lot from working on some of the issues addressed, which I would call usability flaws.
Usability might seem a minor point compared to "real" features and fixing of severe bugs, but in daily XXE usage it is of prime importance, especially for "end users". I understand that certain decisions that were made on the implementation design of XXE will make it very hard to alter certain aspects of its behaviour, but it makes me sad to learn that some of XXE's flaws which have been bothering quite a number of people for a long time won't go away soon (or at all). IMHO, basic visualization issues (like the caret not being in sync between two views or not moving where it should when I'm selecting text) need to be fixed urgently because they can make it somewhat difficult for new users to get accustomed to working with XXE. Like Manuel Collado, I have seen many situations in which the CSS view could hardly replace the tree view (e.g. in some cases when trying to insert an element into an empty element without using the mouse). Synchronization of the two views should at least be possible on request, i.e. by the user calling some command. (A bit like Ctrl-l in Emacs which is repositioning the caret.) Two views on the same document is something that I am using all the time within many applications. I couldn't develop without this in (X)Emacs, for instance. Quite frequently I need to work on different portions of a document, and I am not at all convinced that this should always force me to divide my document up into parts to be managed with XInclude just because XXE has been designed to author DITA-like topics. (Some XML documents might better be left unsplit to prevent later reassembly, and to have everything available at once, cf. Jean Jordaan's comment.) One further usability issue that has not been mentioned yet is incomplete control via the keyboard. XXE being one of the very, very few XML editors allowing highly efficient and productive authoring of XML documents by dispensing you almost completely of using the mouse, as it makes the vast majority of its commands available via keystrokes (and allows you to add your own commands and key bindings), this feature is definitely one of its unique selling points. It is pity, however, that some actions can only be performed with the mouse and will disrupt keyboard usage. Most notably this concerns functions that are not found in any menu (a fact which in itself might be considered a kind of UI flaw, too), especially the Character Tool. When working with a lot of special characters, it is very painful to leave the keyboard each time in order to pick and copy a character (e.g. into the search field) using the mouse. Defining an individual insertion command for each of the characters and binding it to a key is not always feasible; what is worse, pasting the character into the search field can't be done this way (or via macro command at all), AFAIK. Short of making all of the Character Tool's functions available on keystrokes (or via menu options?), why not provide a command on a keystroke that accepts the digits of a Unicode codepoint and "returns" the corresponding character, always inserting it at the caret - no matter if the caret happens to be within an element's text node, an attribute value, the search field etc.? Please help make XXE not only the XML editor of our choice, but the one that we love! Yves

