Modifique o NSEvent para enviar uma tecla diferente daquela que foi pressionada

Estou tentando criar um gancho de teclado OS X para fins de tecnologia assistiva (ou seja, não se preocupe, não é um keylogger

Quando um usuário pressiona uma tecla, eu queroevit o pressionamento de tecla real emanda um pressionamento de tecla falso (personagem de minha escolha

Eu tenho o seguinte código

- (void) hookTheKeyboard {
    CGEventMask keyboardMask = CGEventMaskBit(kCGEventKeyDown);
    id eventHandler = [NSEvent addGlobalMonitorForEventsMatchingMask:keyboardMask handler:^(NSEvent *keyboardEvent) {
        NSLog(@"keyDown: %c", [[keyboardEvent characters] characterAtIndex:0]);
        //Want to: Stop the keyboard input
        //Want to: Send another key input instead
    }];
}

Alguma ajuda para alcançar algum desses objetivos? Modificando basicamente o "keyboardEvent" do NSEvent para enviar um caractere diferente. Obrigado

questionAnswers(2)

yourAnswerToTheQuestion