Commit c4b8b266 authored by Nerijus Baliunas's avatar Nerijus Baliunas Committed by Alexandre Julliard

Add new encodings ISO 8859-10 (cp28600), 8859-13 (cp28603), 8859-14 (cp28604),

8859-15 (cp28605). Add Lithuanian (Baltic) keyboard layout.
parent 3ef4f43c
...@@ -86,6 +86,7 @@ static const char* INIDefaultSansSerif = "DefaultSansSerif"; ...@@ -86,6 +86,7 @@ static const char* INIDefaultSansSerif = "DefaultSansSerif";
/* FIXME - are there any more Latin charsets ? */ /* FIXME - are there any more Latin charsets ? */
/* FIXME - RUSSIAN, ARABIC, GREEK, HEBREW are NOT Latin */
#define IS_LATIN_CHARSET(ch) \ #define IS_LATIN_CHARSET(ch) \
((ch)==ANSI_CHARSET ||\ ((ch)==ANSI_CHARSET ||\
(ch)==EE_CHARSET ||\ (ch)==EE_CHARSET ||\
...@@ -96,7 +97,9 @@ static const char* INIDefaultSansSerif = "DefaultSansSerif"; ...@@ -96,7 +97,9 @@ static const char* INIDefaultSansSerif = "DefaultSansSerif";
(ch)==GREEK_CHARSET ||\ (ch)==GREEK_CHARSET ||\
(ch)==HEBREW_CHARSET ||\ (ch)==HEBREW_CHARSET ||\
(ch)==TURKISH_CHARSET ||\ (ch)==TURKISH_CHARSET ||\
(ch)==BALTIC_CHARSET) (ch)==ISO10_CHARSET ||\
(ch)==BALTIC_CHARSET ||\
(ch)==CELTIC_CHARSET)
/* suffix-charset mapping tables - must be less than 254 entries long */ /* suffix-charset mapping tables - must be less than 254 entries long */
...@@ -126,12 +129,12 @@ static const SuffixCharset sufch_iso8859[] = { ...@@ -126,12 +129,12 @@ static const SuffixCharset sufch_iso8859[] = {
{ "7", GREEK_CHARSET, 28597, X11DRV_CPTABLE_SBCS }, { "7", GREEK_CHARSET, 28597, X11DRV_CPTABLE_SBCS },
{ "8", HEBREW_CHARSET, 28598, X11DRV_CPTABLE_SBCS }, { "8", HEBREW_CHARSET, 28598, X11DRV_CPTABLE_SBCS },
{ "9", TURKISH_CHARSET, 28599, X11DRV_CPTABLE_SBCS }, { "9", TURKISH_CHARSET, 28599, X11DRV_CPTABLE_SBCS },
{ "10", BALTIC_CHARSET, 1257, X11DRV_CPTABLE_SBCS }, /* FIXME */ { "10", ISO10_CHARSET, 28600, X11DRV_CPTABLE_SBCS },
{ "11", THAI_CHARSET, 874, X11DRV_CPTABLE_SBCS }, /* FIXME */ { "11", THAI_CHARSET, 874, X11DRV_CPTABLE_SBCS }, /* FIXME */
{ "12", SYMBOL_CHARSET, CP_SYMBOL, X11DRV_CPTABLE_SBCS }, { "12", SYMBOL_CHARSET, CP_SYMBOL, X11DRV_CPTABLE_SBCS },
{ "13", SYMBOL_CHARSET, CP_SYMBOL, X11DRV_CPTABLE_SBCS }, { "13", BALTIC_CHARSET, 28603, X11DRV_CPTABLE_SBCS },
{ "14", SYMBOL_CHARSET, CP_SYMBOL, X11DRV_CPTABLE_SBCS }, { "14", CELTIC_CHARSET, 28604, X11DRV_CPTABLE_SBCS },
{ "15", ANSI_CHARSET, 1252, X11DRV_CPTABLE_SBCS }, { "15", ANSI_CHARSET, 28605, X11DRV_CPTABLE_SBCS },
{ NULL, ANSI_CHARSET, 1252, X11DRV_CPTABLE_SBCS }}; { NULL, ANSI_CHARSET, 1252, X11DRV_CPTABLE_SBCS }};
static const SuffixCharset sufch_microsoft[] = { static const SuffixCharset sufch_microsoft[] = {
...@@ -172,6 +175,7 @@ static const SuffixCharset sufch_windows[] = { ...@@ -172,6 +175,7 @@ static const SuffixCharset sufch_windows[] = {
static const SuffixCharset sufch_koi8[] = { static const SuffixCharset sufch_koi8[] = {
{ "r", RUSSIAN_CHARSET, 20866, X11DRV_CPTABLE_SBCS }, { "r", RUSSIAN_CHARSET, 20866, X11DRV_CPTABLE_SBCS },
{ "ru", RUSSIAN_CHARSET, 20866, X11DRV_CPTABLE_SBCS },
{ "u", RUSSIAN_CHARSET, 20866, X11DRV_CPTABLE_SBCS }, { "u", RUSSIAN_CHARSET, 20866, X11DRV_CPTABLE_SBCS },
{ NULL, RUSSIAN_CHARSET, 20866, X11DRV_CPTABLE_SBCS }}; { NULL, RUSSIAN_CHARSET, 20866, X11DRV_CPTABLE_SBCS }};
......
...@@ -663,7 +663,7 @@ typedef struct ...@@ -663,7 +663,7 @@ typedef struct
#define TURKISH_CHARSET (BYTE)162 /* CP1254, -iso8859-9 */ #define TURKISH_CHARSET (BYTE)162 /* CP1254, -iso8859-9 */
#define HEBREW_CHARSET (BYTE)177 /* CP1255, -iso8859-8 */ #define HEBREW_CHARSET (BYTE)177 /* CP1255, -iso8859-8 */
#define ARABIC_CHARSET (BYTE)178 /* CP1256, -iso8859-6 */ #define ARABIC_CHARSET (BYTE)178 /* CP1256, -iso8859-6 */
#define BALTIC_CHARSET (BYTE)186 /* CP1257, -iso8859-10 */ #define BALTIC_CHARSET (BYTE)186 /* CP1257, -iso8859-13 */
#define RUSSIAN_CHARSET (BYTE)204 /* CP1251, -iso8859-5 */ #define RUSSIAN_CHARSET (BYTE)204 /* CP1251, -iso8859-5 */
#define EE_CHARSET (BYTE)238 /* CP1250, -iso8859-2 */ #define EE_CHARSET (BYTE)238 /* CP1250, -iso8859-2 */
#define EASTEUROPE_CHARSET EE_CHARSET #define EASTEUROPE_CHARSET EE_CHARSET
...@@ -679,6 +679,8 @@ typedef struct ...@@ -679,6 +679,8 @@ typedef struct
#define KOI8_CHARSET (BYTE)242 /* koi8-{r,u,ru} */ #define KOI8_CHARSET (BYTE)242 /* koi8-{r,u,ru} */
#define ISO3_CHARSET (BYTE)243 /* iso8859-3 */ #define ISO3_CHARSET (BYTE)243 /* iso8859-3 */
#define ISO4_CHARSET (BYTE)244 /* iso8859-4 */ #define ISO4_CHARSET (BYTE)244 /* iso8859-4 */
#define ISO10_CHARSET (BYTE)245 /* iso8859-10 */
#define CELTIC_CHARSET (BYTE)246 /* iso8859-14 */
#define FS_LATIN1 0x00000001L #define FS_LATIN1 0x00000001L
#define FS_LATIN2 0x00000002L #define FS_LATIN2 0x00000002L
......
...@@ -62,7 +62,11 @@ CODEPAGES = \ ...@@ -62,7 +62,11 @@ CODEPAGES = \
28596 \ 28596 \
28597 \ 28597 \
28598 \ 28598 \
28599 28599 \
28600 \
28603 \
28604 \
28605
C_SRCS = \ C_SRCS = \
casemap.c \ casemap.c \
......
/* code page 28592 (ISO 8859-2 Eastern Europe) */ /* code page 28592 (ISO 8859-2 Latin 2 (East European)) */
/* generated from ftp.unicode.org/Public/MAPPINGS/ISO8859/8859-2.TXT */ /* generated from ftp.unicode.org/Public/MAPPINGS/ISO8859/8859-2.TXT */
/* DO NOT EDIT!! */ /* DO NOT EDIT!! */
...@@ -643,7 +643,7 @@ static const unsigned short uni2cp_high[256] = ...@@ -643,7 +643,7 @@ static const unsigned short uni2cp_high[256] =
const struct sbcs_table cptable_28592 = const struct sbcs_table cptable_28592 =
{ {
{ 28592, 1, 0x003f, 0x003f, "ISO 8859-2 Eastern Europe" }, { 28592, 1, 0x003f, 0x003f, "ISO 8859-2 Latin 2 (East European)" },
cp2uni, cp2uni,
uni2cp_low, uni2cp_low,
uni2cp_high uni2cp_high
......
/* code page 28593 (ISO 8859-3 Turkish) */ /* code page 28593 (ISO 8859-3 Latin 3 (South European)) */
/* generated from ftp.unicode.org/Public/MAPPINGS/ISO8859/8859-3.TXT */ /* generated from ftp.unicode.org/Public/MAPPINGS/ISO8859/8859-3.TXT */
/* DO NOT EDIT!! */ /* DO NOT EDIT!! */
...@@ -643,7 +643,7 @@ static const unsigned short uni2cp_high[256] = ...@@ -643,7 +643,7 @@ static const unsigned short uni2cp_high[256] =
const struct sbcs_table cptable_28593 = const struct sbcs_table cptable_28593 =
{ {
{ 28593, 1, 0x003f, 0x003f, "ISO 8859-3 Turkish" }, { 28593, 1, 0x003f, 0x003f, "ISO 8859-3 Latin 3 (South European)" },
cp2uni, cp2uni,
uni2cp_low, uni2cp_low,
uni2cp_high uni2cp_high
......
/* code page 28594 (ISO 8859-4 Baltic) */ /* code page 28594 (ISO 8859-4 Latin 4 (Baltic old)) */
/* generated from ftp.unicode.org/Public/MAPPINGS/ISO8859/8859-4.TXT */ /* generated from ftp.unicode.org/Public/MAPPINGS/ISO8859/8859-4.TXT */
/* DO NOT EDIT!! */ /* DO NOT EDIT!! */
...@@ -643,7 +643,7 @@ static const unsigned short uni2cp_high[256] = ...@@ -643,7 +643,7 @@ static const unsigned short uni2cp_high[256] =
const struct sbcs_table cptable_28594 = const struct sbcs_table cptable_28594 =
{ {
{ 28594, 1, 0x003f, 0x003f, "ISO 8859-4 Baltic" }, { 28594, 1, 0x003f, 0x003f, "ISO 8859-4 Latin 4 (Baltic old)" },
cp2uni, cp2uni,
uni2cp_low, uni2cp_low,
uni2cp_high uni2cp_high
......
/* code page 28599 (ISO 8859-9 Latin 5) */ /* code page 28599 (ISO 8859-9 Latin 5 (Turkish)) */
/* generated from ftp.unicode.org/Public/MAPPINGS/ISO8859/8859-9.TXT */ /* generated from ftp.unicode.org/Public/MAPPINGS/ISO8859/8859-9.TXT */
/* DO NOT EDIT!! */ /* DO NOT EDIT!! */
...@@ -643,7 +643,7 @@ static const unsigned short uni2cp_high[256] = ...@@ -643,7 +643,7 @@ static const unsigned short uni2cp_high[256] =
const struct sbcs_table cptable_28599 = const struct sbcs_table cptable_28599 =
{ {
{ 28599, 1, 0x003f, 0x003f, "ISO 8859-9 Latin 5" }, { 28599, 1, 0x003f, 0x003f, "ISO 8859-9 Latin 5 (Turkish)" },
cp2uni, cp2uni,
uni2cp_low, uni2cp_low,
uni2cp_high uni2cp_high
......
...@@ -66,14 +66,18 @@ $DEF_CHAR = ord '?'; ...@@ -66,14 +66,18 @@ $DEF_CHAR = ord '?';
[ 10081, "VENDORS/MICSFT/MAC/TURKISH.TXT", "Mac Turkish" ], [ 10081, "VENDORS/MICSFT/MAC/TURKISH.TXT", "Mac Turkish" ],
[ 20866, "VENDORS/MISC/KOI8-R.TXT", "Russian KOI8" ], [ 20866, "VENDORS/MISC/KOI8-R.TXT", "Russian KOI8" ],
[ 28591, "ISO8859/8859-1.TXT", "ISO 8859-1 Latin 1" ], [ 28591, "ISO8859/8859-1.TXT", "ISO 8859-1 Latin 1" ],
[ 28592, "ISO8859/8859-2.TXT", "ISO 8859-2 Eastern Europe" ], [ 28592, "ISO8859/8859-2.TXT", "ISO 8859-2 Latin 2 (East European)" ],
[ 28593, "ISO8859/8859-3.TXT", "ISO 8859-3 Turkish" ], [ 28593, "ISO8859/8859-3.TXT", "ISO 8859-3 Latin 3 (South European)" ],
[ 28594, "ISO8859/8859-4.TXT", "ISO 8859-4 Baltic" ], [ 28594, "ISO8859/8859-4.TXT", "ISO 8859-4 Latin 4 (Baltic old)" ],
[ 28595, "ISO8859/8859-5.TXT", "ISO 8859-5 Cyrillic" ], [ 28595, "ISO8859/8859-5.TXT", "ISO 8859-5 Cyrillic" ],
[ 28596, "ISO8859/8859-6.TXT", "ISO 8859-6 Arabic" ], [ 28596, "ISO8859/8859-6.TXT", "ISO 8859-6 Arabic" ],
[ 28597, "ISO8859/8859-7.TXT", "ISO 8859-7 Greek" ], [ 28597, "ISO8859/8859-7.TXT", "ISO 8859-7 Greek" ],
[ 28598, "ISO8859/8859-8.TXT", "ISO 8859-8 Hebrew" ], [ 28598, "ISO8859/8859-8.TXT", "ISO 8859-8 Hebrew" ],
[ 28599, "ISO8859/8859-9.TXT", "ISO 8859-9 Latin 5" ] [ 28599, "ISO8859/8859-9.TXT", "ISO 8859-9 Latin 5 (Turkish)" ],
[ 28600, "ISO8859/8859-10.TXT", "ISO 8859-10 Latin 6 (Nordic)" ],
[ 28603, "ISO8859/8859-13.TXT", "ISO 8859-13 Latin 7 (Baltic)" ],
[ 28604, "ISO8859/8859-14.TXT", "ISO 8859-14 Latin 8 (Celtic)" ],
[ 28605, "ISO8859/8859-15.TXT", "ISO 8859-15 Latin 9 (Euro)" ]
); );
......
...@@ -64,8 +64,12 @@ extern union cptable cptable_28596; ...@@ -64,8 +64,12 @@ extern union cptable cptable_28596;
extern union cptable cptable_28597; extern union cptable cptable_28597;
extern union cptable cptable_28598; extern union cptable cptable_28598;
extern union cptable cptable_28599; extern union cptable cptable_28599;
extern union cptable cptable_28600;
extern union cptable cptable_28603;
extern union cptable cptable_28604;
extern union cptable cptable_28605;
static const union cptable * const cptables[54] = static const union cptable * const cptables[58] =
{ {
&cptable_037, &cptable_037,
&cptable_042, &cptable_042,
...@@ -121,6 +125,10 @@ static const union cptable * const cptables[54] = ...@@ -121,6 +125,10 @@ static const union cptable * const cptables[54] =
&cptable_28597, &cptable_28597,
&cptable_28598, &cptable_28598,
&cptable_28599, &cptable_28599,
&cptable_28600,
&cptable_28603,
&cptable_28604,
&cptable_28605,
}; };
/* ### cpmap end ### */ /* ### cpmap end ### */
/* Everything above this line is generated automatically by cpmap.pl */ /* Everything above this line is generated automatically by cpmap.pl */
......
...@@ -406,6 +406,15 @@ static const char main_key_LA[MAIN_LEN][4] = ...@@ -406,6 +406,15 @@ static const char main_key_LA[MAIN_LEN][4] =
"<>" "<>"
}; };
/*** Lithuanian (Baltic) keyboard layout (contributed by Nerijus Balinas) */
static const char main_key_LT_B[MAIN_LEN][4] =
{
"`~","","","","","","","","","((","))","-_","",
"qQ","wW","eE","rR","tT","yY","uU","iI","oO","pP","[{","]}",
"aA","sS","dD","fF","gG","hH","jJ","kK","lL",";:","'\"","\\|",
"zZ","xX","cC","vV","bB","nN","mM",",<",".>","/?"
};
/*** Layout table. Add your keyboard mappings to this list */ /*** Layout table. Add your keyboard mappings to this list */
static const struct { static const struct {
const char *comment; const char *comment;
...@@ -445,6 +454,7 @@ static const struct { ...@@ -445,6 +454,7 @@ static const struct {
{"Slovak and Czech keyboard layout without dead keys", 28592, &main_key_SK_prog, &main_key_scan_qwerty, &main_key_vkey_qwerty}, {"Slovak and Czech keyboard layout without dead keys", 28592, &main_key_SK_prog, &main_key_scan_qwerty, &main_key_vkey_qwerty},
{"Czech keyboard layout", 28592, &main_key_CS, &main_key_scan_qwerty, &main_key_vkey_qwerty}, {"Czech keyboard layout", 28592, &main_key_CS, &main_key_scan_qwerty, &main_key_vkey_qwerty},
{"Latin American keyboard layout", 28591, &main_key_LA, &main_key_scan_qwerty, &main_key_vkey_qwerty}, {"Latin American keyboard layout", 28591, &main_key_LA, &main_key_scan_qwerty, &main_key_vkey_qwerty},
{"Lithuanian (Baltic) keyboard layout", 28603, &main_key_LT_B, &main_key_scan_qwerty, &main_key_vkey_qwerty},
{NULL, 0, NULL, NULL, NULL} /* sentinel */ {NULL, 0, NULL, NULL, NULL} /* sentinel */
}; };
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment