Стратегии локализации сочетаний клавиш

В настоящее время я участвую в сильно локализованном 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".
  • Не пытайтесь назначать программные клавиши для всей системы. Клавиши быстрого доступа к вашей программе будут действовать только тогда, когда ваша программа имеет фокус ввода.