1) The ability to define/redefine commands. Which means some sort of
extension language including:
1.1) WHILE .. DO ..
1.2) IF .. THEN .. ELSE .. (The ELSE is of course optional)
1.3) Variables: Local, and Global (This implies include simple math
functions, assignment, and comparison)
1.4) The ability to call other commands and editor primitives.
1.5) Input Output commands.
1.5) An interactive debugger? (it would be painfull to use this language
to develope a ~REAL~ editor without it)
1.6) Other looping constructs? Perhaps a case type statement.
2) Some means to connect commands to keys, and some way to disconnect them.
3) Due to the size limitations of most machines, a way to load libraies of
functions and to "Unload" them (ie. get them out of core).
4) Editing primitives. Including:
4.1) Movement - both relative and abolute.
4.2) Insertion
4.3) Delteion
4.4) Searching
4.5) Multiple buffers
4.5.1) Creation of
4.5.2) Deletion of
4.5.3) Selection of
5) Display package? Should this be at a low level and thus fast, or should
it be written in the extension language and thus easily modified?
I would appreciate comments-suggestions-extensions to the above.
j'
-------