> I'd mark this as solved Ah, that's where shameless cross-posting gets you. This was supposed to only go to the Ubuntu forums!
Take care On Thu, Dec 6, 2012 at 12:00 AM, cheater cheater <cheate...@gmail.com> wrote: > I figured it out. Kind of out of desperation, I just googled for > "stackoverflow xkb" and started reading everything. I came across two > questions, one that mentioned using modifier_map, and another that > mentioned using xkbcomp :0.0 to get a dump of the final layout that's > loaded. I had to do the following: > > 1. set the group 1 explicitly, otherwise the keys only got overridden > on group 2. > > > // Make the lower-right corner of the k400/k400r saner. > key <RCTL> { > type="TWO_LEVEL", > symbols[Group1]=[ Alt_R, Meta_R ] > }; > key <UP> { > symbols[Group1]= [ Shift_R ], > symbols[Group2]= [ Shift_R ] > }; > key <DOWN> { > symbols[Group1]= [ Control_R ], > symbols[Group2]= [ Alt_R ] > }; > key <RGHT> { > symbols[Group1]= [ Control_R ], > symbols[Group2]= [ Alt_R ] > }; > > // Make the left-over left arrow cursor key a meta key. > // Apparently, if there's only one meta key, you set it to Meta_L. > key <LEFT> { > type[Group1]="ONE_LEVEL", > symbols[Group1]= [ ISO_Level3_Shift ] > }; > > > 2. use modifier_map > > > modifier_map Control { <DOWN> }; > modifier_map Control { <RGHT> }; > modifier_map Shift { <UP> }; > modifier_map Mod1 { <RCTL> }; > modifier_map Mod1 { <RALT> }; > modifier_map Mod5 { ISO_Level3_Shift }; > > > and 3. delete the other layouts that were loaded. Crazily enough, they > modified the layout, even if they weren't selected! so no matter what > i did, the up arrow's group1 was always set to Up. This is some sort > of bug. > > Hope this helps someone. I'd mark this as solved, but I'm not sure > how. Maybe one of the moderators can do that if they come across this > thread. > > Thanks! > > On Wed, Dec 5, 2012 at 7:44 PM, cheater cheater <cheate...@gmail.com> wrote: >> By the way, here's the related section of dumpkeys: >> >> >> >> keycode 103 = Up >> alt keycode 103 = KeyboardSignal >> alt shiftl keycode 103 = KeyboardSignal >> alt shiftr keycode 103 = KeyboardSignal >> alt shiftl shiftr keycode 103 = KeyboardSignal >> alt ctrll keycode 103 = KeyboardSignal >> alt shiftl ctrll keycode 103 = KeyboardSignal >> alt shiftr ctrll keycode 103 = KeyboardSignal >> alt shiftl shiftr ctrll keycode 103 = KeyboardSignal >> keycode 104 = Prior >> shift keycode 104 = Scroll_Backward >> shift shiftl keycode 104 = Scroll_Backward >> shift shiftr keycode 104 = Scroll_Backward >> shift shiftl shiftr keycode 104 = Scroll_Backward >> shift ctrll keycode 104 = Scroll_Backward >> shift shiftl ctrll keycode 104 = Scroll_Backward >> shift shiftr ctrll keycode 104 = Scroll_Backward >> shift shiftl shiftr ctrll keycode 104 = Scroll_Backward >> keycode 105 = Left >> alt keycode 105 = Decr_Console >> alt shiftl keycode 105 = Decr_Console >> alt shiftr keycode 105 = Decr_Console >> alt shiftl shiftr keycode 105 = Decr_Console >> alt ctrll keycode 105 = Decr_Console >> alt shiftl ctrll keycode 105 = Decr_Console >> alt shiftr ctrll keycode 105 = Decr_Console >> alt shiftl shiftr ctrll keycode 105 = Decr_Console >> keycode 106 = Right >> alt keycode 106 = Incr_Console >> alt shiftl keycode 106 = Incr_Console >> alt shiftr keycode 106 = Incr_Console >> alt shiftl shiftr keycode 106 = Incr_Console >> alt ctrll keycode 106 = Incr_Console >> alt shiftl ctrll keycode 106 = Incr_Console >> alt shiftr ctrll keycode 106 = Incr_Console >> alt shiftl shiftr ctrll keycode 106 = Incr_Console >> keycode 107 = Select >> keycode 108 = Down >> >> >> >> Note that the arrows are still what they were. They're clearly >> remapped in the layout: >> https://bitbucket.org/cheater/us_split_logitech_k400/commits/5f777c7dfe1a4b176b3409c71030ad8f >> >> On the other hand, the same layout remaps the k key to type h and that shows: >> >> >> >> keycode 37 = +h >> shift keycode 37 = +H >> control keycode 37 = BackSpace >> shift control keycode 37 = BackSpace >> altgr control keycode 37 = BackSpace >> shift altgr control keycode 37 = BackSpace >> alt keycode 37 = Meta_h >> shift alt keycode 37 = Meta_H >> altgr alt keycode 37 = Meta_h >> shift altgr alt keycode 37 = Meta_h >> control alt keycode 37 = Meta_BackSpace >> shift control alt keycode 37 = Meta_BackSpace >> altgr control alt keycode 37 = Meta_BackSpace >> shift altgr control alt keycode 37 = Meta_BackSpace >> >> >> >> although after this line it starts showing incorrect values. So it >> seems like this is a deeper bug. Can anyone comment on that? Is there >> anyone in specific I could contact about the xkb codebase? >> >> The listing continues with some erroneous and some correct values: >> >> >> >> shiftl keycode 37 = +k >> shift shiftl keycode 37 = +K >> altgr shiftl keycode 37 = +k >> shift altgr shiftl keycode 37 = +k >> control shiftl keycode 37 = Control_k >> shift control shiftl keycode 37 = Control_k >> altgr control shiftl keycode 37 = Control_k >> shift altgr control shiftl keycode 37 = Control_k >> alt shiftl keycode 37 = Meta_k >> shift alt shiftl keycode 37 = Meta_K >> altgr alt shiftl keycode 37 = Meta_k >> shift altgr alt shiftl keycode 37 = Meta_k >> control alt shiftl keycode 37 = Meta_Control_k >> shift control alt shiftl keycode 37 = Meta_Control_k >> altgr control alt shiftl keycode 37 = Meta_Control_k >> shift altgr control alt shiftl keycode 37 = >> Meta_Control_k >> shiftr keycode 37 = +k >> shift shiftr keycode 37 = +K >> altgr shiftr keycode 37 = +k >> shift altgr shiftr keycode 37 = +k >> control shiftr keycode 37 = Control_k >> shift control shiftr keycode 37 = Control_k >> altgr control shiftr keycode 37 = Control_k >> shift altgr control shiftr keycode 37 = Control_k >> alt shiftr keycode 37 = Meta_k >> shift alt shiftr keycode 37 = Meta_K >> altgr alt shiftr keycode 37 = Meta_k >> shift altgr alt shiftr keycode 37 = Meta_k >> control alt shiftr keycode 37 = Meta_Control_k >> shift control alt shiftr keycode 37 = Meta_Control_k >> altgr control alt shiftr keycode 37 = Meta_Control_k >> shift altgr control alt shiftr keycode 37 = >> Meta_Control_k >> shift shiftl shiftr keycode 37 = +H >> control shiftl shiftr keycode 37 = BackSpace >> shift control shiftl shiftr keycode 37 = BackSpace >> altgr control shiftl shiftr keycode 37 = BackSpace >> shift altgr control shiftl shiftr keycode 37 = >> BackSpace >> alt shiftl shiftr keycode 37 = Meta_h >> shift alt shiftl shiftr keycode 37 = Meta_H >> altgr alt shiftl shiftr keycode 37 = Meta_h >> shift altgr alt shiftl shiftr keycode 37 = Meta_h >> control alt shiftl shiftr keycode 37 = Meta_BackSpace >> shift control alt shiftl shiftr keycode 37 = >> Meta_BackSpace >> altgr control alt shiftl shiftr keycode 37 = >> Meta_BackSpace >> shift altgr control alt shiftl shiftr keycode >> 37 = Meta_BackSpace >> ctrll keycode 37 = +H >> altgr ctrll keycode 37 = +H >> shift altgr ctrll keycode 37 = +H >> control ctrll keycode 37 = BackSpace >> shift control ctrll keycode 37 = BackSpace >> altgr control ctrll keycode 37 = BackSpace >> shift altgr control ctrll keycode 37 = BackSpace >> alt ctrll keycode 37 = Meta_h >> shift alt ctrll keycode 37 = Meta_H >> altgr alt ctrll keycode 37 = Meta_h >> shift altgr alt ctrll keycode 37 = Meta_h >> control alt ctrll keycode 37 = Meta_BackSpace >> shift control alt ctrll keycode 37 = Meta_BackSpace >> altgr control alt ctrll keycode 37 = Meta_BackSpace >> shift altgr control alt ctrll keycode 37 = Meta_BackSpace >> shiftl ctrll keycode 37 = +K >> shift shiftl ctrll keycode 37 = +k >> altgr shiftl ctrll keycode 37 = +K >> shift altgr shiftl ctrll keycode 37 = +K >> control shiftl ctrll keycode 37 = Control_k >> shift control shiftl ctrll keycode 37 = Control_k >> altgr control shiftl ctrll keycode 37 = Control_k >> shift altgr control shiftl ctrll keycode 37 = >> Control_k >> alt shiftl ctrll keycode 37 = Meta_k >> shift alt shiftl ctrll keycode 37 = Meta_K >> altgr alt shiftl ctrll keycode 37 = Meta_k >> shift altgr alt shiftl ctrll keycode 37 = Meta_k >> control alt shiftl ctrll keycode 37 = Meta_Control_k >> shift control alt shiftl ctrll keycode 37 = >> Meta_Control_k >> altgr control alt shiftl ctrll keycode 37 = >> Meta_Control_k >> shift altgr control alt shiftl ctrll keycode 37 >> = Meta_Control_k >> shiftr ctrll keycode 37 = +K >> shift shiftr ctrll keycode 37 = +k >> altgr shiftr ctrll keycode 37 = +K >> shift altgr shiftr ctrll keycode 37 = +K >> control shiftr ctrll keycode 37 = Control_k >> shift control shiftr ctrll keycode 37 = Control_k >> altgr control shiftr ctrll keycode 37 = Control_k >> shift altgr control shiftr ctrll keycode 37 = >> Control_k >> alt shiftr ctrll keycode 37 = Meta_k >> shift alt shiftr ctrll keycode 37 = Meta_K >> altgr alt shiftr ctrll keycode 37 = Meta_k >> shift altgr alt shiftr ctrll keycode 37 = Meta_k >> control alt shiftr ctrll keycode 37 = Meta_Control_k >> shift control alt shiftr ctrll keycode 37 = >> Meta_Control_k >> altgr control alt shiftr ctrll keycode 37 = >> Meta_Control_k >> shift altgr control alt shiftr ctrll keycode 37 >> = Meta_Control_k >> shiftl shiftr ctrll keycode 37 = +H >> altgr shiftl shiftr ctrll keycode 37 = +H >> shift altgr shiftl shiftr ctrll keycode 37 = +H >> control shiftl shiftr ctrll keycode 37 = BackSpace >> shift control shiftl shiftr ctrll keycode 37 = >> BackSpace >> altgr control shiftl shiftr ctrll keycode 37 = >> BackSpace >> shift altgr control shiftl shiftr ctrll keycode >> 37 = BackSpace >> alt shiftl shiftr ctrll keycode 37 = Meta_h >> shift alt shiftl shiftr ctrll keycode 37 = Meta_H >> altgr alt shiftl shiftr ctrll keycode 37 = Meta_h >> shift altgr alt shiftl shiftr ctrll keycode 37 >> = Meta_h >> control alt shiftl shiftr ctrll keycode 37 = >> Meta_BackSpace >> shift control alt shiftl shiftr ctrll keycode >> 37 = Meta_BackSpace >> altgr control alt shiftl shiftr ctrll keycode >> 37 = Meta_BackSpace >> shift altgr control alt shiftl shiftr ctrll >> keycode 37 = Meta_BackSpace >> >> >> On Wed, Dec 5, 2012 at 1:45 PM, cheater cheater <cheate...@gmail.com> wrote: >>> Hi, >>> I have recently tried updating a layout I have, called us_split. In >>> its basic form it's like the us qwerty layout with a small mod. This >>> is to make a specific keyboard (Logitech k400) more usable. The idea >>> is to make the up arrow into right shift, down and right arrows into >>> right ctrl, right control into right alt, and left arrow into left >>> meta. It makes much more sense when you see the keyboard: >>> >>> http://i.imgur.com/jkfQY.jpg >>> >>> I call the new fork us_split_k400. It can be found at: >>> https://bitbucket.org/cheater/us_split_logitech_k400 >>> >>> the original can be found at: >>> https://bitbucket.org/cheater/us_split >>> >>> the specific diff can be found at: >>> >>> https://bitbucket.org/cheater/us_split_logitech_k400/commits/5f777c7dfe1a4b176b3409c71030ad8f >>> >>> I have found the following issues: >>> >>> 1. Even without the changes above, my layout has regressed. In >>> specific: us_split hard-wires caps to esc. That is, if you press the >>> button to the left of A, you get esc. This isn't recognized anymore. I >>> believe on this pc I have first installed the layout while running a >>> fairly early beta of ubuntu 12.04. I have just reinstalled it (using >>> python install.py) and the esc key to the left of A is simply gone. On >>> the other hand, mapping compose onto the original esc key to the left >>> of F1 works as it did before. >>> >>> 2. in us_split_k400, the arrows and right control don't bear >>> remapping. In specific, only setting the right arrow to control_r >>> worked. The rest didn't do anything. However, the layout worked >>> correctly in a tty after I did sudo loadkeys us_split_k400. >>> >>> 3. The caps-as-esc key developed VERY weird behaviour: it was esc AND >>> caps at the same time. So if you pressed it, you got esc, but the >>> status of caps lock changed as well. Again, this worked under >>> teletype. >>> >>> >>> I would appreciate any and all tips. This is driving me nuts, and I >>> think it might be representative of a deeper problem. I have no idea >>> where to start, but if anyone would like me to perform any tests I'd >>> love to help out. >>> >>> Thanks _______________________________________________ xorg@lists.x.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.x.org/mailman/listinfo/xorg Your subscription address: arch...@mail-archive.com