【问题标题】:Strategies for localising keyboard shortcuts本地化键盘快捷键的策略
【发布时间】:2010-10-03 19:21:35
【问题描述】:

我目前参与了一个高度本地化的 WPF 应用程序,我们遇到了一个关于非英语语言菜单上的键盘快捷键的错误。该错误涉及未翻译的修饰键名称(ShiftCtrl 等),这很容易修复。

但是,这让我想到了快捷键本身,它们通常基于命令的第一个字母,除非由于冲突或约定不可行。当命令名称被本地化时,命令和它们各自的快捷方式之间的链接通常会丢失:

  • 这值得担心吗?
  • 现有的主要应用程序如何应对这个问题?
  • 在这种情况下还有其他问题需要考虑吗?

虽然这个问题的灵感来自 WPF 应用程序,但我对一般情况更感兴趣。

【问题讨论】:

    标签: localization keyboard-shortcuts


    【解决方案1】:

    您应该远离符号键(例如 *),因为它们往往会在国际键盘上移动。见Wikipedia: Keyboard layout

    如果您计划根据本地化切换字母,您应该让用户选择他/她是否想要英文变体。如果我必须根据语言学习两组快捷方式,这会令人沮丧。 (跨平台应用程序也是如此。)

    最好是完全可自定义的键盘快捷键,但对于高级用户来说可能更多。示例见Media Player Classic

    【讨论】:

    • 这里有一些优点。我不会担心符号四处移动,但如果它们在某些布局上根本不可用,那将是一个大问题。
    • 您能告诉我这到底是什么意思:'完全可自定义的键盘快捷键'?
    • 用户可以更改任何可以通过在键盘上按下某物来触发的操作的键盘快捷键。或者相反,更改任何可分配键盘快捷键的操作。
    【解决方案2】:

    在搜索更多信息时,我发现了一个关于这个确切主题的出色 blog post

    总结一下:

    • 如果可能,快捷方式不是 改变了
    • 如果密钥在 我们应该尝试使用的特定布局 相同的物理位置
    • 那里 应用程序之间应该没有联系 语言和键盘布局
    • 这是一个 考虑该应用程序的错误 语言将匹配键盘 布局。我给你举个例子: 在罗马尼亚超过 95% 的计算机 正在使用美国键盘布局和 其他 5% 正在使用 4-5 中的一种 不同的罗马尼亚语键盘布局。
    • 有些人正在使用多个 键盘布局 - 通常是 高级用户,我们不能忽视他们 键盘布局可以切换 随时
    • 字符是安全的 仅当它们是拉丁语时才使用

    【讨论】:

    • 你能告诉你最后一点中“拉丁字符”的确切含义吗?哪个字符是拉丁人? A 到 Z 是拉丁语吗?
    【解决方案3】:

    微软有这方面的指导方针,值得一试:http://msdn.microsoft.com/en-us/library/windows/desktop/bb545460.aspx#choosing

    来自Top Guidelines Violations

    • 不要将访问键与快捷键混淆。虽然访问键和快捷键都提供对 UI 的键盘访问,但它们有不同的用途和准则。
    • 为最常用的命令分配快捷键。不常用的程序和功能不需要快捷键,因为用户可以使用访问键。
    • 不要为众所周知的快捷键分配不同的含义。因为它们是被记住的,众所周知的快捷方式的不一致的含义是令人沮丧和容易出错的。有关 Windows 程序使用的众所周知的快捷键,请参阅 Windows 键盘快捷键。
    • 不要尝试分配系统范围的程序快捷键。只有当您的程序有输入焦点时,您的程序的快捷键才会生效。

    【讨论】:

    • 这些链接现在已损坏
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多