> pida may be the 'master tool' that allows developers to concentrate on > what they do best. For Leo, that means outline stuff, and nothing > else.
Time for another idea that I omitted from the original post. A python wrapper for Emacs would allow Leo to use outlines to specify Emacs settings. In other words, Leo would use the wrappers to change (or augment) how the user specifies settings in Emacs. Similarly, I would like a way to augment IPython's excellent scripting capabilities with Leo's outline-oriented scripting features. In both cases, I do *not* want to duplicate code, either in Emacs or IPython. Neither to I want to change code in Emacs or IPython. In essence, I want to use the existing code, and hook into the existing code to augment it. It's similar to overriding a class. The point is that features like outlines have global consequences. They are not just a hunk of code that can be plunked into a code base: they affect many other aspects of an app. As another example, IPython's key handling (a readline extension) should presumably affect key handling in many places in an app. In other words, mixing and matching features from different apps is an "interesting" problem. In order to play with mixing and matching, we must be able to use existing code. Wrapping apps in python could allow this. (IPython doesn't need wrappers because it is written in Python). If we have to reimplement features in order to play with them very little 'playing' will actually happen: it's just too much work. Edward
