Subject: Re: German keyboard encoding
To: Michael Wolfson <mw@costello.cnf.cornell.edu>
From: Hauke Fath <hf@tangro.de>
List: port-macppc
Date: 12/05/2001 17:25:29
> On Tue, 4 Dec 2001, Hauke Fath wrote:
> 
> > Talking about kbd mappings - installing the 1.5Y snapshot and the
> > corresponding xFree86 (sic!) 4.x tarballs on my Pismo, I quickly noticed
> > that the X server's German keymap support is severely broken in that it
> 
> Could one of you guys write up a FAQ entry on how to pick a non-US keymap
> on macppc?

How it can be done or how it should be doable? 'wscons' or X11?

The "good, old" way of X is a proper Xmodmap file, sourced either
centrally during xdm setup, or per-user after login. The proper Xmodmap
file for the German "Apple Extended Keyboard (II)" layout can be found
at "ftp://ftp.netbsd.org/pub/NetBSD/arch/mac68k/contrib/Xmodmap/de/"; it
fits perfectly for my Pismo, but I do not know how appropriate the
mapping is for USB keyboards.

The "proper" way of X these days consists of a correct X server 'Xkb'
extension setup in 'XF86Setup'. Unfortunately, the XFree server defaults
to a peecee layout (at least) for the German kbd which is significantly
different from the Macintosh layout. Looking through the XFree 3.2
manpage, I see that you can specify the type of keyboard ("XkbModel") -
the Macintosh keyboard mapping tables are probably maintained only for
US layout. 
As mentioned, the 'nodead' config looks extremely unmaintained, and
forces you to source a proper Xmodmap before the login screen pops up.

For a wscons map you would most likely need a different
keycode-to-keycaps mapping whereas the characters on the different
layers (e.g. "7 / | \") will remain the same. (Note that I have never
messed with wscons maps so this is little more than a WAG.)

        hauke

-- 
          Hauke Fath                             /~\    The ASCII
 tangro software components GmbH                 \ / Ribbon Campaign
      D-69115 Heidelberg                          X      Against
  Ruf +49-6221-13336-0, Fax -21                  / \   HTML Email!