1 /* -*- mode: C; c-basic-offset: 4; indent-tabs-mode: nil; -*- */
9 /* the test is supported only on linux */
10 int main (int argc, char **argv)
16 #include <linux/input.h>
18 #define KEYBOARDPATH "/dev/input/event4"
20 int main (int argc, char **argv)
28 IBusKeymap *keymap = ibus_keymap_get (argc > 1 ? argv[1] : "us");
30 g_object_unref (keymap);
33 fd = open (KEYBOARDPATH, O_RDONLY);
36 while (fd >= 0 && read (fd, &e, sizeof (e)) == sizeof (e)) {
42 g_debug ("=========================================================================");
43 g_debug ("keycode = %d, %s %s %s %s %s", e.code,
44 ibus_keyval_name (ibus_keymap_lookup_keysym (keymap, e.code, 0)),
45 ibus_keyval_name (ibus_keymap_lookup_keysym (keymap, e.code, IBUS_SHIFT_MASK)),
46 ibus_keyval_name (ibus_keymap_lookup_keysym (keymap, e.code, IBUS_MOD5_MASK)),
47 ibus_keyval_name (ibus_keymap_lookup_keysym (keymap, e.code, IBUS_MOD5_MASK | IBUS_SHIFT_MASK)),
48 ibus_keyval_name (ibus_keymap_lookup_keysym (keymap, e.code, IBUS_MOD2_MASK))
52 g_object_unref (keymap);