ir-keytable: Bug in gen_keytables.pl script
Hello,
I recently received this launchpad bug:
https://bugs.launchpad.net/ubuntu/+source/v4l-utils/+bug/1054122
It seems that the mentioned key mappings are missing.
If you check the generated mapping file
http://git.linuxtv.org/v4l-utils.git/blob/HEAD:/utils/keytable/rc_keymaps/imon_pad
and compare it to the driver file
you'll notice that the parsing stopped at the BTN_xyz table entries:
Quoted 2 lines
{ 0x299115b7, KEY_KEYBOARD },
{ 0x299135b7, KEY_KEYBOARD },processing stopped here
Quoted 9 lines
{ 0x01010000, BTN_LEFT },
{ 0x01020000, BTN_RIGHT },
{ 0x01010080, BTN_LEFT },
{ 0x01020080, BTN_RIGHT },
{ 0x688301b7, BTN_LEFT },
{ 0x688481b7, BTN_RIGHT },
{ 0x2a9395b7, KEY_CYCLEWINDOWS }, /* TaskSwitcher */
{ 0x2b8395b7, KEY_TIME }, /* Timer */Mauro, could you please take a look? I guess the BTN_xyz entries should be also added to the keytable files. Unfortunately my Perl skills are horrible.
Thanks,
Gregor
Em Sun, 07 Oct 2012 19:24:26 +0200
Gregor Jasny <[email protected]> escreveu:
Quoted 28 lines
Hello,
I recently received this launchpad bug:
https://bugs.launchpad.net/ubuntu/+source/v4l-utils/+bug/1054122
It seems that the mentioned key mappings are missing.If you check the generated mapping file
http://git.linuxtv.org/v4l-utils.git/blob/HEAD:/utils/keytable/rc_keymaps/imon_pad
and compare it to the driver file
you'll notice that the parsing stopped at the
BTN_xyztable entries:Quoted 2 lines
{ 0x299115b7, KEY_KEYBOARD }, { 0x299135b7, KEY_KEYBOARD },processing stopped here
Quoted 7 lines
{ 0x01010000, BTN_LEFT }, { 0x01020000, BTN_RIGHT }, { 0x01010080, BTN_LEFT }, { 0x01020080, BTN_RIGHT }, { 0x688301b7, BTN_LEFT }, { 0x688481b7, BTN_RIGHT },
Quoted 6 lines
Quoted 2 lines
{ 0x2a9395b7, KEY_CYCLEWINDOWS }, /* TaskSwitcher */ { 0x2b8395b7, KEY_TIME }, /* Timer */Mauro, could you please take a look? I guess the
BTN_xyzentries should be also added to the keytable files. Unfortunately my Perl skills are horrible.
Thanks for noticing!
Fixed. The fix for it was quick and simple:
- if (m/(0x[\dA-Fa-f]+)[\s\,]+(KEY_[^\s\,\}]+)/) {
- $out .= "$1 $2\n";
+ if (m/(0x[\dA-Fa-f]+)[\s\,]+(KEY|BTN)(\_[^\s\,\}]+)/) {
+ $out .= "$1 $2$3\n";
Basically, the regex there weren't expecting mouse buttons. Some MCE remotes have it.
I also updated the keytables, syncing it with the very latest git tree.
Regards,
Mauro