Author Topic: How-To: Cherry Cymotion Master Keyboard  (Read 879 times)

Offline Ɗα√ϵς§

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5521
  • PCLinuxOS: A revolution in personal computing
How-To: Cherry Cymotion Master Keyboard
« on: August 27, 2011, 06:21:32 AM »
Firstly let me say that I have adapted everything from this page I found:

http://www.void.gr/kargig/blog/2007/02/20/cherry-cymotion-master-linux/

It must be frustrating that, despite this being a so-called "Linux" keyboard, it's not so easy to get the Cut, Paste, Copy, Scroll Up/Down, Undo, Redo and Search keys to work. If you follow the link above, it does seem rather complicated, but a lot of it is unnecessary because Xorg does partially support this keyboard nowadays. In fact, as long as you set up PCC and KDECC for the Cherry Cymotion Master Linux keyboard, you can skip straight to stage 5 of the instructions.

The problem arises in KDE, that if you, for example, allocate the Cut key (XF86Cut) as an additional control for Cut, using the KDE Control Centre, it only works in KDE apps. Obviously you want it to to work for all apps.

But some of the controls (Back, Forward, Stop and Reload) seem to work, so you don't need those four controls in the file called /usr/share/X11/xkb/compat/cymotion so you can shorten it as follows:

Code: [Select]
// $XFree86$
// XFree86 special keysyms
default partial xkb_compatibility "basic" {
interpret.repeat= True;
// Ctrl+C for Copy
interpret XF86Copy {
action = Redirect(Key=<AB03>, modifiers=Control);
};
// Ctrl+V for Paste
interpret XF86Paste {
action = Redirect(Key=<AB04>, modifiers=Control);
};
// Ctrl+X for Cut
interpret XF86Cut {
action = Redirect(Key=<AB02>, modifiers=Control);
};
// Ctrl+Pos1 for ScrollUp
interpret XF86ScrollUp {
action = Redirect(Key=<HOME>, modifiers=Control);
};
// Ctrl+End for ScrollDown
interpret XF86ScrollDown {
action = Redirect(Key=<END>, modifiers=Control);
};
// Ctrl+Shift+Z for Redo
interpret Redo {
action = Redirect(Key=<AB01>, modifiers=Shift+Control);
};
// Ctrl+Z for Undo
interpret Undo {
action = Redirect(Key=<AB01>, modifiers=Control);
};
// Ctrl+F for Search Page (Firefox and most other applications)
interpret XF86Search {
action = Redirect(Key=<AC04>, modifiers=Control);
};
};

Then, as per stage 6 of the instructions, you edit the file /usr/share/X11/xkb/compat/complete and add the following line:

Code: [Select]
augment "cymotion"

Logout, restart X and login. All should now work as desired.

I would keep a backup copy somewhere of the original "complete" file for safety, plus the new one and the cymotion one, because they are likely to be overwritten after an xorg update so you may need to replace them from time to time.
« Last Edit: August 27, 2011, 06:23:35 AM by davecs »
PCLinuxOS has no wealthy sponsors and can only survive with your donations! Don't wait it might be too late.

Running PCLOS on Athlon II/250 with 2Gb Ram using ASUS M2N68-AM Plus Mobo with Nvidia GF7600GT graphics, and Samsung NC10 Netbook