Тут надо представлять, как клавиатурные нажатия передаются в текстовое отображение.

Когда вы нажимаете кнопку на клавиатуре, ОС порождает событие и посылает его в окно, в котором у вас текст. Каркас обрабатывает это событие и формирует сообщение для шины. Далее это сообщение падает вниз, по дереву фреймов, прямо до отображения в фокусе - которым является ваш текст. Контроллер текста обрабатывает сообщение и текст получает необходимые изменения.

Исходя из этой логики, у вас есть два способа изменить поведение текста.

1) Заменить контроллер своим.
2) Обернуть текстовое отображение собственным, чтобы перехватывать сообщение и обрабатывать его как нужно.

Проще сделать обёртку текста, см. пример ObxWrappers, там как раз есть демонстрация обработки сообщения.