Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Comments on Why is Pause/Break key is immediately released? Can that be fixed?

Post

Why is Pause/Break key is immediately released? Can that be fixed?

+6
−0

Since the Pause key is useless, I tried to map it to a modifier key. What is straightforward for other keys turned out not to work fine for Pause.

By inspecting the output of xev -event keyboard | grep -E '^Key|state' for holding Pause and then pressing s,

KeyPress event, serial 28, synthetic NO, window 0x800001,
    state 0x0, keycode 127 (keysym 0xffed, Hyper_L), same_screen YES,

KeyRelease event, serial 28, synthetic NO, window 0x800001,
    state 0x20, keycode 127 (keysym 0xffed, Hyper_L), same_screen YES,

KeyPress event, serial 28, synthetic NO, window 0x800001,
    state 0x0, keycode 39 (keysym 0x73, s), same_screen YES,

KeyRelease event, serial 28, synthetic NO, window 0x800001,
    state 0x0, keycode 39 (keysym 0x73, s), same_screen YES,

we see that I succeeded in making Pause an Hyper modifier; However, it can't actually be used as a modifier since the key is immediately released (even though I didn't release it before pressing s).

The same is detected by showkey: Holding Pause immediately outputs

keycode 119 press
keycode 119 release

whereas holding another key (Insert) spams

keycode 110 press
keycode 110 press
keycode 110 press
keycode 110 press
keycode 110 press

as expected.

Why does this odd behavior happen with the Pause key? Is it a hardware thing (and thus unsolvable) or can it be addressed in the OS level?

History
Why does this post require moderator attention?
You might want to add some details to your flag.
Why should this post be closed?

2 comment threads

It must be a software thing (unless you are using some programmable keyboard) (5 comments)
Not what I'm seeing (4 comments)
Not what I'm seeing
Canina‭ wrote over 2 years ago

At least when I try (using showkey), it seems that the key down and key release events are very much distinct. I haven't tried using it as a modifier key, though; I already use that key for other purposes which would be incompatible with such use.

Quasímodo‭ wrote over 2 years ago

Canina‭ Since showkey only prints scan codes, it shouldn't matter if the key is made a modifier or not. It's interesting that you cannot reproduce it. I tried it on a spare old computer and it was the same behavior.

Canina‭ wrote over 2 years ago · edited over 2 years ago

Quasímodo‭ showkey on Debian Bullseye (showing its version as (console-tools) 0.2.3) has three modes; --scancodes, --keycodes (default) and --keymap. I'm not sure what you're running, but judging by the man page, it's been like that for a long time.

Quasímodo‭ wrote about 2 years ago

@Canina I meant that making the key a modifier should not change showkey output, i.e. the key press and key release events, be it in --scancodes or --keycodes mode (I don't have --keymap available, my --version says "showkey from kbd 2.4.0").