我想用 Rust 编写一个低级、快速的文本编辑器。对于图形/窗口,我计划使用 SFML 在 Windows、macOS 和 Linux 之间轻松快速地交叉兼容。
现在,我遇到的问题是在需要 Shift 键的文本编辑器中键入字符时。SFML,甚至其他查询本机操作系统系统调用(如keyboard_query )的库只为您提供“按下SHIFT 和3”之类的扫描码,现在,在我的键盘(英国Macintosh 键盘)上,我希望它£
在文本编辑器中生成一个,但是美国人会希望它#
为其他键盘布局生产,依此类推。
是否有一种可靠的跨平台方法可以知道某人想要输入哪个字符,而不管他们的键盘布局如何?
如果做不到这一点,有没有办法只在 macOS 中做到这一点?或者我是否必须为我想要支持的每个键盘布局输入 Shift+whatever 键生成的大映射?