Я не уверен, что есть, к сожалению. CGEvent
и NSEvent
(которые не являются платными мостами, но NSEvent
может конвертировать туда и обратно) являются стандартными контейнерами для событий, включая нажатия клавиш и результат может преобразовываться из кодов сканирования, зависящих от устройства, в строковые последовательности в юникоде, но, похоже, нет никакого другого способа пойти в другом направлении - от символа юникода до требуемой последовательности нажатий в зависимости от устройства.
Под кратким комментарием CGEventCreateKeyboardEvent
есть следующий комментарий:
Необходимо ввести все нажатия клавиш, необходимые для создания символа,
включая клавиши-модификаторы. Например, чтобы создать 'Z', нажмите клавишу SHIFT
должен быть вниз, клавиша 'z' должна идти вниз, а затем клавиши SHIFT и 'z'
должен быть освобожден:
Но показанная последовательность имеет жестко закодированные и необъяснимые константы для клавиш Shift и Z.