Currently it supports basic ascii text editing, that can seem not so much.
Actually I am really happy for the work done as I think (and I hope) I met several goals:
- extensibility in terms of features: you can add features (commands gestures syntaxes) to Safarà at runtime, without interfering or having to interact with other layers;
- portability over implementations: the model does not know anything about the UI as they are completely decoupled and communication between them occurs by using announcements. Thus, you can write also a non-morphic UI for example. Just make your UI objects subscribe to the right announce and write a bridge to translate the GUI-dependent events to the Safarà events;
- Classes and methods are well categorized, documented and tested.
For the Morphic UI: Do not use TextMorph as base class but a custom morph
For the model: Integrate into Safarà some code wrote by Lukas for syntax-aware commands
You can find the latest snapshot here. There is also a developer mailing list, you can subscribe to. As Safarà partecipate to the ESUG 2008 awards you can find additional documentation about the project goals and design here.
For the most curious, this is a snapshot