Skip to Content.
Sympa Menu

baslinux - Re: [BL] Notes on X11 keyboard mapping

baslinux AT lists.ibiblio.org

Subject: Baslinux mailing list

List archive

Chronological Thread  
  • From: cce.zizkov AT volny.cz
  • To: baslinux AT lists.ibiblio.org
  • Subject: Re: [BL] Notes on X11 keyboard mapping
  • Date: Fri, 4 Jun 2004 18:33:44

Hi list,

finally I have read a post that Sindi made more than a
year ago and a fragment of a xmodmap HOWTO.

On 12 May 03 at 13:15, keesan2 AT cyberspace.org wrote:

>Reply to Sender: mailto:keesan2 AT cyberspace.org
>Reply to List: mailto:baslinux AT lists.ibiblio.org
>
>I finally got up the courage to attempt to remap my keyboard.
>

....

After quite some studying and trying things which seem to be
against any human and machine reason I achieved a major
improvement of my international X keyboard.

Basically the xmodmap program (coming with BL3) can help to
customize the X keyboard completely and in a similar way as the
kbd.tgz package does for the console. The interesting question
is whether changed keyboard mappings will be relevant for
graphical X applications. So far I tested only rxvt window.
All the tests were aiming at a Czech keyboard with ISO-8859-2
fonts.

1. Ensure that the rxvt Window or applications to be tested
use ISO-8859-2 fonts. This is done by adding -fn (or similar)
parameters to the command line and/or editing different kinds of
configuration files and/or settings in the interface of
your applications.

2. Slackware 7.1 includes quite a lot of localization files. For
a Slackware 3.5 system these things have to be acquired through
several packages on the internet. Although the localization
files seem to be compatible with each other, the library shift from
libc5 to glibc obviously has some impact on localization. So rather
do not mix your BL1/BL3 solution with BL2 solution until you begin to
understand what you are doing.

3. From the last paragraph you might probably think that it is easier
to install international keyboard for BL2. There seems to be
more logic and more universality in the later versions.
Anyway I could never get the Slackware 7.1 localization to run as
it is supposed to, whereas my Slackware 3.5 box runs Czech keyboard
with all bells and whistles - BUT: All these years I have never
found out, how I achieved this.

4. I do not recommend to run install scripts from additional
packages, patches etc. with BL. The syntax of linux commands
in busybox is too restricted. Make sure that you have the basic
Slackware packages installed (eg. commands head, sed, localedef
whoami etc.).

5. Last days (and nights) I re-read the documentation I
mentioned above and made some interesting experiences:

a) firebird (Czech version) running under localized Slackware 7.1:
------------------------------------------------------------------

At program start it used to tell that the localization is not
supported by C library. In the browser interface, however, I could
access the Czech diacritical characters "somehow": deadkeys did not
work, instead CapsLock could be used to type big diacritical letters.
This was not beautiful but made firebird at least useable.

I went to the directory with all the X configuration files
(/var/X11R6/lib) and replaced

locale/iso8859-1/Compose

with

locale/iso8859-2/Compose

Now the Czech keyboard including dead keys works as intended.
This is a Czech version of a very sophisticated program, so I will
never attempt to understand why, as long as it works.

b) rxvt
-------

In the rxvt Window I could get those diacritical characters which
are included both in iso8859-1 and in iso8859-2. Changing settings
in XF86Config for all kinds of Czech keyboard mappings did not help.
So I finally became familiar with the xmodmap command.

The fine thing is: xmodmap -pke gives you your current keyboard
mapping. My keyboard mapping contained all those Czech keys, but they
did not display. You have to feed xmodmap with a WRONG (i.e.
ISO8859-1) mapping in order to get the correct output. So I wrote a
complete keyboard map starting from the xmodmap -pke output and
changed all Latin-2 characters to those Latin-1 characters that
are at the same encoding in the West European fontset.

When I was finished and load the new mapping with xmodmap I had a
perfect keyboard except one thing: dead keys for combination of
diacritics with small and capital letters did not work. So I tried
the same trick as above. I replaced

/var/X11R6/lib/locale/iso8859-1/Compose

with

/var/X11R6/lib/locale/iso8859-2/Compose

and the dead keys worked.

Later I wanted to make some further improvements to the keyboard
mapping (I actually need some German and Czech optimized keyboard).
You can change

- the meaning of any key and key combination in the file
mykeymap that you when opening the rxvt Window

- the meaning of any dead key in the file
/var/X11R6/lib/locale/iso8859-1/Compose


c) XVesa?
---------

The default version of BL3 does not contain any localization
files, but it comes with xmodmap. My first attempt to implement
my new keymap in BL3 lead to this result:

- The Czech keys mapped to single keys on the keyboard worked.

- The dead keys (accents) did not work: they were actually dead,
ie. without impact.


d) Resumé
---------

Czech keyboard for console applications running in X windows seem to
be achievable, now. But why may I want to run text applications in an
X window?

Considering more sophisticated graphical applications I still can
only hope to find a good Czech version of the program that will
automagically cooperate with the localization stuff it finds
on the the system.

XVesa deserves some more experimenting.

Regards
Christof Lange

_______________________________________________

Christof Lange <cce.zizkov AT volny.cz>
Prokopova 4, 130 00 Praha 3, Czech Republic
phone: (+420) 222 78 06 73 / 222 78 20 02
http://www.volny.cz/cce.zizkov




  • Re: [BL] Notes on X11 keyboard mapping, cce . zizkov, 06/04/2004

Archive powered by MHonArc 2.6.24.

Top of Page