[FreeNX-kNX] setxkbmap on MacOSX

jhonyl jhonyl at netscape.net
Mon Oct 13 15:47:39 UTC 2008


I see by a warning in the client log, that a /layout = "/en_US"
at  the end of the keyboard model is expected. So instead of:

CMD=${CMD/query/macintosh_old}

There should be:

CMD=${CMD/query/macintosh_old\/en_US}

And so the code should be:
-------------------
if stringinstring "macosx" "$CMD" ;
then
       CMD=${CMD/query/macintosh_old\/en_US}
fi
-------------------

The problematic keys in macintosh_old when connecting
from OSX are just CTRL, and the arrows keys. An xmodmap
file that fix it, look like this:
------------------
clear Control
keycode 67 = Control_L
keycode 131 = Left
keycode 132 = Right
keycode 133 = Down
keycode 134 = Up
add Control = Control_L
------------------

I have tried to define a new XKB 'macintosh_nxosx' keyboard in:
/usr/share/X11/xkb/keycodes/macintosh
by duplicating macintosh_old and changing <UP>,<DOWN>,
<LEFT>,<RGHT>,<RCTL>, and also duplicating any reference to
macintosh_old in the xkb directory tree, and changing the duplicate
to macintosh_nxosx . It has worked from command line with the
command: setxkbmap -model macintosh_nxosx

However, even though I have update nxserver too, to macintosh_nxosx,
freenx has still loaded the macintosh_old keycodes. I ended up swaping
the names "old" and "nxosx" in the file:
/usr/share/X11/xkb/keycodes/macintosh
and now it uses the new keycodes definition under the old
name macintosh_old.

Does anyone know why freenx used macintosh_old instead of
macintosh_nxosx?







More information about the FreeNX-kNX mailing list