使用ruby找出使用的键盘布局

时间:2008-10-15 18:32:09

标签: ruby keyboard-layout

如何找出我的ruby应用程序的用户使用的键盘布局? 我的目标是建立一个游戏,你可以在地图上移动玩家。要往前退一步,然后再按一步,在德语键盘上按“Y”。在美式键盘上,按“Z”键。我们针对windows和mac优化了游戏,所以我想为两个平台提供解决方案(我们不使用任何命令/ shift / control-keys)。

3 个答案:

答案 0 :(得分:2)

对于Windows,您可能必须使用Windows API GetKeyboardLayout(),除非Ruby提供了包装器。

有很多useful I18n resources for Windows on the MSDN web site

如果您没有良好的可移植方式来检测它,可能更容易让它们自己配置为首选项。

答案 1 :(得分:1)

我认为允许用户自己定义密钥会更容易和自然。

答案 2 :(得分:0)

正如亚历山大所建议的那样,让用户自己定义密钥。

但是,如果你真的想要识别布局,你总是可以要求用户在某些位置按键,特别是某些布局。

“按下返回键左侧的第二个键。如果您的返回键是两行高,请按下一行”“ [按ä]
“看起来你有一个斯堪的纳维亚键盘”

然而,这是一个可怕的淤泥,并且,在游戏环境中,会推荐自定义键盘映射方法