From c778a2b81f7b85d33a7a10c61a3215ab766d4926 Mon Sep 17 00:00:00 2001 From: Giuseppe Bilotta Date: Sun, 23 Nov 2008 12:14:21 +0100 Subject: [PATCH] Use keysym data Obtain user-friendly files when producing the xkb and compose files by using the keysym descriptive name when possible. --- klc2xkb | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/klc2xkb b/klc2xkb index d154c30..d615af0 100755 --- a/klc2xkb +++ b/klc2xkb @@ -41,6 +41,7 @@ import codecs import re import sys import unicodedata +import keysymdata from optparse import OptionParser class KeyMapping(object): @@ -82,14 +83,10 @@ class KeyMapping(object): xkbname = self.scancode_to_xkbname(self.scancode) if not xkbname: return "" - def format_symbol(sym): - if sym is None: - return "NoSymbol" - return "U%04x" % ord(sym) return ("key <%s> { [ %s, %s, %s, %s ] };" % tuple([xkbname] - + [format_symbol(sym) + + [keysymdata.name(sym) for sym in [self.normal, self.shifted, self.altgr, self.shiftedaltgr]])) @@ -107,8 +104,8 @@ class DeadKey(object): def to_xcompose_str(self): return '# %s' % DDDD_to_name(self.deadkey) + "\n" \ - + "\n".join(" : U%s # '%s' -> %s" % (self.deadkey, - k, v, + + "\n".join("<%s> <%s>:\t%s\t# '%s' -> %s" % (keysymdata.name(self.deadkey), + keysymdata.name(k), keysymdata.name(v), unichr(int(k, 16)), DDDD_to_name(v)) for k, v in self.maps.items()) + "\n" -- 2.32.0.93.g670b81a890