]> git.lyx.org Git - features.git/commitdiff
Convert kmap files from LaTeX commands to unicode as discussed last week
authorGeorg Baum <Georg.Baum@post.rwth-aachen.de>
Sat, 31 Mar 2007 16:07:05 +0000 (16:07 +0000)
committerGeorg Baum <Georg.Baum@post.rwth-aachen.de>
Sat, 31 Mar 2007 16:07:05 +0000 (16:07 +0000)
* development/tools/convert_kmap.py: New conversion script

* lib/kbd/*.kmap: Convert with convert_kmap.py

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17663 a592a061-630c-0410-9148-cb99ea01b6c8

30 files changed:
development/tools/convert_kmap.py [new file with mode: 0644]
lib/kbd/american-2.kmap
lib/kbd/american.kmap
lib/kbd/bg-bds-1251.kmap
lib/kbd/brazil.kmap
lib/kbd/brazil2.kmap
lib/kbd/czech-prg.kmap
lib/kbd/czech.kmap
lib/kbd/espanol.kmap
lib/kbd/european.kmap
lib/kbd/francais.kmap
lib/kbd/french.kmap
lib/kbd/german-2.kmap
lib/kbd/german-3.kmap
lib/kbd/german.kmap
lib/kbd/koi8-r.kmap
lib/kbd/magyar-2.kmap
lib/kbd/magyar.kmap
lib/kbd/polish.kmap
lib/kbd/polski.kmap
lib/kbd/portuges.kmap
lib/kbd/romanian.kmap
lib/kbd/serbocroatian.kmap
lib/kbd/sf.kmap
lib/kbd/sg.kmap
lib/kbd/slovak.kmap
lib/kbd/slovene.kmap
lib/kbd/transilvanian.kmap
lib/kbd/turkish-f.kmap
lib/kbd/turkish.kmap

diff --git a/development/tools/convert_kmap.py b/development/tools/convert_kmap.py
new file mode 100644 (file)
index 0000000..2093abb
--- /dev/null
@@ -0,0 +1,213 @@
+#! /usr/bin/env python
+# -*- coding: utf-8 -*-
+
+# file convert_kmap.py
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+
+# author Georg Baum
+
+# Full author contact details are available in file CREDITS
+
+# This script converts a kmap file from LaTeX commands to unicode characters
+# The kmap file is read and written in utf8 encoding
+
+
+import os, re, string, sys, unicodedata
+
+def usage(prog_name):
+    return ("Usage: %s unicodesymbolsfile inputfile outputfile\n" % prog_name +
+            "or     %s unicodesymbolsfile <inputfile >outputfile" % prog_name)
+
+
+def error(message):
+    sys.stderr.write(message + '\n')
+    sys.exit(1)
+
+
+def trim_eol(line):
+    " Remove end of line char(s)."
+    if line[-2:-1] == '\r':
+        return line[:-2]
+    elif line[-1:] == '\r' or line[-1:] == '\n':
+        return line[:-1]
+    else:
+        # file with no EOL in last line
+        return line
+
+
+def read(input):
+    " Read input file and strip lineendings."
+    lines = list()
+    while 1:
+        line = input.readline()
+        if not line:
+            break
+        lines.append(trim_eol(line).decode('utf8'))
+    return lines
+
+
+def escape(word):
+    " Escape a word for LyXLex."
+    re_quote = re.compile(r'\s|,')
+    retval = u''
+    i = 0
+    for c in word:
+        if c == '\\' or c == '"' or c == '#':
+            retval = retval + u'\\'
+        retval = retval + c
+    if re_quote.match(retval):
+        return u'"%s"' % retval
+    return retval
+
+
+def unescape(word):
+    " Unescape a LyXLex escaped word."
+    if len(word) > 1 and word[0] == '"' and word[-1] == '"':
+        start = 1
+        stop = len(word) - 1
+    else:
+        start = 0
+        stop = len(word)
+    retval = u''
+    i = start
+    while i < stop:
+        if word[i] == '\\' and i < stop - 1:
+            i = i + 1
+        retval = retval + word[i]
+        i = i + 1
+    return retval
+
+
+def readsymbols(input):
+    " Build the symbol list from the unicodesymbols file and add some hardcoded symbols."
+    symbols = list()
+    while 1:
+        line = input.readline()
+        if not line:
+            break
+        line = trim_eol(line)
+        tokens = line.split()
+        if len(tokens) > 0 and tokens[0][0] != '#':
+            if len(tokens) > 1:
+                tokens[1] = unescape(tokens[1])
+            if tokens[0][0:2] == "0x":
+                tokens[0] = int(tokens[0][2:], 16)
+                symbols.append(tokens)
+    # special cases from .cdef files (e.g. duplicates with different commands)
+    symbols.append([0x00a1, '\\nobreakspace'])
+    symbols.append([0x00a7, '\\S'])
+    symbols.append([0x00a9, '\\copyright'])
+    symbols.append([0x00b1, '$\\pm$'])
+    symbols.append([0x00b5, '$\\mu$'])
+    symbols.append([0x00b7, '$\\cdot$'])
+    symbols.append([0x00b9, '$\\mathonesuperior$'])
+    symbols.append([0x00d7, '$\\times$'])
+    symbols.append([0x00d7, '\\times'])
+    symbols.append([0x00f7, '\\div'])
+    symbols.append([0x20ac, '\\euro'])
+    # special caron, see lib/lyx2lyx/lyx_1_5.py for an explanation
+    symbols.append([0x030c, '\\q', '', 'combining'])
+    return symbols
+
+
+def write(output, lines):
+    " Write output file with native lineendings."
+    for line in lines:
+        output.write(line.encode('utf8') + os.linesep)
+
+
+def translate_symbol(unicodesymbols, symbol, try_combining = True):
+    " Translate a symbol from LaTeX to unicode."
+    re_combining = re.compile(r'^[^a-zA-Z]')
+    if len(symbol) == 1:
+        return symbol
+    for i in unicodesymbols:
+        # Play safe and don't try combining symbols (not sure if this is
+        # needed)
+        if i[1] == symbol and (len(i) < 4 or i[3].find('combining') < 0):
+            return unichr(i[0])
+    if try_combining:
+        # no direct match, see whether this is a combining sequence
+        for i in unicodesymbols:
+            if len(i) > 3 and i[3].find('combining') >= 0 and symbol.find(i[1]) == 0:
+                # Test whether this is really a combining sequence, e.g.
+                # \"o or \d{o}, and not a symbol like \dh that shares the
+                # beginning with a combining symbol
+                translated = symbol[len(i[1]):]
+                if translated != '' and re_combining.match(translated):
+                    # Really a combining sequence
+                    if len(translated) > 1 and translated[0] == '{' and translated[-1] == '}':
+                        # Strip braces from things like \d{o}
+                        translated = translated[1:-1]
+                    else:
+                        # for some strange reason \\'\\i does not get
+                        # correctly combined, so we try \\'\\i which has an
+                        # entry in unicodesymbols
+                        combined = translate_symbol(unicodesymbols, u'%s{%s}' % (i[1], translated))
+                        if combined != '':
+                            return combined
+                    if len(translated) > 1:
+                        # The base character may be a symbol itself, e.g \"{\i}
+                        translated = translate_symbol(unicodesymbols, translated, False)
+                    # Play safe and only translate combining sequences with
+                    # one base character
+                    if len(translated) == 1 and (i[1] != '\\q' or translated in ['t', 'd', 'l', 'L']):
+                        return unicodedata.normalize("NFKC", translated + unichr(i[0]))
+                    else:
+                        # we founed a combining character, but could not convert the argument to a single character
+                        return ''
+    return ''
+
+
+def convert(lines, unicodesymbols):
+    " Translate all symbols in lines from LaTeX to unicode."
+    # convert both commented and active entries
+    re_kmap = re.compile(r'^(#?\s*\\kmap\s+\S+\s+)([^\s]+)(.*)$')
+    re_kxmod = re.compile(r'^(#?\s*\\kxmod\s+\S+\s+\S+\s+)([^\s]+)(.*)$')
+    for i in range(len(lines)):
+        match = re_kmap.match(lines[i])
+        if not match:
+            match = re_kxmod.match(lines[i])
+        if match:
+            symbol = unescape(match.group(2))
+            if len(symbol) > 2 and symbol[-2:] == '{}':
+                # The unicodesymbols file does not include the trailing delimiter {}
+                symbol = symbol[0:-2]
+            translated = translate_symbol(unicodesymbols, symbol)
+            if translated == '':
+                lines[i] = u'%s%s%s' % (match.group(1), match.group(2), match.group(3))
+            else:
+                lines[i] = u'%s%s%s' % (match.group(1), escape(translated), match.group(3))
+                continue
+
+
+def main(argv):
+
+    # Open files
+    if len(argv) == 2:
+        input = sys.stdin
+        output = sys.stdout
+    elif len(argv) == 4:
+        input = open(argv[2], 'rb')
+        output = open(argv[3], 'wb')
+    else:
+        error(usage(argv[0]))
+    unicodesymbols = open(argv[1], 'rb')
+
+    # Do the real work
+    symbols = readsymbols(unicodesymbols)
+    lines = read(input)
+    convert(lines, symbols)
+    write(output, lines)
+
+    # Close files
+    if len(argv) == 3:
+        input.close()
+        output.close()
+
+    return 0
+
+
+if __name__ == "__main__":
+    main(sys.argv)
index 7fe9a884abc24b1919796067b9adf7f6491b83a9..282b6ccbbd657814001bb114ab748a5ff248e344 100644 (file)
@@ -6,14 +6,14 @@
 \kmod ' acute aeiouAEIOU
 \kmod ` grave aeiouAEIOU
 \kmod \" umlaut aeouAEOU
-\kxmod acute i "\\'{\\i}"
-\kxmod grave i "\\`{\\i}"
-\kxmod acute j "\\'{\\j}"
-\kxmod grave j "\\`{\\j}"
+\kxmod acute i í
+\kxmod grave i ì
+\kxmod acute j ȷ́
+\kxmod grave j ȷ̀
 # \kxmod acute ' '
 # \kxmod grave ` `
 # \kxmod umlaut \" \"
 #
 # Example of substituting local chars to TeX-Strings
 #
-# \kmap ß "\\ss{}"
+# \kmap ß ß
index 04cf4ba1a2e697c44493a3efd1ef4d8f3982ba14..a6c37ca4f56df8443e542e359dd1466b0f2736f9 100644 (file)
 \kmod / hugarian_umlaut native
 \kmod : umlaut native
 \kmod ? circle native
-# \kxmod acute i "\\'{\\i}"
-# \kxmod grave i "\\`{\\i}"
-# \kxmod tilde i "\\~{\\i}"
-# \kxmod dot i "\\.{\\i}"
-# \kxmod macron i "\\={\\i}"
-# \kxmod circumflex i "\\^{\\i}"
-# \kxmod breve i "\\u{\\i}"
-# \kxmod caron i "\\v{\\i}"
-# \kxmod hugarian_umlaut i "\\H{\\i}"
-# \kxmod umlaut i "\\\"{\\i}"
-# \kxmod circle i "\\r{\\i}"
-# \kxmod acute j "\\'{\\j}"
-# \kxmod grave j "\\`{\\j}"
-# \kxmod tilde j "\\~{\\j}"
-# \kxmod dot j "\\.{\\j}"
-# \kxmod macron j "\\={\\j}"
-# \kxmod circumflex j "\\^{\\j}"
-# \kxmod breve j "\\u{\\j}"
-# \kxmod caron j "\\v{\\j}"
-# \kxmod hugarian_umlaut j "\\H{\\j}"
-# \kxmod umlaut j "\\\"{\\j}"
-# \kxmod circle j "\\r{\\j}"
+# \kxmod acute i í
+# \kxmod grave i ì
+# \kxmod tilde i ĩ
+# \kxmod dot i ı̇
+# \kxmod macron i ī
+# \kxmod circumflex i î
+# \kxmod breve i ĭ
+# \kxmod caron i ǐ
+# \kxmod hugarian_umlaut i ı̋
+# \kxmod umlaut i ï
+# \kxmod circle i ı̊
+# \kxmod acute j ȷ́
+# \kxmod grave j ȷ̀
+# \kxmod tilde j ȷ̃
+# \kxmod dot j ȷ̇
+# \kxmod macron j ȷ̄
+# \kxmod circumflex j ĵ
+# \kxmod breve j ȷ̆
+# \kxmod caron j ǰ
+# \kxmod hugarian_umlaut j ȷ̋
+# \kxmod umlaut j ȷ̈
+# \kxmod circle j ȷ̊
 # \kxmod acute ' '
 # \kxmod grave ` `
 # \kxmod tilde ~ ~
index 864000b98aa452d4c6dcb822091a58709b27a9ab..28974c124a0afeee11c02fc75c096d0a552b48ef 100644 (file)
@@ -2,7 +2,7 @@
 # by George Tellalov, 2001 <gtellalov@bigfoot.com>
 
 \kmap ` (
-\kmap = "."
+\kmap = .
 \kmap q ","
 \kmap w у
 \kmap e е
 \kmap "/" б
 
 
-\kmap "~" ")"
-\kmap "@" "?"
-\kmap "#" "+"
-\kmap "$" "\""
+\kmap "~" )
+\kmap "@" ?
+\kmap "#" +
+\kmap "$" \"
 \kmap ^ =
 \kmap & :
 \kmap * /
index 146928d7ca4d205ba866a8d3a9767b960880342e..c06bd4869a379b909cd4779ceea1a631aaf1f84e 100644 (file)
@@ -19,7 +19,7 @@
 \kmod ^ circumflex eaoEAO
 \kmod \" umlaut aeiouAEIOU
 
-\kxmod acute c "\\c{c}"
-\kxmod acute C "\\c{C}"
+\kxmod acute c ç
+\kxmod acute C Ç
 
-\kxmod acute i "\\'{\\i}"
+\kxmod acute i í
index 98ad8beeae33a3cfb6ead30917e128bbe7e6de79..58b179b371a78dc8948d5a61c554e6ddd00d97b3 100644 (file)
 \kmod ~ tilde aoAO
 \kmod ^ circumflex eaoEAO
 \kmod ' cedilla cC
-\kxmod cedilla a "\\'{a}"
-\kxmod cedilla A "\\'{A}"
-\kxmod cedilla e "\\'{e}"
-\kxmod cedilla E "\\'{E}"
-\kxmod cedilla i "\\'{i}"
-\kxmod cedilla I "\\'{I}"
-\kxmod cedilla o "\\'{o}"
-\kxmod cedilla O "\\'{O}"
-\kxmod cedilla u "\\'{u}"
-\kxmod cedilla U "\\'{U}"
+\kxmod cedilla a á
+\kxmod cedilla A Á
+\kxmod cedilla e é
+\kxmod cedilla E É
+\kxmod cedilla i í
+\kxmod cedilla I Í
+\kxmod cedilla o ó
+\kxmod cedilla O Ó
+\kxmod cedilla u ú
+\kxmod cedilla U Ú
index 7e2b0de189e9aec8b748469341bd35261e8ae65e..1b40d2efc5fb6503c98d4c67e243efe4f4091b04 100644 (file)
@@ -9,31 +9,31 @@
 \kmap ~ ;
 \kmap 1 +              # map numbers to Czech letters and
 \kmap ! 1              # Shift-numbers to numbers
-\kmap 2 "\\v{e}"
+\kmap 2 ě
 \kmap @ 2
-\kmap 3 "\\v{s}"
+\kmap 3 š
 \kmap \# 3
-\kmap 4 "\\v{c}"
+\kmap 4 č
 \kmap $ 4
-\kmap 5 "\\v{r}"
+\kmap 5 ř
 \kmap % 5
-\kmap 6 "\\v{z}"
+\kmap 6 ž
 \kmap ^ 6
-\kmap 7 "\\'{y}"
+\kmap 7 ý
 \kmap & 7
-\kmap 8 "\\'{a}"
+\kmap 8 á
 \kmap * 8
-\kmap 9 "\\'{\\i}"
+\kmap 9 í
 \kmap ( 9
-\kmap 0 "\\'{e}"
+\kmap 0 é
 \kmap ) 0
 \kmap - =              # map other keys to reflect Slovak keyboard
 \kmap _ %
-\kmap ; "\\r{u}"
+\kmap ; ů
 \kmap : \"
-\kmap ' "\\S{}"
+\kmap ' §
 \kmap \" !
-\kmap [ "\\'{u}"
+\kmap [ ú
 \kmap { /
 \kmap ] )
 \kmap } (
 \kmap > :
 \kmap ? _
 \kmap / -
-\kxmod caron o "\\^{o}"                # mapping exception - generate ^ instead for o
-\kxmod caron O "\\^{O}"
-\kxmod caron u "\\r{u}"                # generate circle for u - it's a Czech letter
-\kxmod caron U "\\r{U}"
-\kxmod caron t "\\q{t}"        # use proper caron mark for t, l, d and L
-\kxmod caron l "\\q{l}"
-\kxmod caron L "\\q{L}"
-\kxmod caron d "\\q{d}"
-\kxmod acute i "\\'{\\i}"      # use only root of i for i acute
+\kxmod caron o ô              # mapping exception - generate ^ instead for o
+\kxmod caron O Ô
+\kxmod caron u ů              # generate circle for u - it's a Czech letter
+\kxmod caron U Ů
+\kxmod caron t ť      # use proper caron mark for t, l, d and L
+\kxmod caron l ľ
+\kxmod caron L Ľ
+\kxmod caron d ď
+\kxmod acute i í      # use only root of i for i acute
 
 
index e70ee6212f8a18a3d64210fd38cd8b436054bf42..390698cae6d37bc84ad4c5d38fa48c115065dfa5 100644 (file)
@@ -9,31 +9,31 @@
 \kmap ~ ;
 \kmap 1 +              # map numbers to Czech letters and
 \kmap ! 1              # Shift-numbers to numbers
-\kmap 2 "\\v{e}"
+\kmap 2 ě
 \kmap @ 2
-\kmap 3 "\\v{s}"
+\kmap 3 š
 \kmap \# 3
-\kmap 4 "\\v{c}"
+\kmap 4 č
 \kmap $ 4
-\kmap 5 "\\v{r}"
+\kmap 5 ř
 \kmap % 5
-\kmap 6 "\\v{z}"
+\kmap 6 ž
 \kmap ^ 6
-\kmap 7 "\\'{y}"
+\kmap 7 ý
 \kmap & 7
-\kmap 8 "\\'{a}"
+\kmap 8 á
 \kmap * 8
-\kmap 9 "\\'{\\i}"
+\kmap 9 í
 \kmap ( 9
-\kmap 0 "\\'{e}"
+\kmap 0 é
 \kmap ) 0
 \kmap - =              # map other keys to reflect Slovak keyboard
 \kmap _ %
-\kmap ; "\\r{u}"
+\kmap ; ů
 \kmap : \"
-\kmap ' "\\S{}"
+\kmap ' §
 \kmap \" !
-\kmap [ "\\'{u}"
+\kmap [ ú
 \kmap { /
 \kmap ] )
 \kmap } (
 \kmap > :
 \kmap ? _
 \kmap / -
-\kxmod caron o "\\^{o}"                # mapping exception - generate ^ instead for o
-\kxmod caron O "\\^{O}"
-\kxmod caron u "\\r{u}"                # generate circle for u - it's a Czech letter
-\kxmod caron U "\\r{U}"
-\kxmod caron t "\\q{t}"        # use proper caron mark for t, l, d and L
-\kxmod caron l "\\q{l}"
-\kxmod caron L "\\q{L}"
-\kxmod caron d "\\q{d}"
-\kxmod acute i "\\'{\\i}"      # use only root of i for i acute
-\kxmod caron y "\\v{z}"                # switch from QWERTY to QWERTZ
-\kxmod caron Y "\\v{Z}"
+\kxmod caron o ô              # mapping exception - generate ^ instead for o
+\kxmod caron O Ô
+\kxmod caron u ů              # generate circle for u - it's a Czech letter
+\kxmod caron U Ů
+\kxmod caron t ť      # use proper caron mark for t, l, d and L
+\kxmod caron l ľ
+\kxmod caron L Ľ
+\kxmod caron d ď
+\kxmod acute i í      # use only root of i for i acute
+\kxmod caron y ž              # switch from QWERTY to QWERTZ
+\kxmod caron Y Ž
 \kmap z y
 \kmap Z Y
 \kmap y z
index 12bd53a2c91e44f7888cfe869830c7b2319d3b7b..52a4f670a3c799ac4495b1e0c09307d105abdbb0 100644 (file)
@@ -7,7 +7,7 @@
 \kmod ~ tilde nN!?
 \kmod : umlaut uU              # The " doesn't work, even \".
 
-\kxmod acute i "\\'{\\i}"
+\kxmod acute i í
 \kxmod tilde ! "\textexclamdown{}"
 \kxmod tilde ? "\textquestiondown{}"
 
index 14636d697fcaf6dda398579856778577d91fb5a3..bf24a74a86c874fe3c290c57be706278b1a6ceee 100644 (file)
 #
 # some exceptions
 #
-\kxmod acute i "\\'{\\i}"
-\kxmod grave i "\\`{\\i}"
-\kxmod circumflex i "\\^{\\i}"
-\kxmod acute j "\\'{\\j}"
-\kxmod grave j "\\`{\\j}"
-\kxmod circumflex j "\\^{\\j}"
+\kxmod acute i í
+\kxmod grave i ì
+\kxmod circumflex i î
+\kxmod acute j ȷ́
+\kxmod grave j ȷ̀
+\kxmod circumflex j ĵ
 #
 # polish characters
 #
-\kxmod cedilla a "\\k{a}"
-\kxmod cedilla A "\\k{A}"
-# \kxmod acute c "\\'{c}"
-# \kxmod acute C "\\'{C}"
-\kxmod cedilla e "\\k{e}"
-\kxmod cedilla E "\\k{E}"
-\kxmod acute l "\\l{}"
-\kxmod acute L "\\L{}"
-# \kxmod acute n "\\'{n}"
-# \kxmod acute N "\\'{N}"
-# \kxmod acute o "\\'{o}"
-# \kxmod acute O "\\'{O}"
-# \kxmod acute s "\\'{s}"
-# \kxmod acute S "\\'{S}"
-# \kxmod dot z "\\.{z}"
-# \kxmod dot Z "\\.{Z}"
-# \kxmod acute z "\\'{z}"
-# \kxmod acute Z "\\'{Z}"
+\kxmod cedilla a ą
+\kxmod cedilla A Ą
+# \kxmod acute c ć
+# \kxmod acute C Ć
+\kxmod cedilla e ę
+\kxmod cedilla E Ę
+\kxmod acute l ł
+\kxmod acute L Ł
+# \kxmod acute n ń
+# \kxmod acute N Ń
+# \kxmod acute o ó
+# \kxmod acute O Ó
+# \kxmod acute s ś
+# \kxmod acute S Ś
+# \kxmod dot z ż
+# \kxmod dot Z Ż
+# \kxmod acute z ź
+# \kxmod acute Z Ź
 #
 # german characters
 #
-\kxmod umlaut s "\\ss{}"
-\kxmod umlaut S "\\ss{}"
+\kxmod umlaut s ß
+\kxmod umlaut S ß
 #
 # french characters
 #
-\kmap ¬ "\\oe{}"
+\kmap ¬ œ
 #
 # special characters
 #
-\kxmod umlaut $ "\\pounds{}"   # pound
-\kxmod umlaut \# "\\S{}"       # paragraph
+\kxmod umlaut $ £     # pound
+\kxmod umlaut \# §    # paragraph
 \kxmod umlaut ~ "\\b{}"                # degree
-\kmap ¤ "\\euro{}"    # euro sign, to use with package eurofont
+\kmap ¤    # euro sign, to use with package eurofont
 #
 # \kxmod acute ' '
 # \kxmod grave ` `
@@ -74,4 +74,4 @@
 #
 # Example of substituting local chars to TeX-Strings
 #
-# \kmap ß "\\ss{}"
+# \kmap ß ß
index 59f0fb21b8c60f98f3f1a068835920ca00eb98c6..b38ebc43687b8dccec40551fe297e32161a5e8c9 100644 (file)
@@ -2,11 +2,11 @@
 # Key definition file for French national keyboard for LyX
 #
 
-\kmap ¬ "\\oe{}"                # {\oe} before u and i
+\kmap ¬ œ                # {\oe} before u and i
 \kmod ¨ umlaut aeiouAEIOU       # umlaut on ¨
-\kxmod umlaut i "\\\"{\\i}"      # some exceptions
+\kxmod umlaut i ï      # some exceptions
 \kmod ^ circumflex aeiouAEIOU   # circumflex on ^
-\kxmod circumflex i "\\^{\\i}"   # some exceptions
+\kxmod circumflex i î   # some exceptions
 \kmod ² cedilla cC              # cedilla on cC
-\kmap ¤ "\\euro{}"                    # euro sign, to use with package eurofont
+\kmap ¤                    # euro sign, to use with package eurofont
 
index ae7bcbf4cb98a473683f35a34b3cb30716dd8d50..0b8a5511c3e3362ded462c158433686b130cb3e3 100644 (file)
@@ -11,7 +11,7 @@
 \kmod [ circumflex aceijnorsuyzACEIJNORSUYZ    # circumflex on [
 \kmap 1 &              # map numbers to some letters and
 \kmap ! 1              # Shift-numbers to numbers
-\kmap 2 "\\'{e}"
+\kmap 2 é
 \kmap @ 2
 \kmap 3 \"
 \kmap \# 3
 \kmap % 5
 \kmap 6 -
 \kmap ^ 6
-\kmap 7 "\\`{e}"
+\kmap 7 è
 \kmap & 7
 \kmap 8 _
 \kmap * 8
-\kmap 9 "\\c{c}"
+\kmap 9 ç
 \kmap ( 9
-\kmap 0 "\\`{a}"
+\kmap 0 à
 \kmap ) 0
 \kmap - )
 \kmap _ "\\b{}"        # degree sign?
-#\kmap `               # to the power of two?
+#\kmap `               \# to the power of two?
 \kmap a q
 \kmap A Q      # switched A<->Q
 \kmap q a
 \kmap m ","
 \kmap M        ?
 \kmap ] $
-\kmap } "\\pounds{}"   # pound sign?
+\kmap } £     # pound sign?
 \kmap ; m
 \kmap : M
-\kmap ' "\\`{u}"
+\kmap ' ù
 \kmap \" %
 \kmap . :
 \kmap "," ;
 \kmap < .
 \kmap > /
-\kmap ? "\\S{}"
+\kmap ? §
 \kmap / !
 \kmap \\ *
-\kmap | "$\\mu$"
-\kxmod circumflex i "\\^{\\i}" # some exceptions
-\kxmod umlaut i "\\\"{\\i}"
+\kmap | µ
+\kxmod circumflex i î # some exceptions
+\kxmod umlaut i ï
index 5d4c514e3955a0628168350ebe6d24247614e362..7748823131361fd588c4559402b5c541d8226fb5 100644 (file)
@@ -13,7 +13,7 @@
 \kmap Ü Ü
 \kmap ~ °             # degree
 \kmap @ \"             # shift-numbers is different on German kbd
-\kmap \# "\\S{}"
+\kmap \# §
 \kmap ^ &
 \kmap & /
 \kmap * (
 \kmap ? _
 \kmap \\ \#
 \kmap | '
-\kxmod acute i "\\'{\\i}"              # correct some misspellings :-)
-\kxmod acute j "\\'{\\j}"
-\kxmod grave i "\\`{\\i}"
-\kxmod grave j "\\`{\\j}"
-\kxmod circumflex i "\\^{\\i}"
-\kxmod circumflex j "\\^{\\j}"
+\kxmod acute i í              # correct some misspellings :-)
+\kxmod acute j ȷ́
+\kxmod grave i ì
+\kxmod grave j ȷ̀
+\kxmod circumflex i î
+\kxmod circumflex j ĵ
 
index 12095daf9a22dfa4f6c5d92062c6f5d672ac887e..7f922920e38ca60ccd53e14e1f8f752ecc67fc0b 100644 (file)
 \kmap \\ \#
 \kmap | '
 # needed only for lyx-0.10.7
-#\kxmod acute i "\\'\\i"               # correct some misspellings :-)
-#\kxmod acute j "\\'\\j"
-#\kxmod grave i "\\`\\i"
-#\kxmod grave j "\\`\\j"
-#\kxmod circumflex i "\\^\\i"
-#\kxmod circumflex j "\\^\\j"
+#\kxmod acute i í             # correct some misspellings :-)
+#\kxmod acute j ȷ́
+#\kxmod grave i ì
+#\kxmod grave j ȷ̀
+#\kxmod circumflex i î
+#\kxmod circumflex j ĵ
 
index b1ae30bda82a57981a036e20572e046d35ec14e6..8d19a26394751c194ba78ea584a59bb832d1eb2a 100644 (file)
@@ -6,13 +6,13 @@
 \kmod ` circumflex aceijnorsuyzACEIJNORSUYZ    # dead circumflex
 \kmap ~ °             # degree
 \kmap @ \"             # shift-numbers is different on German kbd
-\kmap \# "\\S{}"
+\kmap \# §
 \kmap ^ &
 \kmap & /
 \kmap * (
 \kmap ( )
 \kmap ) =
-\kmap - "\\ss{}"               # - maps to sharfes s
+\kmap - ß             # - maps to sharfes s
 \kmap _ ?              # _ maps to question mark
 \kmod = acute aceijlnorsuyzACEIJLNORSUYZ       # = is acute deadkey
 \kmod + grave aceijlnorsuyzACEIJLNORSUYZ       # Shift-= is grave dead key
 \kmap Z Y
 \kmap y z
 \kmap Y Z
-\kmap [ "\\\"{u}"              # [{ maps to u umlaut
-\kmap { "\\\"{U}"
+\kmap [ ü             # [{ maps to u umlaut
+\kmap { Ü
 \kmap ] +
 \kmap } *
-\kmap ; "\\\"{o}"              # ;: maps to o umlaut
-\kmap : "\\\"{O}"
-\kmap ' "\\\"{a}"              # '" maps to a umlaut
-\kmap \" "\\\"{A}"
+\kmap ; ö             # ;: maps to o umlaut
+\kmap : Ö
+\kmap ' ä             # '" maps to a umlaut
+\kmap \" Ä
 \kmap < ;              # yet some modifiers
 \kmap > :
 \kmap / -
 \kmap ? _
 \kmap \\ \#
 \kmap | '
-\kxmod acute i "\\'{\\i}"              # correct some misspellings :-)
-\kxmod acute j "\\'{\\j}"
-\kxmod grave i "\\`{\\i}"
-\kxmod grave j "\\`{\\j}"
-\kxmod circumflex i "\\^{\\i}"
-\kxmod circumflex j "\\^{\\j}"
+\kxmod acute i í              # correct some misspellings :-)
+\kxmod acute j ȷ́
+\kxmod grave i ì
+\kxmod grave j ȷ̀
+\kxmod circumflex i î
+\kxmod circumflex j ĵ
 
index d7dda8a7df73d45350a47e4727e9f8ea7a9b6fe9..c06e29f77fc859bd3f9b9dbe3ee9d235a49a4549 100644 (file)
 \kmap m ь
 \kmap "," б
 \kmap "." ю
-\kmap "/" "."
-\kmap "@" "\""
-\kmap "^" ":"
-\kmap "&" "?"
-\kmap "`" "ё"
-\kmap "~" "Ё"
-\kmap "$" ";"
+\kmap "/" .
+\kmap "@" \"
+\kmap "^" :
+\kmap "&" ?
+\kmap "`" ё
+\kmap "~" Ё
+\kmap "$" ;
 
 
 \kmap Q Й
index 85ffc74382f0df3f39d92f4eb6bcd9776c127cdc..58e3cbe8c6f6cabc63f1bada103c261f40d55d79 100644 (file)
@@ -6,26 +6,26 @@
 # These are the bindings for Hungarian keyboards using ISO-8859.2 (Latin-2)
 # key mapping for X.
 #
-\kmap ű "\\H{u}"
-\kmap Ű "\\H{U}"
-\kmap ő "\\H{o}"
-\kmap Ő "\\H{O}"
-\kmap ú "\\'{u}"
-\kmap Ú "\\'{U}"
-\kmap é "\\'{e}"
-\kmap É "\\'{E}"
-\kmap á "\\'{a}"
-\kmap Á "\\'{A}"
-\kmap í "\\'{\\i}"
-\kmap Í "\\'{I}"
-\kmap ó "\\'{o}"
-\kmap Ó "\\'{O}"
-\kmap ü "\\\"{u}"
-\kmap Ü "\\\"{U}"
-\kmap ö "\\\"{o}"
-\kmap Ö "\\\"{O}"
+\kmap ű ű
+\kmap Ű Ű
+\kmap ő ő
+\kmap Ő Ő
+\kmap ú ú
+\kmap Ú Ú
+\kmap é é
+\kmap É É
+\kmap á á
+\kmap Á Á
+\kmap í í
+\kmap Í Í
+\kmap ó ó
+\kmap Ó Ó
+\kmap ü ü
+\kmap Ü Ü
+\kmap ö ö
+\kmap Ö Ö
 
-\kmap § "\\S{}"
-\kmap ß "\\ss{}"
-\kmap × "\\times{}"
-\kmap ÷ "\\div{}"
+\kmap § §
+\kmap ß ß
+\kmap × ×
+\kmap ÷ ÷
index 13a558937a8fa9912ff75f846de3fceb4342586c..cdf5a9dfdcd168b69a430c1e40c3903b9f44c014 100644 (file)
@@ -8,24 +8,24 @@
 # (c)1996 by Boloni Laszlo, blaci@utcluj.ro
 #
 
-\kmap [ "\\H{o}"
-\kmap { "\\H{O}"
-\kmap \\ "\\H{u}"
-\kmap | "\\H{U}"
-\kmap ] "\\'{u}"
-\kmap } "\\'{U}"
-\kmap ; "\\'{e}"
-\kmap : "\\'{E}"
-\kmap ' "\\'{a}"
-\kmap \" "\\'{A}"
-\kmap ` "\\'{\\i}"
-\kmap ~ "\\'{I}"
-\kmap = "\\'{o}"
-\kmap + "\\'{O}"
-\kmap - "\\\"{u}"
-\kmap _ "\\\"{U}"
-\kmap 0 "\\\"{o}"
-\kmap ) "\\\"{O}"
+\kmap [ ő
+\kmap { Ő
+\kmap \\ ű
+\kmap | Ű
+\kmap ] ú
+\kmap } Ú
+\kmap ; é
+\kmap : É
+\kmap ' á
+\kmap \" Á
+\kmap ` í
+\kmap ~ Í
+\kmap = ó
+\kmap + Ó
+\kmap - ü
+\kmap _ Ü
+\kmap 0 ö
+\kmap ) Ö
 \kmap / -
 \kmap ? ;
 \kmap > :
index 42da0165ff70d55fa9d35f6cf7b626c43b1bb8a9..84936a35e54def5a265f5c83bf0bcb382c67e14e 100644 (file)
@@ -8,21 +8,21 @@
 # Latin letters.
 #
 \kmod / acute  aAcCeElLnNoOsSzZxX
-\kxmod acute a "\\k{a}"
-\kxmod acute A "\\k{A}"
-\kxmod acute c "\\'{c}"
-\kxmod acute C "\\'{C}"
-\kxmod acute e "\\k{e}"
-\kxmod acute E "\\k{E}"
-\kxmod acute l "\\l{}"
-\kxmod acute L "\\L{}"
-\kxmod acute n "\\'{n}"
-\kxmod acute N "\\'{N}"
-\kxmod acute o "\\'{o}"
-\kxmod acute O "\\'{O}"
-\kxmod acute s "\\'{s}"
-\kxmod acute S "\\'{S}"
-\kxmod acute z "\\.{z}"
-\kxmod acute Z "\\.{Z}"
-\kxmod acute x "\\'{z}"
-\kxmod acute X "\\'{Z}"
+\kxmod acute a ą
+\kxmod acute A Ą
+\kxmod acute c ć
+\kxmod acute C Ć
+\kxmod acute e ę
+\kxmod acute E Ę
+\kxmod acute l ł
+\kxmod acute L Ł
+\kxmod acute n ń
+\kxmod acute N Ń
+\kxmod acute o ó
+\kxmod acute O Ó
+\kxmod acute s ś
+\kxmod acute S Ś
+\kxmod acute z ż
+\kxmod acute Z Ż
+\kxmod acute x ź
+\kxmod acute X Ź
index 2bc41da14fe9851801bc830485c70ca3b9d718da..7ec50d6e262ccb10813eb5f4e2aeda61db2665a4 100644 (file)
@@ -8,22 +8,22 @@
 # Latin letters.
 #
 \kmod / acute  aAcCeElLnNoOsSzZxXu
-\kxmod acute a "ą"
-\kxmod acute A "Ą"
-\kxmod acute c "ć"
-\kxmod acute C "Ć"
-\kxmod acute e "ę"
-\kxmod acute E "Ę"
-\kxmod acute l "ł"
-\kxmod acute L "Ł"
-\kxmod acute n "ń"
-\kxmod acute N "Ń"
-\kxmod acute o "ó"
-\kxmod acute O "Ó"
-\kxmod acute s "ś"
-\kxmod acute S "Ś"
-\kxmod acute z "ż"
-\kxmod acute Z "Ż"
-\kxmod acute x "ź"
-\kxmod acute X "Ź"
-\kxmod acute u "\\euro{}"      # wymaga pakietu eurosym
+\kxmod acute a ą
+\kxmod acute A Ą
+\kxmod acute c ć
+\kxmod acute C Ć
+\kxmod acute e ę
+\kxmod acute E Ę
+\kxmod acute l ł
+\kxmod acute L Ł
+\kxmod acute n ń
+\kxmod acute N Ń
+\kxmod acute o ó
+\kxmod acute O Ó
+\kxmod acute s ś
+\kxmod acute S Ś
+\kxmod acute z ż
+\kxmod acute Z Ż
+\kxmod acute x ź
+\kxmod acute X Ź
+\kxmod acute u      # wymaga pakietu eurosym
index b7a2c790d2ea04423f90d2625516c94b16b59f3e..07f83c216adcb5c7f333b31d34d601c30ec21cce 100644 (file)
@@ -9,7 +9,7 @@
 \kmod ~ tilde aoAO
 \kmod ^ circumflex eaoEAO
 
-\kxmod acute i "\\'{\\i}"
+\kxmod acute i í
 
 # \kxmod acute ´ ´
 # \kxmod grave ` "$\\grave{}$" # is this really needed?!
index 6c11559036a12248115508966df5e32025fa41e3..4a03ef39503c822644c68e57419375568d794140 100644 (file)
@@ -8,16 +8,16 @@
 # (c)1996 by Boloni Laszlo, blaci@utcluj.ro
 #
 
-\kmap ; "\\c{s}"
-\kmap : "\\c{S}"
-\kmap ' "\\c{t}"
-\kmap \" "\\c{T}"
-\kmap [ "\\u{a}"
-\kmap { "\\u{A}"
-\kmap ] "\\^{\\i}"
-\kmap } "\\^{I}"
-\kmap \\ "\\^{a}"
-\kmap | "\\^{A}"
+\kmap ; ş
+\kmap : Ş
+\kmap ' ţ
+\kmap \" Ţ
+\kmap [ ă
+\kmap { Ă
+\kmap ] î
+\kmap } Î
+\kmap \\ â
+\kmap | Â
 \kmap = '
 \kmap + *
 \kmap - +
index 67a9e5f4a52059495a9868fe8320262157702567..02b75cf829067f10e56cdfc66914ec5cf362c92b 100644 (file)
 \kmap ~ >
 \kmap y z         # y and z are switched
 \kmap Y Z
-\kmap [ "\\v{s}"  # s caron (pronunced sh)
-\kmap { "\\v{S}"
-\kmap ] "\\dj{}"  # d stroke (pronunced dj, with j as in German, not as
-\kmap } "\\DJ{}"  # in English)
-\kmap \\ "\\v{z}" # z caron (pronounced zh)
-\kmap | "\\v{Z}"
-\kmap ; "\\v{c}"  # c caron (pronunced tch)
-\kmap : "\\v{C}"
-\kmap ' "\\'{c}"  # c accute (pronunced as very soft ch)
-\kmap \" "\\'{C}"
+\kmap [ š  # s caron (pronunced sh)
+\kmap { Š
+\kmap ] đ  # d stroke (pronunced dj, with j as in German, not as
+\kmap } Đ  # in English)
+\kmap \\ ž # z caron (pronounced zh)
+\kmap | Ž
+\kmap ; č  # c caron (pronunced tch)
+\kmap : Č
+\kmap ' ć  # c accute (pronunced as very soft ch)
+\kmap \" Ć
 \kmap z y
 \kmap Z Y
 \kmap < ;
index 3529204d458b284e02be55cd8ee7049c7f963c71..babbe3262aab7d7dd62ef1629855bc2cb7a8a329 100644 (file)
@@ -8,8 +8,8 @@
 \kmod ] umlaut aeijouyAEIJOUY                   # umlaut on ]
 \kmap ! +
 \kmap @ \"
-\kmap \# \*
-\kmap $ "\\c{c}"
+\kmap \# *
+\kmap $ ç
 \kmap ^ &
 \kmap & /
 \kmap * (
 \kmap z y       # switched Y<->Z
 \kmap Y Z
 \kmap Z Y
-\kmap [ "\\`{e}"
-\kmap { "\\\"{u}"
+\kmap [ è
+\kmap { ü
 \kmap } !
-\kmap ; "\\'{e}"
-\kmap : "\\\"{o}"
-\kmap ' "\\`{a}"
-\kmap \" "\\\"{a}"
+\kmap ; é
+\kmap : ö
+\kmap ' à
+\kmap \" ä
 \kmap < ;
 \kmap > :
 \kmap ? _
 \kmap / -
 \kmap \\ $
 \kmap | "\\it\\${}"
-\kxmod circumflex i "\\^{\\i}"  # some exceptions
-\kxmod umlaut i "\\\"{\\i}"
+\kxmod circumflex i î  # some exceptions
+\kxmod umlaut i ï
index 6e54ac250814892ea1e6cea528ff67f32773c68e..ca955c504630b8ca18f2a86b24874f7068e26a6d 100644 (file)
@@ -8,8 +8,8 @@
 \kmod ] umlaut aeijouyAEIJOUY                   # umlaut on ]
 \kmap ! +
 \kmap @ \"
-\kmap \# \*
-\kmap $ "\\c{c}"
+\kmap \# *
+\kmap $ ç
 \kmap ^ &
 \kmap & /
 \kmap * (
 \kmap z y       # switched Y<->Z
 \kmap Y Z
 \kmap Z Y
-\kmap { "\\`{e}"
-\kmap [ "\\\"{u}"
+\kmap { è
+\kmap [ ü
 \kmap } !
-\kmap : "\\'{e}"
-\kmap ; "\\\"{o}"
-\kmap \" "\\`{a}"
-\kmap ' "\\\"{a}"
+\kmap : é
+\kmap ; ö
+\kmap \" à
+\kmap ' ä
 \kmap < ;
 \kmap > :
 \kmap ? _
 \kmap / -
 \kmap \\ $
 \kmap | "\\it\\${}"
-\kxmod circumflex i "\\^{\\i}"  # some exceptions
-\kxmod umlaut i "\\\"{\\i}"
+\kxmod circumflex i î  # some exceptions
+\kxmod umlaut i ï
index 529a0fcaa19245db317f084c493a91461e9f288d..f4ce50a07b9f0948baec40811491ae49b077223a 100644 (file)
@@ -9,48 +9,48 @@
 \kmod ` umlaut aeijouyAEIJOUY          # umlaut is on ` - but it's not widely used...
 \kmap 1 +              # map numbers to Slovak letters and
 \kmap ! 1              # Shift-numbers to numbers
-\kmap 2 "\\q{l}"
+\kmap 2 ľ
 \kmap @ 2
-\kmap 3 "\\v{s}"
+\kmap 3 š
 \kmap \# 3
-\kmap 4 "\\v{c}"
+\kmap 4 č
 \kmap $ 4
-\kmap 5 "\\q{t}"
+\kmap 5 ť
 \kmap % 5
-\kmap 6 "\\v{z}"
+\kmap 6 ž
 \kmap ^ 6
-\kmap 7 "\\'{y}"
+\kmap 7 ý
 \kmap & 7
-\kmap 8 "\\'{a}"
+\kmap 8 á
 \kmap * 8
-\kmap 9 "\\'{\\i}"
+\kmap 9 í
 \kmap ( 9
-\kmap 0 "\\'{e}"
+\kmap 0 é
 \kmap ) 0
 \kmap - =              # map other keys to reflect Slovak keyboard
 \kmap _ %
-\kmap ; "\\^{o}"
+\kmap ; ô
 \kmap : \"
-\kmap ' "\\S{}"
+\kmap ' §
 \kmap \" !
-\kmap [ "\\'{u}"
+\kmap [ ú
 \kmap { /
-\kmap ] "\\\"{a}"
+\kmap ] ä
 \kmap } (
 \kmap < ?
 \kmap > :
 \kmap ? _
 \kmap / -
-\kmap \\ "\\'{o}"
+\kmap \\ ó
 \kmap | )
-\kxmod caron o "\\^{o}"                # mapping exception - generate ^ instead for o
-\kxmod caron O "\\^{O}"
-\kxmod caron u "\\r{u}"                # generate circle for u - it's a Czech letter
-\kxmod caron U "\\r{U}"
-\kxmod caron t "\\q{t}"        # use proper caron mark for t, l, d and L
-\kxmod caron l "\\q{l}"
-\kxmod caron L "\\q{L}"
-\kxmod caron d "\\q{d}"
-\kxmod acute i "\\'{\\i}"      # use only root of i for i acute
-\kxmod umlaut i "\\\"{\\i}"    # not really needed
-\kxmod umlaut j "\\\"{\\j}"    # not really needed
+\kxmod caron o ô              # mapping exception - generate ^ instead for o
+\kxmod caron O Ô
+\kxmod caron u ů              # generate circle for u - it's a Czech letter
+\kxmod caron U Ů
+\kxmod caron t ť      # use proper caron mark for t, l, d and L
+\kxmod caron l ľ
+\kxmod caron L Ľ
+\kxmod caron d ď
+\kxmod acute i í      # use only root of i for i acute
+\kxmod umlaut i ï     # not really needed
+\kxmod umlaut j ȷ̈   # not really needed
index f30e0f303f5981c3b69a787291bf51dad0baa223..cb7b6987e9fdf87138bc759c1441ba8ee6bcdcc8 100644 (file)
 \kmap < ;
 \kmap > :
 
-\kmap [ "\\v{s}"                    # Chars with carons
-\kmap { "\\v{S}"
-\kmap ; "\\v{c}"
-\kmap : "\\v{C}"
-\kmap / "\\v{z}"
-\kmap ? "\\v{Z}"
+\kmap [ š                    # Chars with carons
+\kmap { Š
+\kmap ; č
+\kmap : Č
+\kmap / ž
+\kmap ? Ž
 
-\kmap ' "\\'{c}"                     # Chars with accute
-\kmap \" "\\'{C}"
+\kmap ' ć                     # Chars with accute
+\kmap \" Ć
index 8b9625009e5900abf3eb07fe22a04087b0d9bdd4..fe22cc9d7ab484a53b6b3a2e7aa99023138a5528 100644 (file)
 # \kxmod hug q q               # possibility to type q, ' or ; by duplicating
 # \kxmod acute ' '     #
 # \kxmod umlaut ; ;
-\kxmod acute i "\\'{\\i}"      # use only root of i for i acute
-\kxmod hugarian_umlaut a "\\u{a}"
-\kxmod hugarian_umlaut A "\\u{A}"
-\kxmod acute s "\\c{s}"
-\kxmod acute S "\\c{S}"
-\kxmod acute t "\\c{t}"
-\kxmod acute T "\\c{T}"
-\kxmod umlaut i "\\^{\\i}"
-\kxmod umlaut I "\\^{I}"
-\kxmod umlaut a "\\^{a}"
-\kxmod umlaut A "\\^{A}"
+\kxmod acute i í      # use only root of i for i acute
+\kxmod hugarian_umlaut a ă
+\kxmod hugarian_umlaut A Ă
+\kxmod acute s ş
+\kxmod acute S Ş
+\kxmod acute t ţ
+\kxmod acute T Ţ
+\kxmod umlaut i î
+\kxmod umlaut I Î
+\kxmod umlaut a â
+\kxmod umlaut A Â
 
 
index ae6493cfc04c10b1bbc06630c8c27327145682bb..fc1251fb608b0035df1db8bd43f97bffcb26782d 100644 (file)
 \kmap "," b
 \kmap < B
 
-\kmap e "\\u{g}"                       # mappings for Turkish letters
-\kmap E "\\u{G}"
-\kmap r "\\i{}"
-\kmap S "\\.{I}"
-\kmap g "\\\"{u}"
-\kmap G "\\\"{U}"
-\kmap ' "\\c{s}"
-\kmap \" "\\c{S}"
-\kmap x "\\\"{o}"
-\kmap X "\\\"{O}"
-\kmap b "\\c{c}"
-\kmap B "\\c{C}"
+\kmap e ğ                     # mappings for Turkish letters
+\kmap E Ğ
+\kmap r ı
+\kmap S İ
+\kmap g ü
+\kmap G Ü
+\kmap ' ş
+\kmap \" Ş
+\kmap x ö
+\kmap X Ö
+\kmap b ç
+\kmap B Ç
 
 
index 905b3fcd4c61118a6568dace3ee3de4dff098275..e8d5d21d7122ffc0b45f187e0b14a3d78eeac710 100644 (file)
 \kmap \\ ","
 \kmap | ;
 
-\kmap [ "\\u{g}"                       # mappings for Turkish letters
-\kmap { "\\u{G}"
-\kmap ] "\\\"{u}"
-\kmap } "\\\"{U}"
-\kmap i "\\i{}"
-\kmap ; "\\c{s}"
-\kmap : "\\c{S}"
+\kmap [ ğ                     # mappings for Turkish letters
+\kmap { Ğ
+\kmap ] ü
+\kmap } Ü
+\kmap i ı
+\kmap ; ş
+\kmap : Ş
 \kmap ' i
-\kmap \" "\\.{I}"
-\kmap "," "\\\"{o}"
-\kmap < "\\\"{O}"
-\kmap . "\\c{c}"
-\kmap > "\\c{C}"
+\kmap \" İ
+\kmap "," ö
+\kmap < Ö
+\kmap . ç
+\kmap > Ç