Стратегии локализации сочетаний клавиш
В настоящее время я участвую в сильно локализованном WPF-приложении, и у нас появилась ошибка, связанная с ярлыками клавиш на меню на неанглийских языках. Исправлена ошибка, связанная с именами ключей моддера (Shift, Ctrl и т.д.), Которые легко переделаны, что достаточно легко исправить.
Однако это заставило меня задуматься о самих комбинациях клавиш, которые часто основаны на первой букве команды, за исключением случаев, когда это невозможно из-за конфликтов или соглашений. Когда имена команд локализованы, эта ссылка между командами и их соответствующими ярлыками обычно будет потеряна:
- Стоит ли беспокоиться об этом?
- Как существующие существующие приложения справляются с этой проблемой?
- Есть ли другие проблемы, которые следует учитывать в этом случае?
Хотя этот вопрос был вдохновлен WPF-приложением, меня больше интересует общий случай.
Ответы
Ответ 1
Вам следует держаться подальше от символьных клавиш (например, * и <), так как они обычно перемещаются по международным клавишам. См. Википедия: Раскладка клавиатуры
Если вы планируете переключать буквы в зависимости от локализации, вы должны разрешить пользователю выбирать, хочет ли он/она варианты на английском языке. Это расстраивает, если мне нужно изучить два набора ярлыков в зависимости от языка. (То же самое касается кросс-платформенных приложений.)
Лучшими были бы полностью настраиваемые сочетания клавиш, но это могло бы быть больше для опытных пользователей. Для примера см. Media Player Classic.
Ответ 2
При поиске дополнительной информации я нашел отличную запись в блоге по этой точной теме.
Подводя итог:
- Если возможно, ярлык не изменено
- Если ключ недоступен конкретный макет, который мы должны попытаться использовать та же физическая позиция
- Там не должно быть никакой связи между приложением язык и раскладка клавиатуры
- Его а ошибка рассмотреть это выражение язык будет соответствовать клавиатуре раскладка. Я приведу вам пример: в Румынии более 95% компьютеров используют раскладку клавиатуры в США и другие 5% используют один из 4-5 различные румынские раскладки клавиатуры.
- Некоторые люди используют несколько раскладки клавиатуры - обычно они и мы не можем их игнорировать раскладки клавиатуры можно переключить в любое время
- Персонажи могут быть безопасными используется только в том случае, если они являются латинскими
Ответ 3
У Microsoft есть рекомендации по этому вопросу, стоит проверить: http://msdn.microsoft.com/en-us/library/windows/desktop/bb545460.aspx#choosing
И из Нарушения верхнего руководства:
- Не путайте ключи доступа с помощью сочетаний клавиш. Хотя оба ключа доступа и сочетания клавиш обеспечивают доступ к интерфейсу пользователя, у них разные цели и рекомендации.
- Назначьте сочетания клавиш для наиболее часто используемых команд. Редко используемым программам и функциям не нужны сочетания клавиш, поскольку пользователи могут использовать ключи доступа вместо этого.
- Не назначайте разные значения известным клавишам быстрого доступа. Поскольку они запоминаются, непоследовательные значения для известных ярлыков расстраивают и подвержены ошибкам. Для известных сочетаний клавиш, используемых программами Windows, см. "Клавиши быстрого доступа к клавишам Windows".
- Не пытайтесь назначать программные клавиши для всей системы. Клавиши быстрого доступа к вашей программе будут действовать только тогда, когда ваша программа имеет фокус ввода.