gpt4 book ai didi

linux - 如何将 Linux 键码从/dev/input/event* 转换为 ASCII

转载 作者:IT王子 更新时间:2023-10-29 00:59:06 25 4
gpt4 key购买 nike

我正在尝试将从/dev/input/event0 中定义的值中读取的键盘事件转换为它们在未运行 X 或终端的嵌入式应用程序中的 ASCII 等价物。

我认为这应该通过 Linux 中定义的键映射功能来完成,而不是仅仅创建我自己的 std::map<> 但我似乎找不到一个好的起点。到目前为止,我发现的大多数示例都假定我正在使用 X 窗口或终端运行。

最佳答案

文本输入(除了非常简单的传统美式键盘和 7 位 ASCII 标准)是一个极其复杂的领域。我强烈建议您使用 X 客户端执行此操作,您可以在其中利用所有现有的输入法。

但如果您必须这样做,并且您对一种键盘和一种语言感到满意,您可以像终端一样通过解释事件来做到这一点。检查 /usr/include/linux/input.h 中的定义以获取值。跟踪 Shift 和 Ctrl 键的位置(非 ASCII 键,如 Alt、Fn 等……当然,由您来解释)并在按键事件中发出相应的字节。如果默认设置对您的应用程序不起作用,您可能还想实现一个自动重复功能。

但基本上:不要。这是一个比您似乎意识到的要难得多(!)的问题。

关于linux - 如何将 Linux 键码从/dev/input/event* 转换为 ASCII,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11436032/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com