summaryrefslogtreecommitdiff
path: root/runtime/keymap
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/keymap')
-rw-r--r--runtime/keymap/README.txt26
-rw-r--r--runtime/keymap/accents.vim71
-rw-r--r--runtime/keymap/arabic.vim2
-rw-r--r--runtime/keymap/arabic_utf-8.vim86
-rw-r--r--runtime/keymap/czech.vim1
-rw-r--r--runtime/keymap/czech_utf-8.vim78
-rw-r--r--runtime/keymap/esperanto.vim1
-rw-r--r--runtime/keymap/esperanto_utf-8.vim58
-rw-r--r--runtime/keymap/greek.vim7
-rw-r--r--runtime/keymap/greek_cp1253.vim119
-rw-r--r--runtime/keymap/greek_iso-8859-7.vim118
-rw-r--r--runtime/keymap/greek_utf-8.vim600
-rw-r--r--runtime/keymap/hebrew.vim16
-rw-r--r--runtime/keymap/hebrew_cp1255.vim62
-rw-r--r--runtime/keymap/hebrew_iso-8859-8.vim41
-rw-r--r--runtime/keymap/hebrew_utf-8.vim128
-rw-r--r--runtime/keymap/hebrewp.vim16
-rw-r--r--runtime/keymap/hebrewp_cp1255.vim58
-rw-r--r--runtime/keymap/hebrewp_iso-8859-8.vim36
-rw-r--r--runtime/keymap/hebrewp_utf-8.vim122
-rw-r--r--runtime/keymap/lithuanian-baltic.vim31
-rw-r--r--runtime/keymap/magyar_utf-8.vim37
-rw-r--r--runtime/keymap/persian-iranian_utf-8.vim115
-rw-r--r--runtime/keymap/persian.vim8
-rw-r--r--runtime/keymap/pinyin.vim54
-rw-r--r--runtime/keymap/russian-jcuken.vim87
-rw-r--r--runtime/keymap/russian-jcukenwin.vim87
-rw-r--r--runtime/keymap/russian-yawerty.vim79
-rw-r--r--runtime/keymap/serbian-latin.vim1
-rw-r--r--runtime/keymap/serbian-latin_utf-8.vim44
-rw-r--r--runtime/keymap/serbian.vim20
-rw-r--r--runtime/keymap/serbian_cp1250.vim40
-rw-r--r--runtime/keymap/serbian_cp1251.vim90
-rw-r--r--runtime/keymap/serbian_iso-8859-2.vim40
-rw-r--r--runtime/keymap/serbian_iso-8859-5.vim89
-rw-r--r--runtime/keymap/serbian_utf-8.vim93
-rw-r--r--runtime/keymap/slovak.vim16
-rw-r--r--runtime/keymap/slovak_cp1250.vim100
-rw-r--r--runtime/keymap/slovak_iso-8859-2.vim100
-rw-r--r--runtime/keymap/slovak_utf-8.vim100
40 files changed, 2877 insertions, 0 deletions
diff --git a/runtime/keymap/README.txt b/runtime/keymap/README.txt
new file mode 100644
index 000000000..d42e02693
--- /dev/null
+++ b/runtime/keymap/README.txt
@@ -0,0 +1,26 @@
+keymap files for Vim
+
+One of these files is loaded when the 'keymap' option is set.
+
+The name of the file consists of these parts:
+
+ {language}[-{layout}][_{encoding}].vim
+
+{language} Name of the language (e.g., "hebrew", "greek")
+
+{layout} Optional: name of the keyboard layout (e.g., "spanish",
+ "russian3"). When omitted the layout of the standard
+ US-english keyboard is assumed.
+
+{encoding} Optional: character encoding for which this keymap works.
+ When omitted the "normal" encoding for the language is
+ assumed.
+ Use the value the 'encoding' option: lower case only, use '-'
+ instead of '_'.
+
+Each file starts with a header, naming the maintainer and the date when it was
+last changed. If you find a problem in a keymap file, check if you have the
+most recent version. If necessary, report a problem to the maintainer.
+
+The format of the keymap lines below "loadkeymap" is explained in the Vim help
+files, see ":help keymap-file-format".
diff --git a/runtime/keymap/accents.vim b/runtime/keymap/accents.vim
new file mode 100644
index 000000000..fae465e93
--- /dev/null
+++ b/runtime/keymap/accents.vim
@@ -0,0 +1,71 @@
+" Vim Keymap file for latin1 accents through dead characters
+" Maintainer: Bram Moolenaar
+" Last Change: 2001 Jul 22
+
+" All characters are given literally, conversion to another encoding (e.g.,
+" UTF-8) should work.
+scriptencoding latin1
+
+" Use this short name in the status line.
+let b:keymap_name = "acc"
+
+loadkeymap
+`A
+'A
+A
+^A
+~A
+'C
+C
+`E
+'E
+E
+^E
+`I
+'I
+I
+^I
+~N
+`O
+'O
+O
+^O
+~O
+`U
+'U
+U
+^U
+'Y
+Y
+`a
+'a
+a
+^a
+~a
+'c
+c
+`e
+'e
+e
+^e
+`i
+'i
+i
+^i
+~n
+`o
+'o
+o
+^o
+~o
+`u
+'u
+u
+^u
+'y
+y
+'' '
+
+`` `
+^^ ^
+~~ ~
diff --git a/runtime/keymap/arabic.vim b/runtime/keymap/arabic.vim
new file mode 100644
index 000000000..7eb9a17dd
--- /dev/null
+++ b/runtime/keymap/arabic.vim
@@ -0,0 +1,2 @@
+" Assume 'encoding' is set to "latin1" while actually iso-8859-6 is used
+source <sfile>:p:h/arabic_utf-8.vim
diff --git a/runtime/keymap/arabic_utf-8.vim b/runtime/keymap/arabic_utf-8.vim
new file mode 100644
index 000000000..aeb4a4f39
--- /dev/null
+++ b/runtime/keymap/arabic_utf-8.vim
@@ -0,0 +1,86 @@
+" Vim Keymap file for Arabic
+" Maintainer : Arabic Support group <support-at-arabeyes.org>
+" Created by : Nadim Shaikli <nadim-at-arabeyes.org>
+" Last Updated : 2003 Apr 26
+" This is for a standard Microsoft Arabic keyboard layout.
+
+" Use this short name in the status line.
+let b:keymap_name = "arab"
+
+loadkeymap
+q <char-0x0636> " (1590) - DAD
+w <char-0x0635> " (1589) - SAD
+e <char-0x062b> " (1579) - THEH
+r <char-0x0642> " (1602) - QAF
+t <char-0x0641> " (1601) - FEH
+y <char-0x063a> " (1594) - GHAIN
+u <char-0x0639> " (1593) - AIN
+i <char-0x0647> " (1607) - HEH
+o <char-0x062e> " (1582) - KHAH
+p <char-0x062d> " (1581) - HAH
+[ <char-0x062c> " (1580) - JEEM
+] <char-0x062f> " (1583) - DAL
+a <char-0x0634> " (1588) - SHEEN
+s <char-0x0633> " (1587) - SEEN
+d <char-0x064a> " (1610) - YEH
+f <char-0x0628> " (1576) - BEH
+g <char-0x0644> " (1604) - LAM
+h <char-0x0627> " (1575) - ALEF
+j <char-0x062a> " (1578) - TEH
+k <char-0x0646> " (1606) - NOON
+l <char-0x0645> " (1605) - MEEM
+; <char-0x0643> " (1603) - KAF
+' <char-0x0637> " (1591) - TAH
+z <char-0x0626> " (1574) - YEH with HAMZA ABOVE
+x <char-0x0621> " (1569) - HAMZA
+c <char-0x0624> " (1572) - WAW with HAMZA ABOVE
+v <char-0x0631> " (1585) - REH
+b <char-0x0644><char-0x0627> " (1604/1575) - LAA (lam alef)
+n <char-0x0649> " (1609) - ALEF MAKSURA
+m <char-0x0629> " (1577) - TEH MARBUTA
+, <char-0x0648> " (1608) - WAW
+. <char-0x0632> " (1586) - ZAIN
+/ <char-0x0638> " (1592) - ZAH
+0 <char-0x0660> " (1632) - Arabic 0
+1 <char-0x0661> " (1633) - Arabic 1
+2 <char-0x0662> " (1634) - Arabic 2
+3 <char-0x0663> " (1635) - Arabic 3
+4 <char-0x0664> " (1636) - Arabic 4
+5 <char-0x0665> " (1637) - Arabic 5
+6 <char-0x0666> " (1638) - Arabic 6
+7 <char-0x0667> " (1639) - Arabic 7
+8 <char-0x0668> " (1640) - Arabic 8
+9 <char-0x0669> " (1641) - Arabic 9
+` <char-0x0630> " (1584) - THAL
+~ <char-0x0651> " (1617) - Tanween -- SHADDA
+Q <char-0x064e> " (1614) - Tanween -- FATHA
+W <char-0x064b> " (1611) - Tanween -- FATHATAN
+E <char-0x064f> " (1615) - Tanween -- DAMMA
+R <char-0x064c> " (1612) - Tanween -- DAMMATAN
+T <char-0x0644><char-0x0625> " (1604/1573) - LAA with HAMZA BELOW
+Y <char-0x0625> " (1573) - ALEF with HAMZA BELOW
+U <char-0x0060> " (96) - ASCII -- `
+I <char-0x00f7> " (247) - ASCII suppl -- div
+O <char-0x00d7> " (215) - ASCII suppl -- mul
+P <char-0x061b> " (1563) - Arabic Semicolon
+{ <char-0x003c> " (60) - ASCII -- <
+} <char-0x003e> " (62) - ASCII -- >
+A <char-0x0650> " (1616) - Tanween -- KASRA
+S <char-0x064d> " (1613) - Tanween -- KASRATAN
+D <char-0x005b> " (91) - ASCII -- [
+F <char-0x005d> " (93) - ASCII -- ]
+G <char-0x0644><char-0x0623> " (1604/1571) - LAA with HAMZA ABOVE
+H <char-0x0623> " (1571) - ALEF with HAMZA ABOVE
+J <char-0x0640> " (1600) - TATWEEL
+K <char-0x060c> " (1548) - Arabic Comma
+L <char-0x002f> " (47) - ASCII -- /
+Z <char-0x007e> " (126) - ASCII -- ~
+X <char-0x0652> " (1618) - Tanween -- SUKUN
+C <char-0x007b> " (123) - ASCII -- {
+V <char-0x007d> " (125) - ASCII -- }
+B <char-0x0644><char-0x0622> " (1604/1570) - LAA with MADDA ABOVE
+N <char-0x0622> " (1570) - ALEF with MADDA ABOVE
+M <char-0x0027> " (39) - ASCII -- '
+< <char-0x002c> " (44) - ASCII -- ,
+> <char-0x002e> " (46) - ASCII -- .
+? <char-0x061f> " (1567) - Arabic Question Mark
diff --git a/runtime/keymap/czech.vim b/runtime/keymap/czech.vim
new file mode 100644
index 000000000..ffca531c0
--- /dev/null
+++ b/runtime/keymap/czech.vim
@@ -0,0 +1 @@
+source <sfile>:p:h/czech_utf-8.vim
diff --git a/runtime/keymap/czech_utf-8.vim b/runtime/keymap/czech_utf-8.vim
new file mode 100644
index 000000000..227f80bef
--- /dev/null
+++ b/runtime/keymap/czech_utf-8.vim
@@ -0,0 +1,78 @@
+" Maintainer: Jiri Tobisek <tobich@yahoo.com>
+" Last Changed: 2001 Sep 30
+
+let b:keymap = "czech"
+
+loadkey
+0 é
+9 í
+8 ÷
+7 ý
+6 ŵ
+5 ř
+4 ī
+3 ŷ
+2 ě
+1 +
+` ;
+) 0
+( 9
+* 8
+& 7
+^ 6
+% 5
+$ 4
+# 3
+@ 2
+! 1
+] )
+} (
+[ ú
+{ /
+' §
+" !
+; ů
+: "
+/ -
+? _
+> :
+< ?
+| '
+~u ů
+~U Ů
+\\a ä
+\\e ë
+\\i ï
+\\o ö
+\\u å
+\\y ÿ
+\\A Ä
+\\E Ë
+\\I ì
+\\O Ö
+\\U ö
+\\Y Ÿ
+=a ÷
+=e é
+=i í
+=o ó
+=u ú
+=y ý
+=A Á
+=E É
+=I ë
+=O Ó
+=U ù
+=Y û
++c ī
++d Ĭ
++e ě
++n ň
++r ř
++s ŷ
++t š
++z ŵ
+"y z If you prefere 'quertz' keyboard
+"Y Z instead of 'querty',
+"z y just uncomment these
+"Z Y four last lines
diff --git a/runtime/keymap/esperanto.vim b/runtime/keymap/esperanto.vim
new file mode 100644
index 000000000..42b3987bb
--- /dev/null
+++ b/runtime/keymap/esperanto.vim
@@ -0,0 +1 @@
+source <sfile>:p:h/esperanto_utf-8.vim
diff --git a/runtime/keymap/esperanto_utf-8.vim b/runtime/keymap/esperanto_utf-8.vim
new file mode 100644
index 000000000..3d335cb24
--- /dev/null
+++ b/runtime/keymap/esperanto_utf-8.vim
@@ -0,0 +1,58 @@
+" Esperanto keymap for utf-8
+" Maintainer: A.J.Mechelynck <antoine.mechelynck@skynet.be>
+" Last Changed: Sat 2003 Mar 15 05:23
+
+" This keymap adds the special consonants of Esperanto to an existing Latin
+" keyboard.
+"
+" All keys same as usual, except:
+" ^ followed by any of CcGgHhJjSs adds a circumflex on top of the letter
+" and replaces the grave accent by a breve
+" any of CcGgHhJjSsUu followed by X or x maps to consonant with ^ or Uu with
+" breve.
+
+" short keymap name for statusline
+let b:keymap_name = "Eo"
+
+" make cursor bright green when keymap is active
+"highlight lCursor guifg=NONE guibg=#00E000
+
+" The following digraphs are already defined
+" digraph C> 0x0108 c> 0x0109 G> 0x011C g> 0x011D H> 0x0124 h> 0x0125
+" digraph J> 0x0134 j> 0x0135 S> 0x015C s> 0x015D U( 0x016C u( 0x016D
+
+scriptencoding latin1
+
+loadkeymap
+
+^C <Char-0x0108> " (264) UPPERCASE C WITH CIRCUMFLEX
+^c <Char-0x0109> " (265) LOWERCASE c WITH CIRCUMFLEX
+^G <Char-0x011C> " (284) UPPERCASE G WITH CIRCUMFLEX
+^g <Char-0x011D> " (285) LOWERCASE g WITH CIRCUMFLEX
+^H <Char-0x0124> " (292) UPPERCASE H WITH CIRCUMFLEX
+^h <Char-0x0125> " (293) LOWERCASE h WITH CIRCUMFLEX
+^J <Char-0x0134> " (308) UPPERCASE J WITH CIRCUMFLEX
+^j <Char-0x0135> " (309) LOWERCASE j WITH CIRCUMFLEX
+^S <Char-0x015C> " (348) UPPERCASE S WITH CIRCUMFLEX
+^s <Char-0x015D> " (349) LOWERCASE s WITH CIRCUMFLEX
+ <Char-0x016C> " (364) UPPERCASE U WITH BREVE
+ <Char-0x016D> " (365) LOWERCASE u WITH BREVE
+
+CX <Char-0x0108> " (264) UPPERCASE C WITH CIRCUMFLEX
+Cx <Char-0x0108> " (264) UPPERCASE C WITH CIRCUMFLEX
+cx <Char-0x0109> " (265) LOWERCASE c WITH CIRCUMFLEX
+GX <Char-0x011C> " (284) UPPERCASE G WITH CIRCUMFLEX
+Gx <Char-0x011C> " (284) UPPERCASE G WITH CIRCUMFLEX
+gx <Char-0x011D> " (285) LOWERCASE g WITH CIRCUMFLEX
+HX <Char-0x0124> " (292) UPPERCASE H WITH CIRCUMFLEX
+Hx <Char-0x0124> " (292) UPPERCASE H WITH CIRCUMFLEX
+hx <Char-0x0125> " (293) LOWERCASE h WITH CIRCUMFLEX
+JX <Char-0x0134> " (308) UPPERCASE J WITH CIRCUMFLEX
+Jx <Char-0x0134> " (308) UPPERCASE J WITH CIRCUMFLEX
+jx <Char-0x0135> " (309) LOWERCASE j WITH CIRCUMFLEX
+SX <Char-0x015C> " (348) UPPERCASE S WITH CIRCUMFLEX
+Sx <Char-0x015C> " (348) UPPERCASE S WITH CIRCUMFLEX
+sx <Char-0x015D> " (349) LOWERCASE s WITH CIRCUMFLEX
+UX <Char-0x016C> " (364) UPPERCASE U WITH BREVE
+Ux <Char-0x016C> " (364) UPPERCASE U WITH BREVE
+ux <Char-0x016D> " (365) LOWERCASE u WITH BREVE
diff --git a/runtime/keymap/greek.vim b/runtime/keymap/greek.vim
new file mode 100644
index 000000000..eb2c1dedc
--- /dev/null
+++ b/runtime/keymap/greek.vim
@@ -0,0 +1,7 @@
+" Assume 'encoding' is set to "latin1" while actually cp1253 or iso-8859-7 is
+" being used
+if has("win16") || has("win32") || has("win32unix")
+ source <sfile>:p:h/greek_cp1253.vim
+else
+ source <sfile>:p:h/greek_iso-8859-7.vim
+endif
diff --git a/runtime/keymap/greek_cp1253.vim b/runtime/keymap/greek_cp1253.vim
new file mode 100644
index 000000000..a146477da
--- /dev/null
+++ b/runtime/keymap/greek_cp1253.vim
@@ -0,0 +1,119 @@
+" Vim Keymap file for greek
+" Maintainer: Grigorios Magklis <maglis@cs.rochester.edu>
+" Patched for MS-Windows CP1253: Panagiotis Louridas <louridas@acm.org>
+" Last Updated: Fri 13 Feb 2004 13:01:33
+"
+" This keyboard layout allows all Greek symbols to be typed,
+" including accented capitals, diaeresis & accent on the same
+" vowel, and the Greek semicolon sign.
+"
+" accent ";" + letter
+" diaeresis ":" + letter
+" diaeresis + accent ";" + ":" (or ":" + ";") + letter
+" semicolon "q"
+" colon "Q"
+" greek semicolon "W"
+" sigma at end of word "w"
+" greek left double-quote "<" twice
+" greek right double-quote ">" twice
+
+" Use this short name in the status line.
+let b:keymap_name = "greek"
+
+loadkeymap
+" capital
+A <char-193> "
+B <char-194> "
+G <char-195> "
+D <char-196> "
+E <char-197> "
+Z <char-198> "
+H <char-199> "
+U <char-200> "
+I <char-201> "
+K <char-202> "
+L <char-203> "
+M <char-204> "
+N <char-205> "
+J <char-206> "
+O <char-207> "
+P <char-208> "
+R <char-209> "
+S <char-211> "
+T <char-212> "
+Y <char-213> "
+F <char-214> "
+X <char-215> "
+C <char-216> "
+V <char-217> "
+
+" small
+a <char-225> "
+b <char-226> "
+g <char-227> "
+d <char-228> "
+e <char-229> "
+z <char-230> "
+h <char-231> "
+u <char-232> "
+i <char-233> "
+k <char-234> "
+l <char-235> "
+m <char-236> "
+n <char-237> "
+j <char-238> "
+o <char-239> "
+p <char-240> "
+r <char-241> "
+w <char-242> "
+s <char-243> "
+t <char-244> "
+y <char-245> "
+f <char-246> "
+x <char-247> "
+c <char-248> "
+v <char-249> "
+
+" accented capital
+;A <char-162> "
+;E <char-184> "
+;H <char-185> "
+;I <char-186> "
+;Y <char-190> "
+;O <char-188> "
+;V <char-191> "
+"
+:I <char-218> "
+:Y <char-219> "
+
+" accented small
+;a <char-220> "
+;e <char-221> "
+;h <char-222> "
+;i <char-223> "
+;y <char-253> "
+;o <char-252> "
+;v <char-254> "
+"
+:i <char-250> "
+:y <char-251> "
+"
+;:i <char-192> "
+:;i <char-192> "
+;:y <char-224> "
+:;y <char-224> "
+
+" symbols
+q ; " ;
+Q : " :
+W <char-183> "
+; <char-180> "
+: <char-168> "
+;: <char-181> "
+:; <char-181> "
+
+" quotes
+<< <char-171> "
+>> <char-187> "
+" <char-161> "
+" <char-162> "
diff --git a/runtime/keymap/greek_iso-8859-7.vim b/runtime/keymap/greek_iso-8859-7.vim
new file mode 100644
index 000000000..5cfd936b3
--- /dev/null
+++ b/runtime/keymap/greek_iso-8859-7.vim
@@ -0,0 +1,118 @@
+" Vim Keymap file for greek
+" Maintainer: Grigorios Magklis <maglis@cs.rochester.edu>
+" Last Updated: Tue 10 Jul 2001 16:50:50
+"
+" This keyboard layout allows all Greek symbols to be typed,
+" including accented capitals, diaeresis & accent on the same
+" vowel, and the Greek semicolon sign.
+"
+" accent ";" + letter
+" diaeresis ":" + letter
+" diaeresis + accent ";" + ":" (or ":" + ";") + letter
+" semicolon "q"
+" colon "Q"
+" greek semicolon "W"
+" sigma at end of word "w"
+" greek left double-quote "<" twice
+" greek right double-quote ">" twice
+
+" Use this short name in the status line.
+let b:keymap_name = "greek"
+
+loadkeymap
+" capital
+A <char-193> "
+B <char-194> "
+G <char-195> "
+D <char-196> "
+E <char-197> "
+Z <char-198> "
+H <char-199> "
+U <char-200> "
+I <char-201> "
+K <char-202> "
+L <char-203> "
+M <char-204> "
+N <char-205> "
+J <char-206> "
+O <char-207> "
+P <char-208> "
+R <char-209> "
+S <char-211> "
+T <char-212> "
+Y <char-213> "
+F <char-214> "
+X <char-215> "
+C <char-216> "
+V <char-217> "
+
+" small
+a <char-225> "
+b <char-226> "
+g <char-227> "
+d <char-228> "
+e <char-229> "
+z <char-230> "
+h <char-231> "
+u <char-232> "
+i <char-233> "
+k <char-234> "
+l <char-235> "
+m <char-236> "
+n <char-237> "
+j <char-238> "
+o <char-239> "
+p <char-240> "
+r <char-241> "
+w <char-242> "
+s <char-243> "
+t <char-244> "
+y <char-245> "
+f <char-246> "
+x <char-247> "
+c <char-248> "
+v <char-249> "
+
+" accented capital
+;A <char-182> "
+;E <char-184> "
+;H <char-185> "
+;I <char-186> "
+;Y <char-190> "
+;O <char-188> "
+;V <char-191> "
+"
+:I <char-218> "
+:Y <char-219> "
+
+" accented small
+;a <char-220> "
+;e <char-221> "
+;h <char-222> "
+;i <char-223> "
+;y <char-253> "
+;o <char-252> "
+;v <char-254> "
+"
+:i <char-250> "
+:y <char-251> "
+"
+;:i <char-192> "
+:;i <char-192> "
+;:y <char-224> "
+:;y <char-224> "
+
+" symbols
+q ; " ;
+Q : " :
+W <char-183> "
+; <char-180> "
+: <char-168> "
+;: <char-181> "
+:; <char-181> "
+
+" quotes
+<< <char-171> "
+>> <char-187> "
+" <char-161> "
+" <char-162> "
diff --git a/runtime/keymap/greek_utf-8.vim b/runtime/keymap/greek_utf-8.vim
new file mode 100644
index 000000000..7eb67cfe9
--- /dev/null
+++ b/runtime/keymap/greek_utf-8.vim
@@ -0,0 +1,600 @@
+" This file was adapted for Vim 6 from the yudit distribution by
+" Robert Goulding <goulding@princeton.edu>
+"
+" The monotonic part of this kmap was made by Constantine Stathopoulos
+" <cstath@irismedia.gr>.
+" The polytonic part was made by <birger.langkjer@image.dk> 04/11-1999,
+" Aarhus, Denmark.
+" It was modified and completed by A. Tsolomitis <atsol@aegean.gr>
+" The licence allows modifications but redistribution of modifications
+" should be with an other name.
+" Any comments can be sent to A. Tsolomitis <atsol@aegean.gr>
+
+" The keymap now conforms with the
+" LaTeX's-Babel Standard by A. Syropoulos <apostolo@ocean1.ee.duth.gr>
+
+" The conventions are as follows:
+" EURO SIGN is E$ (0x20AC),
+" Drachma sign is D$ (0x20AF)
+
+" RIGHT an LEFT QUOTATION MARKS (0x00BB), (0x00AB),
+" follow the kikbd conventions (;< abd ;>) AND << and >>
+
+" Apostrofos is corrected in order to agree with the Greek grammar rules
+" of Triantafilidis who requires the PSILI (or Koronis) symbol for an
+" apostrophe.
+
+" The Greek ANO TELEIA (0x0387), follows again the kikbd conventions as
+" well as the Emacs conventions. So it is produced by both ;. and W
+
+" All greek accents are added so they can be produced by scholars
+" without having to combine them with letters (usufull for grammarians
+" in particular) (especially for dasia and psiln we use ' for psili
+" (that is apostrophe) and ;' for dasia. This is done in order to
+" preserve the posibility to write a plain < or >.
+
+" Ypogegrammeni is | following the character (the originally proposed
+" i after the character is problematic: can't write easily ai or vi) :
+
+" > dasia " an oxia or baria *always* should follow dasia
+" < psili " an oxia or baria *always* should follow psili
+" ; oxia
+" ` varia
+" ~ perispomeni
+" : dialytika
+" :; or ;: dialytika oxia
+" :` or `: dialytika baria
+" || a single ypogegrammeni
+" vowel followed by | gives ypogegrammeni to the vowel
+" -vowel gives vowel with macron
+" ^vowel gives vowel with braxy
+" -- endash
+" --- emdash
+" ;b ;p ;f ;u ;r ;k give alternative forms
+" && give the Greek kai symbol
+" #Q and #q give archaic Qoppa and qoppa
+" ;U is capital Theta symbol
+" !e and !E are lunate epsilon and Epsilon
+" #ST stigma
+" #SP sampi
+" #G digamma
+" #Q qoppa
+" ;# avw tovos (for numerals)
+" ;## katw tovos (for numerals)
+
+
+" All accents are supported. Even rho with < and > and Rho with <
+" Also :~i and :~u and macron and braxy a,i,u and their capitals.
+let b:keymap_name = "grk"
+loadkeymap
+" PUNCTUATION MARKS - SYMBOLS (GREEK SPECIFIC)
+"
+E$ <char-0x20AC> " EURO SIGN
+>> <char-0x00BB> " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK [GREEK
+ " EISAGOGIKA/OMOIOMATIKA - DEFINITION
+ " MISSING FROM UNICODE]
+;> <char-0x00BB> "
+<< <char-0x00AB> " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK [GREEK
+ " EISAGOGIKA - DEFINITION MISSING FROM UNICODE]
+;< <char-0x00AB> "
+Q <char-0x003A> " COLON [GREEK EPEXIGIMATIKA OR ANO & KATO TELEIA -
+ " DEFINITION MISSING FROM UNICODE]
+q <char-0x037E> " GREEK QUESTION MARK (EROTIMATIKO)
+;. <char-0x0387> " GREEK ANO TELEIA (KDE/kikbd/Xinput standard)
+W <char-0x0387> " GREEK ANO TELEIA (Emacs standard)
+' <char-0x1FBD> " GREEK APOSTROFOS
+-- <char-0x2013> " endash
+--- <char-0x2014> " emdash
+"
+" GREEK DIACRITICS
+"
+: <char-0x00A8> " DIAERESIS [GREEK DIALYTIKA - DEFINITION MISSING FROM
+ " UNICODE]
+; <char-0x0384> " GREEK TONOS
+:; <char-0x0385> " GREEK DIALYTIKA Oxia
+;: <char-0x0385> " GREEK DIALYTIKA Oxia
+:` <char-0x1FED> " GREEK DIALYTIKA VARIA
+`: <char-0x1FED> " GREEK DIALYTIKA VARIA
+` <char-0x1FEF> " Greek Varia
+~ <char-0x1FC0> " Perispomeni
+>` <char-0x1FCD> " Psili Varia
+<` <char-0x1FDD> " Dasia Varia
+>; <char-0x1FCE> " Psili Oxia
+<; <char-0x1FDE> " Dasia Oxia
+<~ <char-0x1FDF> " Dasia Perispomeni
+>~ <char-0x1FCF> " Psili Perispomeni
+"For plain psili use apostrophe
+;' <char-0x1FFE> " (Plain) dasia
+
+
+"
+" GREEK LETTERS
+"
+A <char-0x0391> " GREEK CAPITAL LETTER ALPHA
+B <char-0x0392> " GREEK CAPITAL LETTER BETA
+G <char-0x0393> " GREEK CAPITAL LETTER GAMMA
+D <char-0x0394> " GREEK CAPITAL LETTER DELTA
+E <char-0x0395> " GREEK CAPITAL LETTER EPSILON
+Z <char-0x0396> " GREEK CAPITAL LETTER ZETA
+H <char-0x0397> " GREEK CAPITAL LETTER ETA
+U <char-0x0398> " GREEK CAPITAL LETTER THETA
+I <char-0x0399> " GREEK CAPITAL LETTER IOTA
+K <char-0x039A> " GREEK CAPITAL LETTER KAPPA
+L <char-0x039B> " GREEK CAPITAL LETTER LAMDA
+M <char-0x039C> " GREEK CAPITAL LETTER MU
+N <char-0x039D> " GREEK CAPITAL LETTER NU
+J <char-0x039E> " GREEK CAPITAL LETTER XI
+O <char-0x039F> " GREEK CAPITAL LETTER OMIKRON
+P <char-0x03A0> " GREEK CAPITAL LETTER PI
+R <char-0x03A1> " GREEK CAPITAL LETTER RHO
+"W <char-0x03A3> " GREEK CAPITAL LETTER SIGMA [CAPITAL ANALOGUE FOR
+ " SMALL LETTER FINAL SIGMA]
+S <char-0x03A3> " GREEK CAPITAL LETTER SIGMA
+T <char-0x03A4> " GREEK CAPITAL LETTER TAU
+Y <char-0x03A5> " GREEK CAPITAL LETTER UPSILON
+F <char-0x03A6> " GREEK CAPITAL LETTER PHI
+X <char-0x03A7> " GREEK CAPITAL LETTER CHI
+C <char-0x03A8> " GREEK CAPITAL LETTER PSI
+V <char-0x03A9> " GREEK CAPITAL LETTER OMEGA
+a <char-0x03B1> " GREEK SMALL LETTER ALPHA
+b <char-0x03B2> " GREEK SMALL LETTER BETA
+g <char-0x03B3> " GREEK SMALL LETTER GAMMA
+d <char-0x03B4> " GREEK SMALL LETTER DELTA
+e <char-0x03B5> " GREEK SMALL LETTER EPSILON
+z <char-0x03B6> " GREEK SMALL LETTER ZETA
+h <char-0x03B7> " GREEK SMALL LETTER ETA
+u <char-0x03B8> " GREEK SMALL LETTER THETA
+i <char-0x03B9> " GREEK SMALL LETTER IOTA
+k <char-0x03BA> " GREEK SMALL LETTER KAPPA
+l <char-0x03BB> " GREEK SMALL LETTER LAMDA
+m <char-0x03BC> " GREEK SMALL LETTER MU
+n <char-0x03BD> " GREEK SMALL LETTER NU
+j <char-0x03BE> " GREEK SMALL LETTER XI
+o <char-0x03BF> " GREEK SMALL LETTER OMICRON
+p <char-0x03C0> " GREEK SMALL LETTER PI
+r <char-0x03C1> " GREEK SMALL LETTER RHO
+w <char-0x03C2> " GREEK SMALL LETTER FINAL SIGMA
+s <char-0x03C3> " GREEK SMALL LETTER SIGMA
+t <char-0x03C4> " GREEK SMALL LETTER TAU
+y <char-0x03C5> " GREEK SMALL LETTER UPSILON
+f <char-0x03C6> " GREEK SMALL LETTER PHI
+x <char-0x03C7> " GREEK SMALL LETTER CHI
+c <char-0x03C8> " GREEK SMALL LETTER PSI
+v <char-0x03C9> " GREEK SMALL LETTER OMEGA
+"
+"COMBINED GREEK LETTERS WITH DIACRITICS
+"
+;A <char-0x0386> " GREEK CAPITAL LETTER ALPHA WITH TONOS
+;E <char-0x0388> " GREEK CAPITAL LETTER EPSILON WITH TONOS
+;H <char-0x0389> " GREEK CAPITAL LETTER ETA WITH TONOS
+;I <char-0x038A> " GREEK CAPITAL LETTER IOTA WITH TONOS
+;O <char-0x038C> " GREEK CAPITAL LETTER OMICRON WITH TONOS
+;Y <char-0x038E> " GREEK CAPITAL LETTER UPSILON WITH TONOS
+;V <char-0x038F> " GREEK CAPITAL LETTER OMEGA WITH TONOS
+:;i <char-0x0390> " GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+;:i <char-0x0390> " GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+:`i <char-0x1FD2> " GREEK SMALL LETTER IOTA WITH DIALYTIKA AND baria
+`:i <char-0x1FD2> " GREEK SMALL LETTER IOTA WITH DIALYTIKA AND baria
+:I <char-0x03AA> " GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
+:Y <char-0x03AB> " GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
+;a <char-0x03AC> " GREEK SMALL LETTER ALPHA WITH TONOS
+;e <char-0x03AD> " GREEK SMALL LETTER EPSILON WITH TONOS
+;h <char-0x03AE> " GREEK SMALL LETTER ETA WITH TONOS
+;i <char-0x03AF> " GREEK SMALL LETTER IOTA WITH TONOS
+:;y <char-0x03B0> " GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
+;:y <char-0x03B0> " GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
+:`y <char-0x1FE2> " GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND baria
+`:y <char-0x1FE2> " GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND baria
+:i <char-0x03CA> " GREEK SMALL LETTER IOTA WITH DIALYTIKA
+:y <char-0x03CB> " GREEK SMALL LETTER UPSILON WITH DIALYTIKA
+;o <char-0x03CC> " GREEK SMALL LETTER OMICRON WITH TONOS
+;y <char-0x03CD> " GREEK SMALL LETTER UPSILON WITH TONOS
+;v <char-0x03CE> " GREEK SMALL LETTER OMEGA WITH TONOS
+
+
+
+"
+" letters with Varia:
+"
+`A <char-0x1FBA> " GREEK CAPITAL LETTER ALPHA WITH VARIA
+`E <char-0x1FC8> " GREEK CAPITAL LETTER ALPHA WITH VARIA
+`H <char-0x1FCA> " GREEK CAPITAL LETTER ETA WITH VARIA
+`I <char-0x1FDA> " GREEK CAPITAL LETTER IOTA WITH VARIA
+`O <char-0x1FF8> " GREEK CAPITAL LETTER ALPHA WITH VARIA
+`Y <char-0x1FEA> " GREEK CAPITAL LETTER ALPHA WITH VARIA
+`V <char-0x1FFA> " GREEK CAPITAL LETTER OMEGA WITH VARIA
+`a <char-0x1F70> " GREEK SMALL LETTER ALPHA WITH VARIA
+`e <char-0x1F72> " GREEK SMALL LETTER ALPHA WITH VARIA
+`h <char-0x1F74> " GREEK SMALL LETTER ETA WITH VARIA
+`i <char-0x1F76> " GREEK SMALL LETTER IOTA WITH VARIA
+`o <char-0x1F78> " GREEK SMALL LETTER ALPHA WITH VARIA
+`y <char-0x1F7A> " GREEK SMALL LETTER ALPHA WITH VARIA
+`v <char-0x1F7C> " GREEK SMALL LETTER OMEGA WITH VARIA
+"
+" letters with Oxia:
+"
+;A <char-0x1FBB> " GREEK CAPITAL LETTER ALPHA WITH OXIA
+;E <char-0x1FC9> " GREEK CAPITAL LETTER EPSILON WITH OXIA
+;H <char-0x1FCB> " GREEK CAPITAL LETTER ETA WITH OXIA
+;I <char-0x1FDB> " GREEK CAPITAL LETTER IOTA WITH OXIA
+;O <char-0x1FF9> " GREEK CAPITAL LETTER OMICRON WITH OXIA
+;Y <char-0x1FEB> " GREEK CAPITAL LETTER UPSILON WITH OXIA
+;V <char-0x1FFB> " GREEK CAPITAL LETTER OMEGA WITH OXIA
+;a <char-0x1F71> " GREEK SMALL LETTER ALPHA WITH OXIA
+;e <char-0x1F73> " GREEK SMALL LETTER EPSILON WITH OXIA
+;h <char-0x1F75> " GREEK SMALL LETTER ETA WITH OXIA
+;i <char-0x1F77> " GREEK SMALL LETTER IOTA WITH OXIA
+;o <char-0x1F79> " GREEK SMALL LETTER OMICRON WITH OXIA
+;y <char-0x1F7B> " GREEK SMALL LETTER UPSILON WITH OXIA
+;v <char-0x1F7D> " GREEK SMALL LETTER OMEGA WITH OXIA
+"
+"
+" This area covers 0x1F00-0x1F6F
+"
+" letters with Psili:
+"
+>A <char-0x1F08> " GREEK CAPITAL LETTER ALPHA WITH PSILI
+>E <char-0x1F18> " GREEK CAPITAL LETTER EPSILON WITH PSILI
+>H <char-0x1F28> " GREEK CAPITAL LETTER ETA WITH PSILI
+>I <char-0x1F38> " GREEK CAPITAL LETTER IOTA WITH PSILI
+>O <char-0x1F48> " GREEK CAPITAL LETTER OMICRON WITH PSILI
+>Y <char-0x1F58> " GREEK CAPITAL LETTER UPSILON WITH PSILI
+>V <char-0x1F68> " GREEK CAPITAL LETTER OMEGA WITH PSILI
+>a <char-0x1F00> " GREEK SMALL LETTER ALPHA WITH PSILI
+>e <char-0x1F10> " GREEK SMALL LETTER EPSILON WITH PSILI
+>h <char-0x1F20> " GREEK SMALL LETTER ETA WITH PSILI
+>i <char-0x1F30> " GREEK SMALL LETTER IOTA WITH PSILI
+>o <char-0x1F40> " GREEK SMALL LETTER OMICRON WITH PSILI
+>y <char-0x1F50> " GREEK SMALL LETTER UPSILON WITH PSILI
+>v <char-0x1F60> " GREEK SMALL LETTER OMEGA WITH PSILI
+
+"
+" Letters with Dasia:
+"
+<A <char-0x1F09> " GREEK CAPITAL LETTER ALPHA WITH DASIA
+<E <char-0x1F19> " GREEK CAPITAL LETTER EPSILON WITH DASIA
+<H <char-0x1F29> " GREEK CAPITAL LETTER ETA WITH DASIA
+<I <char-0x1F39> " GREEK CAPITAL LETTER IOTA WITH DASIA
+<O <char-0x1F49> " GREEK CAPITAL LETTER OMICRON WITH DASIA
+<Y <char-0x1F59> " GREEK CAPITAL LETTER UPSILON WITH DASIA
+<V <char-0x1F69> " GREEK CAPITAL LETTER OMEGA WITH DASIA
+<a <char-0x1F01> " GREEK SMALL LETTER ALPHA WITH DASIA
+<e <char-0x1F11> " GREEK SMALL LETTER EPSILON WITH DASIA
+<h <char-0x1F21> " GREEK SMALL LETTER ETA WITH DASIA
+<i <char-0x1F31> " GREEK SMALL LETTER IOTA WITH DASIA
+<o <char-0x1F41> " GREEK SMALL LETTER OMICRON WITH DASIA
+<y <char-0x1F51> " GREEK SMALL LETTER UPSILON WITH DASIA
+<v <char-0x1F61> " GREEK SMALL LETTER OMEGA WITH DASIA
+"
+" letters with Psili and Varia:
+"
+>`A <char-0x1F0A> " GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA
+>`E <char-0x1F1A> " GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA
+>`H <char-0x1F2A> " GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA
+>`I <char-0x1F3A> " GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA
+>`O <char-0x1F4A> " GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA
+>`Y <char-0x1F5A> " GREEK CAPITAL LETTER UPSILON WITH PSILI AND VARIA
+>`V <char-0x1F6A> " GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA
+>`a <char-0x1F02> " GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA
+>`e <char-0x1F12> " GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA
+>`h <char-0x1F22> " GREEK SMALL LETTER ETA WITH PSILI AND VARIA
+>`i <char-0x1F32> " GREEK SMALL LETTER IOTA WITH PSILI AND VARIA
+>`o <char-0x1F42> " GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA
+>`y <char-0x1F52> " GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA
+>`v <char-0x1F62> " GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA
+"
+" Letters with Dasia and Varia:
+"
+<`A <char-0x1F0B> " GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA
+<`E <char-0x1F1B> " GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA
+<`H <char-0x1F2B> " GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA
+<`I <char-0x1F3B> " GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA
+<`O <char-0x1F4B> " GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA
+<`Y <char-0x1F5B> " GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA
+<`V <char-0x1F6B> " GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA
+<`a <char-0x1F03> " GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA
+<`e <char-0x1F13> " GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA
+<`h <char-0x1F23> " GREEK SMALL LETTER ETA WITH DASIA AND VARIA
+<`i <char-0x1F33> " GREEK SMALL LETTER IOTA WITH DASIA AND VARIA
+<`o <char-0x1F43> " GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA
+<`y <char-0x1F53> " GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA
+<`v <char-0x1F63> " GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA
+"
+" letters with Psili and Oxia:
+"
+>;A <char-0x1F0C> " GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA
+>;E <char-0x1F1C> " GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA
+>;H <char-0x1F2C> " GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA
+>;I <char-0x1F3C> " GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA
+>;O <char-0x1F4C> " GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA
+>;Y <char-0x1F5C> " GREEK CAPITAL LETTER UPSILON WITH PSILI AND OXIA
+>;V <char-0x1F6C> " GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA
+>;a <char-0x1F04> " GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA
+>;e <char-0x1F14> " GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA
+>;h <char-0x1F24> " GREEK SMALL LETTER ETA WITH PSILI AND OXIA
+>;i <char-0x1F34> " GREEK SMALL LETTER IOTA WITH PSILI AND OXIA
+>;o <char-0x1F44> " GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA
+>;y <char-0x1F54> " GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA
+>;v <char-0x1F64> " GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA
+"
+" Letters with Dasia and Oxia:
+"
+<;A <char-0x1F0D> " GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA
+<;E <char-0x1F1D> " GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA
+<;H <char-0x1F2D> " GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA
+<;I <char-0x1F3D> " GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA
+<;O <char-0x1F4D> " GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA
+<;Y <char-0x1F5D> " GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA
+<;V <char-0x1F6D> " GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA
+<;a <char-0x1F05> " GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA
+<;e <char-0x1F15> " GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA
+<;h <char-0x1F25> " GREEK SMALL LETTER ETA WITH DASIA AND OXIA
+<;i <char-0x1F35> " GREEK SMALL LETTER IOTA WITH DASIA AND OXIA
+<;o <char-0x1F45> " GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA
+<;y <char-0x1F55> " GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA
+<;v <char-0x1F65> " GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA
+"
+" letters with Psili and Perispomeni:
+"
+>~A <char-0x1F0E> " GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI
+>~E <char-0x1F1E> " GREEK CAPITAL LETTER EPSILON WITH PSILI AND PERISPOMENI
+>~H <char-0x1F2E> " GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI
+>~I <char-0x1F3E> " GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI
+>~O <char-0x1F4E> " GREEK CAPITAL LETTER OMICRON WITH PSILI AND PERISPOMENI
+>~Y <char-0x1F5E> " GREEK CAPITAL LETTER UPSILON WITH PSILI AND PERISPOMENI
+>~V <char-0x1F6E> " GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI
+>~a <char-0x1F06> " GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI
+>~e <char-0x1F16> " GREEK SMALL LETTER EPSILON WITH PSILI AND PERISPOMENI
+>~h <char-0x1F26> " GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI
+>~i <char-0x1F36> " GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI
+>~o <char-0x1F46> " GREEK SMALL LETTER OMICRON WITH PSILI AND PERISPOMENI
+>~y <char-0x1F56> " GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI
+>~v <char-0x1F66> " GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI
+"
+" Letters with Dasia and Perispomeni:
+"
+<~A <char-0x1F0F> " GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI
+<~E <char-0x1F1F> " GREEK CAPITAL LETTER EPSILON WITH DASIA AND PERISPOMENI
+<~H <char-0x1F2F> " GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI
+<~I <char-0x1F3F> " GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI
+<~O <char-0x1F4F> " GREEK CAPITAL LETTER OMICRON WITH DASIA AND PERISPOMENI
+<~Y <char-0x1F5F> " GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI
+<~V <char-0x1F6F> " GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI
+<~a <char-0x1F07> " GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI
+<~e <char-0x1F17> " GREEK SMALL LETTER EPSILON WITH DASIA AND PERISPOMENI
+<~h <char-0x1F27> " GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI
+<~i <char-0x1F37> " GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI
+<~o <char-0x1F47> " GREEK SMALL LETTER OMICRON WITH DASIA AND PERISPOMENI
+<~y <char-0x1F57> " GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI
+<~v <char-0x1F67> " GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI
+"
+"
+"
+" letters with Ypogegrammeni/Prosgegrammeni:
+"
+A| <char-0x1FBC> " GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI
+H| <char-0x1FCC> " GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI
+V| <char-0x1FFC> " GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI
+a| <char-0x1FB3> " GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI
+h| <char-0x1FC3> " GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI
+v| <char-0x1FF3> " GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI
+"
+"
+" This area covers 0x1F80-0x1FAF
+"
+" letters with Psili and Ypogegrammeni/Prosgegrammeni:
+"
+>A| <char-0x1F88> " GREEK CAPITAL LETTER ALPHA WITH PSILI AND
+ " PROSGEGRAMMENI
+>H| <char-0x1F98> " GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI
+>V| <char-0x1FA8> " GREEK CAPITAL LETTER OMEGA WITH PSILI AND
+ " PROSGEGRAMMENI
+>a| <char-0x1F80> " GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI
+>h| <char-0x1F90> " GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI
+>v| <char-0x1FA0> " GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI
+"
+" letters with Dasia and Ypogegrammeni/Prosgegrammeni:
+"
+<A| <char-0x1F89> " GREEK CAPITAL LETTER ALPHA WITH DASIA AND
+ " PROSGEGRAMMENI
+<H| <char-0x1F99> " GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI
+<V| <char-0x1FA9> " GREEK CAPITAL LETTER OMEGA WITH DASIA AND
+ " PROSGEGRAMMENI
+<a| <char-0x1F81> " GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI
+<h| <char-0x1F91> " GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI
+<v| <char-0x1FA1> " GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI
+"
+" letters with Psili and Varia and Ypogegrammeni/Prosgegrammeni:
+"
+>`A| <char-0x1F8A> " GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND
+ " PROSGEGRAMMENI
+>`H| <char-0x1F9A> " GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND
+ " PROSGEGRAMMENI
+>`V| <char-0x1FAA> " GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND
+ " PROSGEGRAMMENI
+>`a| <char-0x1F82> " GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND
+ " YPOGEGRAMMENI
+>`h| <char-0x1F92> " GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND
+ " YPOGEGRAMMENI
+>`v| <char-0x1FA2> " GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND
+ " YPOGEGRAMMENI
+"
+" letters with Dasia and Varia and Ypogegrammeni/Prosgegrammeni:
+"
+<`A| <char-0x1F8B> " GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND
+ " PROSGEGRAMMENI
+<`H| <char-0x1F9B> " GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND
+ " PROSGEGRAMMENI
+<`V| <char-0x1FAB> " GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND
+ " PROSGEGRAMMENI
+<`a| <char-0x1F83> " GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND
+ " YPOGEGRAMMENI
+<`h| <char-0x1F93> " GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND
+ " YPOGEGRAMMENI
+<`v| <char-0x1FA3> " GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND
+ " YPOGEGRAMMENI
+"
+" letters with Psili and Oxia and Ypogegrammeni/Prosgegrammeni:
+"
+>;A| <char-0x1F8C> " GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND
+ " PROSGEGRAMMENI
+>;H| <char-0x1F9C> " GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND
+ " PROSGEGRAMMENI
+>;V| <char-0x1FAC> " GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND
+ " PROSGEGRAMMENI
+>;a| <char-0x1F84> " GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND
+ " YPOGEGRAMMENI
+>;h| <char-0x1F94> " GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND
+ " YPOGEGRAMMENI
+>;v| <char-0x1FA4> " GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND
+ " YPOGEGRAMMENI
+"
+" letters with Dasia and Oxia and Ypogegrammeni/Prosgegrammeni:
+"
+<;A| <char-0x1F8D> " GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND
+ " PROSGEGRAMMENI
+<;H| <char-0x1F9D> " GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND
+ " PROSGEGRAMMENI
+<;V| <char-0x1FAD> " GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND
+ " PROSGEGRAMMENI
+<;a| <char-0x1F85> " GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND
+ " YPOGEGRAMMENI
+<;h| <char-0x1F95> " GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND
+ " YPOGEGRAMMENI
+<;v| <char-0x1FA5> " GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND
+ " YPOGEGRAMMENI
+"
+" letters with Psili and Perispomeni and Ypogegrammeni/Prosgegrammeni:
+"
+>~A| <char-0x1F8E> " GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI
+ " AND PROSGEGRAMMENI
+>~H| <char-0x1F9E> " GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA
+ " PERISPOMENI PROSGEGRAMMENI
+>~V| <char-0x1FAE> " GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI
+ " AND PROSGEGRAMMENI
+>~a| <char-0x1F86> " GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI
+ " AND YPOGEGRAMMENI
+>~h| <char-0x1F96> " GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND
+ " YPOGEGRAMMENI
+>~v| <char-0x1FA6> " GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI
+ " AND YPOGEGRAMMENI
+"
+" letters with Dasia and Perispomeni and Ypogegrammeni/Prosgegrammeni:
+"
+<~A| <char-0x1F8F> " GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI
+ " AND PROSGEGRAMMENI
+<~H| <char-0x1F9F> " GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI
+ " AND PROSGEGRAMMENI
+<~V| <char-0x1FAF> " GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI
+ " AND PROSGEGRAMMENI
+<~a| <char-0x1F87> " GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI
+ " AND YPOGEGRAMMENI
+<~h| <char-0x1F97> " GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND
+ " YPOGEGRAMMENI
+<~v| <char-0x1FA7> " GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI
+ " AND YPOGEGRAMMENI
+"
+" letters with Perispomeni:
+"
+~a <char-0x1FB6> " GREEK SMALL LETTER ALPHA WITH PERISPOMENI
+~h <char-0x1FC6> " GREEK SMALL LETTER ETA WITH PERISPOMENI
+~i <char-0x1FD6> " GREEK SMALL LETTER IOTA WITH PERISPOMENI
+~y <char-0x1FE6> " GREEK SMALL LETTER UPSILON WITH PERISPOMENI
+~v <char-0x1FF6> " GREEK SMALL LETTER OMEGA WITH PERISPOMENI
+"
+" letters with Perispomeni and Ypogegrammeni:
+"
+~a| <char-0x1FB7> " GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND
+ " YPOGEGRAMMENI
+~h| <char-0x1FC7> " GREEK SMALL LETTER ETA WITH PERISPOMENI AND
+ " YPOGEGRAMMENI
+~v| <char-0x1FF7> " GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND
+ " YPOGEGRAMMENI
+"
+"
+" letters with Varia and Ypogegrammeni:
+"
+`a| <char-0x1FB2> " GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI
+`h| <char-0x1FC2> " GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI
+`v| <char-0x1FF2> " GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI
+"
+" letters with Oxia and Ypogegrammeni:
+"
+;a| <char-0x1FB4> " GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI
+;h| <char-0x1FC4> " GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI
+;v| <char-0x1FF4> " GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI
+"
+"
+" Combining/Nonspacing comma above (0x0313) instead of Psili:
+"
+>, <char-0x0313> " COMBINING COMMA ABOVE
+"
+" Combining/Nonspacing reversed comma above (0x0314) instead of Dasia:
+"
+<, <char-0x0314> " COMBINING REVERSED COMMA ABOVE
+"
+"
+" Greek Quotes if your keyboard supports them
+ <char-0x201C> " QUOTEDBLLEFT
+ <char-0x201D> " QUOTEDBLRIGHT
+"
+"
+"
+
+
+" APPENDIX A - Additional characters
+"
+"
+;# <char-0x0374> " GREEK NUMERAL SIGN
+;## <char-0x0375> " GREEK LOWER NUMERAL SIGN
+|| <char-0x037A> " GREEK YPOGEGRAMMENI
+;b <char-0x03D0> " GREEK BETA SYMBOL
+;u <char-0x03D1> " GREEK THETA SYMBOL
+" <char-0x03D2> " GREEK UPSILON WITH HOOK SYMBOL
+" <char-0x03D3> " GREEK UPSILON WITH ACUTE AND HOOK SYMBOL
+" <char-0x03D4> " GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL
+;f <char-0x03D5> " GREEK PHI SYMBOL
+;p <char-0x03D6> " GREEK PI SYMBOL
+#ST <char-0x03DA> " GREEK LETTER STIGMA
+#G <char-0x03DC> " GREEK LETTER DIGAMMA
+#Q <char-0x03DE> " GREEK LETTER KOPPA
+#SP <char-0x03E0> " GREEK LETTER SAMPI
+;k <char-0x03F0> " GREEK KAPPA SYMBOL
+;r <char-0x03F1> " GREEK RHO SYMBOL
+" <char-0x03F2> " GREEK LUNATE SIGMA SYMBOL
+" <char-0x03F3> " GREEK LETTER YOT
+
+:~ <char-0x1FC1> "dialytika peripswmevn
+~: <char-0x1FC1> "dialytika peripswmevn
+
+:~i <char-0x1FD7> "iota dialytika perispomeni
+~:i <char-0x1FD7> "iota dialytika perispomeni
+
+:~y <char-0x1FE7> "upsilon dialytika perispomeni
+~:y <char-0x1FE7> "upsilon dialytika perispomeni
+
+-a <char-0x1FB1> "alpha macron
+-i <char-0x1FD1> "iota macron
+-y <char-0x1FE1> "upsilon macron
+-A <char-0x1FB9> "Alpha macron
+-I <char-0x1FD9> "Iota macron
+-Y <char-0x1FE9> "Upsilon macron
+^a <char-0x1FB0> "alpha braxy
+^i <char-0x1FD0> "iota braxy
+^y <char-0x1FE0> "upsilon braxy
+^A <char-0x1FB8> "alpha braxy
+^I <char-0x1FD8> "iota braxy
+^Y <char-0x1FE8> "upsilon braxy
+>r <char-0x1FE4> "rho psili
+<r <char-0x1FE5> "rho dasia
+
+<R <char-0x1FEC> "Rho dasia
+
+" More Symbols
+&& <char-0x03D7> "Greek kai
+D$ <char-0x20AF> "Drachma symbol
+#Q <char-0x03D8> "Archaic Qoppa
+#q <char-0x03D9> "Archaic qoppa
+;U <char-0x03F4> "Capital Theta symbol
+"!e <char-0x03F5> "Lunate epsilon
+"!E <char-0x03F6> "Lunate Epsilon
diff --git a/runtime/keymap/hebrew.vim b/runtime/keymap/hebrew.vim
new file mode 100644
index 000000000..0928fca48
--- /dev/null
+++ b/runtime/keymap/hebrew.vim
@@ -0,0 +1,16 @@
+let encoding = &enc
+if encoding == 'latin1'
+ if has("unix")
+ let encoding = 'iso-8859-8'
+ else
+ let encoding = 'cp1255'
+ endif
+endif
+
+if encoding == 'utf-8'
+ source <sfile>:p:h/hebrew_utf-8.vim
+elseif encoding == 'cp1255'
+ source <sfile>:p:h/hebrew_cp1255.vim
+else
+ source <sfile>:p:h/hebrew_iso-8859-8.vim
+endif
diff --git a/runtime/keymap/hebrew_cp1255.vim b/runtime/keymap/hebrew_cp1255.vim
new file mode 100644
index 000000000..67a8ca773
--- /dev/null
+++ b/runtime/keymap/hebrew_cp1255.vim
@@ -0,0 +1,62 @@
+" add in the vowel points, known as 'niqud', which are present in
+" CP1255: Note: there are several 'standards' for placement of the vowel
+" points, and I ignored all of them. Since we can input English by simply
+" pressing Ctrl-^ and eliminating this map, I saw no reason to try to use
+" exotic key locations. If you don't like it, that's just too bad :-)
+let b:keymap_name = "heb"
+loadkeymap
+a <char-249> " ש - shin
+b <char-240> " נ - nun
+c <char-225> " ב - bet
+d <char-226> " ג - gimel
+e <char-247> " ק - qof
+f <char-235> " כ - kaf
+g <char-242> " ע - ayin
+h <char-233> " י - yod
+i <char-239> " ן - final nun
+j <char-231> " ח - het
+k <char-236> " ל - lamed
+l <char-234> " ך - final kaf
+m <char-246> " צ - tsadi
+n <char-238> " מ - mem
+o <char-237> " ם - final mem
+p <char-244> " פ - pe
+q / " / - slash
+r <char-248> " ר - resh
+s <char-227> " ד - dalet
+t <char-224> " א - alef
+u <char-229> " ו - vav
+v <char-228> " ה - he
+w ' " ' - single-quote
+x <char-241> " ס - samekh
+y <char-232> " ט - tet
+z <char-230> " ז - zayin
+, <char-250> " ת - tav
+. <char-245> " ץ - final tsadi
+; <char-243> " ף - final pe
+' , " , - comma
+/ . " . - period
+` ; " ; - semicolon
+" vowels:
+A: <Char-192> " sheva
+HE <Char-193> " hataf segol
+HA <Char-194> " hataf patah
+HO <Char-195> " hataf qamats
+I <Char-196> " hiriq
+AY <Char-197> " tsere
+E <Char-198> " segol
+AA <Char-199> " patah
+AO <Char-200> " qamats
+O <Char-201> " holam
+U <Char-203> " qubuts
+D <Char-204> " dagesh
+]T <Char-205> " meteg
+]Q <Char-206> " maqaf
+]R <ּChar-207> " rafe
+]p <Char-208> " paseq
+SR <Char-209> " shin-dot
+SL <Char-210> " sin-dot
+]P <Char-211> " sof-pasuq
+VV <Char-212> " double-vav
+VY <Char-213> " vav-yod
+YY <Char-214> " yod-yod
diff --git a/runtime/keymap/hebrew_iso-8859-8.vim b/runtime/keymap/hebrew_iso-8859-8.vim
new file mode 100644
index 000000000..eab3084d5
--- /dev/null
+++ b/runtime/keymap/hebrew_iso-8859-8.vim
@@ -0,0 +1,41 @@
+" Vim Keymap file for hebrew
+" Maintainer : Ron Aaron <ron@ronware.org>
+" Last Updated: Wed 28 Feb 2001 21:28:51
+" This is the standard Israeli keyboard layout
+
+" Use this short name in the status line.
+let b:keymap_name = "heb"
+
+loadkeymap
+a <char-249> " - shin
+b <char-240> " - nun
+c <char-225> " - bet
+d <char-226> " - gimel
+e <char-247> " - qof
+f <char-235> " - kaf
+g <char-242> " - ayin
+h <char-233> " - yod
+i <char-239> " - final nun
+j <char-231> " - het
+k <char-236> " - lamed
+l <char-234> " - final kaf
+m <char-246> " - tsadi
+n <char-238> " - mem
+o <char-237> " - final mem
+p <char-244> " - pe
+q / " / - slash
+r <char-248> " - resh
+s <char-227> " - dalet
+t <char-224> " - alef
+u <char-229> " - vav
+v <char-228> " - he
+w ' " ' - single-quote
+x <char-241> " - samekh
+y <char-232> " - tet
+z <char-230> " - zayin
+, <char-250> " - tav
+. <char-245> " - final tsadi
+; <char-243> " - final pe
+' , " , - comma
+/ . " . - period
+` ; " ; - semicolon
diff --git a/runtime/keymap/hebrew_utf-8.vim b/runtime/keymap/hebrew_utf-8.vim
new file mode 100644
index 000000000..63438845a
--- /dev/null
+++ b/runtime/keymap/hebrew_utf-8.vim
@@ -0,0 +1,128 @@
+" Vim Keymap file for hebrew
+" Maintainer : Ron Aaron <ron@ronware.org>
+" Last Updated: Wed 28 Feb 2001 21:28:51
+" This is the standard Israeli keyboard layout with (my nonstandard locations
+" for) niqud, for utf:
+
+" Use this short name in the status line.
+let b:keymap_name = "heb"
+loadkeymap
+a <char-0x5e9> " ש - shin
+b <char-0x5e0> " נ - nun
+c <char-0x5d1> " ב - bet
+d <char-0x5d2> " ג - gimel
+e <char-0x5e7> " ק - qof
+f <char-0x5db> " כ - kaf
+g <char-0x5e2> " ע - ayin
+h <char-0x5d9> " י - yod
+i <char-0x5df> " ן - final nun
+j <char-0x5d7> " ח - het
+k <char-0x5dc> " ל - lamed
+l <char-0x5da> " ך - final kaf
+m <char-0x5e6> " צ - tsadi
+n <char-0x5de> " מ - mem
+o <char-0x5dd> " ם - final mem
+p <char-0x5e4> " פ - pe
+q / " / - slash
+r <char-0x5e8> " ר - resh
+s <char-0x5d3> " ד - dalet
+t <char-0x5d0> " א - alef
+u <char-0x5d5> " ו - vav
+v <char-0x5d4> " ה - he
+w ' " ' - single-quote
+x <char-0x5e1> " ס - samekh
+y <char-0x5d8> " ט - tet
+z <char-0x5d6> " ז - zayin
+, <char-0x5ea> " ת - tav
+. <char-0x5e5> " ץ - final tsadi
+; <char-0x5e3> " ף - final pe
+' , " , - comma
+/ . " . - period
+` ; " ; - semicolon
+A: <Char-0x5b0> " sheva
+HE <Char-0x5b1> " hataf segol
+HA <Char-0x5b2> " hataf patah
+HO <Char-0x5b3> " hataf qamats
+I <Char-0x5b4> " hiriq
+AY <Char-0x5b5> " tsere
+E <Char-0x5b6> " segol
+AA <Char-0x5b7> " patah
+AO <Char-0x5b8> " qamats
+O <Char-0x5b9> " holam
+U <Char-0x5bb> " qubuts
+D <Char-0x5bc> " dagesh
+]T <Char-0x5bd> " meteg
+]Q <Char-0x5be> " maqaf
+]R <Char-0x5bf> " rafe
+]p <Char-0x5c0> " paseq
+SR <Char-0x5c1> " shin-dot
+SL <Char-0x5c2> " sin-dot
+]P <Char-0x5c3> " sof-pasuq
+VV <Char-0x5f0> " double-vav
+VY <Char-0x5f1> " vav-yod
+YY <Char-0x5f2> " yod-yod
+" cantillation:
+C: <Char-0x591> " etnahta
+Cs <Char-0x592> " segol
+CS <Char-0x593> " shalshelet
+Cz <Char-0x594> " zaqef qatan
+CZ <Char-0x595> " zaqef gadol
+Ct <Char-0x596> " tipeha
+Cr <Char-0x597> " revia
+Cq <Char-0x598> " zarqa
+Cp <Char-0x599> " pashta
+C! <Char-0x59a> " yetiv
+Cv <Char-0x59b> " tevir
+Cg <Char-0x59c> " geresh
+C* <Char-0x59d> " geresh qadim
+CG <Char-0x59e> " gershayim
+CP <Char-0x59f> " qarnei-parah
+Cy <Char-0x5aa> " yerach-ben-yomo
+Co <Char-0x5ab> " ole
+Ci <Char-0x5ac> " iluy
+Cd <Char-0x5ad> " dehi
+Cn <Char-0x5ae> " zinor
+CC <Char-0x5af> " masora circle
+X` <Char-0xfb20> " Alternative `ayin
+X' <Char-0xfb21> " Alternative 'alef
+X-d <Char-0xfb22> " Alternative dalet
+X-h <Char-0xfb23> " Alternative he
+X-k <Char-0xfb24> " Alternative kaf
+X-l <Char-0xfb25> " Alternative lamed
+X-m <Char-0xfb26> " Alternative mem-sofit
+X-r <Char-0xfb27> " Alternative resh
+X-t <Char-0xfb28> " Alternative tav
+X-+ <Char-0xfb29> " Alternative plus
+XW <Char-0xfb2a> " shin+shin-dot
+Xw <Char-0xfb2b> " shin+sin-dot
+X..W <Char-0xfb2c> " shin+shin-dot+dagesh
+X..w <Char-0xfb2d> " shin+sin-dot+dagesh
+XA <Char-0xfb2e> " alef+patah
+XO <Char-0xfb2f> " alef+qamats
+XI <Char-0xfb30> " alef+hiriq (mapiq)
+X.b <Char-0xfb31> " bet+dagesh
+X.g <Char-0xfb32> " gimel+dagesh
+X.d <Char-0xfb33> " dalet+dagesh
+X.h <Char-0xfb34> " he+dagesh
+Xu <Char-0xfb35> " vav+dagesh
+X.z <Char-0xfb36> " zayin+dagesh
+X.T <Char-0xfb38> " tet+dagesh
+X.y <Char-0xfb39> " yud+dagesh
+X.K <Char-0xfb3a> " kaf sofit+dagesh
+X.k <Char-0xfb3b> " kaf+dagesh
+X.l <Char-0xfb3c> " lamed+dagesh
+X.m <Char-0xfb3e> " mem+dagesh
+X.n <Char-0xfb40> " nun+dagesh
+X.s <Char-0xfb41> " samech+dagesh
+X.P <Char-0xfb43> " pe sofit+dagesh
+X.p <Char-0xfb44> " pe+dagesh
+X.x <Char-0xfb46> " tsadi+dagesh
+X.q <Char-0xfb47> " qof+dagesh
+X.r <Char-0xfb48> " resh+dagesh
+X.w <Char-0xfb49> " shin+dagesh
+X.t <Char-0xfb4a> " tav+dagesh
+Xo <Char-0xfb4b> " vav+holam
+XRb <Char-0xfb4c> " bet+rafe
+XRk <Char-0xfb4d> " kaf+rafe
+XRp <Char-0xfb4e> " pe+rafe
+Xal <Char-0xfb4f> " alef-lamed
diff --git a/runtime/keymap/hebrewp.vim b/runtime/keymap/hebrewp.vim
new file mode 100644
index 000000000..a87cdc735
--- /dev/null
+++ b/runtime/keymap/hebrewp.vim
@@ -0,0 +1,16 @@
+let encoding = &enc
+if encoding == 'latin1'
+ if has("unix")
+ let encoding = 'iso-8859-8'
+ else
+ let encoding = 'cp1255'
+ endif
+endif
+
+if encoding == 'utf-8'
+ source <sfile>:p:h/hebrewp_utf-8.vim
+elseif encoding == 'cp1255'
+ source <sfile>:p:h/hebrewp_cp1255.vim
+else
+ source <sfile>:p:h/hebrewp_iso-8859-8.vim
+endif
diff --git a/runtime/keymap/hebrewp_cp1255.vim b/runtime/keymap/hebrewp_cp1255.vim
new file mode 100644
index 000000000..990f90859
--- /dev/null
+++ b/runtime/keymap/hebrewp_cp1255.vim
@@ -0,0 +1,58 @@
+" codepage 1255 on Windows is equal to ISO 8859-8 but it
+" adds in the vowel points, known as 'niqud', which are present in
+" CP1255: Note: there are several 'standards' for placement of the vowel
+" points, and I ignored all of them. Since we can input English by simply
+" pressing Ctrl-^ and eliminating this map, I saw no reason to try to use
+" exotic key locations. If you don't like it, that's just too bad :-)
+let b:keymap_name = "hebp"
+loadkeymap
+K <char-234> " final kaf
+M <char-237> " final mem
+N <char-239> " final nun
+P <char-243> " final pe
+T <char-232> " tet
+X <char-245> " final tsadi
+a <char-224> " alef
+b <char-225> " bet
+d <char-227> " dalet
+g <char-226> " gimel
+h <char-228> " he
+j <char-231> " het
+k <char-235> " kaf
+l <char-236> " lamed
+m <char-238> " mem
+n <char-240> " nun
+s <char-241> " samekh
+p <char-244> " pe
+q <char-247> " qof
+r <char-248> " resh
+t <char-250> " tav
+u <char-242> " ayin
+v <char-229> " vav
+w <char-249> " shin
+x <char-246> " tsadi
+y <char-233> " yod
+z <char-230> " zayin
+" vowels:
+A: <Char-192> " sheva
+HE <Char-193> " hataf segol
+HA <Char-194> " hataf patah
+HO <Char-195> " hataf qamats
+I <Char-196> " hiriq
+AY <Char-197> " tsere
+E <Char-198> " segol
+AA <Char-199> " patah
+AO <Char-200> " qamats
+O <Char-201> " holam
+U <Char-203> " qubuts
+D <Char-204> " dagesh
+]T <Char-205> " meteg
+]Q <Char-206> " maqaf
+]R <Char-207> " rafe
+]p <Char-208> " paseq
+SR <Char-209> " shin-dot
+SL <Char-210> " sin-dot
+]P <Char-211> " sof-pasuq
+VV <Char-212> " double-vav
+VY <Char-213> " vav-yod
+YY <Char-214> " yod-yod
diff --git a/runtime/keymap/hebrewp_iso-8859-8.vim b/runtime/keymap/hebrewp_iso-8859-8.vim
new file mode 100644
index 000000000..d4b9714d2
--- /dev/null
+++ b/runtime/keymap/hebrewp_iso-8859-8.vim
@@ -0,0 +1,36 @@
+" Vim Keymap file for hebrew
+" Maintainer : Ron Aaron <ron@ronware.org>
+" Last Updated: Sun 10 Feb 2002 11:50:56
+" This is my version of a phonetic Hebrew
+
+" Use this short name in the status line.
+let b:keymap_name = "hebp"
+
+loadkeymap
+K <char-234> " final kaf
+M <char-237> " final mem
+N <char-239> " final nun
+P <char-243> " final pe
+T <char-232> " tet
+X <char-245> " final tsadi
+a <char-224> " alef
+b <char-225> " bet
+d <char-227> " dalet
+g <char-226> " gimel
+h <char-228> " he
+j <char-231> " het
+k <char-235> " kaf
+l <char-236> " lamed
+m <char-238> " mem
+n <char-240> " nun
+s <char-241> " samekh
+p <char-244> " pe
+q <char-247> " qof
+r <char-248> " resh
+t <char-250> " tav
+u <char-242> " ayin
+v <char-229> " vav
+w <char-249> " shin
+x <char-246> " tsadi
+y <char-233> " yod
+z <char-230> " zayin
diff --git a/runtime/keymap/hebrewp_utf-8.vim b/runtime/keymap/hebrewp_utf-8.vim
new file mode 100644
index 000000000..dded60e36
--- /dev/null
+++ b/runtime/keymap/hebrewp_utf-8.vim
@@ -0,0 +1,122 @@
+" Vim Keymap file for hebrew
+" Maintainer : Ron Aaron <ron@ronware.org>
+" Last Updated: Thu 08 Mar 2001 13:49:01
+" This is my version of a phonetic Hebrew
+
+" Use this short name in the status line.
+let b:keymap_name = "hebp"
+loadkeymap
+w <char-0x5e9> " - shin
+n <char-0x5e0> " - nun
+b <char-0x5d1> " - bet
+g <char-0x5d2> " - gimel
+q <char-0x5e7> " - qof
+k <char-0x5db> " - kaf
+g <char-0x5e2> " - ayin
+y <char-0x5d9> " - yod
+N <char-0x5df> " - final nun
+j <char-0x5d7> " - het
+l <char-0x5dc> " - lamed
+K <char-0x5da> " - final kaf
+x <char-0x5e6> " - tsadi
+m <char-0x5de> " - mem
+M <char-0x5dd> " - final mem
+p <char-0x5e4> " - pe
+r <char-0x5e8> " - resh
+d <char-0x5d3> " - dalet
+a <char-0x5d0> " - alef
+v <char-0x5d5> " - vav
+h <char-0x5d4> " - he
+s <char-0x5e1> " - samekh
+T <char-0x5d8> " - tet
+z <char-0x5d6> " - zayin
+t <char-0x5ea> " - tav
+X <char-0x5e5> " - final tsadi
+P <char-0x5e3> " - final pe
+A: <Char-0x5b0> " sheva
+HE <Char-0x5b1> " hataf segol
+HA <Char-0x5b2> " hataf patah
+HO <Char-0x5b3> " hataf qamats
+I <Char-0x5b4> " hiriq
+AY <Char-0x5b5> " tsere
+E <Char-0x5b6> " segol
+AA <Char-0x5b7> " patah
+AO <Char-0x5b8> " qamats
+O <Char-0x5b9> " holam
+U <Char-0x5bb> " qubuts
+D <Char-0x5bc> " dagesh
+]T <Char-0x5bd> " meteg
+]Q <Char-0x5be> " maqaf
+]R <Char-0x5bf> " rafe
+]p <Char-0x5c0> " paseq
+SR <Char-0x5c1> " shin-dot
+SL <Char-0x5c2> " sin-dot
+]P <Char-0x5c3> " sof-pasuq
+VV <Char-0x5f0> " double-vav
+VY <Char-0x5f1> " vav-yod
+YY <Char-0x5f2> " yod-yod
+" cantillation:
+C: <Char-0x591> " etnahta
+Cs <Char-0x592> " segol
+CS <Char-0x593> " shalshelet
+Cz <Char-0x594> " zaqef qatan
+CZ <Char-0x595> " zaqef gadol
+Ct <Char-0x596> " tipeha
+Cr <Char-0x597> " revia
+Cq <Char-0x598> " zarqa
+Cp <Char-0x599> " pashta
+C! <Char-0x59a> " yetiv
+Cv <Char-0x59b> " tevir
+Cg <Char-0x59c> " geresh
+C* <Char-0x59d> " geresh qadim
+CG <Char-0x59e> " gershayim
+CP <Char-0x59f> " qarnei-parah
+Cy <Char-0x5aa> " yerach-ben-yomo
+Co <Char-0x5ab> " ole
+Ci <Char-0x5ac> " iluy
+Cd <Char-0x5ad> " dehi
+Cn <Char-0x5ae> " zinor
+CC <Char-0x5af> " masora circle
+X` <Char-0xfb20> " Alternative `ayin
+X' <Char-0xfb21> " Alternative 'alef
+X-d <Char-0xfb22> " Alternative dalet
+X-h <Char-0xfb23> " Alternative he
+X-k <Char-0xfb24> " Alternative kaf
+X-l <Char-0xfb25> " Alternative lamed
+X-m <Char-0xfb26> " Alternative mem-sofit
+X-r <Char-0xfb27> " Alternative resh
+X-t <Char-0xfb28> " Alternative tav
+X-+ <Char-0xfb29> " Alternative plus
+XW <Char-0xfb2a> " shin+shin-dot
+Xw <Char-0xfb2b> " shin+sin-dot
+X..W <Char-0xfb2c> " shin+shin-dot+dagesh
+X..w <Char-0xfb2d> " shin+sin-dot+dagesh
+XA <Char-0xfb2e> " alef+patah
+XO <Char-0xfb2f> " alef+qamats
+XI <Char-0xfb30> " alef+hiriq (mapiq)
+X.b <Char-0xfb31> " bet+dagesh
+X.g <Char-0xfb32> " gimel+dagesh
+X.d <Char-0xfb33> " dalet+dagesh
+X.h <Char-0xfb34> " he+dagesh
+Xu <Char-0xfb35> " vav+dagesh
+X.z <Char-0xfb36> " zayin+dagesh
+X.T <Char-0xfb38> " tet+dagesh
+X.y <Char-0xfb39> " yud+dagesh
+X.K <Char-0xfb3a> " kaf sofit+dagesh
+X.k <Char-0xfb3b> " kaf+dagesh
+X.l <Char-0xfb3c> " lamed+dagesh
+X.m <Char-0xfb3e> " mem+dagesh
+X.n <Char-0xfb40> " nun+dagesh
+X.s <Char-0xfb41> " samech+dagesh
+X.P <Char-0xfb43> " pe sofit+dagesh
+X.p <Char-0xfb44> " pe+dagesh
+X.x <Char-0xfb46> " tsadi+dagesh
+X.q <Char-0xfb47> " qof+dagesh
+X.r <Char-0xfb48> " resh+dagesh
+X.w <Char-0xfb49> " shin+dagesh
+X.t <Char-0xfb4a> " tav+dagesh
+Xo <Char-0xfb4b> " vav+holam
+XRb <Char-0xfb4c> " bet+rafe
+XRk <Char-0xfb4d> " kaf+rafe
+XRp <Char-0xfb4e> " pe+rafe
+Xal <Char-0xfb4f> " alef-lamed
diff --git a/runtime/keymap/lithuanian-baltic.vim b/runtime/keymap/lithuanian-baltic.vim
new file mode 100644
index 000000000..b888db6e7
--- /dev/null
+++ b/runtime/keymap/lithuanian-baltic.vim
@@ -0,0 +1,31 @@
+" Vim Keymap file for lithuanian characters, phonetic layout 'Baltic'
+" Useful mainly with utf-8 but may work with other encodings
+
+" Maintainer: Alex Jakushev <Alex.Jakushev@kemek.lt>
+" Last Changed: 2002 Apr 12
+
+" All characters are given literally, conversion to another encoding (e.g.,
+" UTF-8) should work.
+scriptencoding utf-8
+
+let b:keymap_name = "lt"
+
+loadkeymap
+! Ą LITHUANIAN CAPITAL A NOSINE
+@ Č LITHUANIAN CAPITAL CH
+# Ę LITHUANIAN CAPITAL E NOSINE
+$ Ė LITHUANIAN CAPITAL E SU TASKU
+% Į LITHUANIAN CAPITAL I NOSINE
+^ Š LITHUANIAN CAPITAL SH
+& Ų LITHUANIAN CAPITAL U NOSINE
+* Ū LITHUANIAN CAPITAL U SU BRUKSNIU
++ Ž LITHUANIAN CAPITAL ZH
+1 ą LITHUANIAN LOWERCASE A NOSINE
+2 č LITHUANIAN LOWERCASE CH
+3 ę LITHUANIAN LOWERCASE E NOSINE
+4 ė LITHUANIAN LOWERCASE E SU TASKU
+5 į LITHUANIAN LOWERCASE I NOSINE
+6 š LITHUANIAN LOWERCASE SH
+7 ų LITHUANIAN LOWERCASE U NOSINE
+8 ū LITHUANIAN LOWERCASE U SU BRUKSNIU
+= ž LITHUANIAN LOWERCASE ZH
diff --git a/runtime/keymap/magyar_utf-8.vim b/runtime/keymap/magyar_utf-8.vim
new file mode 100644
index 000000000..729771768
--- /dev/null
+++ b/runtime/keymap/magyar_utf-8.vim
@@ -0,0 +1,37 @@
+" Maintainer: Laszlo Zavaleta <zavaleta@smartchat.net.au>
+" Last Changed: 2003 Aug 08
+" it has all the accents and a few of the character alterations
+
+let b:keymap = "magyar"
+
+loadkey
+` í
+~ Í
+! '
+@ "
+# +
+$ !
+^ /
+& =
+* (
+( )
+0 ö
+) Ö
+- ü
+_ Ü
+= ó
++ Ó
+\\ ű
+| Ű
+[ ő
+{ Ő
+] ú
+} Ú
+; é
+: É
+' á
+\" Á
+/ -
+< ?
+> :
+? _
diff --git a/runtime/keymap/persian-iranian_utf-8.vim b/runtime/keymap/persian-iranian_utf-8.vim
new file mode 100644
index 000000000..c4f396003
--- /dev/null
+++ b/runtime/keymap/persian-iranian_utf-8.vim
@@ -0,0 +1,115 @@
+" Vim Keymap file for Persian Standard Keyboard Layout
+" Maintainers: Behnam Esfahbod <behnam@bamdad.org>,
+" Amir Hedayaty <amir@bamdad.org>
+" Last Change: 2004 May 16
+
+" All characters are given literally, conversion to another encoding (e.g.,
+" UTF-8) should work.
+scriptencoding utf-8
+
+" Use this short name in the status line.
+let b:keymap_name = "per"
+
+loadkeymap
+` ‍
+1 ۱
+2 ۲
+3 ۳
+4 ۴
+5 ۵
+6 ۶
+7 ۷
+8 ۸
+9 ۹
+0 ۰
+- -
+= =
+
+q ض
+w ص
+e ث
+r ق
+t ف
+y غ
+u ع
+i ه
+o خ
+p ح
+[ ج
+] چ
+
+a ش
+s س
+d ی
+f ب
+g ل
+h ا
+j ت
+k ن
+l م
+; ک
+' گ
+
+z ظ
+x ط
+c ز
+v ر
+b ذ
+n د
+m پ
+, و
+. .
+/ /
+\ \
+
+~ ÷
+! !
+@ ٬
+# ٫
+$ ﷼
+% ٪
+^ ×
+& ،
+* *
+( )
+) (
+_ ـ
++ +
+
+Q ْ
+W ٌ
+E ٍ
+R ً
+T ُ
+Y ِ
+U َ
+I ّ
+O ]
+P [
+{ }
+} {
+
+A ؤ
+S ئ
+D ي
+F إ
+G أ
+H آ
+J ة
+K »
+L «
+: :
+\" ؛
+
+Z ك
+X ٓ
+C ژ
+V ٰ
+B ‌
+N ٔ
+M ء
+< >
+> <
+? ؟
+| |
+
diff --git a/runtime/keymap/persian.vim b/runtime/keymap/persian.vim
new file mode 100644
index 000000000..7bf5cd61a
--- /dev/null
+++ b/runtime/keymap/persian.vim
@@ -0,0 +1,8 @@
+let encoding = &enc
+if encoding == ''
+ let encoding = 'utf-8'
+endif
+
+if encoding == 'utf-8'
+ source <sfile>:p:h/persian-iranian_utf-8.vim
+endif
diff --git a/runtime/keymap/pinyin.vim b/runtime/keymap/pinyin.vim
new file mode 100644
index 000000000..757850b83
--- /dev/null
+++ b/runtime/keymap/pinyin.vim
@@ -0,0 +1,54 @@
+" Vim Keymap file for Hanyu Pinyin tone marks through numbers.
+" Maintainer: Fredrik Roubert <roubert@df.lth.se>
+" Last Changed: February 15, 2004
+
+" All characters are given literally.
+scriptencoding utf-8
+
+" Use this short name in the status line.
+let b:keymap_name = "py"
+
+loadkeymap
+a0 a
+a1 ā
+a2 á
+a3 ǎ
+a4 à
+a5 a
+e0 e
+e1 ē
+e2 é
+e3 ě
+e4 è
+e5 e
+i0 i
+i1 ī
+i2 í
+i3 ǐ
+i4 ì
+i5 i
+o0 o
+o1 ō
+o2 ó
+o3 ǒ
+o4 ò
+o5 o
+u0 u
+u1 ū
+u2 ú
+u3 ǔ
+u4 ù
+u5 u
+ü0 ü
+ü1 ǖ
+ü2 ǘ
+ü3 ǚ
+ü4 ǜ
+ü5 ü
+v0 ü
+v1 ǖ
+v2 ǘ
+v3 ǚ
+v4 ǜ
+v5 ü
+
diff --git a/runtime/keymap/russian-jcuken.vim b/runtime/keymap/russian-jcuken.vim
new file mode 100644
index 000000000..840ec8c4e
--- /dev/null
+++ b/runtime/keymap/russian-jcuken.vim
@@ -0,0 +1,87 @@
+" Vim Keymap file for russian characters, layout 'jcuken', classical variant
+" (compatible with XFree86 'ru' keymap)
+" Useful mainly with utf-8 but may work with other encodings
+
+" Maintainer: Artem Chuprina <ran@ran.pp.ru>
+" Last Changed: 2001 Jun 23
+
+" All characters are given literally, conversion to another encoding (e.g.,
+" UTF-8) should work.
+scriptencoding utf-8
+
+let b:keymap_name = "ru"
+
+loadkeymap
+~ Ё CYRILLIC CAPITAL LETTER IO
+` ё CYRILLIC SMALL LETTER IO
+F А CYRILLIC CAPITAL LETTER A
+< Б CYRILLIC CAPITAL LETTER BE
+D В CYRILLIC CAPITAL LETTER VE
+U Г CYRILLIC CAPITAL LETTER GHE
+L Д CYRILLIC CAPITAL LETTER DE
+T Е CYRILLIC CAPITAL LETTER IE
+: Ж CYRILLIC CAPITAL LETTER ZHE
+P З CYRILLIC CAPITAL LETTER ZE
+B И CYRILLIC CAPITAL LETTER I
+Q Й CYRILLIC CAPITAL LETTER SHORT I
+R К CYRILLIC CAPITAL LETTER KA
+K Л CYRILLIC CAPITAL LETTER EL
+V М CYRILLIC CAPITAL LETTER EM
+Y Н CYRILLIC CAPITAL LETTER EN
+J О CYRILLIC CAPITAL LETTER O
+G П CYRILLIC CAPITAL LETTER PE
+H Р CYRILLIC CAPITAL LETTER ER
+C С CYRILLIC CAPITAL LETTER ES
+N Т CYRILLIC CAPITAL LETTER TE
+E У CYRILLIC CAPITAL LETTER U
+A Ф CYRILLIC CAPITAL LETTER EF
+{ Х CYRILLIC CAPITAL LETTER HA
+W Ц CYRILLIC CAPITAL LETTER TSE
+X Ч CYRILLIC CAPITAL LETTER CHE
+I Ш CYRILLIC CAPITAL LETTER SHA
+O Щ CYRILLIC CAPITAL LETTER SHCHA
+} Ъ CYRILLIC CAPITAL LETTER HARD SIGN
+S Ы CYRILLIC CAPITAL LETTER YERU
+M Ь CYRILLIC CAPITAL LETTER SOFT SIGN
+\" Э CYRILLIC CAPITAL LETTER E
+> Ю CYRILLIC CAPITAL LETTER YU
+Z Я CYRILLIC CAPITAL LETTER YA
+f а CYRILLIC SMALL LETTER A
+, б CYRILLIC SMALL LETTER BE
+d в CYRILLIC SMALL LETTER VE
+u г CYRILLIC SMALL LETTER GHE
+l д CYRILLIC SMALL LETTER DE
+t е CYRILLIC SMALL LETTER IE
+; ж CYRILLIC SMALL LETTER ZHE
+p з CYRILLIC SMALL LETTER ZE
+b и CYRILLIC SMALL LETTER I
+q й CYRILLIC SMALL LETTER SHORT I
+r к CYRILLIC SMALL LETTER KA
+k л CYRILLIC SMALL LETTER EL
+v м CYRILLIC SMALL LETTER EM
+y н CYRILLIC SMALL LETTER EN
+j о CYRILLIC SMALL LETTER O
+g п CYRILLIC SMALL LETTER PE
+h р CYRILLIC SMALL LETTER ER
+c с CYRILLIC SMALL LETTER ES
+n т CYRILLIC SMALL LETTER TE
+e у CYRILLIC SMALL LETTER U
+a ф CYRILLIC SMALL LETTER EF
+[ х CYRILLIC SMALL LETTER HA
+w ц CYRILLIC SMALL LETTER TSE
+x ч CYRILLIC SMALL LETTER CHE
+i ш CYRILLIC SMALL LETTER SHA
+o щ CYRILLIC SMALL LETTER SHCHA
+] ъ CYRILLIC SMALL LETTER HARD SIGN
+s ы CYRILLIC SMALL LETTER YERU
+m ь CYRILLIC SMALL LETTER SOFT SIGN
+' э CYRILLIC SMALL LETTER E
+. ю CYRILLIC SMALL LETTER YU
+z я CYRILLIC SMALL LETTER YA
+@ "
+# '
+$ *
+% :
+^ ,
+& .
+* ;
diff --git a/runtime/keymap/russian-jcukenwin.vim b/runtime/keymap/russian-jcukenwin.vim
new file mode 100644
index 000000000..d56470f11
--- /dev/null
+++ b/runtime/keymap/russian-jcukenwin.vim
@@ -0,0 +1,87 @@
+" Vim Keymap file for russian characters, layout 'jcuken', MS Windows variant
+" (slightly incompatible with XFree86 'ru' keymap - makes use of NUMERO SIGN)
+" Useful mainly with utf-8 but may work with other encodings
+
+" Maintainer: Artem Chuprina <ran@ran.pp.ru>
+" Last Changed: 2001 Jun 23
+
+" All characters are given literally, conversion to another encoding (e.g.,
+" UTF-8) should work.
+scriptencoding utf-8
+
+let b:keymap_name = "ru"
+
+loadkeymap
+~ Ё CYRILLIC CAPITAL LETTER IO
+` ё CYRILLIC SMALL LETTER IO
+F А CYRILLIC CAPITAL LETTER A
+< Б CYRILLIC CAPITAL LETTER BE
+D В CYRILLIC CAPITAL LETTER VE
+U Г CYRILLIC CAPITAL LETTER GHE
+L Д CYRILLIC CAPITAL LETTER DE
+T Е CYRILLIC CAPITAL LETTER IE
+: Ж CYRILLIC CAPITAL LETTER ZHE
+P З CYRILLIC CAPITAL LETTER ZE
+B И CYRILLIC CAPITAL LETTER I
+Q Й CYRILLIC CAPITAL LETTER SHORT I
+R К CYRILLIC CAPITAL LETTER KA
+K Л CYRILLIC CAPITAL LETTER EL
+V М CYRILLIC CAPITAL LETTER EM
+Y Н CYRILLIC CAPITAL LETTER EN
+J О CYRILLIC CAPITAL LETTER O
+G П CYRILLIC CAPITAL LETTER PE
+H Р CYRILLIC CAPITAL LETTER ER
+C С CYRILLIC CAPITAL LETTER ES
+N Т CYRILLIC CAPITAL LETTER TE
+E У CYRILLIC CAPITAL LETTER U
+A Ф CYRILLIC CAPITAL LETTER EF
+{ Х CYRILLIC CAPITAL LETTER HA
+W Ц CYRILLIC CAPITAL LETTER TSE
+X Ч CYRILLIC CAPITAL LETTER CHE
+I Ш CYRILLIC CAPITAL LETTER SHA
+O Щ CYRILLIC CAPITAL LETTER SHCHA
+} Ъ CYRILLIC CAPITAL LETTER HARD SIGN
+S Ы CYRILLIC CAPITAL LETTER YERU
+M Ь CYRILLIC CAPITAL LETTER SOFT SIGN
+\" Э CYRILLIC CAPITAL LETTER E
+> Ю CYRILLIC CAPITAL LETTER YU
+Z Я CYRILLIC CAPITAL LETTER YA
+f а CYRILLIC SMALL LETTER A
+, б CYRILLIC SMALL LETTER BE
+d в CYRILLIC SMALL LETTER VE
+u г CYRILLIC SMALL LETTER GHE
+l д CYRILLIC SMALL LETTER DE
+t е CYRILLIC SMALL LETTER IE
+; ж CYRILLIC SMALL LETTER ZHE
+p з CYRILLIC SMALL LETTER ZE
+b и CYRILLIC SMALL LETTER I
+q й CYRILLIC SMALL LETTER SHORT I
+r к CYRILLIC SMALL LETTER KA
+k л CYRILLIC SMALL LETTER EL
+v м CYRILLIC SMALL LETTER EM
+y н CYRILLIC SMALL LETTER EN
+j о CYRILLIC SMALL LETTER O
+g п CYRILLIC SMALL LETTER PE
+h р CYRILLIC SMALL LETTER ER
+c с CYRILLIC SMALL LETTER ES
+n т CYRILLIC SMALL LETTER TE
+e у CYRILLIC SMALL LETTER U
+a ф CYRILLIC SMALL LETTER EF
+[ х CYRILLIC SMALL LETTER HA
+w ц CYRILLIC SMALL LETTER TSE
+x ч CYRILLIC SMALL LETTER CHE
+i ш CYRILLIC SMALL LETTER SHA
+o щ CYRILLIC SMALL LETTER SHCHA
+] ъ CYRILLIC SMALL LETTER HARD SIGN
+s ы CYRILLIC SMALL LETTER YERU
+m ь CYRILLIC SMALL LETTER SOFT SIGN
+' э CYRILLIC SMALL LETTER E
+. ю CYRILLIC SMALL LETTER YU
+z я CYRILLIC SMALL LETTER YA
+@ "
+# № NUMERO SIGN
+$ ;
+^ :
+& ?
+/ .
+? ,
diff --git a/runtime/keymap/russian-yawerty.vim b/runtime/keymap/russian-yawerty.vim
new file mode 100644
index 000000000..165d7ec9b
--- /dev/null
+++ b/runtime/keymap/russian-yawerty.vim
@@ -0,0 +1,79 @@
+" Vim Keymap file for russian characters, phonetic layout 'yawerty'
+" Useful mainly with utf-8 but may work with other encodings
+
+" Maintainer: Igor Goldenberg <igold@igold.pp.ru>
+" Last Changed: 2002 Jan 14
+
+" All characters are given literally, conversion to another encoding (e.g.,
+" UTF-8) should work.
+scriptencoding utf-8
+
+let b:keymap_name = "ru"
+
+loadkeymap
+A А CYRILLIC CAPITAL LETTER A
+B Б CYRILLIC CAPITAL LETTER BE
+W В CYRILLIC CAPITAL LETTER VE
+G Г CYRILLIC CAPITAL LETTER GHE
+D Д CYRILLIC CAPITAL LETTER DE
+E Е CYRILLIC CAPITAL LETTER IE
+& Ё CYRILLIC CAPITAL LETTER IO
+V Ж CYRILLIC CAPITAL LETTER ZHE
+Z З CYRILLIC CAPITAL LETTER ZE
+I И CYRILLIC CAPITAL LETTER I
+J Й CYRILLIC CAPITAL LETTER SHORT I
+K К CYRILLIC CAPITAL LETTER KA
+L Л CYRILLIC CAPITAL LETTER EL
+M М CYRILLIC CAPITAL LETTER EM
+N Н CYRILLIC CAPITAL LETTER EN
+O О CYRILLIC CAPITAL LETTER O
+P П CYRILLIC CAPITAL LETTER PE
+R Р CYRILLIC CAPITAL LETTER ER
+S С CYRILLIC CAPITAL LETTER ES
+T Т CYRILLIC CAPITAL LETTER TE
+U У CYRILLIC CAPITAL LETTER U
+F Ф CYRILLIC CAPITAL LETTER EF
+H Х CYRILLIC CAPITAL LETTER HA
+C Ц CYRILLIC CAPITAL LETTER TSE
++ Ч CYRILLIC CAPITAL LETTER CHE
+{ Ш CYRILLIC CAPITAL LETTER SHA
+} Щ CYRILLIC CAPITAL LETTER SHCHA
+$ Ъ CYRILLIC CAPITAL LETTER HARD SIGN
+Y Ы CYRILLIC CAPITAL LETTER YERU
+X Ь CYRILLIC CAPITAL LETTER SOFT SIGN
+| Э CYRILLIC CAPITAL LETTER E
+~ Ю CYRILLIC CAPITAL LETTER YU
+Q Я CYRILLIC CAPITAL LETTER YA
+a а CYRILLIC SMALL LETTER A
+b б CYRILLIC SMALL LETTER BE
+w в CYRILLIC SMALL LETTER VE
+g г CYRILLIC SMALL LETTER GHE
+d д CYRILLIC SMALL LETTER DE
+e е CYRILLIC SMALL LETTER IE
+^ ё CYRILLIC SMALL LETTER IO
+v ж CYRILLIC SMALL LETTER ZHE
+z з CYRILLIC SMALL LETTER ZE
+i и CYRILLIC SMALL LETTER I
+j й CYRILLIC SMALL LETTER SHORT I
+k к CYRILLIC SMALL LETTER KA
+l л CYRILLIC SMALL LETTER EL
+m м CYRILLIC SMALL LETTER EM
+n н CYRILLIC SMALL LETTER EN
+o о CYRILLIC SMALL LETTER O
+p п CYRILLIC SMALL LETTER PE
+r р CYRILLIC SMALL LETTER ER
+s с CYRILLIC SMALL LETTER ES
+t т CYRILLIC SMALL LETTER TE
+u у CYRILLIC SMALL LETTER U
+f ф CYRILLIC SMALL LETTER EF
+h х CYRILLIC SMALL LETTER HA
+c ц CYRILLIC SMALL LETTER TSE
+= ч CYRILLIC SMALL LETTER CHE
+[ ш CYRILLIC SMALL LETTER SHA
+] щ CYRILLIC SMALL LETTER SHCHA
+# ъ CYRILLIC SMALL LETTER HARD SIGN
+y ы CYRILLIC SMALL LETTER YERU
+x ь CYRILLIC SMALL LETTER SOFT SIGN
+\\ э CYRILLIC SMALL LETTER E
+` ю CYRILLIC SMALL LETTER YU
+q я CYRILLIC SMALL LETTER YA
diff --git a/runtime/keymap/serbian-latin.vim b/runtime/keymap/serbian-latin.vim
new file mode 100644
index 000000000..0d2de15d0
--- /dev/null
+++ b/runtime/keymap/serbian-latin.vim
@@ -0,0 +1 @@
+source <sfile>:p:h/serbian-latin_utf-8.vim
diff --git a/runtime/keymap/serbian-latin_utf-8.vim b/runtime/keymap/serbian-latin_utf-8.vim
new file mode 100644
index 000000000..a1b577a11
--- /dev/null
+++ b/runtime/keymap/serbian-latin_utf-8.vim
@@ -0,0 +1,44 @@
+" Vim Keymap file for Serbian characters, classical variant, UTF-8 encoding
+"
+" Maintainer: Aleksandar Veselinovic <aleksa@cs.cmu.edu>
+" URL: http://www.cs.cmu.edu/~aleksa/personal/vim/keymap/serbian-latin-UTF-8.vim
+" Last Changed: 2002 Mar 29
+
+scriptencoding UTF-8
+
+let b:keymap_name = "serbian-UTF-8"
+
+loadkeymap
+Y Z
+{ Š
+} Đ
+y z
+[ š
+] đ
+: Č
+\" Ć
+\| Ž
+; č
+' ć
+\\ ž
+"Z Y
+"z y
+< ;
+> :
+/ -
+_ ?
+,, „
+'' ”
+
+E$ <char-0x20AC> " EURO SIGN
+-- <char-0x2013> " endash
+--- <char-0x2014> " emdash
+
+" @ "
+" # '
+" $ *
+" % :
+" ^ ,
+" &amp; .
+" * ;
+
diff --git a/runtime/keymap/serbian.vim b/runtime/keymap/serbian.vim
new file mode 100644
index 000000000..56d247cf4
--- /dev/null
+++ b/runtime/keymap/serbian.vim
@@ -0,0 +1,20 @@
+let encoding = &enc
+if encoding == 'latin1'
+ if has("unix")
+ let encoding = 'iso-8859-2'
+ else
+ let encoding = 'cp1250'
+ endif
+endif
+
+if encoding == 'utf-8'
+ source <sfile>:p:h/serbian_utf-8.vim
+elseif encoding == 'cp1250'
+ source <sfile>:p:h/serbian_cp1250.vim
+elseif encoding == 'cp1251'
+ source <sfile>:p:h/serbian_cp1251.vim
+elseif encoding == 'iso-8859-2'
+ source <sfile>:p:h/serbian_iso-8859-2.vim
+else
+ source <sfile>:p:h/serbian_iso-8859-5.vim
+endif
diff --git a/runtime/keymap/serbian_cp1250.vim b/runtime/keymap/serbian_cp1250.vim
new file mode 100644
index 000000000..30f80adf9
--- /dev/null
+++ b/runtime/keymap/serbian_cp1250.vim
@@ -0,0 +1,40 @@
+" Vim Keymap file for Serbian characters, classical variant, cp1250 encoding
+"
+" Maintainer: Aleksandar Veselinovic <aleksa@cs.cmu.edu>
+" URL: http://galeb.etf.bg.ac.yu/~alexa/vim/keymap/serbian-cp1250.vim
+" Last Changed: 2002 Mar 29
+
+scriptencoding cp1250
+
+let b:keymap_name = "serbian-cp1250"
+
+loadkeymap
+Y Z
+{
+}
+y z
+[
+]
+:
+\"
+\|
+;
+'
+\\
+"Z Y
+"z y
+< ;
+> :
+/ -
+_ ?
+,,
+''
+
+" @ "
+" # '
+" $ *
+" % :
+" ^ ,
+" &amp; .
+" * ;
+
diff --git a/runtime/keymap/serbian_cp1251.vim b/runtime/keymap/serbian_cp1251.vim
new file mode 100644
index 000000000..0b1ce96ff
--- /dev/null
+++ b/runtime/keymap/serbian_cp1251.vim
@@ -0,0 +1,90 @@
+" Vim Keymap file for Serbian characters, classical variant, win cp1251
+" encoding
+"
+" Maintainer: Aleksandar Veselinovic <aleksa@cs.cmu.edu>
+" URL: http://www.cs.cmu.edu/~aleksa/personal/vim/keymap/serbian-cp1251.vim
+" Last Changed: 2002 Mar 29
+
+scriptencoding cp1251
+
+let b:keymap_name = "serbian-cp1251"
+
+loadkeymap
+Q
+W
+E
+R
+T
+Y
+U
+I
+O
+P
+{
+}
+q
+w
+e
+r
+t
+y
+u
+i
+o
+p
+[
+]
+A
+S
+D
+F
+G
+H
+J
+K
+L
+:
+\"
+\|
+a
+s
+d
+f
+g
+h
+j
+k
+l
+;
+'
+\\
+"Z
+X
+C
+V
+B
+N
+M
+"z
+x
+c
+v
+b
+n
+m
+
+< ;
+> :
+/ -
+_ ?
+,,
+''
+
+" @ "
+" # '
+" $ *
+" % :
+" ^ ,
+" &amp; .
+" * ;
+
diff --git a/runtime/keymap/serbian_iso-8859-2.vim b/runtime/keymap/serbian_iso-8859-2.vim
new file mode 100644
index 000000000..d3be35eec
--- /dev/null
+++ b/runtime/keymap/serbian_iso-8859-2.vim
@@ -0,0 +1,40 @@
+" Vim Keymap file for Serbian characters, classical variant, iso-8859-2 encoding
+"
+" Maintainer: Aleksandar Veselinovic <aleksa@cs.cmu.edu>
+" URL: http://www.cs.cmu.edu/~aleksa/personal/vim/keymap/serbian-iso-8859-2.vim
+" Last Changed: 2002 Mar 29
+
+scriptencoding iso-8859-2
+
+let b:keymap_name = "serbian-iso-8859-2"
+
+loadkeymap
+Y Z
+{
+}
+y z
+[
+]
+:
+\"
+\|
+;
+'
+\\
+"Z Y
+"z y
+< ;
+> :
+/ -
+_ ?
+,, ?
+'' ?
+
+" @ "
+" # '
+" $ *
+" % :
+" ^ ,
+" &amp; .
+" * ;
+
diff --git a/runtime/keymap/serbian_iso-8859-5.vim b/runtime/keymap/serbian_iso-8859-5.vim
new file mode 100644
index 000000000..113383cdf
--- /dev/null
+++ b/runtime/keymap/serbian_iso-8859-5.vim
@@ -0,0 +1,89 @@
+" Vim Keymap file for Serbian characters, classical variant, iso-8859-5 encoding
+"
+" Maintainer: Aleksandar Veselinovic <aleksa@cs.cmu.edu>
+" URL: http://www.cs.cmu.edu/~aleksa/personal/vim/keymap/serbian-iso-8859-5.vim
+" Last Changed: 2002 Mar 29
+
+scriptencoding iso-8859-5
+
+let b:keymap_name = "serbian-iso-8859-5"
+
+loadkeymap
+Q
+W
+E
+R
+T
+Y
+U
+I
+O
+P
+{
+}
+q
+w
+e
+r
+t
+y
+u
+i
+o
+p
+[
+]
+A
+S
+D
+F
+G
+H
+J
+K
+L
+:
+\"
+\|
+a
+s
+d
+f
+g
+h
+j
+k
+l
+;
+'
+\\
+"Z
+X
+C
+V
+B
+N
+M
+"z
+x
+c
+v
+b
+n
+m
+
+< ;
+> :
+/ -
+_ ?
+,, ?
+'' ?
+
+" @ "
+" # '
+" $ *
+" % :
+" ^ ,
+" & .
+" * ;
+
diff --git a/runtime/keymap/serbian_utf-8.vim b/runtime/keymap/serbian_utf-8.vim
new file mode 100644
index 000000000..3388bfd28
--- /dev/null
+++ b/runtime/keymap/serbian_utf-8.vim
@@ -0,0 +1,93 @@
+" Vim Keymap file for Serbian characters, classical variant, UTF-8 encoding
+"
+" Maintainer: Aleksandar Veselinovic <aleksa@cs.cmu.edu>
+" URL: http://www.cs.cmu.edu/~aleksa/personal/vim/keymap/serbian-UTF-8.vim
+" Last Changed: 2002 Mar 29
+
+scriptencoding UTF-8
+
+let b:keymap_name = "serbian-UTF-8"
+
+loadkeymap
+Q Љ
+W Њ
+E Е
+R Р
+T Т
+Y З
+U У
+I И
+O О
+P П
+{ Ш
+} Ђ
+q љ
+w њ
+e е
+r р
+t т
+y з
+u у
+i и
+o о
+p п
+[ ш
+] ђ
+A А
+S С
+D Д
+F Ф
+G Г
+H Х
+J Ј
+K К
+L Л
+: Ч
+\" Ћ
+\| Ж
+a а
+s с
+d д
+f ф
+g г
+h х
+j ј
+k к
+l л
+; ч
+' ћ
+\\ ж
+"Z З
+X Џ
+C Ц
+V В
+B Б
+N Н
+M М
+"z з
+x џ
+c ц
+v в
+b б
+n н
+m м
+
+< ;
+> :
+/ -
+_ ?
+,, „
+'' ”
+
+E$ <char-0x20AC> " EURO SIGN
+-- <char-0x2013> " endash
+--- <char-0x2014> " emdash
+
+" @ "
+" # '
+" $ *
+" % :
+" ^ ,
+" &amp; .
+" * ;
+
diff --git a/runtime/keymap/slovak.vim b/runtime/keymap/slovak.vim
new file mode 100644
index 000000000..f9fd6d62a
--- /dev/null
+++ b/runtime/keymap/slovak.vim
@@ -0,0 +1,16 @@
+let encoding = &enc
+if encoding == 'latin1'
+ if has("unix")
+ let encoding = 'iso-8859-2'
+ else
+ let encoding = 'cp1250'
+ endif
+endif
+
+if encoding == 'utf-8'
+ source <sfile>:p:h/slovak_utf-8.vim
+elseif encoding == 'cp1250'
+ source <sfile>:p:h/slovak_cp1250.vim
+else
+ source <sfile>:p:h/slovak_iso-8859-2.vim
+endif
diff --git a/runtime/keymap/slovak_cp1250.vim b/runtime/keymap/slovak_cp1250.vim
new file mode 100644
index 000000000..73234cb37
--- /dev/null
+++ b/runtime/keymap/slovak_cp1250.vim
@@ -0,0 +1,100 @@
+" Maintainer: Peter Valach <pvalach@gmx.net>
+" Last Changed: 2002 Feb 3
+" URL: http://www.pv2c.sk/free/sk_vimkeymap/
+
+let b:keymap_name = "sk"
+
+loadkeymap
+" Z a Y - ak chcete slovensku qwerty, zakomentujte tieto styri riadky
+y z
+z y
+Y Z
+Z Y
+
+" Horny riadok
+` ;
+1 +
+! 1
+2
+@ 2
+3
+# 3
+4
+$ 4
+5
+% 5
+6
+^ 6
+7
+& 7
+8
+* 8
+9
+( 9
+0
+) 0
+- =
+_ %
+
+" Klavesy okolo Enteru :)
+[
+{ /
+]
+} (
+\\
+<Bar> )
+;
+: "
+'
+\" !
+", , ;-)
+< ?
+". . ;-)
+> :
+/ -
+? _
+
+" Dlzne
+=a
+=A
+=e
+=E
+=i
+=I
+=l
+=L
+=o
+=O
+=r
+=R
+=u
+=U
+=z
+=Z
+" pre pripad omylu :) alebo slovenskej QWERTY
+=y
+=Y
+
+" Makcene
++a
++A
++c
++C
++d
++D
++l
++L
++n
++N
++o
++O
++s
++S
++t
++T
++y
++Y
+" pre pripad omylu :) alebo slovenskej QWERTY
++z
++Z
+
diff --git a/runtime/keymap/slovak_iso-8859-2.vim b/runtime/keymap/slovak_iso-8859-2.vim
new file mode 100644
index 000000000..8c43fb112
--- /dev/null
+++ b/runtime/keymap/slovak_iso-8859-2.vim
@@ -0,0 +1,100 @@
+" Maintainer: Peter Valach <pvalach@gmx.net>
+" Last Changed: 2002 Feb 3
+" URL: http://www.pv2c.sk/free/sk_vimkeymap/
+
+let b:keymap_name = "sk"
+
+loadkeymap
+" Z a Y - ak chcete slovensku qwerty, zakomentujte tieto styri riadky
+y z
+z y
+Y Z
+Z Y
+
+" Horny riadok
+` ;
+1 +
+! 1
+2
+@ 2
+3
+# 3
+4
+$ 4
+5
+% 5
+6
+^ 6
+7
+& 7
+8
+* 8
+9
+( 9
+0
+) 0
+- =
+_ %
+
+" Klavesy okolo Enteru :)
+[
+{ /
+]
+} (
+\\
+<Bar> )
+;
+: "
+'
+\" !
+", , ;-)
+< ?
+". . ;-)
+> :
+/ -
+? _
+
+" Dlzne
+=a
+=A
+=e
+=E
+=i
+=I
+=l
+=L
+=o
+=O
+=r
+=R
+=u
+=U
+=z
+=Z
+" pre pripad omylu :) alebo slovenskej QWERTY
+=y
+=Y
+
+" Makcene
++a
++A
++c
++C
++d
++D
++l
++L
++n
++N
++o
++O
++s
++S
++t
++T
++y
++Y
+" pre pripad omylu :) alebo slovenskej QWERTY
++z
++Z
+
diff --git a/runtime/keymap/slovak_utf-8.vim b/runtime/keymap/slovak_utf-8.vim
new file mode 100644
index 000000000..8e3e0838e
--- /dev/null
+++ b/runtime/keymap/slovak_utf-8.vim
@@ -0,0 +1,100 @@
+" Maintainer: Peter Valach <pvalach@gmx.net>
+" Last Changed: 2002 Nov 5
+" URL: http://www.pv2c.sk/free/sk_vimkeymap/
+
+let b:keymap_name = "sk"
+
+loadkeymap
+" Z a Y - ak chcete slovensku qwerty, zakomentujte tieto styri riadky
+y z
+z y
+Y Z
+Z Y
+
+" Horny riadok
+` ;
+1 +
+! 1
+2 ľ
+@ 2
+3 š
+# 3
+4 č
+$ 4
+5 ť
+% 5
+6 ž
+^ 6
+7 ý
+& 7
+8 á
+* 8
+9 í
+( 9
+0 é
+) 0
+- =
+_ %
+
+" Klavesy okolo Enteru :)
+[ ú
+{ /
+] ä
+} (
+\\ ň
+<Bar> )
+; ô
+: "
+' §
+\" !
+", , ;-)
+< ?
+". . ;-)
+> :
+/ -
+? _
+
+" Dlzne
+=a á
+=A Á
+=e é
+=E É
+=i í
+=I Í
+=l ĺ
+=L Ĺ
+=o ó
+=O Ó
+=r ŕ
+=R Ŕ
+=u ú
+=U Ú
+=z ý
+=Z Ý
+" pre pripad omylu :) alebo slovenskej QWERTY
+=y ý
+=Y Ý
+
+" Makcene
++a ä
++A Ä
++c č
++C Č
++d ď
++D Ď
++l ľ
++L Ľ
++n ň
++N Ň
++o ô
++O Ô
++s š
++S Š
++t ť
++T Ť
++y ž
++Y Ž
+" pre pripad omylu :) alebo slovenskej QWERTY
++z ž
++Z Ž
+