The Thinkpad has vertical and horizontal arrow keys. But it doesOn my keyboard, those corner keys on the keypad are End, PgDn, PgUp,
not
have arrow keys corresponding to 7, 9, 1, and 3 on a regular keyboard.
Yes, I know how to "enable numeric keypad" on a Thinkpad. While that
does emulate numbers, it does not emulate the arrows. I happen to
need
the angled arrows. Is there a way to find out the keycodes, and send
them? Plan B is to buy a hardware keypad off Amazon.
--
Walter Dnes <waltdnes@waltdnes.org>
I don't run "desktop environments"; I run useful applications
On my keyboard, those corner keys on the keypad are End, PgDn, PgUp,
and NumLock, all of which have their own keys elsewhere on the
keyboard.. When you say angled arrow keys, do you mean that literally,
or are you just talking about the corner keys of the keypad? I don't
recall ever seeng a literal angled arrow on a keyboard.
On Wed, Aug 24, 2022 at 01:07:52PM -0400, Jack wrote
On my keyboard, those corner keys on the keypad are End, PgDn, PgUp,literally,
and NumLock, all of which have their own keys elsewhere on the
keyboard.. When you say angled arrow keys, do you mean that
or are you just talking about the corner keys of the keypad? Idon't
recall ever seeng a literal angled arrow on a keyboard.
No literal arrows. But an old OS/2 game I enjoy, treats the numeric keypads as...
{HOME} ==> move up and to the left
{PgUp} ==> move up and to the right
{END} ==> move down and to the left
{PgDn} ==> move down and to the right
I have tried {HOME}, {PgUp}, {END}, {PgDn} on the Thinkpad but the
game did not respond. If I attach a big clunky regular USB keyboard,
it
works as expected.
Ah - I expect the game is interpreting keycodes fairly directly. You
can use xev (or similar) to find what the various keys are currently producing, and there must be some (Xorg related) program to translate
them to whatever the program is expecting - perhaps determined by using
xev with a "proper" keyboard.
On Wed, Aug 24, 2022 at 05:58:28PM -0400, Jack wrote
Ah - I expect the game is interpreting keycodes fairly directly.You
can use xev (or similar) to find what the various keys are currently producing, and there must be some (Xorg related) program totranslate
them to whatever the program is expecting - perhaps determined byusing
xev with a "proper" keyboard.
1..9 on a real keyboard numeric keypad. The "XLookupString" line
tells you which key is pressed. I think the "keycode" entry is what
is
being acted on by the game. Google seems to indicate that setxkbmap
is
what I need, Once I emerge it, then what?
KeyPress event, serial 38, synthetic NO, window 0x1000001,
root 0x76b, subw 0x0, time 2031605618, (-448,387), root:(368,623),
state 0x10, keycode 87 (keysym 0xffb1, KP_1), same_screen YES,
XLookupString gives 1 bytes: (31) "1"
XmbLookupString gives 1 bytes: (31) "1"
XFilterEvent returns: False
That's on a real numeric keypad. Meanwhile on the Lenovo ThinkpadI think the whole point of the mapping is to change the meaning of the
left shift
KeyPress event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25019825, (528,-50), root:(532,488),
state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25019913, (528,-50), root:(532,488),
state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
exit
KeyPress event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25211416, (708,53), root:(712,591),
state 0x0, keycode 115 (keysym 0xff57, End), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25211553, (708,53), root:(712,591),
state 0x0, keycode 115 (keysym 0xff57, End), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
pgdn
KeyPress event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25338798, (677,2), root:(681,540),
state 0x0, keycode 117 (keysym 0xff56, Next), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25338934, (677,2), root:(681,540),
state 0x0, keycode 117 (keysym 0xff56, Next), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
home
KeyPress event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25427458, (880,-8), root:(884,530),
state 0x0, keycode 110 (keysym 0xff50, Home), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25427562, (880,-8), root:(884,530),
state 0x0, keycode 110 (keysym 0xff50, Home), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
pgup
KeyPress event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25478798, (767,108), root:(771,646),
state 0x0, keycode 112 (keysym 0xff55, Prior), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 38, synthetic NO, window 0xe00001,
root 0x256, subw 0x0, time 25478901, (767,108), root:(771,646),
state 0x0, keycode 112 (keysym 0xff55, Prior), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
###################################################################
Is it possible to map {LEFT-SHIFT} plus End, PgDn, Home, PgUp to "real keypad" 1, 3, 7, 9 respectively? If the {LEFT-SHIFT} is not being held
down, then the End, PgDn, Home, PgUp would have their regular meanings.
To be more specific, while "keycode 50 (keysym 0xffe1, Shift_L)" is in
effect (i.e. {Left}{SHIFT} is being held down)...
{END} (aka down left) maps to "keycode 87 (keysym 0xffb1, KP_1)"
{PgDn} (aka down right) maps to "keycode 89 (keysym 0xffb3, KP_3)"
{HOME} (aka up left) maps to "keycode 79 (keysym 0xffb7, KP_7)"
{PgUp} (aka up right) maps to "keycode 81 (keysym 0xffb9, KP_9)"
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 302 |
Nodes: | 16 (0 / 16) |
Uptime: | 97:02:34 |
Calls: | 6,764 |
Calls today: | 2 |
Files: | 12,295 |
Messages: | 5,376,370 |
Posted today: | 1 |