Для проекта, над которым я работаю, мне нужно открыть Файлы макетов Xkb * и сохранить информацию о ключе в памяти. То есть; сохраняя, какой ключ сопоставляется каждому ключу. Кто-нибудь знает API в домене C ++, который это делает? я нашел этот, но это питон
Учитывая первые несколько строк макета, английский (США) …
default partial alphanumeric_keys modifier_keys
xkb_symbols "basic" {
name[Group1]= "English (US)";
key <TLDE> { [ grave, asciitilde ] };
key <AE01> { [ 1, exclam ] };
key <AE02> { [ 2, at ] };
… Я хотел бы сохранить это для раскладки «Английский (США)», клавиша TLDE держит «могилу» и «asciitilde», клавиша AE01 держит «1» и «exclam», а клавиша AE02 удерживает «at».
* В Ubuntu файлы макетов Xkb хранятся в: /usr/share/X11/xkb/symbols
Я очень сомневаюсь, что вы найдете библиотеку C ++ для анализа этого файла. Ваша лучшая ставка была бы функцией C где-нибудь в коде xorg. Но вы уверены, что это то, что вы хотите сделать? Если вы хотите знать, как ключи в настоящее время определяются на работающем сервере, вам лучше было бы опросить сервер. Конечно, X имеет функцию, которая перечисляет определение клавиатуры?
Других решений пока нет …