TODO list for ex

- Wide-character support. Not that important today, but if Unicode
    really manages to get on a substantial number of Unix terminals
    in the future, it will become a must-have.

- POSIX.2 RE character class expressions ([:digit:] and the like).
    As the only way to access locale-specific character classes are
    the iswctype()/wctype() functions, this should be done in wide-char
    mode only once it is implemented.

- POSIX.2 RE collating symbols (like [.ch.]) and equivalence classes
    (like [=a=]). The standard developers missed to include a low-level
    interface for this: for a given string, one cannot determine if it
    is a valid collating element or a valid equivalence class. The only
    interfaces are fnmatch() and regcomp()/regexec(). But fnmatch() has
    no useful error reporting and standard regcomp() syntax lacks the 
    \< \> word delimiters which are required for ex. So in order to
    implement a conforming ex without access to system internals, one
    had to mix an external RE implementation and regcomp(). That's just
    ugly and I think I won't do it, but if somebody did, I'd add his code.

- There may be other unresolved POSIX.2 demands I did not notice yet.
    Please write me if you find one. You can get SUSv2 from The Open
    Group <http://www.UNIX-systems.org/> for $0, it contains nearly the
    same text for ex/vi as POSIX.2 and is a good reference manual.

- SVr4 ex probably has some silent features that this one should have, too.

- SUSv3 / POSIX.1-200x ex/vi support.
    I did not yet decide whether this is worth implementing. It requires
    a lot of mostly small changes that make vi more nvi-like in general.
    If SUSv3 has as little success in the Open Source world as its
    predecessors, it might be better to ignore it and stay on the
    officially obsolete SUSv2 / POSIX.2 level.

- Translated message catalogues.

Gunnar Ritter						2/4/02
