Кодовая точка Unicode для комбинаций клавиш команд

Может кто-нибудь подскажите, пожалуйста, как определить точку символа Юникода для многоклавишной комбинации, которая включает "командную" клавишу? Например, если пользователь одновременно нажимает клавиши «команда» и «1» на клавиатуре, каково это представление символов Юникода?

Возможно, я ищу не то, но я не могу найти это в картах символов, ссылках на клавиатуру или таблицы Unicode Я нахожу. Я могу отсортировать другие сочетания клавиш (например, shift-1), так как вывод символа "!" Очевиден. что я могу поискать и обнаружить, что это U + 0021. Когда я перехожу к картам персонажей или приложениям, кажется, что командная клавиша всегда выполняет действие, а не выводит результат персонажа на экран.

Мое приложение предназначено для iOS, и я ожидал, что оно будет таким же, как Mac OS X с точки зрения кода Unicode. Все API-интерфейсы iOS, которые предоставляют доступ к клавиатуре, рассматривают ее как источник символов Юникода. Таким образом, причина, по которой я пытаюсь обнаруживать нажатия клавиш таким образом.

Спасибо.


person DenVog    schedule 22.10.2010    source источник
comment
Я не думаю, что существует такое соответствие между раскладками клавиатуры и символами Unicode.   -  person activout.se    schedule 22.10.2010
comment
Какой ОС вы используете - это влияет на символы, которые создаются комбинациями клавиш.   -  person Robin    schedule 22.10.2010


Ответы (3)


Коды клавиатуры в основном не зависят от кодов символов.

Хотя (как вы упомянули) многие ключи имеют стандартные сопоставления со стандартными кодами ASCII, приложение должно решать, что с ними делать.

Некоторые входные API могут широко использоваться в конкретной ОС, а некоторые приложения (например, эмуляторы терминала) могут использоваться как общий метод ввода для класса задач, но универсального стандарта не существует.

Обязательная ссылка на Википедию для ввода Unicode.

person comingstorm    schedule 22.10.2010
comment
Я разрабатываю приложение, поэтому в конечном итоге могу решить, что с ним делать. Хотя сначала я должен его обнаружить. Мое приложение предназначено для iOS, и я ожидал, что оно будет таким же, как Mac OS X с точки зрения кода Unicode. - person DenVog; 23.10.2010
comment
Все API-интерфейсы iOS, которые предоставляют доступ к клавиатуре, рассматривают ее как источник символов Юникода. - person DenVog; 23.10.2010

Вы не можете. Просто не существует кодовых точек Unicode, соответствующих Command + some-other-character.

Кстати, то же самое и с Shift. Тот факт, что ваш компьютер сопоставляет определенные комбинации с определенными кодовыми точками Unicode, не означает, что Unicode определяет такие сопоставления, или что сопоставления существуют для каждой комбинации ключей, или что эти сопоставления одинаковы для всех остальных. Я использую две клавиатуры каждый день; один из них отображает Shift + 3 в #, другой отображает его в £. Это решает операционная система, а не Unicode. Если вы попытаетесь обнаружить нажатие клавиши Shift + 3, прислушиваясь к #, ваша программа, как мне кажется, не работает в половине случаев.

Это прекрасный пример вопроса XY. Вам на самом деле наплевать на Unicode - вы действительно хотите знать, как определять нажатия клавиш с помощью модификатора Command в iOS. Вы бы просто спросили, как это сделать! Вероятно, существует API, который делает именно то, что вам нужно, что вы просто упустили, потому что вы концентрировались на своем предположении, что решение будет включать Unicode - и, вероятно, есть множество экспертов iOS, которые вообще не удосужились прочитать этот вопрос, потому что они думали, что ваша проблема связана с Unicode, а не с iOS.

person Porculus    schedule 22.10.2010
comment
Я не верю в это по двум причинам: 1. Apple специально ответила, что все API-интерфейсы, обеспечивающие доступ к клавиатуре, рассматривают ее как источник символов Unicode и ничего более. 2. Существуют эквиваленты Unicode, по крайней мере, для некоторых комбинаций клавиш, как я упоминал в моем примере для Shift-1 и в этом сообщении о переполнении стека. stackoverflow.com/questions/3199635/ - person DenVog; 23.10.2010
comment
Извините, если я не смог хорошо сформулировать вещи в своем первоначальном посте. - person DenVog; 23.10.2010

Простой ответ: нет.

Вы не сказали нам, какой компьютер вы используете. Сопоставление нажатия клавиши с кодовой точкой Unicode зависит от операционной системы, а затем от активного языкового стандарта.

person bmargulies    schedule 22.10.2010
comment
Мое приложение предназначено для iOS, и я ожидал, что оно будет таким же, как Mac OS X с точки зрения кода Unicode. - person DenVog; 23.10.2010