xmodmap for key combination - how to toggle the Fn behavior?












9















With Logitech K290 keyboard via USB, F. keys are not accessible by default, and I need to press Fn before using them, which is not really usable.



The Fn key alone does not fire any event in xev.



Pressing F1 without Fn fires two key events, keycode 50 (Shift_L) and keycode 133 (Super_L) and displays a message "Touchpad disabled" on my Kubuntu (the same message for every keys F1 through F4)



Althoug most media keys works, I'd rather have direct F. keys access. Do you know of any way to toggle Fn behavior?



Here is the output for when I press F1 without Fn:



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638420, (-352,274), root:(1462,621),
state 0x10, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638420, (-352,274), root:(1462,621),
state 0x11, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

FocusOut event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 40, synthetic NO, window 0x0,
keys: 4294967238 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0
32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638436, (-352,274), root:(1462,621),
state 0x51, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638436, (-352,274), root:(1462,621),
state 0x50, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

MappingNotify event, serial 40, synthetic NO, window 0x0,
request MappingPointer, first_keycode 0, count 0


And for F2 (still no Fn):



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782724, (-202,438), root:(1491,799),
state 0x10, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782724, (-202,438), root:(1491,799),
state 0x18, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

FocusOut event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 40, synthetic NO, window 0x0,
keys: 4294967238 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782780, (-202,438), root:(1491,799),
state 0x58, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782780, (-202,438), root:(1491,799),
state 0x50, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False


F1 with Fn gives expected result:



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64820204, (-856,-213), root:(1097,247),
state 0x10, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64820284, (-856,-213), root:(1097,247),
state 0x10, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False









share|improve this question




















  • 2





    Usually <kbd>Fn</kbd> works on keyboard's hardware level. Hopefully keycodes, as opposed to keysyms, of F-keys still differ when it is not pressed. Can you please run xev once more and paste the output for two different F-keys?

    – 9000
    Dec 31 '13 at 7:58











  • I've come across the same problem :(. This answer (askubuntu.com/a/285604/121193) might be useful, but it would be nice for something...simpler.

    – Ash
    Feb 16 '14 at 11:14






  • 1





    Sadly, Solaar only works for wireless emitters, not wired ones :(

    – user55574
    Feb 17 '14 at 16:36











  • I would start by looking in the BIOS settings. Some allow swapping the Fn key e.g. F-keys-by-default..

    – Jonas Berlin
    Jul 9 '18 at 7:04











  • really nasty that F1 reuses keycode 50, so you can't just change what 50 does either.. :P

    – Jonas Berlin
    Jul 9 '18 at 7:06
















9















With Logitech K290 keyboard via USB, F. keys are not accessible by default, and I need to press Fn before using them, which is not really usable.



The Fn key alone does not fire any event in xev.



Pressing F1 without Fn fires two key events, keycode 50 (Shift_L) and keycode 133 (Super_L) and displays a message "Touchpad disabled" on my Kubuntu (the same message for every keys F1 through F4)



Althoug most media keys works, I'd rather have direct F. keys access. Do you know of any way to toggle Fn behavior?



Here is the output for when I press F1 without Fn:



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638420, (-352,274), root:(1462,621),
state 0x10, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638420, (-352,274), root:(1462,621),
state 0x11, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

FocusOut event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 40, synthetic NO, window 0x0,
keys: 4294967238 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0
32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638436, (-352,274), root:(1462,621),
state 0x51, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638436, (-352,274), root:(1462,621),
state 0x50, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

MappingNotify event, serial 40, synthetic NO, window 0x0,
request MappingPointer, first_keycode 0, count 0


And for F2 (still no Fn):



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782724, (-202,438), root:(1491,799),
state 0x10, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782724, (-202,438), root:(1491,799),
state 0x18, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

FocusOut event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 40, synthetic NO, window 0x0,
keys: 4294967238 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782780, (-202,438), root:(1491,799),
state 0x58, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782780, (-202,438), root:(1491,799),
state 0x50, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False


F1 with Fn gives expected result:



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64820204, (-856,-213), root:(1097,247),
state 0x10, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64820284, (-856,-213), root:(1097,247),
state 0x10, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False









share|improve this question




















  • 2





    Usually <kbd>Fn</kbd> works on keyboard's hardware level. Hopefully keycodes, as opposed to keysyms, of F-keys still differ when it is not pressed. Can you please run xev once more and paste the output for two different F-keys?

    – 9000
    Dec 31 '13 at 7:58











  • I've come across the same problem :(. This answer (askubuntu.com/a/285604/121193) might be useful, but it would be nice for something...simpler.

    – Ash
    Feb 16 '14 at 11:14






  • 1





    Sadly, Solaar only works for wireless emitters, not wired ones :(

    – user55574
    Feb 17 '14 at 16:36











  • I would start by looking in the BIOS settings. Some allow swapping the Fn key e.g. F-keys-by-default..

    – Jonas Berlin
    Jul 9 '18 at 7:04











  • really nasty that F1 reuses keycode 50, so you can't just change what 50 does either.. :P

    – Jonas Berlin
    Jul 9 '18 at 7:06














9












9








9








With Logitech K290 keyboard via USB, F. keys are not accessible by default, and I need to press Fn before using them, which is not really usable.



The Fn key alone does not fire any event in xev.



Pressing F1 without Fn fires two key events, keycode 50 (Shift_L) and keycode 133 (Super_L) and displays a message "Touchpad disabled" on my Kubuntu (the same message for every keys F1 through F4)



Althoug most media keys works, I'd rather have direct F. keys access. Do you know of any way to toggle Fn behavior?



Here is the output for when I press F1 without Fn:



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638420, (-352,274), root:(1462,621),
state 0x10, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638420, (-352,274), root:(1462,621),
state 0x11, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

FocusOut event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 40, synthetic NO, window 0x0,
keys: 4294967238 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0
32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638436, (-352,274), root:(1462,621),
state 0x51, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638436, (-352,274), root:(1462,621),
state 0x50, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

MappingNotify event, serial 40, synthetic NO, window 0x0,
request MappingPointer, first_keycode 0, count 0


And for F2 (still no Fn):



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782724, (-202,438), root:(1491,799),
state 0x10, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782724, (-202,438), root:(1491,799),
state 0x18, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

FocusOut event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 40, synthetic NO, window 0x0,
keys: 4294967238 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782780, (-202,438), root:(1491,799),
state 0x58, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782780, (-202,438), root:(1491,799),
state 0x50, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False


F1 with Fn gives expected result:



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64820204, (-856,-213), root:(1097,247),
state 0x10, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64820284, (-856,-213), root:(1097,247),
state 0x10, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False









share|improve this question
















With Logitech K290 keyboard via USB, F. keys are not accessible by default, and I need to press Fn before using them, which is not really usable.



The Fn key alone does not fire any event in xev.



Pressing F1 without Fn fires two key events, keycode 50 (Shift_L) and keycode 133 (Super_L) and displays a message "Touchpad disabled" on my Kubuntu (the same message for every keys F1 through F4)



Althoug most media keys works, I'd rather have direct F. keys access. Do you know of any way to toggle Fn behavior?



Here is the output for when I press F1 without Fn:



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638420, (-352,274), root:(1462,621),
state 0x10, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638420, (-352,274), root:(1462,621),
state 0x11, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

FocusOut event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 40, synthetic NO, window 0x0,
keys: 4294967238 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0
32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638436, (-352,274), root:(1462,621),
state 0x51, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64638436, (-352,274), root:(1462,621),
state 0x50, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

MappingNotify event, serial 40, synthetic NO, window 0x0,
request MappingPointer, first_keycode 0, count 0


And for F2 (still no Fn):



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782724, (-202,438), root:(1491,799),
state 0x10, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782724, (-202,438), root:(1491,799),
state 0x18, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

FocusOut event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 40, synthetic NO, window 0x1a00001,
mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 40, synthetic NO, window 0x0,
keys: 4294967238 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782780, (-202,438), root:(1491,799),
state 0x58, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64782780, (-202,438), root:(1491,799),
state 0x50, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False


F1 with Fn gives expected result:



KeyPress event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64820204, (-856,-213), root:(1097,247),
state 0x10, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 40, synthetic NO, window 0x1a00001,
root 0x2c6, subw 0x0, time 64820284, (-856,-213), root:(1097,247),
state 0x10, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False






xorg keyboard xmodmap






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Apr 10 '15 at 12:15









terdon

129k32253428




129k32253428










asked Dec 30 '13 at 15:12









user55574user55574

463




463








  • 2





    Usually <kbd>Fn</kbd> works on keyboard's hardware level. Hopefully keycodes, as opposed to keysyms, of F-keys still differ when it is not pressed. Can you please run xev once more and paste the output for two different F-keys?

    – 9000
    Dec 31 '13 at 7:58











  • I've come across the same problem :(. This answer (askubuntu.com/a/285604/121193) might be useful, but it would be nice for something...simpler.

    – Ash
    Feb 16 '14 at 11:14






  • 1





    Sadly, Solaar only works for wireless emitters, not wired ones :(

    – user55574
    Feb 17 '14 at 16:36











  • I would start by looking in the BIOS settings. Some allow swapping the Fn key e.g. F-keys-by-default..

    – Jonas Berlin
    Jul 9 '18 at 7:04











  • really nasty that F1 reuses keycode 50, so you can't just change what 50 does either.. :P

    – Jonas Berlin
    Jul 9 '18 at 7:06














  • 2





    Usually <kbd>Fn</kbd> works on keyboard's hardware level. Hopefully keycodes, as opposed to keysyms, of F-keys still differ when it is not pressed. Can you please run xev once more and paste the output for two different F-keys?

    – 9000
    Dec 31 '13 at 7:58











  • I've come across the same problem :(. This answer (askubuntu.com/a/285604/121193) might be useful, but it would be nice for something...simpler.

    – Ash
    Feb 16 '14 at 11:14






  • 1





    Sadly, Solaar only works for wireless emitters, not wired ones :(

    – user55574
    Feb 17 '14 at 16:36











  • I would start by looking in the BIOS settings. Some allow swapping the Fn key e.g. F-keys-by-default..

    – Jonas Berlin
    Jul 9 '18 at 7:04











  • really nasty that F1 reuses keycode 50, so you can't just change what 50 does either.. :P

    – Jonas Berlin
    Jul 9 '18 at 7:06








2




2





Usually <kbd>Fn</kbd> works on keyboard's hardware level. Hopefully keycodes, as opposed to keysyms, of F-keys still differ when it is not pressed. Can you please run xev once more and paste the output for two different F-keys?

– 9000
Dec 31 '13 at 7:58





Usually <kbd>Fn</kbd> works on keyboard's hardware level. Hopefully keycodes, as opposed to keysyms, of F-keys still differ when it is not pressed. Can you please run xev once more and paste the output for two different F-keys?

– 9000
Dec 31 '13 at 7:58













I've come across the same problem :(. This answer (askubuntu.com/a/285604/121193) might be useful, but it would be nice for something...simpler.

– Ash
Feb 16 '14 at 11:14





I've come across the same problem :(. This answer (askubuntu.com/a/285604/121193) might be useful, but it would be nice for something...simpler.

– Ash
Feb 16 '14 at 11:14




1




1





Sadly, Solaar only works for wireless emitters, not wired ones :(

– user55574
Feb 17 '14 at 16:36





Sadly, Solaar only works for wireless emitters, not wired ones :(

– user55574
Feb 17 '14 at 16:36













I would start by looking in the BIOS settings. Some allow swapping the Fn key e.g. F-keys-by-default..

– Jonas Berlin
Jul 9 '18 at 7:04





I would start by looking in the BIOS settings. Some allow swapping the Fn key e.g. F-keys-by-default..

– Jonas Berlin
Jul 9 '18 at 7:04













really nasty that F1 reuses keycode 50, so you can't just change what 50 does either.. :P

– Jonas Berlin
Jul 9 '18 at 7:06





really nasty that F1 reuses keycode 50, so you can't just change what 50 does either.. :P

– Jonas Berlin
Jul 9 '18 at 7:06










1 Answer
1






active

oldest

votes


















0














xev can't show events that are captured by the desktop environment. A better way to test keys is using showkey command (at the Linux console, not inside X11). I'm guessing that the OS is actually receiving a Shift + Super + some-key combination.



Though you could conceivably remap said combination to just an F key, it would likely be troublesome: you'd have to "release" the Shift key (because the keyboard simulates pressing it), and making Shift+F1 work would be even more complicated, as it would require tracking if the Shift key was held down previously.



This problem is very common on laptops, which often have either a key combination to toggle multimedia hotkeys, or an option in their BIOS/firmware. But as you mentioned that this is concerning a specific model of external keyboard, looking online I found this project:



https://github.com/milgner/k290-fnkeyctl



The project's description states that it "reconfigures the way the function keys on Logitech K290 keyboards work", so it may be worth giving a try.






share|improve this answer























    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "106"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f107147%2fxmodmap-for-key-combination-how-to-toggle-the-fn-behavior%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    xev can't show events that are captured by the desktop environment. A better way to test keys is using showkey command (at the Linux console, not inside X11). I'm guessing that the OS is actually receiving a Shift + Super + some-key combination.



    Though you could conceivably remap said combination to just an F key, it would likely be troublesome: you'd have to "release" the Shift key (because the keyboard simulates pressing it), and making Shift+F1 work would be even more complicated, as it would require tracking if the Shift key was held down previously.



    This problem is very common on laptops, which often have either a key combination to toggle multimedia hotkeys, or an option in their BIOS/firmware. But as you mentioned that this is concerning a specific model of external keyboard, looking online I found this project:



    https://github.com/milgner/k290-fnkeyctl



    The project's description states that it "reconfigures the way the function keys on Logitech K290 keyboards work", so it may be worth giving a try.






    share|improve this answer




























      0














      xev can't show events that are captured by the desktop environment. A better way to test keys is using showkey command (at the Linux console, not inside X11). I'm guessing that the OS is actually receiving a Shift + Super + some-key combination.



      Though you could conceivably remap said combination to just an F key, it would likely be troublesome: you'd have to "release" the Shift key (because the keyboard simulates pressing it), and making Shift+F1 work would be even more complicated, as it would require tracking if the Shift key was held down previously.



      This problem is very common on laptops, which often have either a key combination to toggle multimedia hotkeys, or an option in their BIOS/firmware. But as you mentioned that this is concerning a specific model of external keyboard, looking online I found this project:



      https://github.com/milgner/k290-fnkeyctl



      The project's description states that it "reconfigures the way the function keys on Logitech K290 keyboards work", so it may be worth giving a try.






      share|improve this answer


























        0












        0








        0







        xev can't show events that are captured by the desktop environment. A better way to test keys is using showkey command (at the Linux console, not inside X11). I'm guessing that the OS is actually receiving a Shift + Super + some-key combination.



        Though you could conceivably remap said combination to just an F key, it would likely be troublesome: you'd have to "release" the Shift key (because the keyboard simulates pressing it), and making Shift+F1 work would be even more complicated, as it would require tracking if the Shift key was held down previously.



        This problem is very common on laptops, which often have either a key combination to toggle multimedia hotkeys, or an option in their BIOS/firmware. But as you mentioned that this is concerning a specific model of external keyboard, looking online I found this project:



        https://github.com/milgner/k290-fnkeyctl



        The project's description states that it "reconfigures the way the function keys on Logitech K290 keyboards work", so it may be worth giving a try.






        share|improve this answer













        xev can't show events that are captured by the desktop environment. A better way to test keys is using showkey command (at the Linux console, not inside X11). I'm guessing that the OS is actually receiving a Shift + Super + some-key combination.



        Though you could conceivably remap said combination to just an F key, it would likely be troublesome: you'd have to "release" the Shift key (because the keyboard simulates pressing it), and making Shift+F1 work would be even more complicated, as it would require tracking if the Shift key was held down previously.



        This problem is very common on laptops, which often have either a key combination to toggle multimedia hotkeys, or an option in their BIOS/firmware. But as you mentioned that this is concerning a specific model of external keyboard, looking online I found this project:



        https://github.com/milgner/k290-fnkeyctl



        The project's description states that it "reconfigures the way the function keys on Logitech K290 keyboards work", so it may be worth giving a try.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Jul 22 '18 at 3:32









        Vladimir PanteleevVladimir Panteleev

        789418




        789418






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Unix & Linux Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f107147%2fxmodmap-for-key-combination-how-to-toggle-the-fn-behavior%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            How to reconfigure Docker Trusted Registry 2.x.x to use CEPH FS mount instead of NFS and other traditional...

            is 'sed' thread safe

            How to make a Squid Proxy server?