UITextInput, RTF Parsing and More

Between bottle feedings and playing with the kids I’ve been working on an iPhone RTF parser as well as a UITextInput library. I’m intending to write a few “how-to” posts to explain how these classes work but for the moment I’ve posted my work on the UITextInput library and abandoned the RTF parser. I was prompted to do this now because the wonderful OmniGroup has posted an update to their public framework that includes a bunch of awesome work on RTF, UITextInput and much much more.

They have a “fully working” TextEditor example with document management and style input right of the box (MIT licensed too!). One note however, if you’re going to try out the framework be sure to follow the readme:

To checkout:

git clone git://github.com/omnigroup/OmniGroup

To build Debug versions of all the Omni frameworks:

cd OmniGroup
./Scripts/Build Frameworks

To build Release versions of all the Omni frameworks, instead do:

./Scripts/Build Frameworks install

You’ll also need to edit your XCode build pref pane, and set “Place Build Products in:” to a Customized Location: /Users/Shared/[yourusername]/Products. That’s where the frameworks are built to and if this isn’t set you’ll be looking at a lot of error messages.

The iPad TextEditor example is in OmniGroup/Frameworks/OmniUI/iPad/Examples/TextEditor and requires the 3.2 SDK to build it (4.0 beta throws some errors when you try to run the app).

Out of the box it has a nice document manager and full editing but there’s lots of rough edges and areas for improvement. I’m going to fork it and implement some of my UITextInput interactions to get it looking a little spiffier so follow me on Github or Twitter if you’re interested.