xkb mapping of R_Control+Arrows
up vote
2
down vote
favorite
Have a laptop with directional Arrow keys and Fn + Arrows for PageUp/PageDown/Home/End. Want to make those keys such that the Right Control changes them to:
RCtrl + Up -> Page Up
RCtrl + Down -> Page Down
RCtrl + Left -> Ctrl + Page Up
RCtrl + Right -> Ctrl + Page Down
Left control should continue to work as before.
XKB that is close to working:
The following content is saved to /usr/share/X11/xkb/symbols/custom
and loaded via this command setxkbmap -symbols "pc+us+inet(evdev)+custom"
:
key <UP>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Up, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGUP>, clearMods=Control)] ;
key <DOWN>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Down, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGDN>, clearMods=Control)] ;
key <LEFT>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Left, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGUP>)] ;
key <RGHT>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Right, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGDN>)] ;
The Problem:
Unfortunately the script above captures both Control keys, not only the right one. I need the left Control key to not change it's behavior. Changing the PC_CONTROL_LEVEL2 -> PC_RCONTROL_LEVEL2 looks like it should work, but nothing works differently in that case (as if I hadn't made any changes).
Any ideas why PC_RCONTROL_LEVEL2 doesn't do anything?
I have tried bumbling around all sorts of different things, but unfortunately nothing has worked. I can't even seem to keep the right control key from acting as a control key, even after trying to map it directly to another key.
I am currently running Ubuntu 17.10 w/ the default GNOME interface. Thanks!
17.10 keyboard-layout xkb
add a comment |Â
up vote
2
down vote
favorite
Have a laptop with directional Arrow keys and Fn + Arrows for PageUp/PageDown/Home/End. Want to make those keys such that the Right Control changes them to:
RCtrl + Up -> Page Up
RCtrl + Down -> Page Down
RCtrl + Left -> Ctrl + Page Up
RCtrl + Right -> Ctrl + Page Down
Left control should continue to work as before.
XKB that is close to working:
The following content is saved to /usr/share/X11/xkb/symbols/custom
and loaded via this command setxkbmap -symbols "pc+us+inet(evdev)+custom"
:
key <UP>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Up, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGUP>, clearMods=Control)] ;
key <DOWN>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Down, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGDN>, clearMods=Control)] ;
key <LEFT>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Left, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGUP>)] ;
key <RGHT>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Right, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGDN>)] ;
The Problem:
Unfortunately the script above captures both Control keys, not only the right one. I need the left Control key to not change it's behavior. Changing the PC_CONTROL_LEVEL2 -> PC_RCONTROL_LEVEL2 looks like it should work, but nothing works differently in that case (as if I hadn't made any changes).
Any ideas why PC_RCONTROL_LEVEL2 doesn't do anything?
I have tried bumbling around all sorts of different things, but unfortunately nothing has worked. I can't even seem to keep the right control key from acting as a control key, even after trying to map it directly to another key.
I am currently running Ubuntu 17.10 w/ the default GNOME interface. Thanks!
17.10 keyboard-layout xkb
add a comment |Â
up vote
2
down vote
favorite
up vote
2
down vote
favorite
Have a laptop with directional Arrow keys and Fn + Arrows for PageUp/PageDown/Home/End. Want to make those keys such that the Right Control changes them to:
RCtrl + Up -> Page Up
RCtrl + Down -> Page Down
RCtrl + Left -> Ctrl + Page Up
RCtrl + Right -> Ctrl + Page Down
Left control should continue to work as before.
XKB that is close to working:
The following content is saved to /usr/share/X11/xkb/symbols/custom
and loaded via this command setxkbmap -symbols "pc+us+inet(evdev)+custom"
:
key <UP>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Up, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGUP>, clearMods=Control)] ;
key <DOWN>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Down, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGDN>, clearMods=Control)] ;
key <LEFT>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Left, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGUP>)] ;
key <RGHT>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Right, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGDN>)] ;
The Problem:
Unfortunately the script above captures both Control keys, not only the right one. I need the left Control key to not change it's behavior. Changing the PC_CONTROL_LEVEL2 -> PC_RCONTROL_LEVEL2 looks like it should work, but nothing works differently in that case (as if I hadn't made any changes).
Any ideas why PC_RCONTROL_LEVEL2 doesn't do anything?
I have tried bumbling around all sorts of different things, but unfortunately nothing has worked. I can't even seem to keep the right control key from acting as a control key, even after trying to map it directly to another key.
I am currently running Ubuntu 17.10 w/ the default GNOME interface. Thanks!
17.10 keyboard-layout xkb
Have a laptop with directional Arrow keys and Fn + Arrows for PageUp/PageDown/Home/End. Want to make those keys such that the Right Control changes them to:
RCtrl + Up -> Page Up
RCtrl + Down -> Page Down
RCtrl + Left -> Ctrl + Page Up
RCtrl + Right -> Ctrl + Page Down
Left control should continue to work as before.
XKB that is close to working:
The following content is saved to /usr/share/X11/xkb/symbols/custom
and loaded via this command setxkbmap -symbols "pc+us+inet(evdev)+custom"
:
key <UP>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Up, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGUP>, clearMods=Control)] ;
key <DOWN>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Down, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGDN>, clearMods=Control)] ;
key <LEFT>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Left, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGUP>)] ;
key <RGHT>
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Right, NoSymbol ],
actions[Group1] = [NoAction(), RedirectKey(key=<PGDN>)] ;
The Problem:
Unfortunately the script above captures both Control keys, not only the right one. I need the left Control key to not change it's behavior. Changing the PC_CONTROL_LEVEL2 -> PC_RCONTROL_LEVEL2 looks like it should work, but nothing works differently in that case (as if I hadn't made any changes).
Any ideas why PC_RCONTROL_LEVEL2 doesn't do anything?
I have tried bumbling around all sorts of different things, but unfortunately nothing has worked. I can't even seem to keep the right control key from acting as a control key, even after trying to map it directly to another key.
I am currently running Ubuntu 17.10 w/ the default GNOME interface. Thanks!
17.10 keyboard-layout xkb
17.10 keyboard-layout xkb
edited Mar 10 at 0:16
galoget
2,1062820
2,1062820
asked Mar 8 at 21:13
JasonB42
111
111
add a comment |Â
add a comment |Â
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1013228%2fxkb-mapping-of-r-controlarrows%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password