104b94745Smrg/* 25104ee6eSmrg * $XTermId: charsets.h,v 1.35 2024/12/01 23:50:59 tom Exp $ 304b94745Smrg */ 404b94745Smrg 504b94745Smrg/* 604b94745Smrg * Copyright 2023,2024 by Thomas E. Dickey 704b94745Smrg * 804b94745Smrg * All Rights Reserved 904b94745Smrg * 1004b94745Smrg * Permission is hereby granted, free of charge, to any person obtaining a 1104b94745Smrg * copy of this software and associated documentation files (the 1204b94745Smrg * "Software"), to deal in the Software without restriction, including 1304b94745Smrg * without limitation the rights to use, copy, modify, merge, publish, 1404b94745Smrg * distribute, sublicense, and/or sell copies of the Software, and to 1504b94745Smrg * permit persons to whom the Software is furnished to do so, subject to 1604b94745Smrg * the following conditions: 1704b94745Smrg * 1804b94745Smrg * The above copyright notice and this permission notice shall be included 1904b94745Smrg * in all copies or substantial portions of the Software. 2004b94745Smrg * 2104b94745Smrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 2204b94745Smrg * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 2304b94745Smrg * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 2404b94745Smrg * IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY 2504b94745Smrg * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 2604b94745Smrg * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 2704b94745Smrg * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 2804b94745Smrg * 2904b94745Smrg * Except as contained in this notice, the name(s) of the above copyright 3004b94745Smrg * holders shall not be used in advertising or otherwise to promote the 3104b94745Smrg * sale, use or other dealings in this Software without prior written 3204b94745Smrg * authorization. 3304b94745Smrg */ 3404b94745Smrg 3504b94745Smrg#ifndef included_charsets_h 3604b94745Smrg#define included_charsets_h 1 3704b94745Smrg 3804b94745Smrg/* 3904b94745Smrg * According to 4004b94745Smrg * Digital ANSI-Compliant Printing Protocol 4104b94745Smrg * Level 2 Programming Reference Manual 4204b94745Smrg * EK-PPLV2-PM. B01 4304b94745Smrg * 4404b94745Smrg * the supplementary character sets Greek, Hebrew, Latin-5 and Latin/Cyrillic 4504b94745Smrg * are standardized by ISO: 4604b94745Smrg * ISO Greek is 8859-7 4704b94745Smrg * ISO Hebrew is 8859-8 4804b94745Smrg * ISO Latin-5 is 8859-9 4904b94745Smrg * ISO Latin/Cyrillic is 8859-5 5004b94745Smrg * 5104b94745Smrg * These are derived from the data at 5204b94745Smrg * ftp://www.unicode.org/Public/MAPPINGS/ISO8859/ 5304b94745Smrg * 5404b94745Smrg * Note: the "figure A-xx" comments refer to EK-PPLV2-PM. 5504b94745Smrg */ 5604b94745Smrg 5704b94745Smrg#ifndef PUA 5804b94745Smrg#define PUA(n) (0xEEEE + (n)) 5904b94745Smrg#endif 6004b94745Smrg#define UNDEF 0x2426 /* rendered as a backwards "?" */ 6104b94745Smrg 6204b94745Smrg/* 6304b94745Smrg * A "codepage" is treated different from the NRC mode: it is always enabled. 6404b94745Smrg * Reuse the UNI() macros by temporarily setting its state. 6504b94745Smrg */ 6604b94745Smrg 6704b94745Smrg#if OPT_WIDE_CHARS 6804b94745Smrg#define begin_CODEPAGE(size) \ 6904b94745Smrg if (!(xw->flags & NATIONAL)) { \ 7004b94745Smrg screen->utf8_nrc_mode++; \ 7104b94745Smrg } 7204b94745Smrg#define end_CODEPAGE() \ 7304b94745Smrg if (!(xw->flags & NATIONAL)) { \ 7404b94745Smrg screen->utf8_nrc_mode--; \ 7504b94745Smrg } 7604b94745Smrg#else 7704b94745Smrg#define begin_CODEPAGE(size) /* nothing */ 7804b94745Smrg#define end_CODEPAGE() /* nothing */ 7904b94745Smrg#endif 8004b94745Smrg 8104b94745Smrg/* 8204b94745Smrg * xterm's original implementation of NRCS in 1998 was before Unicode became 8304b94745Smrg * prevalent. Most of the necessary mappings could be done using definitions 8404b94745Smrg * from X11/keysymdef.h, using ISO-8859-1 as the default. 8504b94745Smrg */ 8604b94745Smrg 8704b94745Smrg#define map_ASCII(code) \ 8804b94745Smrg switch (code) { \ 8904b94745Smrg XXX(0xA0, UNDEF) \ 9004b94745Smrg XXX(0xFF, UNDEF) \ 9104b94745Smrg } 9204b94745Smrg 9304b94745Smrg#define unmap_ASCII(code,dft) \ 9404b94745Smrg switch (code) { \ 9504b94745Smrg MAP(0xA0, 0x1B) \ 9604b94745Smrg MAP(0xFF, 0x10000) \ 9704b94745Smrg default: dft; break; \ 9804b94745Smrg } 9904b94745Smrg 10004b94745Smrg#define map_DEC_Spec_Graphic(code) \ 10104b94745Smrg begin_CODEPAGE(94) \ 10204b94745Smrg switch (code) { \ 10304b94745Smrg XXX(0x5F, UNDEF) \ 10404b94745Smrg UNI(0x60, 0x0020) /* nbsp, treat as blank */ \ 10504b94745Smrg UNI(0x61, 0x0020) /* reserved, treat as blank */ \ 10604b94745Smrg UNI(0x62, 0x25AE) /* black vertical rectangle */ \ 10704b94745Smrg UNI(0x63, 0x215F) /* "1/" */ \ 10804b94745Smrg UNI(0x64, 0x0020) /* "3/", not in Unicode, ignore */ \ 10904b94745Smrg UNI(0x65, 0x0020) /* "5/", not in Unicode, ignore */ \ 11004b94745Smrg UNI(0x66, 0x0020) /* "7/", not in Unicode, ignore */ \ 11104b94745Smrg UNI(0x67, 0x00B0) /* degree sign */ \ 11204b94745Smrg UNI(0x68, 0x00B1) /* plus-minus sign */ \ 11304b94745Smrg UNI(0x69, 0x2192) /* right-arrow */ \ 11404b94745Smrg UNI(0x6A, 0x2026) /* ellipsis */ \ 11504b94745Smrg UNI(0x6B, 0x00F7) /* divide by */ \ 11604b94745Smrg UNI(0x6C, 0x2193) /* down arrow */ \ 11704b94745Smrg UNI(0x6D, 0x23BA) /* bar at scan 0 */ \ 11804b94745Smrg UNI(0x6E, 0x23BA) /* bar at scan 1 */ \ 11904b94745Smrg UNI(0x6F, 0x23BB) /* bar at scan 2 */ \ 12004b94745Smrg UNI(0x70, 0x23BB) /* bar at scan 3 */ \ 12104b94745Smrg UNI(0x71, 0x23BC) /* bar at scan 4 */ \ 12204b94745Smrg UNI(0x72, 0x23BC) /* bar at scan 5 */ \ 12304b94745Smrg UNI(0x73, 0x23BD) /* bar at scan 6 */ \ 12404b94745Smrg UNI(0x74, 0x23BD) /* bar at scan 7 */ \ 12504b94745Smrg UNI(0x75, 0x2080) /* subscript 0 */ \ 12604b94745Smrg UNI(0x76, 0x2081) /* subscript 1 */ \ 12704b94745Smrg UNI(0x77, 0x2082) /* subscript 2 */ \ 12804b94745Smrg UNI(0x78, 0x2083) /* subscript 3 */ \ 12904b94745Smrg UNI(0x79, 0x2084) /* subscript 4 */ \ 13004b94745Smrg UNI(0x7A, 0x2085) /* subscript 5 */ \ 13104b94745Smrg UNI(0x7B, 0x2086) /* subscript 6 */ \ 13204b94745Smrg UNI(0x7C, 0x2087) /* subscript 7 */ \ 13304b94745Smrg UNI(0x7D, 0x2088) /* subscript 8 */ \ 13404b94745Smrg UNI(0x7E, 0x2089) /* subscript 9 */ \ 13504b94745Smrg } \ 13604b94745Smrg end_CODEPAGE() 13704b94745Smrg 13804b94745Smrg#define unmap_DEC_Spec_Graphic(code,dft) \ 13904b94745Smrg switch (code) { \ 14004b94745Smrg MAP(0x5F, 0x10000) \ 14104b94745Smrg MAP(0x60, 0x14) /* nbsp, treat as blank */ \ 14204b94745Smrg MAP(0x61, 0x78) /* reserved, treat as blank */ \ 14304b94745Smrg MAP(0x62, 0x0A) /* black vertical rectangle */ \ 14404b94745Smrg MAP(0x63, 0x0D) /* "1/" */ \ 14504b94745Smrg MAP(0x64, 0x0E) /* "3/", not in Unicode, ignore */ \ 14604b94745Smrg MAP(0x65, 0x0B) /* "5/", not in Unicode, ignore */ \ 14704b94745Smrg MAP(0x66, 0xB0) /* "7/", not in Unicode, ignore */ \ 14804b94745Smrg MAP(0x67, 0xB1) /* degree sign */ \ 14904b94745Smrg MAP(0x68, 0x15) /* plus-minus sign */ \ 15004b94745Smrg MAP(0x69, 0x0C) /* right-arrow */ \ 15104b94745Smrg MAP(0x6A, 0x16) /* ellipsis */ \ 15204b94745Smrg MAP(0x6B, 0x17) /* divide by */ \ 15304b94745Smrg MAP(0x6C, 0x18) /* down arrow */ \ 15404b94745Smrg MAP(0x6D, 0x19) /* bar at scan 0 */ \ 15504b94745Smrg MAP(0x6E, 0x1A) /* bar at scan 1 */ \ 15604b94745Smrg MAP(0x6F, 0x1B) /* bar at scan 2 */ \ 15704b94745Smrg MAP(0x70, 0x1C) /* bar at scan 3 */ \ 15804b94745Smrg MAP(0x71, 0x1D) /* bar at scan 4 */ \ 15904b94745Smrg MAP(0x72, 0x1E) /* bar at scan 5 */ \ 16004b94745Smrg MAP(0x73, 0x1F) /* bar at scan 6 */ \ 16104b94745Smrg MAP(0x74, 0x80) /* bar at scan 7 */ \ 16204b94745Smrg MAP(0x75, 0x81) /* subscript 0 */ \ 16304b94745Smrg MAP(0x76, 0x82) /* subscript 1 */ \ 16404b94745Smrg MAP(0x77, 0x83) /* subscript 2 */ \ 16504b94745Smrg MAP(0x78, 0x84) /* subscript 3 */ \ 16604b94745Smrg MAP(0x79, 0x85) /* subscript 4 */ \ 16704b94745Smrg MAP(0x7A, 0x86) /* subscript 5 */ \ 16804b94745Smrg MAP(0x7B, 0xC6) /* subscript 6 */ \ 16904b94745Smrg MAP(0x7C, 0x87) /* subscript 7 */ \ 17004b94745Smrg MAP(0x7D, 0xA3) /* subscript 8 */ \ 17104b94745Smrg MAP(0x7E, 0xB7) /* subscript 9 */ \ 17204b94745Smrg default: dft; break; \ 17304b94745Smrg } 17404b94745Smrg 17504b94745Smrg#define map_ISO_Latin_1(code) \ 17604b94745Smrg begin_CODEPAGE(96) \ 17704b94745Smrg switch (code) { \ 17804b94745Smrg } \ 17904b94745Smrg end_CODEPAGE() 18004b94745Smrg 18104b94745Smrg#define unmap_ISO_Latin_1(code,dft) /* nothing */ 18204b94745Smrg 18304b94745Smrg#define map_NRCS_Dutch(code) \ 18404b94745Smrg switch (code) { \ 18504b94745Smrg MAP(0x23, XK_sterling) /* U+00A3 POUND SIGN */ \ 18604b94745Smrg MAP(0x40, XK_threequarters) /* U+00BE VULGAR FRACTION THREE QUARTERS */ \ 18704b94745Smrg UNI(0x5B, 0x0133) /* LATIN SMALL LIGATURE IJ */ \ 18804b94745Smrg MAP(0x5C, XK_onehalf) /* U+00BD VULGAR FRACTION ONE HALF */ \ 18904b94745Smrg MAP(0x5D, XK_bar) /* U+007C VERTICAL LINE */ \ 19004b94745Smrg MAP(0x7B, XK_diaeresis) /* U+00A8 DIAERESIS */ \ 19104b94745Smrg UNI(0x7C, 0x0192) /* LATIN SMALL LETTER F WITH HOOK (florin) */ \ 19204b94745Smrg MAP(0x7D, XK_onequarter) /* U+00BC VULGAR FRACTION ONE QUARTER */ \ 19304b94745Smrg MAP(0x7E, XK_acute) /* U+00B4 ACUTE ACCENT */ \ 19404b94745Smrg } 19504b94745Smrg 19604b94745Smrg#define unmap_NRCS_Dutch(code,dft) /* nothing */ 19704b94745Smrg 19804b94745Smrg#define map_NRCS_Finnish(code) \ 19904b94745Smrg switch (code) { \ 20004b94745Smrg MAP(0x5B, XK_Adiaeresis) /* U+00C4 LATIN CAPITAL LETTER A WITH DIAERESIS */ \ 20104b94745Smrg MAP(0x5C, XK_Odiaeresis) /* U+00D6 LATIN CAPITAL LETTER O WITH DIAERESIS */ \ 20204b94745Smrg MAP(0x5D, XK_Aring) /* U+00C5 LATIN CAPITAL LETTER A WITH RING ABOVE */ \ 20304b94745Smrg MAP(0x5E, XK_Udiaeresis) /* U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS */ \ 20404b94745Smrg MAP(0x60, XK_eacute) /* U+00E9 LATIN SMALL LETTER E WITH ACUTE */ \ 20504b94745Smrg MAP(0x7B, XK_adiaeresis) /* U+00E4 LATIN SMALL LETTER A WITH DIAERESIS */ \ 20604b94745Smrg MAP(0x7C, XK_odiaeresis) /* U+00F6 LATIN SMALL LETTER O WITH DIAERESIS */ \ 20704b94745Smrg MAP(0x7D, XK_aring) /* U+00E5 LATIN SMALL LETTER A WITH RING ABOVE */ \ 20804b94745Smrg MAP(0x7E, XK_udiaeresis) /* U+00FC LATIN SMALL LETTER U WITH DIAERESIS */ \ 20904b94745Smrg } 21004b94745Smrg 21104b94745Smrg#define unmap_NRCS_Finnish(code,dft) /* nothing */ 21204b94745Smrg 21304b94745Smrg#define map_NRCS_French(code) \ 21404b94745Smrg switch (code) { \ 21504b94745Smrg MAP(0x23, XK_sterling) /* U+00A3 POUND SIGN */ \ 21604b94745Smrg MAP(0x40, XK_agrave) /* U+00E0 LATIN SMALL LETTER A WITH GRAVE */ \ 21704b94745Smrg MAP(0x5B, XK_degree) /* U+00B0 DEGREE SIGN */ \ 21804b94745Smrg MAP(0x5C, XK_ccedilla) /* U+00E7 LATIN SMALL LETTER C WITH CEDILLA */ \ 21904b94745Smrg MAP(0x5D, XK_section) /* U+00A7 SECTION SIGN */ \ 22004b94745Smrg MAP(0x7B, XK_eacute) /* U+00E9 LATIN SMALL LETTER E WITH ACUTE */ \ 22104b94745Smrg MAP(0x7C, XK_ugrave) /* U+00F9 LATIN SMALL LETTER U WITH GRAVE */ \ 22204b94745Smrg MAP(0x7D, XK_egrave) /* U+00E8 LATIN SMALL LETTER E WITH GRAVE */ \ 22304b94745Smrg MAP(0x7E, XK_diaeresis) /* U+00A8 DIAERESIS */ \ 22404b94745Smrg } 22504b94745Smrg 22604b94745Smrg#define unmap_NRCS_French(code,dft) /* nothing */ 22704b94745Smrg 22804b94745Smrg#define map_NRCS_French_Canadian(code) \ 22904b94745Smrg switch (code) { \ 23004b94745Smrg MAP(0x40, XK_agrave) /* U+00E0 LATIN SMALL LETTER A WITH GRAVE */ \ 23104b94745Smrg MAP(0x5B, XK_acircumflex) /* U+00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX */ \ 23204b94745Smrg MAP(0x5C, XK_ccedilla) /* U+00E7 LATIN SMALL LETTER C WITH CEDILLA */ \ 23304b94745Smrg MAP(0x5D, XK_ecircumflex) /* U+00EA LATIN SMALL LETTER E WITH CIRCUMFLEX */ \ 23404b94745Smrg MAP(0x5E, XK_icircumflex) /* U+00EE LATIN SMALL LETTER I WITH CIRCUMFLEX */ \ 23504b94745Smrg MAP(0x60, XK_ocircumflex) /* U+00F4 LATIN SMALL LETTER O WITH CIRCUMFLEX */ \ 23604b94745Smrg MAP(0x7B, XK_eacute) /* U+00E9 LATIN SMALL LETTER E WITH ACUTE */ \ 23704b94745Smrg MAP(0x7C, XK_ugrave) /* U+00F9 LATIN SMALL LETTER U WITH GRAVE */ \ 23804b94745Smrg MAP(0x7D, XK_egrave) /* U+00E8 LATIN SMALL LETTER E WITH GRAVE */ \ 23904b94745Smrg MAP(0x7E, XK_ucircumflex) /* U+00FB LATIN SMALL LETTER U WITH CIRCUMFLEX */ \ 24004b94745Smrg } 24104b94745Smrg 24204b94745Smrg#define unmap_NRCS_French_Canadian(code,dft) /* nothing */ 24304b94745Smrg 24404b94745Smrg#define map_NRCS_German(code) \ 24504b94745Smrg switch (code) { \ 24604b94745Smrg MAP(0x40, XK_section) /* U+00A7 SECTION SIGN */ \ 24704b94745Smrg MAP(0x5B, XK_Adiaeresis) /* U+00C4 LATIN CAPITAL LETTER A WITH DIAERESIS */ \ 24804b94745Smrg MAP(0x5C, XK_Odiaeresis) /* U+00D6 LATIN CAPITAL LETTER O WITH DIAERESIS */ \ 24904b94745Smrg MAP(0x5D, XK_Udiaeresis) /* U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS */ \ 25004b94745Smrg MAP(0x7B, XK_adiaeresis) /* U+00E4 LATIN SMALL LETTER A WITH DIAERESIS */ \ 25104b94745Smrg MAP(0x7C, XK_odiaeresis) /* U+00F6 LATIN SMALL LETTER O WITH DIAERESIS */ \ 25204b94745Smrg MAP(0x7D, XK_udiaeresis) /* U+00FC LATIN SMALL LETTER U WITH DIAERESIS */ \ 25304b94745Smrg MAP(0x7E, XK_ssharp) /* U+00DF LATIN SMALL LETTER SHARP S */ \ 25404b94745Smrg } 25504b94745Smrg 25604b94745Smrg#define unmap_NRCS_German(code,dft) /* nothing */ 25704b94745Smrg 25804b94745Smrg#define map_NRCS_Italian(code) \ 25904b94745Smrg switch (code) { \ 26004b94745Smrg MAP(0x23, XK_sterling) /* U+00A3 POUND SIGN */ \ 26104b94745Smrg MAP(0x40, XK_section) /* U+00A7 SECTION SIGN */ \ 26204b94745Smrg MAP(0x5B, XK_degree) /* U+00B0 DEGREE SIGN */ \ 26304b94745Smrg MAP(0x5C, XK_ccedilla) /* U+00E7 LATIN SMALL LETTER C WITH CEDILLA */ \ 26404b94745Smrg MAP(0x5D, XK_eacute) /* U+00E9 LATIN SMALL LETTER E WITH ACUTE */ \ 26504b94745Smrg MAP(0x60, XK_ugrave) /* U+00F9 LATIN SMALL LETTER U WITH GRAVE */ \ 26604b94745Smrg MAP(0x7B, XK_agrave) /* U+00E0 LATIN SMALL LETTER A WITH GRAVE */ \ 26704b94745Smrg MAP(0x7C, XK_ograve) /* U+00F2 LATIN SMALL LETTER O WITH GRAVE */ \ 26804b94745Smrg MAP(0x7D, XK_egrave) /* U+00E8 LATIN SMALL LETTER E WITH GRAVE */ \ 26904b94745Smrg MAP(0x7E, XK_igrave) /* U+00EC LATIN SMALL LETTER I WITH GRAVE */ \ 27004b94745Smrg } 27104b94745Smrg 27204b94745Smrg#define unmap_NRCS_Italian(code,dft) /* nothing */ 27304b94745Smrg 27404b94745Smrg#define map_NRCS_Norwegian_Danish(code) \ 27504b94745Smrg switch (code) { \ 27604b94745Smrg MAP(0x40, XK_Adiaeresis) /* U+00C4 LATIN CAPITAL LETTER A WITH DIAERESIS */ \ 27704b94745Smrg MAP(0x5B, XK_AE) /* U+00C6 LATIN CAPITAL LETTER AE */ \ 27804b94745Smrg MAP(0x5C, XK_Ooblique) /* U+00D8 LATIN CAPITAL LETTER O WITH STROKE */ \ 27904b94745Smrg MAP(0x5D, XK_Aring) /* U+00C5 LATIN CAPITAL LETTER A WITH RING ABOVE */ \ 28004b94745Smrg MAP(0x5E, XK_Udiaeresis) /* U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS */ \ 28104b94745Smrg MAP(0x60, XK_adiaeresis) /* U+00E4 LATIN SMALL LETTER A WITH DIAERESIS */ \ 28204b94745Smrg MAP(0x7B, XK_ae) /* U+00E6 LATIN SMALL LETTER AE */ \ 28304b94745Smrg MAP(0x7C, XK_oslash) /* U+00F8 LATIN SMALL LETTER O WITH STROKE */ \ 28404b94745Smrg MAP(0x7D, XK_aring) /* U+00E5 LATIN SMALL LETTER A WITH RING ABOVE */ \ 28504b94745Smrg MAP(0x7E, XK_udiaeresis) /* U+00FC LATIN SMALL LETTER U WITH DIAERESIS */ \ 28604b94745Smrg } 28704b94745Smrg 28804b94745Smrg#define unmap_NRCS_Norwegian_Danish(code,dft) /* nothing */ 28904b94745Smrg 29004b94745Smrg#define map_NRCS_Portuguese(code) \ 29104b94745Smrg switch (code) { \ 29204b94745Smrg MAP(0x5B, XK_Atilde) /* U+00C3 LATIN CAPITAL LETTER A WITH TILDE */ \ 29304b94745Smrg MAP(0x5C, XK_Ccedilla) /* U+00C7 LATIN CAPITAL LETTER C WITH CEDILLA */ \ 29404b94745Smrg MAP(0x5D, XK_Otilde) /* U+00D5 LATIN CAPITAL LETTER O WITH TILDE */ \ 29504b94745Smrg MAP(0x7B, XK_atilde) /* U+00E3 LATIN SMALL LETTER A WITH TILDE */ \ 29604b94745Smrg MAP(0x7C, XK_ccedilla) /* U+00E7 LATIN SMALL LETTER C WITH CEDILLA */ \ 29704b94745Smrg MAP(0x7D, XK_otilde) /* U+00F5 LATIN SMALL LETTER O WITH TILDE */ \ 29804b94745Smrg } 29904b94745Smrg 30004b94745Smrg#define unmap_NRCS_Portuguese(code,dft) /* nothing */ 30104b94745Smrg 30204b94745Smrg#define map_NRCS_Spanish(code) \ 30304b94745Smrg switch (code) { \ 30404b94745Smrg MAP(0x23, XK_sterling) /* U+00A3 POUND SIGN */ \ 30504b94745Smrg MAP(0x40, XK_section) /* U+00A7 SECTION SIGN */ \ 30604b94745Smrg MAP(0x5B, XK_exclamdown) /* U+00A1 INVERTED EXCLAMATION MARK */ \ 30704b94745Smrg MAP(0x5C, XK_Ntilde) /* U+00D1 LATIN CAPITAL LETTER N WITH TILDE */ \ 30804b94745Smrg MAP(0x5D, XK_questiondown) /* U+00BF INVERTED QUESTION MARK */ \ 30904b94745Smrg MAP(0x7B, XK_degree) /* U+00B0 DEGREE SIGN */ \ 31004b94745Smrg MAP(0x7C, XK_ntilde) /* U+00F1 LATIN SMALL LETTER N WITH TILDE */ \ 31104b94745Smrg MAP(0x7D, XK_ccedilla) /* U+00E7 LATIN SMALL LETTER C WITH CEDILLA */ \ 31204b94745Smrg } 31304b94745Smrg 31404b94745Smrg#define unmap_NRCS_Spanish(code,dft) /* nothing */ 31504b94745Smrg 31604b94745Smrg#define map_NRCS_Swedish(code) \ 31704b94745Smrg switch (code) { \ 31804b94745Smrg MAP(0x40, XK_Eacute) \ 31904b94745Smrg MAP(0x5B, XK_Adiaeresis) /* U+00C4 LATIN CAPITAL LETTER A WITH DIAERESIS */ \ 32004b94745Smrg MAP(0x5C, XK_Odiaeresis) /* U+00D6 LATIN CAPITAL LETTER O WITH DIAERESIS */ \ 32104b94745Smrg MAP(0x5D, XK_Aring) /* U+00C5 LATIN CAPITAL LETTER A WITH RING ABOVE */ \ 32204b94745Smrg MAP(0x5E, XK_Udiaeresis) /* U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS */ \ 32304b94745Smrg MAP(0x60, XK_eacute) /* U+00E9 LATIN SMALL LETTER E WITH ACUTE */ \ 32404b94745Smrg MAP(0x7B, XK_adiaeresis) /* U+00E4 LATIN SMALL LETTER A WITH DIAERESIS */ \ 32504b94745Smrg MAP(0x7C, XK_odiaeresis) /* U+00F6 LATIN SMALL LETTER O WITH DIAERESIS */ \ 32604b94745Smrg MAP(0x7D, XK_aring) /* U+00E5 LATIN SMALL LETTER A WITH RING ABOVE */ \ 32704b94745Smrg MAP(0x7E, XK_udiaeresis) /* U+00FC LATIN SMALL LETTER U WITH DIAERESIS */ \ 32804b94745Smrg } 32904b94745Smrg 33004b94745Smrg#define unmap_NRCS_Swedish(code,dft) /* nothing */ 33104b94745Smrg 33204b94745Smrg#define map_NRCS_Swiss(code) \ 33304b94745Smrg switch (code) { \ 33404b94745Smrg MAP(0x23, XK_ugrave) /* U+00F9 LATIN SMALL LETTER U WITH GRAVE */ \ 33504b94745Smrg MAP(0x40, XK_agrave) /* U+00E0 LATIN SMALL LETTER A WITH GRAVE */ \ 33604b94745Smrg MAP(0x5B, XK_eacute) /* U+00E9 LATIN SMALL LETTER E WITH ACUTE */ \ 33704b94745Smrg MAP(0x5C, XK_ccedilla) /* U+00E7 LATIN SMALL LETTER C WITH CEDILLA */ \ 33804b94745Smrg MAP(0x5D, XK_ecircumflex) /* U+00EA LATIN SMALL LETTER E WITH CIRCUMFLEX */ \ 33904b94745Smrg MAP(0x5E, XK_icircumflex) /* U+00EE LATIN SMALL LETTER I WITH CIRCUMFLEX */ \ 34004b94745Smrg MAP(0x5F, XK_egrave) /* U+00E8 LATIN SMALL LETTER E WITH GRAVE */ \ 34104b94745Smrg MAP(0x60, XK_ocircumflex) /* U+00F4 LATIN SMALL LETTER O WITH CIRCUMFLEX */ \ 34204b94745Smrg MAP(0x7B, XK_adiaeresis) /* U+00E4 LATIN SMALL LETTER A WITH DIAERESIS */ \ 34304b94745Smrg MAP(0x7C, XK_odiaeresis) /* U+00F6 LATIN SMALL LETTER O WITH DIAERESIS */ \ 34404b94745Smrg MAP(0x7D, XK_udiaeresis) /* U+00FC LATIN SMALL LETTER U WITH DIAERESIS */ \ 34504b94745Smrg MAP(0x7E, XK_ucircumflex) /* U+00FB LATIN SMALL LETTER U WITH CIRCUMFLEX */ \ 34604b94745Smrg } 34704b94745Smrg 34804b94745Smrg#define unmap_NRCS_Swiss(code,dft) /* nothing */ 34904b94745Smrg 35004b94745Smrg/* 35104b94745Smrg * Unlike NRCS, which splices a few characters onto ISO-8859-1, the 35204b94745Smrg * supplementary character sets are complete, normally mapped to GR. Most of 35304b94745Smrg * these mappings rely upon glyphs not found in ISO-8859-1. We can display most 35404b94745Smrg * of those using Unicode, thereby supporting specialized applications that use 35504b94745Smrg * SCS with luit, subject to the limitation that select/paste will give 35604b94745Smrg * meaningless results in terms of the application which uses these mappings. 35704b94745Smrg * 35804b94745Smrg * Since the codepages introduced with VT320, etc, use 8-bit encodings, there is 35904b94745Smrg * no plausible argument to be made that these mappings "use" UTF-8, even though 36004b94745Smrg * there is a hidden step in the terminal emulator which relies upon UTF-8. 36104b94745Smrg */ 36204b94745Smrg 36304b94745Smrg#define map_DEC_Supp_Graphic(code,dft) \ 36404b94745Smrg begin_CODEPAGE(94) \ 36504b94745Smrg switch (code) { \ 36604b94745Smrg XXX(0x24, UNDEF) \ 36704b94745Smrg XXX(0x26, UNDEF) \ 36804b94745Smrg UNI(0x28, 0x00A4) /* CURRENCY SIGN */ \ 36904b94745Smrg XXX(0x2C, UNDEF) \ 37004b94745Smrg XXX(0x2D, UNDEF) \ 37104b94745Smrg XXX(0x2E, UNDEF) \ 37204b94745Smrg XXX(0x2F, UNDEF) \ 37304b94745Smrg XXX(0x34, UNDEF) \ 37404b94745Smrg XXX(0x38, UNDEF) \ 37504b94745Smrg XXX(0x3E, UNDEF) \ 37604b94745Smrg XXX(0x50, UNDEF) \ 37704b94745Smrg UNI(0x57, 0x0152) /* LATIN CAPITAL LIGATURE OE */ \ 37804b94745Smrg UNI(0x5D, 0x0178) /* LATIN CAPITAL LETTER Y WITH DIAERESIS */ \ 37904b94745Smrg XXX(0x5E, UNDEF) \ 38004b94745Smrg UNI(0x5F, 0x005F) \ 38104b94745Smrg XXX(0x70, UNDEF) \ 38204b94745Smrg UNI(0x77, 0x0153) /* LATIN SMALL LIGATURE OE */ \ 38304b94745Smrg UNI(0x7D, 0x00FF) /* LATIN SMALL LETTER Y WITH DIAERESIS */ \ 38404b94745Smrg XXX(0x7E, UNDEF) \ 38504b94745Smrg default: dft; break; \ 38604b94745Smrg } \ 38704b94745Smrg end_CODEPAGE() 38804b94745Smrg 38904b94745Smrg#define unmap_DEC_Supp_Graphic(code,dft) \ 39004b94745Smrg switch (code) { \ 39104b94745Smrg MAP(0x24, 0x1B) \ 39204b94745Smrg MAP(0x26, 0x1B) \ 39304b94745Smrg MAP(0x28, 0xA4) /* CURRENCY SIGN */ \ 39404b94745Smrg MAP(0x2C, 0x1B) \ 39504b94745Smrg MAP(0x2D, 0x1B) \ 39604b94745Smrg MAP(0x2E, 0x1B) \ 39704b94745Smrg MAP(0x2F, 0x1B) \ 39804b94745Smrg MAP(0x34, 0x1B) \ 39904b94745Smrg MAP(0x38, 0x1B) \ 40004b94745Smrg MAP(0x3E, 0x1B) \ 40104b94745Smrg MAP(0x50, 0x1B) \ 40204b94745Smrg MAP(0x57, 0x97) /* LATIN CAPITAL LIGATURE OE */ \ 40304b94745Smrg MAP(0x5D, 0x98) /* LATIN CAPITAL LETTER Y WITH DIAERESIS */ \ 40404b94745Smrg MAP(0x5E, 0x1B) \ 40504b94745Smrg MAP(0x5F, 0xDF) \ 40604b94745Smrg MAP(0x70, 0x1B) \ 40704b94745Smrg MAP(0x77, 0x99) /* LATIN SMALL LIGATURE OE */ \ 40804b94745Smrg MAP(0x7D, 0xFF) /* LATIN SMALL LETTER Y WITH DIAERESIS */ \ 40904b94745Smrg MAP(0x7E, 0x1B) \ 41004b94745Smrg default: dft; break; \ 41104b94745Smrg } 41204b94745Smrg 41304b94745Smrg#if OPT_WIDE_CHARS 41404b94745Smrg 41504b94745Smrg/* 41604b94745Smrg * derived from http://www.vt100.net/charsets/technical.html 41704b94745Smrg */ 41804b94745Smrg#define map_DEC_Technical(code) \ 41904b94745Smrg begin_CODEPAGE(94) \ 42004b94745Smrg switch (code) { \ 42104b94745Smrg UNI(0x21, 0x23B7) /* RADICAL SYMBOL BOTTOM Centred left to right, so that it joins up with 02/02 */ \ 42204b94745Smrg UNI(0x22, 0x250C) /* BOX DRAWINGS LIGHT DOWN AND RIGHT */ \ 42304b94745Smrg UNI(0x23, 0x2500) /* BOX DRAWINGS LIGHT HORIZONTAL */ \ 42404b94745Smrg UNI(0x24, 0x2320) /* TOP HALF INTEGRAL with the proviso that the stem is vertical, to join with 02/06 */ \ 42504b94745Smrg UNI(0x25, 0x2321) /* BOTTOM HALF INTEGRAL with the proviso above. */ \ 42604b94745Smrg UNI(0x26, 0x2502) /* BOX DRAWINGS LIGHT VERTICAL */ \ 42704b94745Smrg UNI(0x27, 0x23A1) /* LEFT SQUARE BRACKET UPPER CORNER Joins vertically to 02/06, 02/08. Doesn't join to its right. */ \ 42804b94745Smrg UNI(0x28, 0x23A3) /* LEFT SQUARE BRACKET LOWER CORNER Joins vertically to 02/06, 02/07. Doesn't join to its right. */ \ 42904b94745Smrg UNI(0x29, 0x23A4) /* RIGHT SQUARE BRACKET UPPER CORNER Joins vertically to 026, 02a. Doesn't join to its left. */ \ 43004b94745Smrg UNI(0x2A, 0x23A6) /* RIGHT SQUARE BRACKET LOWER CORNER Joins vertically to 026, 029. Doesn't join to its left. */ \ 43104b94745Smrg UNI(0x2B, 0x23A7) /* LEFT CURLY BRACKET UPPER HOOK Joins vertically to 026, 02c, 02/15. Doesn't join to its right. */ \ 43204b94745Smrg UNI(0x2C, 0x23A9) /* LEFT CURLY BRACKET LOWER HOOK Joins vertically to 026, 02b, 02/15. Doesn't join to its right. */ \ 43304b94745Smrg UNI(0x2D, 0x23AB) /* RIGHT CURLY BRACKET UPPER HOOK Joins vertically to 026, 02e, 03/00. Doesn't join to its left. */ \ 43404b94745Smrg UNI(0x2E, 0x23AD) /* RIGHT CURLY BRACKET LOWER HOOK Joins vertically to 026, 02d, 03/00. Doesn't join to its left. */ \ 43504b94745Smrg UNI(0x2F, 0x23A8) /* LEFT CURLY BRACKET MIDDLE PIECE Joins vertically to 026, 02b, 02c. */ \ 43604b94745Smrg UNI(0x30, 0x23AC) /* RIGHT CURLY BRACKET MIDDLE PIECE Joins vertically to 02/06, 02d, 02e. */ \ 43704b94745Smrg XXX(0x31, PUA(0)) /* Top Left Sigma. Joins to right with 02/03, 03/05. Joins diagonally below right with 03/03, 03/07. */ \ 43804b94745Smrg XXX(0x32, PUA(1)) /* Bottom Left Sigma. Joins to right with 02/03, 03/06. Joins diagonally above right with 03/04, 03/07. */ \ 43904b94745Smrg XXX(0x33, PUA(2)) /* Top Diagonal Sigma. Line for joining 03/01 to 03/04 or 03/07. */ \ 44004b94745Smrg XXX(0x34, PUA(3)) /* Bottom Diagonal Sigma. Line for joining 03/02 to 03/03 or 03/07. */ \ 44104b94745Smrg XXX(0x35, PUA(4)) /* Top Right Sigma. Joins to left with 02/03, 03/01. */ \ 44204b94745Smrg XXX(0x36, PUA(5)) /* Bottom Right Sigma. Joins to left with 02/03, 03/02. */ \ 44304b94745Smrg XXX(0x37, PUA(6)) /* Middle Sigma. Joins diagonally with 03/01, 03/02, 03/03, 03/04. */ \ 44404b94745Smrg XXX(0x38, UNDEF) /* undefined */ \ 44504b94745Smrg XXX(0x39, UNDEF) /* undefined */ \ 44604b94745Smrg XXX(0x3A, UNDEF) /* undefined */ \ 44704b94745Smrg XXX(0x3B, UNDEF) /* undefined */ \ 44804b94745Smrg UNI(0x3C, 0x2264) /* LESS-THAN OR EQUAL TO */ \ 44904b94745Smrg UNI(0x3D, 0x2260) /* NOT EQUAL TO */ \ 45004b94745Smrg UNI(0x3E, 0x2265) /* GREATER-THAN OR EQUAL TO */ \ 45104b94745Smrg UNI(0x3F, 0x222B) /* INTEGRAL */ \ 45204b94745Smrg UNI(0x40, 0x2234) /* THEREFORE */ \ 45304b94745Smrg UNI(0x41, 0x221D) /* PROPORTIONAL TO */ \ 45404b94745Smrg UNI(0x42, 0x221E) /* INFINITY */ \ 45504b94745Smrg UNI(0x43, 0x00F7) /* DIVISION SIGN */ \ 45604b94745Smrg UNI(0x44, 0x0394) /* GREEK CAPITAL DELTA */ \ 45704b94745Smrg UNI(0x45, 0x2207) /* NABLA */ \ 45804b94745Smrg UNI(0x46, 0x03A6) /* GREEK CAPITAL LETTER PHI */ \ 45904b94745Smrg UNI(0x47, 0x0393) /* GREEK CAPITAL LETTER GAMMA */ \ 46004b94745Smrg UNI(0x48, 0x223C) /* TILDE OPERATOR */ \ 46104b94745Smrg UNI(0x49, 0x2243) /* ASYMPTOTICALLY EQUAL TO */ \ 46204b94745Smrg UNI(0x4A, 0x0398) /* GREEK CAPITAL LETTER THETA */ \ 46304b94745Smrg UNI(0x4B, 0x00D7) /* MULTIPLICATION SIGN */ \ 46404b94745Smrg UNI(0x4C, 0x039B) /* GREEK CAPITAL LETTER LAMDA */ \ 46504b94745Smrg UNI(0x4D, 0x21D4) /* LEFT RIGHT DOUBLE ARROW */ \ 46604b94745Smrg UNI(0x4E, 0x21D2) /* RIGHTWARDS DOUBLE ARROW */ \ 46704b94745Smrg UNI(0x4F, 0x2261) /* IDENTICAL TO */ \ 46804b94745Smrg UNI(0x50, 0x03A0) /* GREEK CAPITAL LETTER PI */ \ 46904b94745Smrg UNI(0x51, 0x03A8) /* GREEK CAPITAL LETTER PSI */ \ 47004b94745Smrg XXX(0x52, UNDEF) /* undefined */ \ 47104b94745Smrg UNI(0x53, 0x03A3) /* GREEK CAPITAL LETTER SIGMA */ \ 47204b94745Smrg XXX(0x54, UNDEF) /* undefined */ \ 47304b94745Smrg XXX(0x55, UNDEF) /* undefined */ \ 47404b94745Smrg UNI(0x56, 0x221A) /* SQUARE ROOT */ \ 47504b94745Smrg UNI(0x57, 0x03A9) /* GREEK CAPITAL LETTER OMEGA */ \ 47604b94745Smrg UNI(0x58, 0x039E) /* GREEK CAPITAL LETTER XI */ \ 47704b94745Smrg UNI(0x59, 0x03A5) /* GREEK CAPITAL LETTER UPSILON */ \ 47804b94745Smrg UNI(0x5A, 0x2282) /* SUBSET OF */ \ 47904b94745Smrg UNI(0x5B, 0x2283) /* SUPERSET OF */ \ 48004b94745Smrg UNI(0x5C, 0x2229) /* INTERSECTION */ \ 48104b94745Smrg UNI(0x5D, 0x222A) /* UNION */ \ 48204b94745Smrg UNI(0x5E, 0x2227) /* LOGICAL AND */ \ 48304b94745Smrg UNI(0x5F, 0x2228) /* LOGICAL OR */ \ 48404b94745Smrg UNI(0x60, 0x00AC) /* NOT SIGN */ \ 48504b94745Smrg UNI(0x61, 0x03B1) /* GREEK SMALL LETTER ALPHA */ \ 48604b94745Smrg UNI(0x62, 0x03B2) /* GREEK SMALL LETTER BETA */ \ 48704b94745Smrg UNI(0x63, 0x03C7) /* GREEK SMALL LETTER CHI */ \ 48804b94745Smrg UNI(0x64, 0x03B4) /* GREEK SMALL LETTER DELTA */ \ 48904b94745Smrg UNI(0x65, 0x03B5) /* GREEK SMALL LETTER EPSILON */ \ 49004b94745Smrg UNI(0x66, 0x03C6) /* GREEK SMALL LETTER PHI */ \ 49104b94745Smrg UNI(0x67, 0x03B3) /* GREEK SMALL LETTER GAMMA */ \ 49204b94745Smrg UNI(0x68, 0x03B7) /* GREEK SMALL LETTER ETA */ \ 49304b94745Smrg UNI(0x69, 0x03B9) /* GREEK SMALL LETTER IOTA */ \ 49404b94745Smrg UNI(0x6A, 0x03B8) /* GREEK SMALL LETTER THETA */ \ 49504b94745Smrg UNI(0x6B, 0x03BA) /* GREEK SMALL LETTER KAPPA */ \ 49604b94745Smrg UNI(0x6C, 0x03BB) /* GREEK SMALL LETTER LAMDA */ \ 49704b94745Smrg XXX(0x6D, UNDEF) /* undefined */ \ 49804b94745Smrg UNI(0x6E, 0x03BD) /* GREEK SMALL LETTER NU */ \ 49904b94745Smrg UNI(0x6F, 0x2202) /* PARTIAL DIFFERENTIAL */ \ 50004b94745Smrg UNI(0x70, 0x03C0) /* GREEK SMALL LETTER PI */ \ 50104b94745Smrg UNI(0x71, 0x03C8) /* GREEK SMALL LETTER PSI */ \ 50204b94745Smrg UNI(0x72, 0x03C1) /* GREEK SMALL LETTER RHO */ \ 50304b94745Smrg UNI(0x73, 0x03C3) /* GREEK SMALL LETTER SIGMA */ \ 50404b94745Smrg UNI(0x74, 0x03C4) /* GREEK SMALL LETTER TAU */ \ 50504b94745Smrg XXX(0x75, UNDEF) /* undefined */ \ 50604b94745Smrg UNI(0x76, 0x0192) /* LATIN SMALL LETTER F WITH HOOK Probably chosen for its meaning of "function" */ \ 50704b94745Smrg UNI(0x77, 0x03C9) /* GREEK SMALL LETTER OMEGA */ \ 50804b94745Smrg UNI(0x78, 0x03BE) /* GREEK SMALL LETTER XI */ \ 50904b94745Smrg UNI(0x79, 0x03C5) /* GREEK SMALL LETTER UPSILON */ \ 51004b94745Smrg UNI(0x7A, 0x03B6) /* GREEK SMALL LETTER ZETA */ \ 51104b94745Smrg UNI(0x7B, 0x2190) /* LEFTWARDS ARROW */ \ 51204b94745Smrg UNI(0x7C, 0x2191) /* UPWARDS ARROW */ \ 51304b94745Smrg UNI(0x7D, 0x2192) /* RIGHTWARDS ARROW */ \ 51404b94745Smrg UNI(0x7E, 0x2193) /* DOWNWARDS ARROW */ \ 51504b94745Smrg } \ 51604b94745Smrg end_CODEPAGE() 51704b94745Smrg 51804b94745Smrg#define unmap_DEC_Technical(code,dft) \ 51904b94745Smrg switch (code) { \ 52004b94745Smrg MAP(0x21, 0xD5) /* RADICAL SYMBOL BOTTOM Centred left to right, so that it joins up with 02/02 */ \ 52104b94745Smrg MAP(0x22, 0xD6) /* BOX DRAWINGS LIGHT DOWN AND RIGHT */ \ 52204b94745Smrg MAP(0x23, 0x1D) /* BOX DRAWINGS LIGHT HORIZONTAL */ \ 52304b94745Smrg MAP(0x24, 0xD7) /* TOP HALF INTEGRAL with the proviso that the stem is vertical, to join with 02/06 */ \ 52404b94745Smrg MAP(0x25, 0xD8) /* BOTTOM HALF INTEGRAL with the proviso above. */ \ 52504b94745Smrg MAP(0x26, 0x84) /* BOX DRAWINGS LIGHT VERTICAL */ \ 52604b94745Smrg MAP(0x27, 0xD9) /* LEFT SQUARE BRACKET UPPER CORNER Joins vertically to 02/06, 02/08. Doesn't join to its right. */ \ 52704b94745Smrg MAP(0x28, 0xDA) /* LEFT SQUARE BRACKET LOWER CORNER Joins vertically to 02/06, 02/07. Doesn't join to its right. */ \ 52804b94745Smrg MAP(0x29, 0xDB) /* RIGHT SQUARE BRACKET UPPER CORNER Joins vertically to 026, 02a. Doesn't join to its left. */ \ 52904b94745Smrg MAP(0x2A, 0xDC) /* RIGHT SQUARE BRACKET LOWER CORNER Joins vertically to 026, 029. Doesn't join to its left. */ \ 53004b94745Smrg MAP(0x2B, 0xDD) /* LEFT CURLY BRACKET UPPER HOOK Joins vertically to 026, 02c, 02/15. Doesn't join to its right. */ \ 53104b94745Smrg MAP(0x2C, 0xDE) /* LEFT CURLY BRACKET LOWER HOOK Joins vertically to 026, 02b, 02/15. Doesn't join to its right. */ \ 53204b94745Smrg MAP(0x2D, 0xDF) /* RIGHT CURLY BRACKET UPPER HOOK Joins vertically to 026, 02e, 03/00. Doesn't join to its left. */ \ 53304b94745Smrg MAP(0x2E, 0xE0) /* RIGHT CURLY BRACKET LOWER HOOK Joins vertically to 026, 02d, 03/00. Doesn't join to its left. */ \ 53404b94745Smrg MAP(0x2F, 0xE1) /* LEFT CURLY BRACKET MIDDLE PIECE Joins vertically to 026, 02b, 02c. */ \ 53504b94745Smrg MAP(0x30, 0xE2) /* RIGHT CURLY BRACKET MIDDLE PIECE Joins vertically to 02/06, 02d, 02e. */ \ 53604b94745Smrg MAP(0x31, 0xE3) /* Top Left Sigma. Joins to right with 02/03, 03/05. Joins diagonally below right with 03/03, 03/07. */ \ 53704b94745Smrg MAP(0x32, 0xE4) /* Bottom Left Sigma. Joins to right with 02/03, 03/06. Joins diagonally above right with 03/04, 03/07. */ \ 53804b94745Smrg MAP(0x33, 0xE5) /* Top Diagonal Sigma. Line for joining 03/01 to 03/04 or 03/07. */ \ 53904b94745Smrg MAP(0x34, 0xE6) /* Bottom Diagonal Sigma. Line for joining 03/02 to 03/03 or 03/07. */ \ 54004b94745Smrg MAP(0x35, 0xE7) /* Top Right Sigma. Joins to left with 02/03, 03/01. */ \ 54104b94745Smrg MAP(0x36, 0xE8) /* Bottom Right Sigma. Joins to left with 02/03, 03/02. */ \ 54204b94745Smrg MAP(0x37, 0xE9) /* Middle Sigma. Joins diagonally with 03/01, 03/02, 03/03, 03/04. */ \ 54304b94745Smrg MAP(0x38, 0x1B) /* undefined */ \ 54404b94745Smrg MAP(0x39, 0x1B) /* undefined */ \ 54504b94745Smrg MAP(0x3A, 0x1B) /* undefined */ \ 54604b94745Smrg MAP(0x3B, 0x1B) /* undefined */ \ 54704b94745Smrg MAP(0x3C, 0x85) /* LESS-THAN OR EQUAL TO */ \ 54804b94745Smrg MAP(0x3D, 0x87) /* NOT EQUAL TO */ \ 54904b94745Smrg MAP(0x3E, 0x86) /* GREATER-THAN OR EQUAL TO */ \ 55004b94745Smrg MAP(0x3F, 0xEA) /* INTEGRAL */ \ 55104b94745Smrg MAP(0x40, 0xEB) /* THEREFORE */ \ 55204b94745Smrg MAP(0x41, 0xEC) /* PROPORTIONAL TO */ \ 55304b94745Smrg MAP(0x42, 0xED) /* INFINITY */ \ 55404b94745Smrg MAP(0x43, 0xF7) /* DIVISION SIGN */ \ 55504b94745Smrg MAP(0x44, 0xEE) /* GREEK CAPITAL DELTA */ \ 55604b94745Smrg MAP(0x45, 0xEF) /* NABLA */ \ 55704b94745Smrg MAP(0x46, 0xAC) /* GREEK CAPITAL LETTER PHI */ \ 55804b94745Smrg MAP(0x47, 0x78) /* GREEK CAPITAL LETTER GAMMA */ \ 55904b94745Smrg MAP(0x48, 0xF0) /* TILDE OPERATOR */ \ 56004b94745Smrg MAP(0x49, 0xF1) /* ASYMPTOTICALLY EQUAL TO */ \ 56104b94745Smrg MAP(0x4A, 0x7D) /* GREEK CAPITAL LETTER THETA */ \ 56204b94745Smrg MAP(0x4B, 0xD7) /* MULTIPLICATION SIGN */ \ 56304b94745Smrg MAP(0x4C, 0xA2) /* GREEK CAPITAL LETTER LAMDA */ \ 56404b94745Smrg MAP(0x4D, 0xF2) /* LEFT RIGHT DOUBLE ARROW */ \ 56504b94745Smrg MAP(0x4E, 0xF3) /* RIGHTWARDS DOUBLE ARROW */ \ 56604b94745Smrg MAP(0x4F, 0xF4) /* IDENTICAL TO */ \ 56704b94745Smrg MAP(0x50, 0xA7) /* GREEK CAPITAL LETTER PI */ \ 56804b94745Smrg MAP(0x51, 0xAE) /* GREEK CAPITAL LETTER PSI */ \ 56904b94745Smrg MAP(0x52, 0x1B) /* undefined */ \ 57004b94745Smrg MAP(0x53, 0xA9) /* GREEK CAPITAL LETTER SIGMA */ \ 57104b94745Smrg MAP(0x54, 0x1B) /* undefined */ \ 57204b94745Smrg MAP(0x55, 0x1B) /* undefined */ \ 57304b94745Smrg MAP(0x56, 0xF5) /* SQUARE ROOT */ \ 57404b94745Smrg MAP(0x57, 0xAF) /* GREEK CAPITAL LETTER OMEGA */ \ 57504b94745Smrg MAP(0x58, 0xA5) /* GREEK CAPITAL LETTER XI */ \ 57604b94745Smrg MAP(0x59, 0xAB) /* GREEK CAPITAL LETTER UPSILON */ \ 57704b94745Smrg MAP(0x5A, 0xF6) /* SUBSET OF */ \ 57804b94745Smrg MAP(0x5B, 0xF7) /* SUPERSET OF */ \ 57904b94745Smrg MAP(0x5C, 0xF8) /* INTERSECTION */ \ 58004b94745Smrg MAP(0x5D, 0xF9) /* UNION */ \ 58104b94745Smrg MAP(0x5E, 0xFA) /* LOGICAL AND */ \ 58204b94745Smrg MAP(0x5F, 0xFB) /* LOGICAL OR */ \ 58304b94745Smrg MAP(0x60, 0xAC) /* NOT SIGN */ \ 58404b94745Smrg MAP(0x61, 0xB7) /* GREEK SMALL LETTER ALPHA */ \ 58504b94745Smrg MAP(0x62, 0xB8) /* GREEK SMALL LETTER BETA */ \ 58604b94745Smrg MAP(0x63, 0xCD) /* GREEK SMALL LETTER CHI */ \ 58704b94745Smrg MAP(0x64, 0xBA) /* GREEK SMALL LETTER DELTA */ \ 58804b94745Smrg MAP(0x65, 0xBB) /* GREEK SMALL LETTER EPSILON */ \ 58904b94745Smrg MAP(0x66, 0xCC) /* GREEK SMALL LETTER PHI */ \ 59004b94745Smrg MAP(0x67, 0xB9) /* GREEK SMALL LETTER GAMMA */ \ 59104b94745Smrg MAP(0x68, 0xBD) /* GREEK SMALL LETTER ETA */ \ 59204b94745Smrg MAP(0x69, 0xBF) /* GREEK SMALL LETTER IOTA */ \ 59304b94745Smrg MAP(0x6A, 0xBE) /* GREEK SMALL LETTER THETA */ \ 59404b94745Smrg MAP(0x6B, 0xC0) /* GREEK SMALL LETTER KAPPA */ \ 59504b94745Smrg MAP(0x6C, 0xC1) /* GREEK SMALL LETTER LAMDA */ \ 59604b94745Smrg MAP(0x6D, 0x1B) /* undefined */ \ 59704b94745Smrg MAP(0x6E, 0xC3) /* GREEK SMALL LETTER NU */ \ 59804b94745Smrg MAP(0x6F, 0xFC) /* PARTIAL DIFFERENTIAL */ \ 59904b94745Smrg MAP(0x70, 0xC6) /* GREEK SMALL LETTER PI */ \ 60004b94745Smrg MAP(0x71, 0xCE) /* GREEK SMALL LETTER PSI */ \ 60104b94745Smrg MAP(0x72, 0xC7) /* GREEK SMALL LETTER RHO */ \ 60204b94745Smrg MAP(0x73, 0xC9) /* GREEK SMALL LETTER SIGMA */ \ 60304b94745Smrg MAP(0x74, 0xCA) /* GREEK SMALL LETTER TAU */ \ 60404b94745Smrg MAP(0x75, 0x1B) /* undefined */ \ 60504b94745Smrg MAP(0x76, 0xFD) /* LATIN SMALL LETTER F WITH HOOK Probably chosen for its meaning of "function" */ \ 60604b94745Smrg MAP(0x77, 0xCF) /* GREEK SMALL LETTER OMEGA */ \ 60704b94745Smrg MAP(0x78, 0xC4) /* GREEK SMALL LETTER XI */ \ 60804b94745Smrg MAP(0x79, 0xCB) /* GREEK SMALL LETTER UPSILON */ \ 60904b94745Smrg MAP(0x7A, 0xBC) /* GREEK SMALL LETTER ZETA */ \ 61004b94745Smrg MAP(0x7B, 0xFE) /* LEFTWARDS ARROW */ \ 61104b94745Smrg MAP(0x7C, 0xFF) /* UPWARDS ARROW */ \ 61204b94745Smrg MAP(0x7D, 0x100) /* RIGHTWARDS ARROW */ \ 61304b94745Smrg MAP(0x7E, 0x02) /* DOWNWARDS ARROW */ \ 61404b94745Smrg default: dft; break; \ 61504b94745Smrg } 61604b94745Smrg 6175104ee6eSmrg#define map_JIS_Roman(code) \ 6185104ee6eSmrg begin_CODEPAGE(94) \ 6195104ee6eSmrg switch (code) { \ 6205104ee6eSmrg UNI(0x5C, 0x00A5) /* YEN SIGN */ \ 6215104ee6eSmrg UNI(0x7E, 0x203E) /* OVERLINE */ \ 6225104ee6eSmrg } \ 6235104ee6eSmrg end_CODEPAGE() 6245104ee6eSmrg 6255104ee6eSmrg#define unmap_JIS_Roman(code,dft) /* nothing */ 6265104ee6eSmrg 6275104ee6eSmrg/* 6285104ee6eSmrg * Documented as if only GR, but encoded here to allow assignment to GL and GR. 6295104ee6eSmrg */ 6305104ee6eSmrg#define map_JIS_Katakana(code) \ 6315104ee6eSmrg begin_CODEPAGE(94) \ 6325104ee6eSmrg switch (code) { \ 6335104ee6eSmrg UNI(0x21, 0xFF61) /* HALFWIDTH IDEOGRAPHIC FULL STOP */ \ 6345104ee6eSmrg UNI(0x22, 0xFF62) /* HALFWIDTH LEFT CORNER BRACKET */ \ 6355104ee6eSmrg UNI(0x23, 0xFF63) /* HALFWIDTH RIGHT CORNER BRACKET */ \ 6365104ee6eSmrg UNI(0x24, 0xFF64) /* HALFWIDTH IDEOGRAPHIC COMMA */ \ 6375104ee6eSmrg UNI(0x25, 0xFF65) /* HALFWIDTH KATAKANA MIDDLE DOT */ \ 6385104ee6eSmrg UNI(0x26, 0xFF66) /* HALFWIDTH KATAKANA LETTER WO */ \ 6395104ee6eSmrg UNI(0x27, 0xFF67) /* HALFWIDTH KATAKANA LETTER SMALL A */ \ 6405104ee6eSmrg UNI(0x28, 0xFF68) /* HALFWIDTH KATAKANA LETTER SMALL I */ \ 6415104ee6eSmrg UNI(0x29, 0xFF69) /* HALFWIDTH KATAKANA LETTER SMALL U */ \ 6425104ee6eSmrg UNI(0x2A, 0xFF6A) /* HALFWIDTH KATAKANA LETTER SMALL E */ \ 6435104ee6eSmrg UNI(0x2B, 0xFF6B) /* HALFWIDTH KATAKANA LETTER SMALL O */ \ 6445104ee6eSmrg UNI(0x2C, 0xFF6C) /* HALFWIDTH KATAKANA LETTER SMALL YA */ \ 6455104ee6eSmrg UNI(0x2D, 0xFF6D) /* HALFWIDTH KATAKANA LETTER SMALL YU */ \ 6465104ee6eSmrg UNI(0x2E, 0xFF6E) /* HALFWIDTH KATAKANA LETTER SMALL YO */ \ 6475104ee6eSmrg UNI(0x2F, 0xFF6F) /* HALFWIDTH KATAKANA LETTER SMALL TU */ \ 6485104ee6eSmrg UNI(0x30, 0xFF70) /* HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK */ \ 6495104ee6eSmrg UNI(0x31, 0xFF71) /* HALFWIDTH KATAKANA LETTER A */ \ 6505104ee6eSmrg UNI(0x32, 0xFF72) /* HALFWIDTH KATAKANA LETTER I */ \ 6515104ee6eSmrg UNI(0x33, 0xFF73) /* HALFWIDTH KATAKANA LETTER U */ \ 6525104ee6eSmrg UNI(0x34, 0xFF74) /* HALFWIDTH KATAKANA LETTER E */ \ 6535104ee6eSmrg UNI(0x35, 0xFF75) /* HALFWIDTH KATAKANA LETTER O */ \ 6545104ee6eSmrg UNI(0x36, 0xFF76) /* HALFWIDTH KATAKANA LETTER KA */ \ 6555104ee6eSmrg UNI(0x37, 0xFF77) /* HALFWIDTH KATAKANA LETTER KI */ \ 6565104ee6eSmrg UNI(0x38, 0xFF78) /* HALFWIDTH KATAKANA LETTER KU */ \ 6575104ee6eSmrg UNI(0x39, 0xFF79) /* HALFWIDTH KATAKANA LETTER KE */ \ 6585104ee6eSmrg UNI(0x3A, 0xFF7A) /* HALFWIDTH KATAKANA LETTER KO */ \ 6595104ee6eSmrg UNI(0x3B, 0xFF7B) /* HALFWIDTH KATAKANA LETTER SA */ \ 6605104ee6eSmrg UNI(0x3C, 0xFF7C) /* HALFWIDTH KATAKANA LETTER SI */ \ 6615104ee6eSmrg UNI(0x3D, 0xFF7D) /* HALFWIDTH KATAKANA LETTER SU */ \ 6625104ee6eSmrg UNI(0x3E, 0xFF7E) /* HALFWIDTH KATAKANA LETTER SE */ \ 6635104ee6eSmrg UNI(0x3F, 0xFF7F) /* HALFWIDTH KATAKANA LETTER SO */ \ 6645104ee6eSmrg UNI(0x40, 0xFF80) /* HALFWIDTH KATAKANA LETTER TA */ \ 6655104ee6eSmrg UNI(0x41, 0xFF81) /* HALFWIDTH KATAKANA LETTER TI */ \ 6665104ee6eSmrg UNI(0x42, 0xFF82) /* HALFWIDTH KATAKANA LETTER TU */ \ 6675104ee6eSmrg UNI(0x43, 0xFF83) /* HALFWIDTH KATAKANA LETTER TE */ \ 6685104ee6eSmrg UNI(0x44, 0xFF84) /* HALFWIDTH KATAKANA LETTER TO */ \ 6695104ee6eSmrg UNI(0x45, 0xFF85) /* HALFWIDTH KATAKANA LETTER NA */ \ 6705104ee6eSmrg UNI(0x46, 0xFF86) /* HALFWIDTH KATAKANA LETTER NI */ \ 6715104ee6eSmrg UNI(0x47, 0xFF87) /* HALFWIDTH KATAKANA LETTER NU */ \ 6725104ee6eSmrg UNI(0x48, 0xFF88) /* HALFWIDTH KATAKANA LETTER NE */ \ 6735104ee6eSmrg UNI(0x49, 0xFF89) /* HALFWIDTH KATAKANA LETTER NO */ \ 6745104ee6eSmrg UNI(0x4A, 0xFF8A) /* HALFWIDTH KATAKANA LETTER HA */ \ 6755104ee6eSmrg UNI(0x4B, 0xFF8B) /* HALFWIDTH KATAKANA LETTER HI */ \ 6765104ee6eSmrg UNI(0x4C, 0xFF8C) /* HALFWIDTH KATAKANA LETTER HU */ \ 6775104ee6eSmrg UNI(0x4D, 0xFF8D) /* HALFWIDTH KATAKANA LETTER HE */ \ 6785104ee6eSmrg UNI(0x4E, 0xFF8E) /* HALFWIDTH KATAKANA LETTER HO */ \ 6795104ee6eSmrg UNI(0x4F, 0xFF8F) /* HALFWIDTH KATAKANA LETTER MA */ \ 6805104ee6eSmrg UNI(0x50, 0xFF90) /* HALFWIDTH KATAKANA LETTER MI */ \ 6815104ee6eSmrg UNI(0x51, 0xFF91) /* HALFWIDTH KATAKANA LETTER MU */ \ 6825104ee6eSmrg UNI(0x52, 0xFF92) /* HALFWIDTH KATAKANA LETTER ME */ \ 6835104ee6eSmrg UNI(0x53, 0xFF93) /* HALFWIDTH KATAKANA LETTER MO */ \ 6845104ee6eSmrg UNI(0x54, 0xFF94) /* HALFWIDTH KATAKANA LETTER YA */ \ 6855104ee6eSmrg UNI(0x55, 0xFF95) /* HALFWIDTH KATAKANA LETTER YU */ \ 6865104ee6eSmrg UNI(0x56, 0xFF96) /* HALFWIDTH KATAKANA LETTER YO */ \ 6875104ee6eSmrg UNI(0x57, 0xFF97) /* HALFWIDTH KATAKANA LETTER RA */ \ 6885104ee6eSmrg UNI(0x58, 0xFF98) /* HALFWIDTH KATAKANA LETTER RI */ \ 6895104ee6eSmrg UNI(0x59, 0xFF99) /* HALFWIDTH KATAKANA LETTER RU */ \ 6905104ee6eSmrg UNI(0x5A, 0xFF9A) /* HALFWIDTH KATAKANA LETTER RE */ \ 6915104ee6eSmrg UNI(0x5B, 0xFF9B) /* HALFWIDTH KATAKANA LETTER RO */ \ 6925104ee6eSmrg UNI(0x5C, 0xFF9C) /* HALFWIDTH KATAKANA LETTER WA */ \ 6935104ee6eSmrg UNI(0x5D, 0xFF9D) /* HALFWIDTH KATAKANA LETTER N */ \ 6945104ee6eSmrg UNI(0x5E, 0xFF9E) /* HALFWIDTH KATAKANA VOICED SOUND MARK */ \ 6955104ee6eSmrg UNI(0x5F, 0xFF9F) /* HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK */ \ 6965104ee6eSmrg XXX(0x60, UNDEF) \ 6975104ee6eSmrg XXX(0x61, UNDEF) \ 6985104ee6eSmrg XXX(0x62, UNDEF) \ 6995104ee6eSmrg XXX(0x63, UNDEF) \ 7005104ee6eSmrg XXX(0x64, UNDEF) \ 7015104ee6eSmrg XXX(0x65, UNDEF) \ 7025104ee6eSmrg XXX(0x66, UNDEF) \ 7035104ee6eSmrg XXX(0x67, UNDEF) \ 7045104ee6eSmrg XXX(0x68, UNDEF) \ 7055104ee6eSmrg XXX(0x69, UNDEF) \ 7065104ee6eSmrg XXX(0x6A, UNDEF) \ 7075104ee6eSmrg XXX(0x6B, UNDEF) \ 7085104ee6eSmrg XXX(0x6C, UNDEF) \ 7095104ee6eSmrg XXX(0x6D, UNDEF) \ 7105104ee6eSmrg XXX(0x6E, UNDEF) \ 7115104ee6eSmrg XXX(0x6F, UNDEF) \ 7125104ee6eSmrg XXX(0x70, UNDEF) \ 7135104ee6eSmrg XXX(0x71, UNDEF) \ 7145104ee6eSmrg XXX(0x72, UNDEF) \ 7155104ee6eSmrg XXX(0x73, UNDEF) \ 7165104ee6eSmrg XXX(0x74, UNDEF) \ 7175104ee6eSmrg XXX(0x75, UNDEF) \ 7185104ee6eSmrg XXX(0x76, UNDEF) \ 7195104ee6eSmrg XXX(0x77, UNDEF) \ 7205104ee6eSmrg XXX(0x78, UNDEF) \ 7215104ee6eSmrg XXX(0x79, UNDEF) \ 7225104ee6eSmrg XXX(0x7A, UNDEF) \ 7235104ee6eSmrg XXX(0x7B, UNDEF) \ 7245104ee6eSmrg XXX(0x7C, UNDEF) \ 7255104ee6eSmrg XXX(0x7D, UNDEF) \ 7265104ee6eSmrg } \ 7275104ee6eSmrg end_CODEPAGE() 7285104ee6eSmrg 7295104ee6eSmrg#define unmap_JIS_Katakana(code,dft) /* nothing */ 7305104ee6eSmrg 73104b94745Smrg/* 73204b94745Smrg * ISO Latin/Cyrillic is 8859-5 73304b94745Smrg */ 73404b94745Smrg#define map_ISO_Latin_Cyrillic(code) \ 73504b94745Smrg begin_CODEPAGE(96) \ 73604b94745Smrg switch (code) { \ 73704b94745Smrg UNI(0x20, 0x00A0) /* NO-BREAK SPACE */ \ 73804b94745Smrg UNI(0x21, 0x0401) /* CYRILLIC CAPITAL LETTER IO */ \ 73904b94745Smrg UNI(0x22, 0x0402) /* CYRILLIC CAPITAL LETTER DJE */ \ 74004b94745Smrg UNI(0x23, 0x0403) /* CYRILLIC CAPITAL LETTER GJE */ \ 74104b94745Smrg UNI(0x24, 0x0404) /* CYRILLIC CAPITAL LETTER UKRAINIAN IE */ \ 74204b94745Smrg UNI(0x25, 0x0405) /* CYRILLIC CAPITAL LETTER DZE */ \ 74304b94745Smrg UNI(0x26, 0x0406) /* CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I */ \ 74404b94745Smrg UNI(0x27, 0x0407) /* CYRILLIC CAPITAL LETTER YI */ \ 74504b94745Smrg UNI(0x28, 0x0408) /* CYRILLIC CAPITAL LETTER JE */ \ 74604b94745Smrg UNI(0x29, 0x0409) /* CYRILLIC CAPITAL LETTER LJE */ \ 74704b94745Smrg UNI(0x2A, 0x040A) /* CYRILLIC CAPITAL LETTER NJE */ \ 74804b94745Smrg UNI(0x2B, 0x040B) /* CYRILLIC CAPITAL LETTER TSHE */ \ 74904b94745Smrg UNI(0x2C, 0x040C) /* CYRILLIC CAPITAL LETTER KJE */ \ 75004b94745Smrg UNI(0x2D, 0x00AD) /* SOFT HYPHEN */ \ 75104b94745Smrg UNI(0x2E, 0x040E) /* CYRILLIC CAPITAL LETTER SHORT U */ \ 75204b94745Smrg UNI(0x2F, 0x040F) /* CYRILLIC CAPITAL LETTER DZHE */ \ 75304b94745Smrg UNI(0x30, 0x0410) /* CYRILLIC CAPITAL LETTER A */ \ 75404b94745Smrg UNI(0x31, 0x0411) /* CYRILLIC CAPITAL LETTER BE */ \ 75504b94745Smrg UNI(0x32, 0x0412) /* CYRILLIC CAPITAL LETTER VE */ \ 75604b94745Smrg UNI(0x33, 0x0413) /* CYRILLIC CAPITAL LETTER GHE */ \ 75704b94745Smrg UNI(0x34, 0x0414) /* CYRILLIC CAPITAL LETTER DE */ \ 75804b94745Smrg UNI(0x35, 0x0415) /* CYRILLIC CAPITAL LETTER IE */ \ 75904b94745Smrg UNI(0x36, 0x0416) /* CYRILLIC CAPITAL LETTER ZHE */ \ 76004b94745Smrg UNI(0x37, 0x0417) /* CYRILLIC CAPITAL LETTER ZE */ \ 76104b94745Smrg UNI(0x38, 0x0418) /* CYRILLIC CAPITAL LETTER I */ \ 76204b94745Smrg UNI(0x39, 0x0419) /* CYRILLIC CAPITAL LETTER SHORT I */ \ 76304b94745Smrg UNI(0x3A, 0x041A) /* CYRILLIC CAPITAL LETTER KA */ \ 76404b94745Smrg UNI(0x3B, 0x041B) /* CYRILLIC CAPITAL LETTER EL */ \ 76504b94745Smrg UNI(0x3C, 0x041C) /* CYRILLIC CAPITAL LETTER EM */ \ 76604b94745Smrg UNI(0x3D, 0x041D) /* CYRILLIC CAPITAL LETTER EN */ \ 76704b94745Smrg UNI(0x3E, 0x041E) /* CYRILLIC CAPITAL LETTER O */ \ 76804b94745Smrg UNI(0x3F, 0x041F) /* CYRILLIC CAPITAL LETTER PE */ \ 76904b94745Smrg UNI(0x40, 0x0420) /* CYRILLIC CAPITAL LETTER ER */ \ 77004b94745Smrg UNI(0x41, 0x0421) /* CYRILLIC CAPITAL LETTER ES */ \ 77104b94745Smrg UNI(0x42, 0x0422) /* CYRILLIC CAPITAL LETTER TE */ \ 77204b94745Smrg UNI(0x43, 0x0423) /* CYRILLIC CAPITAL LETTER U */ \ 77304b94745Smrg UNI(0x44, 0x0424) /* CYRILLIC CAPITAL LETTER EF */ \ 77404b94745Smrg UNI(0x45, 0x0425) /* CYRILLIC CAPITAL LETTER HA */ \ 77504b94745Smrg UNI(0x46, 0x0426) /* CYRILLIC CAPITAL LETTER TSE */ \ 77604b94745Smrg UNI(0x47, 0x0427) /* CYRILLIC CAPITAL LETTER CHE */ \ 77704b94745Smrg UNI(0x48, 0x0428) /* CYRILLIC CAPITAL LETTER SHA */ \ 77804b94745Smrg UNI(0x49, 0x0429) /* CYRILLIC CAPITAL LETTER SHCHA */ \ 77904b94745Smrg UNI(0x4A, 0x042A) /* CYRILLIC CAPITAL LETTER HARD SIGN */ \ 78004b94745Smrg UNI(0x4B, 0x042B) /* CYRILLIC CAPITAL LETTER YERU */ \ 78104b94745Smrg UNI(0x4C, 0x042C) /* CYRILLIC CAPITAL LETTER SOFT SIGN */ \ 78204b94745Smrg UNI(0x4D, 0x042D) /* CYRILLIC CAPITAL LETTER E */ \ 78304b94745Smrg UNI(0x4E, 0x042E) /* CYRILLIC CAPITAL LETTER YU */ \ 78404b94745Smrg UNI(0x4F, 0x042F) /* CYRILLIC CAPITAL LETTER YA */ \ 78504b94745Smrg UNI(0x50, 0x0430) /* CYRILLIC SMALL LETTER A */ \ 78604b94745Smrg UNI(0x51, 0x0431) /* CYRILLIC SMALL LETTER BE */ \ 78704b94745Smrg UNI(0x52, 0x0432) /* CYRILLIC SMALL LETTER VE */ \ 78804b94745Smrg UNI(0x53, 0x0433) /* CYRILLIC SMALL LETTER GHE */ \ 78904b94745Smrg UNI(0x54, 0x0434) /* CYRILLIC SMALL LETTER DE */ \ 79004b94745Smrg UNI(0x55, 0x0435) /* CYRILLIC SMALL LETTER IE */ \ 79104b94745Smrg UNI(0x56, 0x0436) /* CYRILLIC SMALL LETTER ZHE */ \ 79204b94745Smrg UNI(0x57, 0x0437) /* CYRILLIC SMALL LETTER ZE */ \ 79304b94745Smrg UNI(0x58, 0x0438) /* CYRILLIC SMALL LETTER I */ \ 79404b94745Smrg UNI(0x59, 0x0439) /* CYRILLIC SMALL LETTER SHORT I */ \ 79504b94745Smrg UNI(0x5A, 0x043A) /* CYRILLIC SMALL LETTER KA */ \ 79604b94745Smrg UNI(0x5B, 0x043B) /* CYRILLIC SMALL LETTER EL */ \ 79704b94745Smrg UNI(0x5C, 0x043C) /* CYRILLIC SMALL LETTER EM */ \ 79804b94745Smrg UNI(0x5D, 0x043D) /* CYRILLIC SMALL LETTER EN */ \ 79904b94745Smrg UNI(0x5E, 0x043E) /* CYRILLIC SMALL LETTER O */ \ 80004b94745Smrg UNI(0x5F, 0x043F) /* CYRILLIC SMALL LETTER PE */ \ 80104b94745Smrg UNI(0x60, 0x0440) /* CYRILLIC SMALL LETTER ER */ \ 80204b94745Smrg UNI(0x61, 0x0441) /* CYRILLIC SMALL LETTER ES */ \ 80304b94745Smrg UNI(0x62, 0x0442) /* CYRILLIC SMALL LETTER TE */ \ 80404b94745Smrg UNI(0x63, 0x0443) /* CYRILLIC SMALL LETTER U */ \ 80504b94745Smrg UNI(0x64, 0x0444) /* CYRILLIC SMALL LETTER EF */ \ 80604b94745Smrg UNI(0x65, 0x0445) /* CYRILLIC SMALL LETTER HA */ \ 80704b94745Smrg UNI(0x66, 0x0446) /* CYRILLIC SMALL LETTER TSE */ \ 80804b94745Smrg UNI(0x67, 0x0447) /* CYRILLIC SMALL LETTER CHE */ \ 80904b94745Smrg UNI(0x68, 0x0448) /* CYRILLIC SMALL LETTER SHA */ \ 81004b94745Smrg UNI(0x69, 0x0449) /* CYRILLIC SMALL LETTER SHCHA */ \ 81104b94745Smrg UNI(0x6A, 0x044A) /* CYRILLIC SMALL LETTER HARD SIGN */ \ 81204b94745Smrg UNI(0x6B, 0x044B) /* CYRILLIC SMALL LETTER YERU */ \ 81304b94745Smrg UNI(0x6C, 0x044C) /* CYRILLIC SMALL LETTER SOFT SIGN */ \ 81404b94745Smrg UNI(0x6D, 0x044D) /* CYRILLIC SMALL LETTER E */ \ 81504b94745Smrg UNI(0x6E, 0x044E) /* CYRILLIC SMALL LETTER YU */ \ 81604b94745Smrg UNI(0x6F, 0x044F) /* CYRILLIC SMALL LETTER YA */ \ 81704b94745Smrg UNI(0x70, 0x2116) /* NUMERO SIGN */ \ 81804b94745Smrg UNI(0x71, 0x0451) /* CYRILLIC SMALL LETTER IO */ \ 81904b94745Smrg UNI(0x72, 0x0452) /* CYRILLIC SMALL LETTER DJE */ \ 82004b94745Smrg UNI(0x73, 0x0453) /* CYRILLIC SMALL LETTER GJE */ \ 82104b94745Smrg UNI(0x74, 0x0454) /* CYRILLIC SMALL LETTER UKRAINIAN IE */ \ 82204b94745Smrg UNI(0x75, 0x0455) /* CYRILLIC SMALL LETTER DZE */ \ 82304b94745Smrg UNI(0x76, 0x0456) /* CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I */ \ 82404b94745Smrg UNI(0x77, 0x0457) /* CYRILLIC SMALL LETTER YI */ \ 82504b94745Smrg UNI(0x78, 0x0458) /* CYRILLIC SMALL LETTER JE */ \ 82604b94745Smrg UNI(0x79, 0x0459) /* CYRILLIC SMALL LETTER LJE */ \ 82704b94745Smrg UNI(0x7A, 0x045A) /* CYRILLIC SMALL LETTER NJE */ \ 82804b94745Smrg UNI(0x7B, 0x045B) /* CYRILLIC SMALL LETTER TSHE */ \ 82904b94745Smrg UNI(0x7C, 0x045C) /* CYRILLIC SMALL LETTER KJE */ \ 83004b94745Smrg UNI(0x7D, 0x00A7) /* SECTION SIGN */ \ 83104b94745Smrg UNI(0x7E, 0x045E) /* CYRILLIC SMALL LETTER SHORT U */ \ 83204b94745Smrg UNI(0x7F, 0x045F) /* CYRILLIC SMALL LETTER DZHE */ \ 83304b94745Smrg } \ 83404b94745Smrg end_CODEPAGE() 83504b94745Smrg 83604b94745Smrg#define unmap_ISO_Latin_Cyrillic(code,dft) \ 83704b94745Smrg switch (code) { \ 83804b94745Smrg MAP(0x21, 0x03) /* CYRILLIC CAPITAL LETTER IO */ \ 83904b94745Smrg MAP(0x22, 0x04) /* CYRILLIC CAPITAL LETTER DJE */ \ 84004b94745Smrg MAP(0x23, 0x05) /* CYRILLIC CAPITAL LETTER GJE */ \ 84104b94745Smrg MAP(0x24, 0x06) /* CYRILLIC CAPITAL LETTER UKRAINIAN IE */ \ 84204b94745Smrg MAP(0x25, 0x07) /* CYRILLIC CAPITAL LETTER DZE */ \ 84304b94745Smrg MAP(0x26, 0x08) /* CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I */ \ 84404b94745Smrg MAP(0x27, 0x09) /* CYRILLIC CAPITAL LETTER YI */ \ 84504b94745Smrg MAP(0x28, 0x0A) /* CYRILLIC CAPITAL LETTER JE */ \ 84604b94745Smrg MAP(0x29, 0x0B) /* CYRILLIC CAPITAL LETTER LJE */ \ 84704b94745Smrg MAP(0x2A, 0x0C) /* CYRILLIC CAPITAL LETTER NJE */ \ 84804b94745Smrg MAP(0x2B, 0x0D) /* CYRILLIC CAPITAL LETTER TSHE */ \ 84904b94745Smrg MAP(0x2C, 0x0E) /* CYRILLIC CAPITAL LETTER KJE */ \ 85004b94745Smrg MAP(0x2E, 0x0F) /* CYRILLIC CAPITAL LETTER SHORT U */ \ 85104b94745Smrg MAP(0x2F, 0x10) /* CYRILLIC CAPITAL LETTER DZHE */ \ 85204b94745Smrg MAP(0x30, 0x11) /* CYRILLIC CAPITAL LETTER A */ \ 85304b94745Smrg MAP(0x31, 0x12) /* CYRILLIC CAPITAL LETTER BE */ \ 85404b94745Smrg MAP(0x32, 0x13) /* CYRILLIC CAPITAL LETTER VE */ \ 85504b94745Smrg MAP(0x33, 0x14) /* CYRILLIC CAPITAL LETTER GHE */ \ 85604b94745Smrg MAP(0x34, 0x15) /* CYRILLIC CAPITAL LETTER DE */ \ 85704b94745Smrg MAP(0x35, 0x16) /* CYRILLIC CAPITAL LETTER IE */ \ 85804b94745Smrg MAP(0x36, 0x17) /* CYRILLIC CAPITAL LETTER ZHE */ \ 85904b94745Smrg MAP(0x37, 0x18) /* CYRILLIC CAPITAL LETTER ZE */ \ 86004b94745Smrg MAP(0x38, 0x19) /* CYRILLIC CAPITAL LETTER I */ \ 86104b94745Smrg MAP(0x39, 0x1A) /* CYRILLIC CAPITAL LETTER SHORT I */ \ 86204b94745Smrg MAP(0x3A, 0x1B) /* CYRILLIC CAPITAL LETTER KA */ \ 86304b94745Smrg MAP(0x3B, 0x1C) /* CYRILLIC CAPITAL LETTER EL */ \ 86404b94745Smrg MAP(0x3C, 0x1D) /* CYRILLIC CAPITAL LETTER EM */ \ 86504b94745Smrg MAP(0x3D, 0x1E) /* CYRILLIC CAPITAL LETTER EN */ \ 86604b94745Smrg MAP(0x3E, 0x1F) /* CYRILLIC CAPITAL LETTER O */ \ 86704b94745Smrg MAP(0x3F, 0x20) /* CYRILLIC CAPITAL LETTER PE */ \ 86804b94745Smrg MAP(0x40, 0x21) /* CYRILLIC CAPITAL LETTER ER */ \ 86904b94745Smrg MAP(0x41, 0x22) /* CYRILLIC CAPITAL LETTER ES */ \ 87004b94745Smrg MAP(0x42, 0x23) /* CYRILLIC CAPITAL LETTER TE */ \ 87104b94745Smrg MAP(0x43, 0x24) /* CYRILLIC CAPITAL LETTER U */ \ 87204b94745Smrg MAP(0x44, 0x25) /* CYRILLIC CAPITAL LETTER EF */ \ 87304b94745Smrg MAP(0x45, 0x26) /* CYRILLIC CAPITAL LETTER HA */ \ 87404b94745Smrg MAP(0x46, 0x27) /* CYRILLIC CAPITAL LETTER TSE */ \ 87504b94745Smrg MAP(0x47, 0x28) /* CYRILLIC CAPITAL LETTER CHE */ \ 87604b94745Smrg MAP(0x48, 0x29) /* CYRILLIC CAPITAL LETTER SHA */ \ 87704b94745Smrg MAP(0x49, 0x2A) /* CYRILLIC CAPITAL LETTER SHCHA */ \ 87804b94745Smrg MAP(0x4A, 0x2B) /* CYRILLIC CAPITAL LETTER HARD SIGN */ \ 87904b94745Smrg MAP(0x4B, 0x2C) /* CYRILLIC CAPITAL LETTER YERU */ \ 88004b94745Smrg MAP(0x4C, 0x2D) /* CYRILLIC CAPITAL LETTER SOFT SIGN */ \ 88104b94745Smrg MAP(0x4D, 0x2E) /* CYRILLIC CAPITAL LETTER E */ \ 88204b94745Smrg MAP(0x4E, 0x2F) /* CYRILLIC CAPITAL LETTER YU */ \ 88304b94745Smrg MAP(0x4F, 0x30) /* CYRILLIC CAPITAL LETTER YA */ \ 88404b94745Smrg MAP(0x50, 0x31) /* CYRILLIC SMALL LETTER A */ \ 88504b94745Smrg MAP(0x51, 0x32) /* CYRILLIC SMALL LETTER BE */ \ 88604b94745Smrg MAP(0x52, 0x33) /* CYRILLIC SMALL LETTER VE */ \ 88704b94745Smrg MAP(0x53, 0x34) /* CYRILLIC SMALL LETTER GHE */ \ 88804b94745Smrg MAP(0x54, 0x35) /* CYRILLIC SMALL LETTER DE */ \ 88904b94745Smrg MAP(0x55, 0x36) /* CYRILLIC SMALL LETTER IE */ \ 89004b94745Smrg MAP(0x56, 0x37) /* CYRILLIC SMALL LETTER ZHE */ \ 89104b94745Smrg MAP(0x57, 0x38) /* CYRILLIC SMALL LETTER ZE */ \ 89204b94745Smrg MAP(0x58, 0x39) /* CYRILLIC SMALL LETTER I */ \ 89304b94745Smrg MAP(0x59, 0x3A) /* CYRILLIC SMALL LETTER SHORT I */ \ 89404b94745Smrg MAP(0x5A, 0x3B) /* CYRILLIC SMALL LETTER KA */ \ 89504b94745Smrg MAP(0x5B, 0x3C) /* CYRILLIC SMALL LETTER EL */ \ 89604b94745Smrg MAP(0x5C, 0x3D) /* CYRILLIC SMALL LETTER EM */ \ 89704b94745Smrg MAP(0x5D, 0x3E) /* CYRILLIC SMALL LETTER EN */ \ 89804b94745Smrg MAP(0x5E, 0x3F) /* CYRILLIC SMALL LETTER O */ \ 89904b94745Smrg MAP(0x5F, 0x40) /* CYRILLIC SMALL LETTER PE */ \ 90004b94745Smrg MAP(0x60, 0x41) /* CYRILLIC SMALL LETTER ER */ \ 90104b94745Smrg MAP(0x61, 0x42) /* CYRILLIC SMALL LETTER ES */ \ 90204b94745Smrg MAP(0x62, 0x43) /* CYRILLIC SMALL LETTER TE */ \ 90304b94745Smrg MAP(0x63, 0x44) /* CYRILLIC SMALL LETTER U */ \ 90404b94745Smrg MAP(0x64, 0x45) /* CYRILLIC SMALL LETTER EF */ \ 90504b94745Smrg MAP(0x65, 0x46) /* CYRILLIC SMALL LETTER HA */ \ 90604b94745Smrg MAP(0x66, 0x47) /* CYRILLIC SMALL LETTER TSE */ \ 90704b94745Smrg MAP(0x67, 0x48) /* CYRILLIC SMALL LETTER CHE */ \ 90804b94745Smrg MAP(0x68, 0x49) /* CYRILLIC SMALL LETTER SHA */ \ 90904b94745Smrg MAP(0x69, 0x4A) /* CYRILLIC SMALL LETTER SHCHA */ \ 91004b94745Smrg MAP(0x6A, 0x4B) /* CYRILLIC SMALL LETTER HARD SIGN */ \ 91104b94745Smrg MAP(0x6B, 0x4C) /* CYRILLIC SMALL LETTER YERU */ \ 91204b94745Smrg MAP(0x6C, 0x4D) /* CYRILLIC SMALL LETTER SOFT SIGN */ \ 91304b94745Smrg MAP(0x6D, 0x4E) /* CYRILLIC SMALL LETTER E */ \ 91404b94745Smrg MAP(0x6E, 0x4F) /* CYRILLIC SMALL LETTER YU */ \ 91504b94745Smrg MAP(0x6F, 0x50) /* CYRILLIC SMALL LETTER YA */ \ 91604b94745Smrg MAP(0x70, 0x51) /* NUMERO SIGN */ \ 91704b94745Smrg MAP(0x71, 0x52) /* CYRILLIC SMALL LETTER IO */ \ 91804b94745Smrg MAP(0x72, 0x53) /* CYRILLIC SMALL LETTER DJE */ \ 91904b94745Smrg MAP(0x73, 0x54) /* CYRILLIC SMALL LETTER GJE */ \ 92004b94745Smrg MAP(0x74, 0x55) /* CYRILLIC SMALL LETTER UKRAINIAN IE */ \ 92104b94745Smrg MAP(0x75, 0x56) /* CYRILLIC SMALL LETTER DZE */ \ 92204b94745Smrg MAP(0x76, 0x57) /* CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I */ \ 92304b94745Smrg MAP(0x77, 0x58) /* CYRILLIC SMALL LETTER YI */ \ 92404b94745Smrg MAP(0x78, 0x59) /* CYRILLIC SMALL LETTER JE */ \ 92504b94745Smrg MAP(0x79, 0x5A) /* CYRILLIC SMALL LETTER LJE */ \ 92604b94745Smrg MAP(0x7A, 0x5B) /* CYRILLIC SMALL LETTER NJE */ \ 92704b94745Smrg MAP(0x7B, 0x5C) /* CYRILLIC SMALL LETTER TSHE */ \ 92804b94745Smrg MAP(0x7C, 0x5D) /* CYRILLIC SMALL LETTER KJE */ \ 92904b94745Smrg MAP(0x7D, 0xA7) /* SECTION SIGN */ \ 93004b94745Smrg MAP(0x7E, 0x5E) /* CYRILLIC SMALL LETTER SHORT U */ \ 93104b94745Smrg MAP(0x7F, 0x5F) /* CYRILLIC SMALL LETTER DZHE */ \ 93204b94745Smrg default: dft; break; \ 93304b94745Smrg } 93404b94745Smrg 93504b94745Smrg/* 93604b94745Smrg * ISO Greek is 8859-7 93704b94745Smrg */ 93804b94745Smrg#define map_ISO_Greek_Supp(code) \ 93904b94745Smrg begin_CODEPAGE(96) \ 94004b94745Smrg switch (code) { \ 94104b94745Smrg UNI(0x20, 0x00A0) /* NO-BREAK SPACE */ \ 94204b94745Smrg UNI(0x21, 0x2018) /* LEFT SINGLE QUOTATION MARK */ \ 94304b94745Smrg UNI(0x22, 0x2019) /* RIGHT SINGLE QUOTATION MARK */ \ 94404b94745Smrg UNI(0x23, 0x00A3) /* POUND SIGN */ \ 94504b94745Smrg XXX(0x24, UNDEF) /* undefined */ \ 94604b94745Smrg XXX(0x25, UNDEF) /* undefined */ \ 94704b94745Smrg UNI(0x26, 0x00A6) /* BROKEN BAR */ \ 94804b94745Smrg UNI(0x27, 0x00A7) /* SECTION SIGN */ \ 94904b94745Smrg UNI(0x28, 0x00A8) /* DIAERESIS */ \ 95004b94745Smrg UNI(0x29, 0x00A9) /* COPYRIGHT SIGN */ \ 95104b94745Smrg XXX(0x2A, UNDEF) /* undefined */ \ 95204b94745Smrg UNI(0x2B, 0x00AB) /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 95304b94745Smrg UNI(0x2C, 0x00AC) /* NOT SIGN */ \ 95404b94745Smrg UNI(0x2D, 0x00AD) /* SOFT HYPHEN */ \ 95504b94745Smrg XXX(0x2E, UNDEF) /* undefined */ \ 95604b94745Smrg UNI(0x2F, 0x2015) /* HORIZONTAL BAR */ \ 95704b94745Smrg UNI(0x30, 0x00B0) /* DEGREE SIGN */ \ 95804b94745Smrg UNI(0x31, 0x00B1) /* PLUS-MINUS SIGN */ \ 95904b94745Smrg UNI(0x32, 0x00B2) /* SUPERSCRIPT TWO */ \ 96004b94745Smrg UNI(0x33, 0x00B3) /* SUPERSCRIPT THREE */ \ 96104b94745Smrg UNI(0x34, 0x0384) /* GREEK TONOS */ \ 96204b94745Smrg UNI(0x35, 0x0385) /* GREEK DIALYTIKA TONOS */ \ 96304b94745Smrg UNI(0x36, 0x0386) /* GREEK CAPITAL LETTER ALPHA WITH TONOS */ \ 96404b94745Smrg UNI(0x37, 0x00B7) /* MIDDLE DOT */ \ 96504b94745Smrg UNI(0x38, 0x0388) /* GREEK CAPITAL LETTER EPSILON WITH TONOS */ \ 96604b94745Smrg UNI(0x39, 0x0389) /* GREEK CAPITAL LETTER ETA WITH TONOS */ \ 96704b94745Smrg UNI(0x3A, 0x038A) /* GREEK CAPITAL LETTER IOTA WITH TONOS */ \ 96804b94745Smrg UNI(0x3B, 0x00BB) /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 96904b94745Smrg UNI(0x3C, 0x038C) /* GREEK CAPITAL LETTER OMICRON WITH TONOS */ \ 97004b94745Smrg UNI(0x3D, 0x00BD) /* VULGAR FRACTION ONE HALF */ \ 97104b94745Smrg UNI(0x3E, 0x038E) /* GREEK CAPITAL LETTER UPSILON WITH TONOS */ \ 97204b94745Smrg UNI(0x3F, 0x038F) /* GREEK CAPITAL LETTER OMEGA WITH TONOS */ \ 97304b94745Smrg UNI(0x40, 0x0390) /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS */ \ 97404b94745Smrg UNI(0x41, 0x0391) /* GREEK CAPITAL LETTER ALPHA */ \ 97504b94745Smrg UNI(0x42, 0x0392) /* GREEK CAPITAL LETTER BETA */ \ 97604b94745Smrg UNI(0x43, 0x0393) /* GREEK CAPITAL LETTER GAMMA */ \ 97704b94745Smrg UNI(0x44, 0x0394) /* GREEK CAPITAL LETTER DELTA */ \ 97804b94745Smrg UNI(0x45, 0x0395) /* GREEK CAPITAL LETTER EPSILON */ \ 97904b94745Smrg UNI(0x46, 0x0396) /* GREEK CAPITAL LETTER ZETA */ \ 98004b94745Smrg UNI(0x47, 0x0397) /* GREEK CAPITAL LETTER ETA */ \ 98104b94745Smrg UNI(0x48, 0x0398) /* GREEK CAPITAL LETTER THETA */ \ 98204b94745Smrg UNI(0x49, 0x0399) /* GREEK CAPITAL LETTER IOTA */ \ 98304b94745Smrg UNI(0x4A, 0x039A) /* GREEK CAPITAL LETTER KAPPA */ \ 98404b94745Smrg UNI(0x4B, 0x039B) /* GREEK CAPITAL LETTER LAMDA */ \ 98504b94745Smrg UNI(0x4C, 0x039C) /* GREEK CAPITAL LETTER MU */ \ 98604b94745Smrg UNI(0x4D, 0x039D) /* GREEK CAPITAL LETTER NU */ \ 98704b94745Smrg UNI(0x4E, 0x039E) /* GREEK CAPITAL LETTER XI */ \ 98804b94745Smrg UNI(0x4F, 0x039F) /* GREEK CAPITAL LETTER OMICRON */ \ 98904b94745Smrg UNI(0x50, 0x03A0) /* GREEK CAPITAL LETTER PI */ \ 99004b94745Smrg UNI(0x51, 0x03A1) /* GREEK CAPITAL LETTER RHO */ \ 99104b94745Smrg XXX(0x52, UNDEF) /* undefined */ \ 99204b94745Smrg UNI(0x53, 0x03A3) /* GREEK CAPITAL LETTER SIGMA */ \ 99304b94745Smrg UNI(0x54, 0x03A4) /* GREEK CAPITAL LETTER TAU */ \ 99404b94745Smrg UNI(0x55, 0x03A5) /* GREEK CAPITAL LETTER UPSILON */ \ 99504b94745Smrg UNI(0x56, 0x03A6) /* GREEK CAPITAL LETTER PHI */ \ 99604b94745Smrg UNI(0x57, 0x03A7) /* GREEK CAPITAL LETTER CHI */ \ 99704b94745Smrg UNI(0x58, 0x03A8) /* GREEK CAPITAL LETTER PSI */ \ 99804b94745Smrg UNI(0x59, 0x03A9) /* GREEK CAPITAL LETTER OMEGA */ \ 99904b94745Smrg UNI(0x5A, 0x03AA) /* GREEK CAPITAL LETTER IOTA WITH DIALYTIKA */ \ 100004b94745Smrg UNI(0x5B, 0x03AB) /* GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA */ \ 100104b94745Smrg UNI(0x5C, 0x03AC) /* GREEK SMALL LETTER ALPHA WITH TONOS */ \ 100204b94745Smrg UNI(0x5D, 0x03AD) /* GREEK SMALL LETTER EPSILON WITH TONOS */ \ 100304b94745Smrg UNI(0x5E, 0x03AE) /* GREEK SMALL LETTER ETA WITH TONOS */ \ 100404b94745Smrg UNI(0x5F, 0x03AF) /* GREEK SMALL LETTER IOTA WITH TONOS */ \ 100504b94745Smrg UNI(0x60, 0x03B0) /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS */ \ 100604b94745Smrg UNI(0x61, 0x03B1) /* GREEK SMALL LETTER ALPHA */ \ 100704b94745Smrg UNI(0x62, 0x03B2) /* GREEK SMALL LETTER BETA */ \ 100804b94745Smrg UNI(0x63, 0x03B3) /* GREEK SMALL LETTER GAMMA */ \ 100904b94745Smrg UNI(0x64, 0x03B4) /* GREEK SMALL LETTER DELTA */ \ 101004b94745Smrg UNI(0x65, 0x03B5) /* GREEK SMALL LETTER EPSILON */ \ 101104b94745Smrg UNI(0x66, 0x03B6) /* GREEK SMALL LETTER ZETA */ \ 101204b94745Smrg UNI(0x67, 0x03B7) /* GREEK SMALL LETTER ETA */ \ 101304b94745Smrg UNI(0x68, 0x03B8) /* GREEK SMALL LETTER THETA */ \ 101404b94745Smrg UNI(0x69, 0x03B9) /* GREEK SMALL LETTER IOTA */ \ 101504b94745Smrg UNI(0x6A, 0x03BA) /* GREEK SMALL LETTER KAPPA */ \ 101604b94745Smrg UNI(0x6B, 0x03BB) /* GREEK SMALL LETTER LAMDA */ \ 101704b94745Smrg UNI(0x6C, 0x03BC) /* GREEK SMALL LETTER MU */ \ 101804b94745Smrg UNI(0x6D, 0x03BD) /* GREEK SMALL LETTER NU */ \ 101904b94745Smrg UNI(0x6E, 0x03BE) /* GREEK SMALL LETTER XI */ \ 102004b94745Smrg UNI(0x6F, 0x03BF) /* GREEK SMALL LETTER OMICRON */ \ 102104b94745Smrg UNI(0x70, 0x03C0) /* GREEK SMALL LETTER PI */ \ 102204b94745Smrg UNI(0x71, 0x03C1) /* GREEK SMALL LETTER RHO */ \ 102304b94745Smrg UNI(0x72, 0x03C2) /* GREEK SMALL LETTER FINAL SIGMA */ \ 102404b94745Smrg UNI(0x73, 0x03C3) /* GREEK SMALL LETTER SIGMA */ \ 102504b94745Smrg UNI(0x74, 0x03C4) /* GREEK SMALL LETTER TAU */ \ 102604b94745Smrg UNI(0x75, 0x03C5) /* GREEK SMALL LETTER UPSILON */ \ 102704b94745Smrg UNI(0x76, 0x03C6) /* GREEK SMALL LETTER PHI */ \ 102804b94745Smrg UNI(0x77, 0x03C7) /* GREEK SMALL LETTER CHI */ \ 102904b94745Smrg UNI(0x78, 0x03C8) /* GREEK SMALL LETTER PSI */ \ 103004b94745Smrg UNI(0x79, 0x03C9) /* GREEK SMALL LETTER OMEGA */ \ 103104b94745Smrg UNI(0x7A, 0x03CA) /* GREEK SMALL LETTER IOTA WITH DIALYTIKA */ \ 103204b94745Smrg UNI(0x7B, 0x03CB) /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA */ \ 103304b94745Smrg UNI(0x7C, 0x03CC) /* GREEK SMALL LETTER OMICRON WITH TONOS */ \ 103404b94745Smrg UNI(0x7D, 0x03CD) /* GREEK SMALL LETTER UPSILON WITH TONOS */ \ 103504b94745Smrg UNI(0x7E, 0x03CE) /* GREEK SMALL LETTER OMEGA WITH TONOS */ \ 103604b94745Smrg XXX(0x7F, UNDEF) /* undefined */ \ 103704b94745Smrg } \ 103804b94745Smrg end_CODEPAGE() 103904b94745Smrg 104004b94745Smrg#define unmap_ISO_Greek_Supp(code,dft) \ 104104b94745Smrg switch (code) { \ 104204b94745Smrg MAP(0x21, 0x60) /* LEFT SINGLE QUOTATION MARK */ \ 104304b94745Smrg MAP(0x22, 0x27) /* RIGHT SINGLE QUOTATION MARK */ \ 104404b94745Smrg MAP(0x24, 0x1B) /* undefined */ \ 104504b94745Smrg MAP(0x25, 0x1B) /* undefined */ \ 104604b94745Smrg MAP(0x2A, 0x1B) /* undefined */ \ 104704b94745Smrg MAP(0x2E, 0x1B) /* undefined */ \ 104804b94745Smrg MAP(0x2F, 0x2D) /* HORIZONTAL BAR */ \ 104904b94745Smrg MAP(0x34, 0x96) /* GREEK TONOS */ \ 105004b94745Smrg MAP(0x35, 0x95) /* GREEK DIALYTIKA TONOS */ \ 105104b94745Smrg MAP(0x36, 0x6E) /* GREEK CAPITAL LETTER ALPHA WITH TONOS */ \ 105204b94745Smrg MAP(0x38, 0x6F) /* GREEK CAPITAL LETTER EPSILON WITH TONOS */ \ 105304b94745Smrg MAP(0x39, 0x70) /* GREEK CAPITAL LETTER ETA WITH TONOS */ \ 105404b94745Smrg MAP(0x3A, 0x71) /* GREEK CAPITAL LETTER IOTA WITH TONOS */ \ 105504b94745Smrg MAP(0x3C, 0x72) /* GREEK CAPITAL LETTER OMICRON WITH TONOS */ \ 105604b94745Smrg MAP(0x3E, 0x73) /* GREEK CAPITAL LETTER UPSILON WITH TONOS */ \ 105704b94745Smrg MAP(0x3F, 0x74) /* GREEK CAPITAL LETTER OMEGA WITH TONOS */ \ 105804b94745Smrg MAP(0x40, 0x75) /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS */ \ 105904b94745Smrg MAP(0x41, 0x76) /* GREEK CAPITAL LETTER ALPHA */ \ 106004b94745Smrg MAP(0x42, 0x77) /* GREEK CAPITAL LETTER BETA */ \ 106104b94745Smrg MAP(0x43, 0x78) /* GREEK CAPITAL LETTER GAMMA */ \ 106204b94745Smrg MAP(0x44, 0x79) /* GREEK CAPITAL LETTER DELTA */ \ 106304b94745Smrg MAP(0x45, 0x7A) /* GREEK CAPITAL LETTER EPSILON */ \ 106404b94745Smrg MAP(0x46, 0x7B) /* GREEK CAPITAL LETTER ZETA */ \ 106504b94745Smrg MAP(0x47, 0x7C) /* GREEK CAPITAL LETTER ETA */ \ 106604b94745Smrg MAP(0x48, 0x7D) /* GREEK CAPITAL LETTER THETA */ \ 106704b94745Smrg MAP(0x49, 0x7E) /* GREEK CAPITAL LETTER IOTA */ \ 106804b94745Smrg MAP(0x4A, 0x7F) /* GREEK CAPITAL LETTER KAPPA */ \ 106904b94745Smrg MAP(0x4B, 0xA2) /* GREEK CAPITAL LETTER LAMDA */ \ 107004b94745Smrg MAP(0x4C, 0xA3) /* GREEK CAPITAL LETTER MU */ \ 107104b94745Smrg MAP(0x4D, 0xA4) /* GREEK CAPITAL LETTER NU */ \ 107204b94745Smrg MAP(0x4E, 0xA5) /* GREEK CAPITAL LETTER XI */ \ 107304b94745Smrg MAP(0x4F, 0xA6) /* GREEK CAPITAL LETTER OMICRON */ \ 107404b94745Smrg MAP(0x50, 0xA7) /* GREEK CAPITAL LETTER PI */ \ 107504b94745Smrg MAP(0x51, 0xA8) /* GREEK CAPITAL LETTER RHO */ \ 107604b94745Smrg MAP(0x52, 0x1B) /* undefined */ \ 107704b94745Smrg MAP(0x53, 0xA9) /* GREEK CAPITAL LETTER SIGMA */ \ 107804b94745Smrg MAP(0x54, 0xAA) /* GREEK CAPITAL LETTER TAU */ \ 107904b94745Smrg MAP(0x55, 0xAB) /* GREEK CAPITAL LETTER UPSILON */ \ 108004b94745Smrg MAP(0x56, 0xAC) /* GREEK CAPITAL LETTER PHI */ \ 108104b94745Smrg MAP(0x57, 0xAD) /* GREEK CAPITAL LETTER CHI */ \ 108204b94745Smrg MAP(0x58, 0xAE) /* GREEK CAPITAL LETTER PSI */ \ 108304b94745Smrg MAP(0x59, 0xAF) /* GREEK CAPITAL LETTER OMEGA */ \ 108404b94745Smrg MAP(0x5A, 0xB0) /* GREEK CAPITAL LETTER IOTA WITH DIALYTIKA */ \ 108504b94745Smrg MAP(0x5B, 0xB1) /* GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA */ \ 108604b94745Smrg MAP(0x5C, 0xB2) /* GREEK SMALL LETTER ALPHA WITH TONOS */ \ 108704b94745Smrg MAP(0x5D, 0xB3) /* GREEK SMALL LETTER EPSILON WITH TONOS */ \ 108804b94745Smrg MAP(0x5E, 0xB4) /* GREEK SMALL LETTER ETA WITH TONOS */ \ 108904b94745Smrg MAP(0x5F, 0xB5) /* GREEK SMALL LETTER IOTA WITH TONOS */ \ 109004b94745Smrg MAP(0x60, 0xB6) /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS */ \ 109104b94745Smrg MAP(0x61, 0xB7) /* GREEK SMALL LETTER ALPHA */ \ 109204b94745Smrg MAP(0x62, 0xB8) /* GREEK SMALL LETTER BETA */ \ 109304b94745Smrg MAP(0x63, 0xB9) /* GREEK SMALL LETTER GAMMA */ \ 109404b94745Smrg MAP(0x64, 0xBA) /* GREEK SMALL LETTER DELTA */ \ 109504b94745Smrg MAP(0x65, 0xBB) /* GREEK SMALL LETTER EPSILON */ \ 109604b94745Smrg MAP(0x66, 0xBC) /* GREEK SMALL LETTER ZETA */ \ 109704b94745Smrg MAP(0x67, 0xBD) /* GREEK SMALL LETTER ETA */ \ 109804b94745Smrg MAP(0x68, 0xBE) /* GREEK SMALL LETTER THETA */ \ 109904b94745Smrg MAP(0x69, 0xBF) /* GREEK SMALL LETTER IOTA */ \ 110004b94745Smrg MAP(0x6A, 0xC0) /* GREEK SMALL LETTER KAPPA */ \ 110104b94745Smrg MAP(0x6B, 0xC1) /* GREEK SMALL LETTER LAMDA */ \ 110204b94745Smrg MAP(0x6C, 0xC2) /* GREEK SMALL LETTER MU */ \ 110304b94745Smrg MAP(0x6D, 0xC3) /* GREEK SMALL LETTER NU */ \ 110404b94745Smrg MAP(0x6E, 0xC4) /* GREEK SMALL LETTER XI */ \ 110504b94745Smrg MAP(0x6F, 0xC5) /* GREEK SMALL LETTER OMICRON */ \ 110604b94745Smrg MAP(0x70, 0xC6) /* GREEK SMALL LETTER PI */ \ 110704b94745Smrg MAP(0x71, 0xC7) /* GREEK SMALL LETTER RHO */ \ 110804b94745Smrg MAP(0x72, 0xC8) /* GREEK SMALL LETTER FINAL SIGMA */ \ 110904b94745Smrg MAP(0x73, 0xC9) /* GREEK SMALL LETTER SIGMA */ \ 111004b94745Smrg MAP(0x74, 0xCA) /* GREEK SMALL LETTER TAU */ \ 111104b94745Smrg MAP(0x75, 0xCB) /* GREEK SMALL LETTER UPSILON */ \ 111204b94745Smrg MAP(0x76, 0xCC) /* GREEK SMALL LETTER PHI */ \ 111304b94745Smrg MAP(0x77, 0xCD) /* GREEK SMALL LETTER CHI */ \ 111404b94745Smrg MAP(0x78, 0xCE) /* GREEK SMALL LETTER PSI */ \ 111504b94745Smrg MAP(0x79, 0xCF) /* GREEK SMALL LETTER OMEGA */ \ 111604b94745Smrg MAP(0x7A, 0xD0) /* GREEK SMALL LETTER IOTA WITH DIALYTIKA */ \ 111704b94745Smrg MAP(0x7B, 0xD1) /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA */ \ 111804b94745Smrg MAP(0x7C, 0xD2) /* GREEK SMALL LETTER OMICRON WITH TONOS */ \ 111904b94745Smrg MAP(0x7D, 0xD3) /* GREEK SMALL LETTER UPSILON WITH TONOS */ \ 112004b94745Smrg MAP(0x7E, 0xD4) /* GREEK SMALL LETTER OMEGA WITH TONOS */ \ 112104b94745Smrg MAP(0x7F, 0x1B) /* undefined */ \ 112204b94745Smrg default: dft; break; \ 112304b94745Smrg } 112404b94745Smrg 112504b94745Smrg/* 112604b94745Smrg * figure A-23 "ISO Latin-Hebrew Supplemental Character Set" 112704b94745Smrg */ 112804b94745Smrg#define map_ISO_Hebrew(code) \ 112904b94745Smrg begin_CODEPAGE(96) \ 113004b94745Smrg switch (code) { \ 113104b94745Smrg UNI(0x20, 0x00A0) /* NO-BREAK SPACE */ \ 113204b94745Smrg XXX(0x21, UNDEF) /* undefined */ \ 113304b94745Smrg UNI(0x22, 0x00A2) /* CENT SIGN */ \ 113404b94745Smrg UNI(0x23, 0x00A3) /* POUND SIGN */ \ 113504b94745Smrg UNI(0x24, 0x00A4) /* CURRENCY SIGN */ \ 113604b94745Smrg UNI(0x25, 0x00A5) /* YEN SIGN */ \ 113704b94745Smrg UNI(0x26, 0x00A6) /* BROKEN BAR */ \ 113804b94745Smrg UNI(0x27, 0x00A7) /* SECTION SIGN */ \ 113904b94745Smrg UNI(0x28, 0x00A8) /* DIAERESIS */ \ 114004b94745Smrg UNI(0x29, 0x00A9) /* COPYRIGHT SIGN */ \ 114104b94745Smrg UNI(0x2A, 0x00D7) /* MULTIPLICATION SIGN */ \ 114204b94745Smrg UNI(0x2B, 0x00AB) /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 114304b94745Smrg UNI(0x2C, 0x00AC) /* NOT SIGN */ \ 114404b94745Smrg UNI(0x2D, 0x00AD) /* SOFT HYPHEN */ \ 114504b94745Smrg UNI(0x2E, 0x00AE) /* REGISTERED SIGN */ \ 114604b94745Smrg UNI(0x2F, 0x00AF) /* MACRON */ \ 114704b94745Smrg UNI(0x30, 0x00B0) /* DEGREE SIGN */ \ 114804b94745Smrg UNI(0x31, 0x00B1) /* PLUS-MINUS SIGN */ \ 114904b94745Smrg UNI(0x32, 0x00B2) /* SUPERSCRIPT TWO */ \ 115004b94745Smrg UNI(0x33, 0x00B3) /* SUPERSCRIPT THREE */ \ 115104b94745Smrg UNI(0x34, 0x00B4) /* ACUTE ACCENT */ \ 115204b94745Smrg UNI(0x35, 0x00B5) /* MICRO SIGN */ \ 115304b94745Smrg UNI(0x36, 0x00B6) /* PILCROW SIGN */ \ 115404b94745Smrg UNI(0x37, 0x00B7) /* MIDDLE DOT */ \ 115504b94745Smrg UNI(0x38, 0x00B8) /* CEDILLA */ \ 115604b94745Smrg UNI(0x39, 0x00B9) /* SUPERSCRIPT ONE */ \ 115704b94745Smrg UNI(0x3A, 0x00F7) /* DIVISION SIGN */ \ 115804b94745Smrg UNI(0x3B, 0x00BB) /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 115904b94745Smrg UNI(0x3C, 0x00BC) /* VULGAR FRACTION ONE QUARTER */ \ 116004b94745Smrg UNI(0x3D, 0x00BD) /* VULGAR FRACTION ONE HALF */ \ 116104b94745Smrg UNI(0x3E, 0x00BE) /* VULGAR FRACTION THREE QUARTERS */ \ 116204b94745Smrg XXX(0x3F, UNDEF) /* undefined */ \ 116304b94745Smrg XXX(0x40, UNDEF) /* undefined */ \ 116404b94745Smrg XXX(0x41, UNDEF) /* undefined */ \ 116504b94745Smrg XXX(0x42, UNDEF) /* undefined */ \ 116604b94745Smrg XXX(0x43, UNDEF) /* undefined */ \ 116704b94745Smrg XXX(0x44, UNDEF) /* undefined */ \ 116804b94745Smrg XXX(0x45, UNDEF) /* undefined */ \ 116904b94745Smrg XXX(0x46, UNDEF) /* undefined */ \ 117004b94745Smrg XXX(0x47, UNDEF) /* undefined */ \ 117104b94745Smrg XXX(0x48, UNDEF) /* undefined */ \ 117204b94745Smrg XXX(0x49, UNDEF) /* undefined */ \ 117304b94745Smrg XXX(0x4A, UNDEF) /* undefined */ \ 117404b94745Smrg XXX(0x4B, UNDEF) /* undefined */ \ 117504b94745Smrg XXX(0x4C, UNDEF) /* undefined */ \ 117604b94745Smrg XXX(0x4D, UNDEF) /* undefined */ \ 117704b94745Smrg XXX(0x4E, UNDEF) /* undefined */ \ 117804b94745Smrg XXX(0x4F, UNDEF) /* undefined */ \ 117904b94745Smrg XXX(0x50, UNDEF) /* undefined */ \ 118004b94745Smrg XXX(0x51, UNDEF) /* undefined */ \ 118104b94745Smrg XXX(0x52, UNDEF) /* undefined */ \ 118204b94745Smrg XXX(0x53, UNDEF) /* undefined */ \ 118304b94745Smrg XXX(0x54, UNDEF) /* undefined */ \ 118404b94745Smrg XXX(0x55, UNDEF) /* undefined */ \ 118504b94745Smrg XXX(0x56, UNDEF) /* undefined */ \ 118604b94745Smrg XXX(0x57, UNDEF) /* undefined */ \ 118704b94745Smrg XXX(0x58, UNDEF) /* undefined */ \ 118804b94745Smrg XXX(0x59, UNDEF) /* undefined */ \ 118904b94745Smrg XXX(0x5A, UNDEF) /* undefined */ \ 119004b94745Smrg XXX(0x5B, UNDEF) /* undefined */ \ 119104b94745Smrg XXX(0x5C, UNDEF) /* undefined */ \ 119204b94745Smrg XXX(0x5D, UNDEF) /* undefined */ \ 119304b94745Smrg XXX(0x5E, UNDEF) /* undefined */ \ 119404b94745Smrg UNI(0x5F, 0x2017) /* DOUBLE LOW LINE */ \ 119504b94745Smrg UNI(0x60, 0x05D0) /* HEBREW LETTER ALEF */ \ 119604b94745Smrg UNI(0x61, 0x05D1) /* HEBREW LETTER BET */ \ 119704b94745Smrg UNI(0x62, 0x05D2) /* HEBREW LETTER GIMEL */ \ 119804b94745Smrg UNI(0x63, 0x05D3) /* HEBREW LETTER DALET */ \ 119904b94745Smrg UNI(0x64, 0x05D4) /* HEBREW LETTER HE */ \ 120004b94745Smrg UNI(0x65, 0x05D5) /* HEBREW LETTER VAV */ \ 120104b94745Smrg UNI(0x66, 0x05D6) /* HEBREW LETTER ZAYIN */ \ 120204b94745Smrg UNI(0x67, 0x05D7) /* HEBREW LETTER HET */ \ 120304b94745Smrg UNI(0x68, 0x05D8) /* HEBREW LETTER TET */ \ 120404b94745Smrg UNI(0x69, 0x05D9) /* HEBREW LETTER YOD */ \ 120504b94745Smrg UNI(0x6A, 0x05DA) /* HEBREW LETTER FINAL KAF */ \ 120604b94745Smrg UNI(0x6B, 0x05DB) /* HEBREW LETTER KAF */ \ 120704b94745Smrg UNI(0x6C, 0x05DC) /* HEBREW LETTER LAMED */ \ 120804b94745Smrg UNI(0x6D, 0x05DD) /* HEBREW LETTER FINAL MEM */ \ 120904b94745Smrg UNI(0x6E, 0x05DE) /* HEBREW LETTER MEM */ \ 121004b94745Smrg UNI(0x6F, 0x05DF) /* HEBREW LETTER FINAL NUN */ \ 121104b94745Smrg UNI(0x70, 0x05E0) /* HEBREW LETTER NUN */ \ 121204b94745Smrg UNI(0x71, 0x05E1) /* HEBREW LETTER SAMEKH */ \ 121304b94745Smrg UNI(0x72, 0x05E2) /* HEBREW LETTER AYIN */ \ 121404b94745Smrg UNI(0x73, 0x05E3) /* HEBREW LETTER FINAL PE */ \ 121504b94745Smrg UNI(0x74, 0x05E4) /* HEBREW LETTER PE */ \ 121604b94745Smrg UNI(0x75, 0x05E5) /* HEBREW LETTER FINAL TSADI */ \ 121704b94745Smrg UNI(0x76, 0x05E6) /* HEBREW LETTER TSADI */ \ 121804b94745Smrg UNI(0x77, 0x05E7) /* HEBREW LETTER QOF */ \ 121904b94745Smrg UNI(0x78, 0x05E8) /* HEBREW LETTER RESH */ \ 122004b94745Smrg UNI(0x79, 0x05E9) /* HEBREW LETTER SHIN */ \ 122104b94745Smrg UNI(0x7A, 0x05EA) /* HEBREW LETTER TAV */ \ 122204b94745Smrg XXX(0x7B, UNDEF) /* undefined */ \ 122304b94745Smrg XXX(0x7C, UNDEF) /* undefined */ \ 122404b94745Smrg XXX(0x7D, UNDEF) /* undefined */ \ 122504b94745Smrg XXX(0x7E, UNDEF) /* undefined */ \ 122604b94745Smrg XXX(0x7F, UNDEF) /* undefined */ \ 122704b94745Smrg } \ 122804b94745Smrg end_CODEPAGE() 122904b94745Smrg 123004b94745Smrg#define unmap_ISO_Hebrew(code,dft) \ 123104b94745Smrg switch (code) { \ 123204b94745Smrg MAP(0x21, 0x1B) /* undefined */ \ 123304b94745Smrg MAP(0x2A, 0xD7) /* MULTIPLICATION SIGN */ \ 123404b94745Smrg MAP(0x3A, 0xF7) /* DIVISION SIGN */ \ 123504b94745Smrg MAP(0x3F, 0x1B) /* undefined */ \ 123604b94745Smrg MAP(0x40, 0x1B) /* undefined */ \ 123704b94745Smrg MAP(0x41, 0x1B) /* undefined */ \ 123804b94745Smrg MAP(0x42, 0x1B) /* undefined */ \ 123904b94745Smrg MAP(0x43, 0x1B) /* undefined */ \ 124004b94745Smrg MAP(0x44, 0x1B) /* undefined */ \ 124104b94745Smrg MAP(0x45, 0x1B) /* undefined */ \ 124204b94745Smrg MAP(0x46, 0x1B) /* undefined */ \ 124304b94745Smrg MAP(0x47, 0x1B) /* undefined */ \ 124404b94745Smrg MAP(0x48, 0x1B) /* undefined */ \ 124504b94745Smrg MAP(0x49, 0x1B) /* undefined */ \ 124604b94745Smrg MAP(0x4A, 0x1B) /* undefined */ \ 124704b94745Smrg MAP(0x4B, 0x1B) /* undefined */ \ 124804b94745Smrg MAP(0x4C, 0x1B) /* undefined */ \ 124904b94745Smrg MAP(0x4D, 0x1B) /* undefined */ \ 125004b94745Smrg MAP(0x4E, 0x1B) /* undefined */ \ 125104b94745Smrg MAP(0x4F, 0x1B) /* undefined */ \ 125204b94745Smrg MAP(0x50, 0x1B) /* undefined */ \ 125304b94745Smrg MAP(0x51, 0x1B) /* undefined */ \ 125404b94745Smrg MAP(0x52, 0x1B) /* undefined */ \ 125504b94745Smrg MAP(0x53, 0x1B) /* undefined */ \ 125604b94745Smrg MAP(0x54, 0x1B) /* undefined */ \ 125704b94745Smrg MAP(0x55, 0x1B) /* undefined */ \ 125804b94745Smrg MAP(0x56, 0x1B) /* undefined */ \ 125904b94745Smrg MAP(0x57, 0x1B) /* undefined */ \ 126004b94745Smrg MAP(0x58, 0x1B) /* undefined */ \ 126104b94745Smrg MAP(0x59, 0x1B) /* undefined */ \ 126204b94745Smrg MAP(0x5A, 0x1B) /* undefined */ \ 126304b94745Smrg MAP(0x5B, 0x1B) /* undefined */ \ 126404b94745Smrg MAP(0x5C, 0x1B) /* undefined */ \ 126504b94745Smrg MAP(0x5D, 0x1B) /* undefined */ \ 126604b94745Smrg MAP(0x5E, 0x1B) /* undefined */ \ 126704b94745Smrg MAP(0x5F, 0x52) /* DOUBLE LOW LINE */ \ 126804b94745Smrg MAP(0x60, 0x53) /* HEBREW LETTER ALEF */ \ 126904b94745Smrg MAP(0x61, 0x54) /* HEBREW LETTER BET */ \ 127004b94745Smrg MAP(0x62, 0x55) /* HEBREW LETTER GIMEL */ \ 127104b94745Smrg MAP(0x63, 0x56) /* HEBREW LETTER DALET */ \ 127204b94745Smrg MAP(0x64, 0x57) /* HEBREW LETTER HE */ \ 127304b94745Smrg MAP(0x65, 0x58) /* HEBREW LETTER VAV */ \ 127404b94745Smrg MAP(0x66, 0x59) /* HEBREW LETTER ZAYIN */ \ 127504b94745Smrg MAP(0x67, 0x5A) /* HEBREW LETTER HET */ \ 127604b94745Smrg MAP(0x68, 0x5B) /* HEBREW LETTER TET */ \ 127704b94745Smrg MAP(0x69, 0x5C) /* HEBREW LETTER YOD */ \ 127804b94745Smrg MAP(0x6A, 0x5D) /* HEBREW LETTER FINAL KAF */ \ 127904b94745Smrg MAP(0x6B, 0x5E) /* HEBREW LETTER KAF */ \ 128004b94745Smrg MAP(0x6C, 0x5F) /* HEBREW LETTER LAMED */ \ 128104b94745Smrg MAP(0x6D, 0x60) /* HEBREW LETTER FINAL MEM */ \ 128204b94745Smrg MAP(0x6E, 0x61) /* HEBREW LETTER MEM */ \ 128304b94745Smrg MAP(0x6F, 0x62) /* HEBREW LETTER FINAL NUN */ \ 128404b94745Smrg MAP(0x70, 0x63) /* HEBREW LETTER NUN */ \ 128504b94745Smrg MAP(0x71, 0x64) /* HEBREW LETTER SAMEKH */ \ 128604b94745Smrg MAP(0x72, 0x65) /* HEBREW LETTER AYIN */ \ 128704b94745Smrg MAP(0x73, 0x66) /* HEBREW LETTER FINAL PE */ \ 128804b94745Smrg MAP(0x74, 0x67) /* HEBREW LETTER PE */ \ 128904b94745Smrg MAP(0x75, 0x68) /* HEBREW LETTER FINAL TSADI */ \ 129004b94745Smrg MAP(0x76, 0x69) /* HEBREW LETTER TSADI */ \ 129104b94745Smrg MAP(0x77, 0x6A) /* HEBREW LETTER QOF */ \ 129204b94745Smrg MAP(0x78, 0x6B) /* HEBREW LETTER RESH */ \ 129304b94745Smrg MAP(0x79, 0x6C) /* HEBREW LETTER SHIN */ \ 129404b94745Smrg MAP(0x7A, 0x6D) /* HEBREW LETTER TAV */ \ 129504b94745Smrg MAP(0x7B, 0x1B) /* undefined */ \ 129604b94745Smrg MAP(0x7C, 0x1B) /* undefined */ \ 129704b94745Smrg MAP(0x7D, 0x1B) /* undefined */ \ 129804b94745Smrg MAP(0x7E, 0x1B) /* undefined */ \ 129904b94745Smrg MAP(0x7F, 0x1B) /* undefined */ \ 130004b94745Smrg default: dft; break; \ 130104b94745Smrg } 130204b94745Smrg 130304b94745Smrg/* 130404b94745Smrg * ISO Latin-2 is 8859-2 130504b94745Smrg */ 130604b94745Smrg#define map_ISO_Latin_2(code) \ 130704b94745Smrg begin_CODEPAGE(96) \ 130804b94745Smrg switch (code) { \ 130904b94745Smrg UNI(0x20, 0x00A0) /* NO-BREAK SPACE */ \ 131004b94745Smrg UNI(0x21, 0x0104) /* LATIN CAPITAL LETTER A WITH OGONEK */ \ 131104b94745Smrg UNI(0x22, 0x02D8) /* BREVE */ \ 131204b94745Smrg UNI(0x23, 0x0141) /* LATIN CAPITAL LETTER L WITH STROKE */ \ 131304b94745Smrg UNI(0x24, 0x00A4) /* CURRENCY SIGN */ \ 131404b94745Smrg UNI(0x25, 0x013D) /* LATIN CAPITAL LETTER L WITH CARON */ \ 131504b94745Smrg UNI(0x26, 0x015A) /* LATIN CAPITAL LETTER S WITH ACUTE */ \ 131604b94745Smrg UNI(0x27, 0x00A7) /* SECTION SIGN */ \ 131704b94745Smrg UNI(0x28, 0x00A8) /* DIAERESIS */ \ 131804b94745Smrg UNI(0x29, 0x0160) /* LATIN CAPITAL LETTER S WITH CARON */ \ 131904b94745Smrg UNI(0x2A, 0x015E) /* LATIN CAPITAL LETTER S WITH CEDILLA */ \ 132004b94745Smrg UNI(0x2B, 0x0164) /* LATIN CAPITAL LETTER T WITH CARON */ \ 132104b94745Smrg UNI(0x2C, 0x0179) /* LATIN CAPITAL LETTER Z WITH ACUTE */ \ 132204b94745Smrg UNI(0x2D, 0x00AD) /* SOFT HYPHEN */ \ 132304b94745Smrg UNI(0x2E, 0x017D) /* LATIN CAPITAL LETTER Z WITH CARON */ \ 132404b94745Smrg UNI(0x2F, 0x017B) /* LATIN CAPITAL LETTER Z WITH DOT ABOVE */ \ 132504b94745Smrg UNI(0x30, 0x00B0) /* DEGREE SIGN */ \ 132604b94745Smrg UNI(0x31, 0x0105) /* LATIN SMALL LETTER A WITH OGONEK */ \ 132704b94745Smrg UNI(0x32, 0x02DB) /* OGONEK */ \ 132804b94745Smrg UNI(0x33, 0x0142) /* LATIN SMALL LETTER L WITH STROKE */ \ 132904b94745Smrg UNI(0x34, 0x00B4) /* ACUTE ACCENT */ \ 133004b94745Smrg UNI(0x35, 0x013E) /* LATIN SMALL LETTER L WITH CARON */ \ 133104b94745Smrg UNI(0x36, 0x015B) /* LATIN SMALL LETTER S WITH ACUTE */ \ 133204b94745Smrg UNI(0x37, 0x02C7) /* CARON */ \ 133304b94745Smrg UNI(0x38, 0x00B8) /* CEDILLA */ \ 133404b94745Smrg UNI(0x39, 0x0161) /* LATIN SMALL LETTER S WITH CARON */ \ 133504b94745Smrg UNI(0x3A, 0x015F) /* LATIN SMALL LETTER S WITH CEDILLA */ \ 133604b94745Smrg UNI(0x3B, 0x0165) /* LATIN SMALL LETTER T WITH CARON */ \ 133704b94745Smrg UNI(0x3C, 0x017A) /* LATIN SMALL LETTER Z WITH ACUTE */ \ 133804b94745Smrg UNI(0x3D, 0x02DD) /* DOUBLE ACUTE ACCENT */ \ 133904b94745Smrg UNI(0x3E, 0x017E) /* LATIN SMALL LETTER Z WITH CARON */ \ 134004b94745Smrg UNI(0x3F, 0x017C) /* LATIN SMALL LETTER Z WITH DOT ABOVE */ \ 134104b94745Smrg UNI(0x40, 0x0154) /* LATIN CAPITAL LETTER R WITH ACUTE */ \ 134204b94745Smrg UNI(0x41, 0x00C1) /* LATIN CAPITAL LETTER A WITH ACUTE */ \ 134304b94745Smrg UNI(0x42, 0x00C2) /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */ \ 134404b94745Smrg UNI(0x43, 0x0102) /* LATIN CAPITAL LETTER A WITH BREVE */ \ 134504b94745Smrg UNI(0x44, 0x00C4) /* LATIN CAPITAL LETTER A WITH DIAERESIS */ \ 134604b94745Smrg UNI(0x45, 0x0139) /* LATIN CAPITAL LETTER L WITH ACUTE */ \ 134704b94745Smrg UNI(0x46, 0x0106) /* LATIN CAPITAL LETTER C WITH ACUTE */ \ 134804b94745Smrg UNI(0x47, 0x00C7) /* LATIN CAPITAL LETTER C WITH CEDILLA */ \ 134904b94745Smrg UNI(0x48, 0x010C) /* LATIN CAPITAL LETTER C WITH CARON */ \ 135004b94745Smrg UNI(0x49, 0x00C9) /* LATIN CAPITAL LETTER E WITH ACUTE */ \ 135104b94745Smrg UNI(0x4A, 0x0118) /* LATIN CAPITAL LETTER E WITH OGONEK */ \ 135204b94745Smrg UNI(0x4B, 0x00CB) /* LATIN CAPITAL LETTER E WITH DIAERESIS */ \ 135304b94745Smrg UNI(0x4C, 0x011A) /* LATIN CAPITAL LETTER E WITH CARON */ \ 135404b94745Smrg UNI(0x4D, 0x00CD) /* LATIN CAPITAL LETTER I WITH ACUTE */ \ 135504b94745Smrg UNI(0x4E, 0x00CE) /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */ \ 135604b94745Smrg UNI(0x4F, 0x010E) /* LATIN CAPITAL LETTER D WITH CARON */ \ 135704b94745Smrg UNI(0x50, 0x0110) /* LATIN CAPITAL LETTER D WITH STROKE */ \ 135804b94745Smrg UNI(0x51, 0x0143) /* LATIN CAPITAL LETTER N WITH ACUTE */ \ 135904b94745Smrg UNI(0x52, 0x0147) /* LATIN CAPITAL LETTER N WITH CARON */ \ 136004b94745Smrg UNI(0x53, 0x00D3) /* LATIN CAPITAL LETTER O WITH ACUTE */ \ 136104b94745Smrg UNI(0x54, 0x00D4) /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */ \ 136204b94745Smrg UNI(0x55, 0x0150) /* LATIN CAPITAL LETTER O WITH DOUBLE ACUTE */ \ 136304b94745Smrg UNI(0x56, 0x00D6) /* LATIN CAPITAL LETTER O WITH DIAERESIS */ \ 136404b94745Smrg UNI(0x57, 0x00D7) /* MULTIPLICATION SIGN */ \ 136504b94745Smrg UNI(0x58, 0x0158) /* LATIN CAPITAL LETTER R WITH CARON */ \ 136604b94745Smrg UNI(0x59, 0x016E) /* LATIN CAPITAL LETTER U WITH RING ABOVE */ \ 136704b94745Smrg UNI(0x5A, 0x00DA) /* LATIN CAPITAL LETTER U WITH ACUTE */ \ 136804b94745Smrg UNI(0x5B, 0x0170) /* LATIN CAPITAL LETTER U WITH DOUBLE ACUTE */ \ 136904b94745Smrg UNI(0x5C, 0x00DC) /* LATIN CAPITAL LETTER U WITH DIAERESIS */ \ 137004b94745Smrg UNI(0x5D, 0x00DD) /* LATIN CAPITAL LETTER Y WITH ACUTE */ \ 137104b94745Smrg UNI(0x5E, 0x0162) /* LATIN CAPITAL LETTER T WITH CEDILLA */ \ 137204b94745Smrg UNI(0x5F, 0x00DF) /* LATIN SMALL LETTER SHARP S */ \ 137304b94745Smrg UNI(0x60, 0x0155) /* LATIN SMALL LETTER R WITH ACUTE */ \ 137404b94745Smrg UNI(0x61, 0x00E1) /* LATIN SMALL LETTER A WITH ACUTE */ \ 137504b94745Smrg UNI(0x62, 0x00E2) /* LATIN SMALL LETTER A WITH CIRCUMFLEX */ \ 137604b94745Smrg UNI(0x63, 0x0103) /* LATIN SMALL LETTER A WITH BREVE */ \ 137704b94745Smrg UNI(0x64, 0x00E4) /* LATIN SMALL LETTER A WITH DIAERESIS */ \ 137804b94745Smrg UNI(0x65, 0x013A) /* LATIN SMALL LETTER L WITH ACUTE */ \ 137904b94745Smrg UNI(0x66, 0x0107) /* LATIN SMALL LETTER C WITH ACUTE */ \ 138004b94745Smrg UNI(0x67, 0x00E7) /* LATIN SMALL LETTER C WITH CEDILLA */ \ 138104b94745Smrg UNI(0x68, 0x010D) /* LATIN SMALL LETTER C WITH CARON */ \ 138204b94745Smrg UNI(0x69, 0x00E9) /* LATIN SMALL LETTER E WITH ACUTE */ \ 138304b94745Smrg UNI(0x6A, 0x0119) /* LATIN SMALL LETTER E WITH OGONEK */ \ 138404b94745Smrg UNI(0x6B, 0x00EB) /* LATIN SMALL LETTER E WITH DIAERESIS */ \ 138504b94745Smrg UNI(0x6C, 0x011B) /* LATIN SMALL LETTER E WITH CARON */ \ 138604b94745Smrg UNI(0x6D, 0x00ED) /* LATIN SMALL LETTER I WITH ACUTE */ \ 138704b94745Smrg UNI(0x6E, 0x00EE) /* LATIN SMALL LETTER I WITH CIRCUMFLEX */ \ 138804b94745Smrg UNI(0x6F, 0x010F) /* LATIN SMALL LETTER D WITH CARON */ \ 138904b94745Smrg UNI(0x70, 0x0111) /* LATIN SMALL LETTER D WITH STROKE */ \ 139004b94745Smrg UNI(0x71, 0x0144) /* LATIN SMALL LETTER N WITH ACUTE */ \ 139104b94745Smrg UNI(0x72, 0x0148) /* LATIN SMALL LETTER N WITH CARON */ \ 139204b94745Smrg UNI(0x73, 0x00F3) /* LATIN SMALL LETTER O WITH ACUTE */ \ 139304b94745Smrg UNI(0x74, 0x00F4) /* LATIN SMALL LETTER O WITH CIRCUMFLEX */ \ 139404b94745Smrg UNI(0x75, 0x0151) /* LATIN SMALL LETTER O WITH DOUBLE ACUTE */ \ 139504b94745Smrg UNI(0x76, 0x00F6) /* LATIN SMALL LETTER O WITH DIAERESIS */ \ 139604b94745Smrg UNI(0x77, 0x00F7) /* DIVISION SIGN */ \ 139704b94745Smrg UNI(0x78, 0x0159) /* LATIN SMALL LETTER R WITH CARON */ \ 139804b94745Smrg UNI(0x79, 0x016F) /* LATIN SMALL LETTER U WITH RING ABOVE */ \ 139904b94745Smrg UNI(0x7A, 0x00FA) /* LATIN SMALL LETTER U WITH ACUTE */ \ 140004b94745Smrg UNI(0x7B, 0x0171) /* LATIN SMALL LETTER U WITH DOUBLE ACUTE */ \ 140104b94745Smrg UNI(0x7C, 0x00FC) /* LATIN SMALL LETTER U WITH DIAERESIS */ \ 140204b94745Smrg UNI(0x7D, 0x00FD) /* LATIN SMALL LETTER Y WITH ACUTE */ \ 140304b94745Smrg UNI(0x7E, 0x0163) /* LATIN SMALL LETTER T WITH CEDILLA */ \ 140404b94745Smrg UNI(0x7F, 0x02D9) /* DOT ABOVE */ \ 140504b94745Smrg } \ 140604b94745Smrg end_CODEPAGE() 140704b94745Smrg 140804b94745Smrg#define unmap_ISO_Latin_2(code,dft) \ 140904b94745Smrg switch (code) { \ 141004b94745Smrg MAP(0x21, 0x9A) /* LATIN CAPITAL LETTER A WITH OGONEK */ \ 141104b94745Smrg MAP(0x22, 0x90) /* BREVE */ \ 141204b94745Smrg MAP(0x23, 0x9B) /* LATIN CAPITAL LETTER L WITH STROKE */ \ 141304b94745Smrg MAP(0x25, 0x9C) /* LATIN CAPITAL LETTER L WITH CARON */ \ 141404b94745Smrg MAP(0x26, 0x9D) /* LATIN CAPITAL LETTER S WITH ACUTE */ \ 141504b94745Smrg MAP(0x29, 0x9E) /* LATIN CAPITAL LETTER S WITH CARON */ \ 141604b94745Smrg MAP(0x2A, 0x9F) /* LATIN CAPITAL LETTER S WITH CEDILLA */ \ 141704b94745Smrg MAP(0x2B, 0x21) /* LATIN CAPITAL LETTER T WITH CARON */ \ 141804b94745Smrg MAP(0x2C, 0x22) /* LATIN CAPITAL LETTER Z WITH ACUTE */ \ 141904b94745Smrg MAP(0x2E, 0x23) /* LATIN CAPITAL LETTER Z WITH CARON */ \ 142004b94745Smrg MAP(0x2F, 0x24) /* LATIN CAPITAL LETTER Z WITH DOT ABOVE */ \ 142104b94745Smrg MAP(0x31, 0x25) /* LATIN SMALL LETTER A WITH OGONEK */ \ 142204b94745Smrg MAP(0x32, 0x91) /* OGONEK */ \ 142304b94745Smrg MAP(0x33, 0x26) /* LATIN SMALL LETTER L WITH STROKE */ \ 142404b94745Smrg MAP(0x35, 0x27) /* LATIN SMALL LETTER L WITH CARON */ \ 142504b94745Smrg MAP(0x36, 0x28) /* LATIN SMALL LETTER S WITH ACUTE */ \ 142604b94745Smrg MAP(0x37, 0x92) /* CARON */ \ 142704b94745Smrg MAP(0x39, 0x29) /* LATIN SMALL LETTER S WITH CARON */ \ 142804b94745Smrg MAP(0x3A, 0x2A) /* LATIN SMALL LETTER S WITH CEDILLA */ \ 142904b94745Smrg MAP(0x3B, 0x2B) /* LATIN SMALL LETTER T WITH CARON */ \ 143004b94745Smrg MAP(0x3C, 0x2C) /* LATIN SMALL LETTER Z WITH ACUTE */ \ 143104b94745Smrg MAP(0x3D, 0x93) /* DOUBLE ACUTE ACCENT */ \ 143204b94745Smrg MAP(0x3E, 0x2D) /* LATIN SMALL LETTER Z WITH CARON */ \ 143304b94745Smrg MAP(0x3F, 0x2E) /* LATIN SMALL LETTER Z WITH DOT ABOVE */ \ 143404b94745Smrg MAP(0x40, 0x2F) /* LATIN CAPITAL LETTER R WITH ACUTE */ \ 143504b94745Smrg MAP(0x43, 0x30) /* LATIN CAPITAL LETTER A WITH BREVE */ \ 143604b94745Smrg MAP(0x45, 0x31) /* LATIN CAPITAL LETTER L WITH ACUTE */ \ 143704b94745Smrg MAP(0x46, 0x32) /* LATIN CAPITAL LETTER C WITH ACUTE */ \ 143804b94745Smrg MAP(0x48, 0x33) /* LATIN CAPITAL LETTER C WITH CARON */ \ 143904b94745Smrg MAP(0x4A, 0x34) /* LATIN CAPITAL LETTER E WITH OGONEK */ \ 144004b94745Smrg MAP(0x4C, 0x35) /* LATIN CAPITAL LETTER E WITH CARON */ \ 144104b94745Smrg MAP(0x4F, 0x36) /* LATIN CAPITAL LETTER D WITH CARON */ \ 144204b94745Smrg MAP(0x51, 0x37) /* LATIN CAPITAL LETTER N WITH ACUTE */ \ 144304b94745Smrg MAP(0x52, 0x38) /* LATIN CAPITAL LETTER N WITH CARON */ \ 144404b94745Smrg MAP(0x55, 0x39) /* LATIN CAPITAL LETTER O WITH DOUBLE ACUTE */ \ 144504b94745Smrg MAP(0x58, 0x3A) /* LATIN CAPITAL LETTER R WITH CARON */ \ 144604b94745Smrg MAP(0x59, 0x3B) /* LATIN CAPITAL LETTER U WITH RING ABOVE */ \ 144704b94745Smrg MAP(0x5B, 0x3C) /* LATIN CAPITAL LETTER U WITH DOUBLE ACUTE */ \ 144804b94745Smrg MAP(0x5E, 0x3D) /* LATIN CAPITAL LETTER T WITH CEDILLA */ \ 144904b94745Smrg MAP(0x60, 0x3E) /* LATIN SMALL LETTER R WITH ACUTE */ \ 145004b94745Smrg MAP(0x63, 0x3F) /* LATIN SMALL LETTER A WITH BREVE */ \ 145104b94745Smrg MAP(0x65, 0x40) /* LATIN SMALL LETTER L WITH ACUTE */ \ 145204b94745Smrg MAP(0x66, 0x41) /* LATIN SMALL LETTER C WITH ACUTE */ \ 145304b94745Smrg MAP(0x68, 0x42) /* LATIN SMALL LETTER C WITH CARON */ \ 145404b94745Smrg MAP(0x6A, 0x43) /* LATIN SMALL LETTER E WITH OGONEK */ \ 145504b94745Smrg MAP(0x6C, 0x44) /* LATIN SMALL LETTER E WITH CARON */ \ 145604b94745Smrg MAP(0x6F, 0x45) /* LATIN SMALL LETTER D WITH CARON */ \ 145704b94745Smrg MAP(0x70, 0x46) /* LATIN SMALL LETTER D WITH STROKE */ \ 145804b94745Smrg MAP(0x71, 0x47) /* LATIN SMALL LETTER N WITH ACUTE */ \ 145904b94745Smrg MAP(0x72, 0x48) /* LATIN SMALL LETTER N WITH CARON */ \ 146004b94745Smrg MAP(0x75, 0x49) /* LATIN SMALL LETTER O WITH DOUBLE ACUTE */ \ 146104b94745Smrg MAP(0x78, 0x4A) /* LATIN SMALL LETTER R WITH CARON */ \ 146204b94745Smrg MAP(0x79, 0x4B) /* LATIN SMALL LETTER U WITH RING ABOVE */ \ 146304b94745Smrg MAP(0x7B, 0x4C) /* LATIN SMALL LETTER U WITH DOUBLE ACUTE */ \ 146404b94745Smrg MAP(0x7E, 0x4D) /* LATIN SMALL LETTER T WITH CEDILLA */ \ 146504b94745Smrg MAP(0x7F, 0x94) /* DOT ABOVE */ \ 146604b94745Smrg default: dft; break; \ 146704b94745Smrg } 146804b94745Smrg 146904b94745Smrg/* 147004b94745Smrg * ISO Latin-5 is 8859-9 147104b94745Smrg */ 147204b94745Smrg#define map_ISO_Latin_5(code) \ 147304b94745Smrg begin_CODEPAGE(96) \ 147404b94745Smrg switch (code) { \ 147504b94745Smrg UNI(0x20, 0x00A0) /* NO-BREAK SPACE */ \ 147604b94745Smrg UNI(0x21, 0x00A1) /* INVERTED EXCLAMATION MARK */ \ 147704b94745Smrg UNI(0x22, 0x00A2) /* CENT SIGN */ \ 147804b94745Smrg UNI(0x23, 0x00A3) /* POUND SIGN */ \ 147904b94745Smrg UNI(0x24, 0x00A4) /* CURRENCY SIGN */ \ 148004b94745Smrg UNI(0x25, 0x00A5) /* YEN SIGN */ \ 148104b94745Smrg UNI(0x26, 0x00A6) /* BROKEN BAR */ \ 148204b94745Smrg UNI(0x27, 0x00A7) /* SECTION SIGN */ \ 148304b94745Smrg UNI(0x28, 0x00A8) /* DIAERESIS */ \ 148404b94745Smrg UNI(0x29, 0x00A9) /* COPYRIGHT SIGN */ \ 148504b94745Smrg UNI(0x2A, 0x00AA) /* FEMININE ORDINAL INDICATOR */ \ 148604b94745Smrg UNI(0x2B, 0x00AB) /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 148704b94745Smrg UNI(0x2C, 0x00AC) /* NOT SIGN */ \ 148804b94745Smrg UNI(0x2D, 0x00AD) /* SOFT HYPHEN */ \ 148904b94745Smrg UNI(0x2E, 0x00AE) /* REGISTERED SIGN */ \ 149004b94745Smrg UNI(0x2F, 0x00AF) /* MACRON */ \ 149104b94745Smrg UNI(0x30, 0x00B0) /* DEGREE SIGN */ \ 149204b94745Smrg UNI(0x31, 0x00B1) /* PLUS-MINUS SIGN */ \ 149304b94745Smrg UNI(0x32, 0x00B2) /* SUPERSCRIPT TWO */ \ 149404b94745Smrg UNI(0x33, 0x00B3) /* SUPERSCRIPT THREE */ \ 149504b94745Smrg UNI(0x34, 0x00B4) /* ACUTE ACCENT */ \ 149604b94745Smrg UNI(0x35, 0x00B5) /* MICRO SIGN */ \ 149704b94745Smrg UNI(0x36, 0x00B6) /* PILCROW SIGN */ \ 149804b94745Smrg UNI(0x37, 0x00B7) /* MIDDLE DOT */ \ 149904b94745Smrg UNI(0x38, 0x00B8) /* CEDILLA */ \ 150004b94745Smrg UNI(0x39, 0x00B9) /* SUPERSCRIPT ONE */ \ 150104b94745Smrg UNI(0x3A, 0x00BA) /* MASCULINE ORDINAL INDICATOR */ \ 150204b94745Smrg UNI(0x3B, 0x00BB) /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 150304b94745Smrg UNI(0x3C, 0x00BC) /* VULGAR FRACTION ONE QUARTER */ \ 150404b94745Smrg UNI(0x3D, 0x00BD) /* VULGAR FRACTION ONE HALF */ \ 150504b94745Smrg UNI(0x3E, 0x00BE) /* VULGAR FRACTION THREE QUARTERS */ \ 150604b94745Smrg UNI(0x3F, 0x00BF) /* INVERTED QUESTION MARK */ \ 150704b94745Smrg UNI(0x40, 0x00C0) /* LATIN CAPITAL LETTER A WITH GRAVE */ \ 150804b94745Smrg UNI(0x41, 0x00C1) /* LATIN CAPITAL LETTER A WITH ACUTE */ \ 150904b94745Smrg UNI(0x42, 0x00C2) /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */ \ 151004b94745Smrg UNI(0x43, 0x00C3) /* LATIN CAPITAL LETTER A WITH TILDE */ \ 151104b94745Smrg UNI(0x44, 0x00C4) /* LATIN CAPITAL LETTER A WITH DIAERESIS */ \ 151204b94745Smrg UNI(0x45, 0x00C5) /* LATIN CAPITAL LETTER A WITH RING ABOVE */ \ 151304b94745Smrg UNI(0x46, 0x00C6) /* LATIN CAPITAL LETTER AE */ \ 151404b94745Smrg UNI(0x47, 0x00C7) /* LATIN CAPITAL LETTER C WITH CEDILLA */ \ 151504b94745Smrg UNI(0x48, 0x00C8) /* LATIN CAPITAL LETTER E WITH GRAVE */ \ 151604b94745Smrg UNI(0x49, 0x00C9) /* LATIN CAPITAL LETTER E WITH ACUTE */ \ 151704b94745Smrg UNI(0x4A, 0x00CA) /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX */ \ 151804b94745Smrg UNI(0x4B, 0x00CB) /* LATIN CAPITAL LETTER E WITH DIAERESIS */ \ 151904b94745Smrg UNI(0x4C, 0x00CC) /* LATIN CAPITAL LETTER I WITH GRAVE */ \ 152004b94745Smrg UNI(0x4D, 0x00CD) /* LATIN CAPITAL LETTER I WITH ACUTE */ \ 152104b94745Smrg UNI(0x4E, 0x00CE) /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */ \ 152204b94745Smrg UNI(0x4F, 0x00CF) /* LATIN CAPITAL LETTER I WITH DIAERESIS */ \ 152304b94745Smrg UNI(0x50, 0x011E) /* LATIN CAPITAL LETTER G WITH BREVE */ \ 152404b94745Smrg UNI(0x51, 0x00D1) /* LATIN CAPITAL LETTER N WITH TILDE */ \ 152504b94745Smrg UNI(0x52, 0x00D2) /* LATIN CAPITAL LETTER O WITH GRAVE */ \ 152604b94745Smrg UNI(0x53, 0x00D3) /* LATIN CAPITAL LETTER O WITH ACUTE */ \ 152704b94745Smrg UNI(0x54, 0x00D4) /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */ \ 152804b94745Smrg UNI(0x55, 0x00D5) /* LATIN CAPITAL LETTER O WITH TILDE */ \ 152904b94745Smrg UNI(0x56, 0x00D6) /* LATIN CAPITAL LETTER O WITH DIAERESIS */ \ 153004b94745Smrg UNI(0x57, 0x00D7) /* MULTIPLICATION SIGN */ \ 153104b94745Smrg UNI(0x58, 0x00D8) /* LATIN CAPITAL LETTER O WITH STROKE */ \ 153204b94745Smrg UNI(0x59, 0x00D9) /* LATIN CAPITAL LETTER U WITH GRAVE */ \ 153304b94745Smrg UNI(0x5A, 0x00DA) /* LATIN CAPITAL LETTER U WITH ACUTE */ \ 153404b94745Smrg UNI(0x5B, 0x00DB) /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */ \ 153504b94745Smrg UNI(0x5C, 0x00DC) /* LATIN CAPITAL LETTER U WITH DIAERESIS */ \ 153604b94745Smrg UNI(0x5D, 0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */ \ 153704b94745Smrg UNI(0x5E, 0x015E) /* LATIN CAPITAL LETTER S WITH CEDILLA */ \ 153804b94745Smrg UNI(0x5F, 0x00DF) /* LATIN SMALL LETTER SHARP S */ \ 153904b94745Smrg UNI(0x60, 0x00E0) /* LATIN SMALL LETTER A WITH GRAVE */ \ 154004b94745Smrg UNI(0x61, 0x00E1) /* LATIN SMALL LETTER A WITH ACUTE */ \ 154104b94745Smrg UNI(0x62, 0x00E2) /* LATIN SMALL LETTER A WITH CIRCUMFLEX */ \ 154204b94745Smrg UNI(0x63, 0x00E3) /* LATIN SMALL LETTER A WITH TILDE */ \ 154304b94745Smrg UNI(0x64, 0x00E4) /* LATIN SMALL LETTER A WITH DIAERESIS */ \ 154404b94745Smrg UNI(0x65, 0x00E5) /* LATIN SMALL LETTER A WITH RING ABOVE */ \ 154504b94745Smrg UNI(0x66, 0x00E6) /* LATIN SMALL LETTER AE */ \ 154604b94745Smrg UNI(0x67, 0x00E7) /* LATIN SMALL LETTER C WITH CEDILLA */ \ 154704b94745Smrg UNI(0x68, 0x00E8) /* LATIN SMALL LETTER E WITH GRAVE */ \ 154804b94745Smrg UNI(0x69, 0x00E9) /* LATIN SMALL LETTER E WITH ACUTE */ \ 154904b94745Smrg UNI(0x6A, 0x00EA) /* LATIN SMALL LETTER E WITH CIRCUMFLEX */ \ 155004b94745Smrg UNI(0x6B, 0x00EB) /* LATIN SMALL LETTER E WITH DIAERESIS */ \ 155104b94745Smrg UNI(0x6C, 0x00EC) /* LATIN SMALL LETTER I WITH GRAVE */ \ 155204b94745Smrg UNI(0x6D, 0x00ED) /* LATIN SMALL LETTER I WITH ACUTE */ \ 155304b94745Smrg UNI(0x6E, 0x00EE) /* LATIN SMALL LETTER I WITH CIRCUMFLEX */ \ 155404b94745Smrg UNI(0x6F, 0x00EF) /* LATIN SMALL LETTER I WITH DIAERESIS */ \ 155504b94745Smrg UNI(0x70, 0x011F) /* LATIN SMALL LETTER G WITH BREVE */ \ 155604b94745Smrg UNI(0x71, 0x00F1) /* LATIN SMALL LETTER N WITH TILDE */ \ 155704b94745Smrg UNI(0x72, 0x00F2) /* LATIN SMALL LETTER O WITH GRAVE */ \ 155804b94745Smrg UNI(0x73, 0x00F3) /* LATIN SMALL LETTER O WITH ACUTE */ \ 155904b94745Smrg UNI(0x74, 0x00F4) /* LATIN SMALL LETTER O WITH CIRCUMFLEX */ \ 156004b94745Smrg UNI(0x75, 0x00F5) /* LATIN SMALL LETTER O WITH TILDE */ \ 156104b94745Smrg UNI(0x76, 0x00F6) /* LATIN SMALL LETTER O WITH DIAERESIS */ \ 156204b94745Smrg UNI(0x77, 0x00F7) /* DIVISION SIGN */ \ 156304b94745Smrg UNI(0x78, 0x00F8) /* LATIN SMALL LETTER O WITH STROKE */ \ 156404b94745Smrg UNI(0x79, 0x00F9) /* LATIN SMALL LETTER U WITH GRAVE */ \ 156504b94745Smrg UNI(0x7A, 0x00FA) /* LATIN SMALL LETTER U WITH ACUTE */ \ 156604b94745Smrg UNI(0x7B, 0x00FB) /* LATIN SMALL LETTER U WITH CIRCUMFLEX */ \ 156704b94745Smrg UNI(0x7C, 0x00FC) /* LATIN SMALL LETTER U WITH DIAERESIS */ \ 156804b94745Smrg UNI(0x7D, 0x0131) /* LATIN SMALL LETTER DOTLESS I */ \ 156904b94745Smrg UNI(0x7E, 0x015F) /* LATIN SMALL LETTER S WITH CEDILLA */ \ 157004b94745Smrg UNI(0x7F, 0x00FF) /* LATIN SMALL LETTER Y WITH DIAERESIS */ \ 157104b94745Smrg } \ 157204b94745Smrg end_CODEPAGE() 157304b94745Smrg 157404b94745Smrg#define unmap_ISO_Latin_5(code,dft) \ 157504b94745Smrg switch (code) { \ 157604b94745Smrg MAP(0x50, 0x4E) /* LATIN CAPITAL LETTER G WITH BREVE */ \ 157704b94745Smrg MAP(0x5D, 0x4F) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */ \ 157804b94745Smrg MAP(0x5E, 0x9F) /* LATIN CAPITAL LETTER S WITH CEDILLA */ \ 157904b94745Smrg MAP(0x70, 0x50) /* LATIN SMALL LETTER G WITH BREVE */ \ 158004b94745Smrg MAP(0x7D, 0x51) /* LATIN SMALL LETTER DOTLESS I */ \ 158104b94745Smrg MAP(0x7E, 0x2A) /* LATIN SMALL LETTER S WITH CEDILLA */ \ 158204b94745Smrg default: dft; break; \ 158304b94745Smrg } 158404b94745Smrg 158504b94745Smrg/* 158604b94745Smrg * DEC Cyrillic from screenshot 158704b94745Smrg */ 158804b94745Smrg#define map_DEC_Cyrillic(code) \ 158904b94745Smrg begin_CODEPAGE(94) \ 159004b94745Smrg switch (code) { \ 159104b94745Smrg XXX(0x21, UNDEF) /* undefined */ \ 159204b94745Smrg XXX(0x22, UNDEF) /* undefined */ \ 159304b94745Smrg XXX(0x23, UNDEF) /* undefined */ \ 159404b94745Smrg XXX(0x24, UNDEF) /* undefined */ \ 159504b94745Smrg XXX(0x25, UNDEF) /* undefined */ \ 159604b94745Smrg XXX(0x26, UNDEF) /* undefined */ \ 159704b94745Smrg XXX(0x27, UNDEF) /* undefined */ \ 159804b94745Smrg XXX(0x28, UNDEF) /* undefined */ \ 159904b94745Smrg XXX(0x29, UNDEF) /* undefined */ \ 160004b94745Smrg XXX(0x2A, UNDEF) /* undefined */ \ 160104b94745Smrg XXX(0x2B, UNDEF) /* undefined */ \ 160204b94745Smrg XXX(0x2C, UNDEF) /* undefined */ \ 160304b94745Smrg XXX(0x2D, UNDEF) /* undefined */ \ 160404b94745Smrg XXX(0x2E, UNDEF) /* undefined */ \ 160504b94745Smrg XXX(0x2F, UNDEF) /* undefined */ \ 160604b94745Smrg XXX(0x30, UNDEF) /* undefined */ \ 160704b94745Smrg XXX(0x31, UNDEF) /* undefined */ \ 160804b94745Smrg XXX(0x32, UNDEF) /* undefined */ \ 160904b94745Smrg XXX(0x33, UNDEF) /* undefined */ \ 161004b94745Smrg XXX(0x34, UNDEF) /* undefined */ \ 161104b94745Smrg XXX(0x35, UNDEF) /* undefined */ \ 161204b94745Smrg XXX(0x36, UNDEF) /* undefined */ \ 161304b94745Smrg XXX(0x37, UNDEF) /* undefined */ \ 161404b94745Smrg XXX(0x38, UNDEF) /* undefined */ \ 161504b94745Smrg XXX(0x39, UNDEF) /* undefined */ \ 161604b94745Smrg XXX(0x3A, UNDEF) /* undefined */ \ 161704b94745Smrg XXX(0x3B, UNDEF) /* undefined */ \ 161804b94745Smrg XXX(0x3C, UNDEF) /* undefined */ \ 161904b94745Smrg XXX(0x3D, UNDEF) /* undefined */ \ 162004b94745Smrg XXX(0x3E, UNDEF) /* undefined */ \ 162104b94745Smrg XXX(0x3F, UNDEF) /* undefined */ \ 162204b94745Smrg UNI(0x40, 0x044E) /* CYRILLIC SMALL LETTER YU */ \ 162304b94745Smrg UNI(0x41, 0x0430) /* CYRILLIC SMALL LETTER A */ \ 162404b94745Smrg UNI(0x42, 0x0431) /* CYRILLIC SMALL LETTER BE */ \ 162504b94745Smrg UNI(0x43, 0x0446) /* CYRILLIC SMALL LETTER TSE */ \ 162604b94745Smrg UNI(0x44, 0x0434) /* CYRILLIC SMALL LETTER DE */ \ 162704b94745Smrg UNI(0x45, 0x0435) /* CYRILLIC SMALL LETTER IE */ \ 162804b94745Smrg UNI(0x46, 0x0444) /* CYRILLIC SMALL LETTER EF */ \ 162904b94745Smrg UNI(0x47, 0x0433) /* CYRILLIC SMALL LETTER GHE */ \ 163004b94745Smrg UNI(0x48, 0x0445) /* CYRILLIC SMALL LETTER HA */ \ 163104b94745Smrg UNI(0x49, 0x0438) /* CYRILLIC SMALL LETTER I */ \ 163204b94745Smrg UNI(0x4A, 0x0439) /* CYRILLIC SMALL LETTER SHORT I */ \ 163304b94745Smrg UNI(0x4B, 0x043A) /* CYRILLIC SMALL LETTER KA */ \ 163404b94745Smrg UNI(0x4C, 0x043B) /* CYRILLIC SMALL LETTER EL */ \ 163504b94745Smrg UNI(0x4D, 0x043C) /* CYRILLIC SMALL LETTER EM */ \ 163604b94745Smrg UNI(0x4E, 0x043D) /* CYRILLIC SMALL LETTER EN */ \ 163704b94745Smrg UNI(0x4F, 0x043E) /* CYRILLIC SMALL LETTER O */ \ 163804b94745Smrg UNI(0x50, 0x043F) /* CYRILLIC SMALL LETTER PE */ \ 163904b94745Smrg UNI(0x51, 0x044F) /* CYRILLIC SMALL LETTER YA */ \ 164004b94745Smrg UNI(0x52, 0x0440) /* CYRILLIC SMALL LETTER ER */ \ 164104b94745Smrg UNI(0x53, 0x0441) /* CYRILLIC SMALL LETTER ES */ \ 164204b94745Smrg UNI(0x54, 0x0442) /* CYRILLIC SMALL LETTER TE */ \ 164304b94745Smrg UNI(0x55, 0x0443) /* CYRILLIC SMALL LETTER U */ \ 164404b94745Smrg UNI(0x56, 0x0436) /* CYRILLIC SMALL LETTER ZHE */ \ 164504b94745Smrg UNI(0x57, 0x0432) /* CYRILLIC SMALL LETTER VE */ \ 164604b94745Smrg UNI(0x58, 0x044C) /* CYRILLIC SMALL LETTER SOFT SIGN */ \ 164704b94745Smrg UNI(0x59, 0x044B) /* CYRILLIC SMALL LETTER YERU */ \ 164804b94745Smrg UNI(0x5A, 0x0437) /* CYRILLIC SMALL LETTER ZE */ \ 164904b94745Smrg UNI(0x5B, 0x0448) /* CYRILLIC SMALL LETTER SHA */ \ 165004b94745Smrg UNI(0x5C, 0x044D) /* CYRILLIC SMALL LETTER E */ \ 165104b94745Smrg UNI(0x5D, 0x0449) /* CYRILLIC SMALL LETTER SHCHA */ \ 165204b94745Smrg UNI(0x5E, 0x0447) /* CYRILLIC SMALL LETTER CHE */ \ 165304b94745Smrg UNI(0x5F, 0x044A) /* CYRILLIC SMALL LETTER HARD SIGN */ \ 165404b94745Smrg UNI(0x60, 0x042E) /* CYRILLIC CAPITAL LETTER YU */ \ 165504b94745Smrg UNI(0x61, 0x0410) /* CYRILLIC CAPITAL LETTER A */ \ 165604b94745Smrg UNI(0x62, 0x0411) /* CYRILLIC CAPITAL LETTER BE */ \ 165704b94745Smrg UNI(0x63, 0x0426) /* CYRILLIC CAPITAL LETTER TSE */ \ 165804b94745Smrg UNI(0x64, 0x0414) /* CYRILLIC CAPITAL LETTER DE */ \ 165904b94745Smrg UNI(0x65, 0x0415) /* CYRILLIC CAPITAL LETTER IE */ \ 166004b94745Smrg UNI(0x66, 0x0424) /* CYRILLIC CAPITAL LETTER EF */ \ 166104b94745Smrg UNI(0x67, 0x0413) /* CYRILLIC CAPITAL LETTER GHE */ \ 166204b94745Smrg UNI(0x68, 0x0425) /* CYRILLIC CAPITAL LETTER HA */ \ 166304b94745Smrg UNI(0x69, 0x0418) /* CYRILLIC CAPITAL LETTER I */ \ 166404b94745Smrg UNI(0x6A, 0x0419) /* CYRILLIC CAPITAL LETTER SHORT I */ \ 166504b94745Smrg UNI(0x6B, 0x041A) /* CYRILLIC CAPITAL LETTER KA */ \ 166604b94745Smrg UNI(0x6C, 0x041B) /* CYRILLIC CAPITAL LETTER EL */ \ 166704b94745Smrg UNI(0x6D, 0x041C) /* CYRILLIC CAPITAL LETTER EM */ \ 166804b94745Smrg UNI(0x6E, 0x041D) /* CYRILLIC CAPITAL LETTER EN */ \ 166904b94745Smrg UNI(0x6F, 0x041E) /* CYRILLIC CAPITAL LETTER O */ \ 167004b94745Smrg UNI(0x70, 0x041F) /* CYRILLIC CAPITAL LETTER PE */ \ 167104b94745Smrg UNI(0x71, 0x042F) /* CYRILLIC CAPITAL LETTER YA */ \ 167204b94745Smrg UNI(0x72, 0x0420) /* CYRILLIC CAPITAL LETTER ER */ \ 167304b94745Smrg UNI(0x73, 0x0421) /* CYRILLIC CAPITAL LETTER ES */ \ 167404b94745Smrg UNI(0x74, 0x0422) /* CYRILLIC CAPITAL LETTER TE */ \ 167504b94745Smrg UNI(0x75, 0x0423) /* CYRILLIC CAPITAL LETTER U */ \ 167604b94745Smrg UNI(0x76, 0x0416) /* CYRILLIC CAPITAL LETTER ZHE */ \ 167704b94745Smrg UNI(0x77, 0x0412) /* CYRILLIC CAPITAL LETTER VE */ \ 167804b94745Smrg UNI(0x78, 0x042C) /* CYRILLIC CAPITAL LETTER SOFT SIGN */ \ 167904b94745Smrg UNI(0x79, 0x042B) /* CYRILLIC CAPITAL LETTER YERU */ \ 168004b94745Smrg UNI(0x7A, 0x0417) /* CYRILLIC CAPITAL LETTER ZE */ \ 168104b94745Smrg UNI(0x7B, 0x0428) /* CYRILLIC CAPITAL LETTER SHA */ \ 168204b94745Smrg UNI(0x7C, 0x042D) /* CYRILLIC CAPITAL LETTER E */ \ 168304b94745Smrg UNI(0x7D, 0x0429) /* CYRILLIC CAPITAL LETTER SHCHA */ \ 168404b94745Smrg UNI(0x7E, 0x0427) /* CYRILLIC CAPITAL LETTER CHE */ \ 168504b94745Smrg } \ 168604b94745Smrg end_CODEPAGE() 168704b94745Smrg 168804b94745Smrg#define unmap_DEC_Cyrillic(code,dft) \ 168904b94745Smrg switch (code) { \ 169004b94745Smrg MAP(0x21, 0x1B) /* undefined */ \ 169104b94745Smrg MAP(0x22, 0x1B) /* undefined */ \ 169204b94745Smrg MAP(0x23, 0x1B) /* undefined */ \ 169304b94745Smrg MAP(0x24, 0x1B) /* undefined */ \ 169404b94745Smrg MAP(0x25, 0x1B) /* undefined */ \ 169504b94745Smrg MAP(0x26, 0x1B) /* undefined */ \ 169604b94745Smrg MAP(0x27, 0x1B) /* undefined */ \ 169704b94745Smrg MAP(0x28, 0x1B) /* undefined */ \ 169804b94745Smrg MAP(0x29, 0x1B) /* undefined */ \ 169904b94745Smrg MAP(0x2A, 0x1B) /* undefined */ \ 170004b94745Smrg MAP(0x2B, 0x1B) /* undefined */ \ 170104b94745Smrg MAP(0x2C, 0x1B) /* undefined */ \ 170204b94745Smrg MAP(0x2D, 0x1B) /* undefined */ \ 170304b94745Smrg MAP(0x2E, 0x1B) /* undefined */ \ 170404b94745Smrg MAP(0x2F, 0x1B) /* undefined */ \ 170504b94745Smrg MAP(0x30, 0x1B) /* undefined */ \ 170604b94745Smrg MAP(0x31, 0x1B) /* undefined */ \ 170704b94745Smrg MAP(0x32, 0x1B) /* undefined */ \ 170804b94745Smrg MAP(0x33, 0x1B) /* undefined */ \ 170904b94745Smrg MAP(0x34, 0x1B) /* undefined */ \ 171004b94745Smrg MAP(0x35, 0x1B) /* undefined */ \ 171104b94745Smrg MAP(0x36, 0x1B) /* undefined */ \ 171204b94745Smrg MAP(0x37, 0x1B) /* undefined */ \ 171304b94745Smrg MAP(0x38, 0x1B) /* undefined */ \ 171404b94745Smrg MAP(0x39, 0x1B) /* undefined */ \ 171504b94745Smrg MAP(0x3A, 0x1B) /* undefined */ \ 171604b94745Smrg MAP(0x3B, 0x1B) /* undefined */ \ 171704b94745Smrg MAP(0x3C, 0x1B) /* undefined */ \ 171804b94745Smrg MAP(0x3D, 0x1B) /* undefined */ \ 171904b94745Smrg MAP(0x3E, 0x1B) /* undefined */ \ 172004b94745Smrg MAP(0x3F, 0x1B) /* undefined */ \ 172104b94745Smrg MAP(0x40, 0x4F) /* CYRILLIC SMALL LETTER YU */ \ 172204b94745Smrg MAP(0x41, 0x31) /* CYRILLIC SMALL LETTER A */ \ 172304b94745Smrg MAP(0x42, 0x32) /* CYRILLIC SMALL LETTER BE */ \ 172404b94745Smrg MAP(0x43, 0x47) /* CYRILLIC SMALL LETTER TSE */ \ 172504b94745Smrg MAP(0x44, 0x35) /* CYRILLIC SMALL LETTER DE */ \ 172604b94745Smrg MAP(0x45, 0x36) /* CYRILLIC SMALL LETTER IE */ \ 172704b94745Smrg MAP(0x46, 0x45) /* CYRILLIC SMALL LETTER EF */ \ 172804b94745Smrg MAP(0x47, 0x34) /* CYRILLIC SMALL LETTER GHE */ \ 172904b94745Smrg MAP(0x48, 0x46) /* CYRILLIC SMALL LETTER HA */ \ 173004b94745Smrg MAP(0x49, 0x39) /* CYRILLIC SMALL LETTER I */ \ 173104b94745Smrg MAP(0x4A, 0x3A) /* CYRILLIC SMALL LETTER SHORT I */ \ 173204b94745Smrg MAP(0x4B, 0x3B) /* CYRILLIC SMALL LETTER KA */ \ 173304b94745Smrg MAP(0x4C, 0x3C) /* CYRILLIC SMALL LETTER EL */ \ 173404b94745Smrg MAP(0x4D, 0x3D) /* CYRILLIC SMALL LETTER EM */ \ 173504b94745Smrg MAP(0x4E, 0x3E) /* CYRILLIC SMALL LETTER EN */ \ 173604b94745Smrg MAP(0x4F, 0x3F) /* CYRILLIC SMALL LETTER O */ \ 173704b94745Smrg MAP(0x50, 0x40) /* CYRILLIC SMALL LETTER PE */ \ 173804b94745Smrg MAP(0x51, 0x50) /* CYRILLIC SMALL LETTER YA */ \ 173904b94745Smrg MAP(0x52, 0x41) /* CYRILLIC SMALL LETTER ER */ \ 174004b94745Smrg MAP(0x53, 0x42) /* CYRILLIC SMALL LETTER ES */ \ 174104b94745Smrg MAP(0x54, 0x43) /* CYRILLIC SMALL LETTER TE */ \ 174204b94745Smrg MAP(0x55, 0x44) /* CYRILLIC SMALL LETTER U */ \ 174304b94745Smrg MAP(0x56, 0x37) /* CYRILLIC SMALL LETTER ZHE */ \ 174404b94745Smrg MAP(0x57, 0x33) /* CYRILLIC SMALL LETTER VE */ \ 174504b94745Smrg MAP(0x58, 0x4D) /* CYRILLIC SMALL LETTER SOFT SIGN */ \ 174604b94745Smrg MAP(0x59, 0x4C) /* CYRILLIC SMALL LETTER YERU */ \ 174704b94745Smrg MAP(0x5A, 0x38) /* CYRILLIC SMALL LETTER ZE */ \ 174804b94745Smrg MAP(0x5B, 0x49) /* CYRILLIC SMALL LETTER SHA */ \ 174904b94745Smrg MAP(0x5C, 0x4E) /* CYRILLIC SMALL LETTER E */ \ 175004b94745Smrg MAP(0x5D, 0x4A) /* CYRILLIC SMALL LETTER SHCHA */ \ 175104b94745Smrg MAP(0x5E, 0x48) /* CYRILLIC SMALL LETTER CHE */ \ 175204b94745Smrg MAP(0x5F, 0x4B) /* CYRILLIC SMALL LETTER HARD SIGN */ \ 175304b94745Smrg MAP(0x60, 0x2F) /* CYRILLIC CAPITAL LETTER YU */ \ 175404b94745Smrg MAP(0x61, 0x11) /* CYRILLIC CAPITAL LETTER A */ \ 175504b94745Smrg MAP(0x62, 0x12) /* CYRILLIC CAPITAL LETTER BE */ \ 175604b94745Smrg MAP(0x63, 0x27) /* CYRILLIC CAPITAL LETTER TSE */ \ 175704b94745Smrg MAP(0x64, 0x15) /* CYRILLIC CAPITAL LETTER DE */ \ 175804b94745Smrg MAP(0x65, 0x16) /* CYRILLIC CAPITAL LETTER IE */ \ 175904b94745Smrg MAP(0x66, 0x25) /* CYRILLIC CAPITAL LETTER EF */ \ 176004b94745Smrg MAP(0x67, 0x14) /* CYRILLIC CAPITAL LETTER GHE */ \ 176104b94745Smrg MAP(0x68, 0x26) /* CYRILLIC CAPITAL LETTER HA */ \ 176204b94745Smrg MAP(0x69, 0x19) /* CYRILLIC CAPITAL LETTER I */ \ 176304b94745Smrg MAP(0x6A, 0x1A) /* CYRILLIC CAPITAL LETTER SHORT I */ \ 176404b94745Smrg MAP(0x6B, 0x1B) /* CYRILLIC CAPITAL LETTER KA */ \ 176504b94745Smrg MAP(0x6C, 0x1C) /* CYRILLIC CAPITAL LETTER EL */ \ 176604b94745Smrg MAP(0x6D, 0x1D) /* CYRILLIC CAPITAL LETTER EM */ \ 176704b94745Smrg MAP(0x6E, 0x1E) /* CYRILLIC CAPITAL LETTER EN */ \ 176804b94745Smrg MAP(0x6F, 0x1F) /* CYRILLIC CAPITAL LETTER O */ \ 176904b94745Smrg MAP(0x70, 0x20) /* CYRILLIC CAPITAL LETTER PE */ \ 177004b94745Smrg MAP(0x71, 0x30) /* CYRILLIC CAPITAL LETTER YA */ \ 177104b94745Smrg MAP(0x72, 0x21) /* CYRILLIC CAPITAL LETTER ER */ \ 177204b94745Smrg MAP(0x73, 0x22) /* CYRILLIC CAPITAL LETTER ES */ \ 177304b94745Smrg MAP(0x74, 0x23) /* CYRILLIC CAPITAL LETTER TE */ \ 177404b94745Smrg MAP(0x75, 0x24) /* CYRILLIC CAPITAL LETTER U */ \ 177504b94745Smrg MAP(0x76, 0x17) /* CYRILLIC CAPITAL LETTER ZHE */ \ 177604b94745Smrg MAP(0x77, 0x13) /* CYRILLIC CAPITAL LETTER VE */ \ 177704b94745Smrg MAP(0x78, 0x2D) /* CYRILLIC CAPITAL LETTER SOFT SIGN */ \ 177804b94745Smrg MAP(0x79, 0x2C) /* CYRILLIC CAPITAL LETTER YERU */ \ 177904b94745Smrg MAP(0x7A, 0x18) /* CYRILLIC CAPITAL LETTER ZE */ \ 178004b94745Smrg MAP(0x7B, 0x29) /* CYRILLIC CAPITAL LETTER SHA */ \ 178104b94745Smrg MAP(0x7C, 0x2E) /* CYRILLIC CAPITAL LETTER E */ \ 178204b94745Smrg MAP(0x7D, 0x2A) /* CYRILLIC CAPITAL LETTER SHCHA */ \ 178304b94745Smrg MAP(0x7E, 0x28) /* CYRILLIC CAPITAL LETTER CHE */ \ 178404b94745Smrg default: dft; break; \ 178504b94745Smrg } 178604b94745Smrg 178704b94745Smrg/* 178804b94745Smrg * figure A-24 "DEC Greek Supplemental Character Set" 178904b94745Smrg */ 179004b94745Smrg#define map_DEC_Greek_Supp(code) \ 179104b94745Smrg begin_CODEPAGE(94) \ 179204b94745Smrg switch (code) { \ 179304b94745Smrg UNI(0x21, 0x00A1) /* LEFT SINGLE QUOTATION MARK */ \ 179404b94745Smrg UNI(0x22, 0x00A2) /* RIGHT SINGLE QUOTATION MARK */ \ 179504b94745Smrg UNI(0x23, 0x00A3) /* POUND SIGN */ \ 179604b94745Smrg XXX(0x24, UNDEF) /* EURO SIGN */ \ 179704b94745Smrg UNI(0x25, 0x00A5) /* YEN SIGN */ \ 179804b94745Smrg XXX(0x26, UNDEF) /* BROKEN BAR */ \ 179904b94745Smrg UNI(0x27, 0x00A7) /* SECTION SIGN */ \ 180004b94745Smrg UNI(0x28, 0x00A4) /* CURRENCY SIGN */ \ 180104b94745Smrg UNI(0x29, 0x00A9) /* COPYRIGHT SIGN */ \ 180204b94745Smrg UNI(0x2A, 0x00AA) /* FEMININE ORDINAL INDICATOR */ \ 180304b94745Smrg UNI(0x2B, 0x00AB) /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 180404b94745Smrg XXX(0x2C, UNDEF) /* reserved */ \ 180504b94745Smrg XXX(0x2D, UNDEF) /* reserved */ \ 180604b94745Smrg XXX(0x2E, UNDEF) /* reserved */ \ 180704b94745Smrg XXX(0x2F, UNDEF) /* reserved */ \ 180804b94745Smrg UNI(0x30, 0x00B0) /* DEGREE SIGN */ \ 180904b94745Smrg UNI(0x31, 0x00B1) /* PLUS-MINUS SIGN */ \ 181004b94745Smrg UNI(0x32, 0x00B2) /* SUPERSCRIPT TWO */ \ 181104b94745Smrg UNI(0x33, 0x00B3) /* SUPERSCRIPT THREE */ \ 181204b94745Smrg XXX(0x34, UNDEF) /* reserved */ \ 181304b94745Smrg UNI(0x35, 0x00B5) /* MICRO SIGN */ \ 181404b94745Smrg UNI(0x36, 0x00B6) /* PILCROW SIGN */ \ 181504b94745Smrg UNI(0x37, 0x00B7) /* MIDDLE DOT */ \ 181604b94745Smrg XXX(0x38, UNDEF) /* reserved */ \ 181704b94745Smrg UNI(0x39, 0x00B9) /* SUPERSCRIPT ONE */ \ 181804b94745Smrg UNI(0x3A, 0x00BA) /* MASCULINE ORDINAL INDICATOR */ \ 181904b94745Smrg UNI(0x3B, 0x00BB) /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 182004b94745Smrg UNI(0x3C, 0x00BC) /* VULGAR FRACTION ONE QUARTER */ \ 182104b94745Smrg UNI(0x3D, 0x00BD) /* VULGAR FRACTION ONE HALF */ \ 182204b94745Smrg XXX(0x3E, UNDEF) /* reserved */ \ 182304b94745Smrg UNI(0x3F, 0x00BF) /* INVERTED QUESTION MARK */ \ 182404b94745Smrg UNI(0x40, 0x03CA) /* GREEK SMALL LETTER IOTA WITH DIALYTIKA */ \ 182504b94745Smrg UNI(0x41, 0x0391) /* GREEK CAPITAL LETTER ALPHA */ \ 182604b94745Smrg UNI(0x42, 0x0392) /* GREEK CAPITAL LETTER BETA */ \ 182704b94745Smrg UNI(0x43, 0x0393) /* GREEK CAPITAL LETTER GAMMA */ \ 182804b94745Smrg UNI(0x44, 0x0394) /* GREEK CAPITAL LETTER DELTA */ \ 182904b94745Smrg UNI(0x45, 0x0395) /* GREEK CAPITAL LETTER EPSILON */ \ 183004b94745Smrg UNI(0x46, 0x0396) /* GREEK CAPITAL LETTER ZETA */ \ 183104b94745Smrg UNI(0x47, 0x0397) /* GREEK CAPITAL LETTER ETA */ \ 183204b94745Smrg UNI(0x48, 0x0398) /* GREEK CAPITAL LETTER THETA */ \ 183304b94745Smrg UNI(0x49, 0x0399) /* GREEK CAPITAL LETTER IOTA */ \ 183404b94745Smrg UNI(0x4A, 0x039A) /* GREEK CAPITAL LETTER KAPPA */ \ 183504b94745Smrg UNI(0x4B, 0x039B) /* GREEK CAPITAL LETTER LAMDA */ \ 183604b94745Smrg UNI(0x4C, 0x039C) /* GREEK CAPITAL LETTER MU */ \ 183704b94745Smrg UNI(0x4D, 0x039D) /* GREEK CAPITAL LETTER NU */ \ 183804b94745Smrg UNI(0x4E, 0x039E) /* GREEK CAPITAL LETTER XI */ \ 183904b94745Smrg UNI(0x4F, 0x039F) /* GREEK CAPITAL LETTER OMICRON */ \ 184004b94745Smrg XXX(0x50, UNDEF) /* reserved */ \ 184104b94745Smrg UNI(0x51, 0x03A0) /* GREEK CAPITAL LETTER PI */ \ 184204b94745Smrg UNI(0x52, 0x03A1) /* GREEK CAPITAL LETTER RHO */ \ 184304b94745Smrg UNI(0x53, 0x03A3) /* GREEK CAPITAL LETTER SIGMA */ \ 184404b94745Smrg UNI(0x54, 0x03A4) /* GREEK CAPITAL LETTER TAU */ \ 184504b94745Smrg UNI(0x55, 0x03A5) /* GREEK CAPITAL LETTER UPSILON */ \ 184604b94745Smrg UNI(0x56, 0x03A6) /* GREEK CAPITAL LETTER PHI */ \ 184704b94745Smrg UNI(0x57, 0x03A7) /* GREEK CAPITAL LETTER CHI */ \ 184804b94745Smrg UNI(0x58, 0x03A8) /* GREEK CAPITAL LETTER PSI */ \ 184904b94745Smrg UNI(0x59, 0x03A9) /* GREEK CAPITAL LETTER OMEGA */ \ 185004b94745Smrg UNI(0x5A, 0x03AC) /* GREEK SMALL LETTER ALPHA WITH TONOS */ \ 185104b94745Smrg UNI(0x5B, 0x03AD) /* GREEK SMALL LETTER EPSILON WITH TONOS */ \ 185204b94745Smrg UNI(0x5C, 0x03AE) /* GREEK SMALL LETTER ETA WITH TONOS */ \ 185304b94745Smrg UNI(0x5D, 0x03AF) /* GREEK SMALL LETTER IOTA WITH TONOS */ \ 185404b94745Smrg XXX(0x5E, UNDEF) /* reserved */ \ 185504b94745Smrg UNI(0x5F, 0x03CC) /* GREEK SMALL LETTER OMICRON WITH TONOS */ \ 185604b94745Smrg UNI(0x60, 0x03CB) /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA */ \ 185704b94745Smrg UNI(0x61, 0x03B1) /* GREEK SMALL LETTER ALPHA */ \ 185804b94745Smrg UNI(0x62, 0x03B2) /* GREEK SMALL LETTER BETA */ \ 185904b94745Smrg UNI(0x63, 0x03B3) /* GREEK SMALL LETTER GAMMA */ \ 186004b94745Smrg UNI(0x64, 0x03B4) /* GREEK SMALL LETTER DELTA */ \ 186104b94745Smrg UNI(0x65, 0x03B5) /* GREEK SMALL LETTER EPSILON */ \ 186204b94745Smrg UNI(0x66, 0x03B6) /* GREEK SMALL LETTER ZETA */ \ 186304b94745Smrg UNI(0x67, 0x03B7) /* GREEK SMALL LETTER ETA */ \ 186404b94745Smrg UNI(0x68, 0x03B8) /* GREEK SMALL LETTER THETA */ \ 186504b94745Smrg UNI(0x69, 0x03B9) /* GREEK SMALL LETTER IOTA */ \ 186604b94745Smrg UNI(0x6A, 0x03BA) /* GREEK SMALL LETTER KAPPA */ \ 186704b94745Smrg UNI(0x6B, 0x03BB) /* GREEK SMALL LETTER LAMDA */ \ 186804b94745Smrg UNI(0x6C, 0x03BC) /* GREEK SMALL LETTER MU */ \ 186904b94745Smrg UNI(0x6D, 0x03BD) /* GREEK SMALL LETTER NU */ \ 187004b94745Smrg UNI(0x6E, 0x03BE) /* GREEK SMALL LETTER XI */ \ 187104b94745Smrg UNI(0x6F, 0x03BF) /* GREEK SMALL LETTER OMICRON */ \ 187204b94745Smrg XXX(0x70, UNDEF) /* reserved */ \ 187304b94745Smrg UNI(0x71, 0x03C0) /* GREEK SMALL LETTER PI */ \ 187404b94745Smrg UNI(0x72, 0x03C1) /* GREEK SMALL LETTER RHO */ \ 187504b94745Smrg UNI(0x73, 0x03C3) /* GREEK SMALL LETTER SIGMA */ \ 187604b94745Smrg UNI(0x74, 0x03C4) /* GREEK SMALL LETTER TAU */ \ 187704b94745Smrg UNI(0x75, 0x03C5) /* GREEK SMALL LETTER UPSILON */ \ 187804b94745Smrg UNI(0x76, 0x03C6) /* GREEK SMALL LETTER PHI */ \ 187904b94745Smrg UNI(0x77, 0x03C7) /* GREEK SMALL LETTER CHI */ \ 188004b94745Smrg UNI(0x78, 0x03C8) /* GREEK SMALL LETTER PSI */ \ 188104b94745Smrg UNI(0x79, 0x03C9) /* GREEK SMALL LETTER OMEGA */ \ 188204b94745Smrg UNI(0x7A, 0x03C2) /* GREEK SMALL LETTER FINAL SIGMA */ \ 188304b94745Smrg UNI(0x7B, 0x03CD) /* GREEK SMALL LETTER UPSILON WITH TONOS */ \ 188404b94745Smrg UNI(0x7C, 0x03CE) /* GREEK SMALL LETTER OMEGA WITH TONOS */ \ 188504b94745Smrg UNI(0x7D, 0x0384) /* GREEK TONOS */ \ 188604b94745Smrg XXX(0x7E, UNDEF) /* reserved */ \ 188704b94745Smrg } \ 188804b94745Smrg end_CODEPAGE() 188904b94745Smrg 189004b94745Smrg#define unmap_DEC_Greek_Supp(code,dft) \ 189104b94745Smrg switch (code) { \ 189204b94745Smrg MAP(0x24, 0x1B) /* EURO SIGN */ \ 189304b94745Smrg MAP(0x26, 0x1B) /* BROKEN BAR */ \ 189404b94745Smrg MAP(0x28, 0xA4) /* CURRENCY SIGN */ \ 189504b94745Smrg MAP(0x2C, 0x1B) /* reserved */ \ 189604b94745Smrg MAP(0x2D, 0x1B) /* reserved */ \ 189704b94745Smrg MAP(0x2E, 0x1B) /* reserved */ \ 189804b94745Smrg MAP(0x2F, 0x1B) /* reserved */ \ 189904b94745Smrg MAP(0x34, 0x1B) /* reserved */ \ 190004b94745Smrg MAP(0x38, 0x1B) /* reserved */ \ 190104b94745Smrg MAP(0x3E, 0x1B) /* reserved */ \ 190204b94745Smrg MAP(0x40, 0xD0) /* GREEK SMALL LETTER IOTA WITH DIALYTIKA */ \ 190304b94745Smrg MAP(0x41, 0x76) /* GREEK CAPITAL LETTER ALPHA */ \ 190404b94745Smrg MAP(0x42, 0x77) /* GREEK CAPITAL LETTER BETA */ \ 190504b94745Smrg MAP(0x43, 0x78) /* GREEK CAPITAL LETTER GAMMA */ \ 190604b94745Smrg MAP(0x44, 0x79) /* GREEK CAPITAL LETTER DELTA */ \ 190704b94745Smrg MAP(0x45, 0x7A) /* GREEK CAPITAL LETTER EPSILON */ \ 190804b94745Smrg MAP(0x46, 0x7B) /* GREEK CAPITAL LETTER ZETA */ \ 190904b94745Smrg MAP(0x47, 0x7C) /* GREEK CAPITAL LETTER ETA */ \ 191004b94745Smrg MAP(0x48, 0x7D) /* GREEK CAPITAL LETTER THETA */ \ 191104b94745Smrg MAP(0x49, 0x7E) /* GREEK CAPITAL LETTER IOTA */ \ 191204b94745Smrg MAP(0x4A, 0x7F) /* GREEK CAPITAL LETTER KAPPA */ \ 191304b94745Smrg MAP(0x4B, 0xA2) /* GREEK CAPITAL LETTER LAMDA */ \ 191404b94745Smrg MAP(0x4C, 0xA3) /* GREEK CAPITAL LETTER MU */ \ 191504b94745Smrg MAP(0x4D, 0xA4) /* GREEK CAPITAL LETTER NU */ \ 191604b94745Smrg MAP(0x4E, 0xA5) /* GREEK CAPITAL LETTER XI */ \ 191704b94745Smrg MAP(0x4F, 0xA6) /* GREEK CAPITAL LETTER OMICRON */ \ 191804b94745Smrg MAP(0x50, 0x1B) /* reserved */ \ 191904b94745Smrg MAP(0x51, 0xA7) /* GREEK CAPITAL LETTER PI */ \ 192004b94745Smrg MAP(0x52, 0xA8) /* GREEK CAPITAL LETTER RHO */ \ 192104b94745Smrg MAP(0x53, 0xA9) /* GREEK CAPITAL LETTER SIGMA */ \ 192204b94745Smrg MAP(0x54, 0xAA) /* GREEK CAPITAL LETTER TAU */ \ 192304b94745Smrg MAP(0x55, 0xAB) /* GREEK CAPITAL LETTER UPSILON */ \ 192404b94745Smrg MAP(0x56, 0xAC) /* GREEK CAPITAL LETTER PHI */ \ 192504b94745Smrg MAP(0x57, 0xAD) /* GREEK CAPITAL LETTER CHI */ \ 192604b94745Smrg MAP(0x58, 0xAE) /* GREEK CAPITAL LETTER PSI */ \ 192704b94745Smrg MAP(0x59, 0xAF) /* GREEK CAPITAL LETTER OMEGA */ \ 192804b94745Smrg MAP(0x5A, 0xB2) /* GREEK SMALL LETTER ALPHA WITH TONOS */ \ 192904b94745Smrg MAP(0x5B, 0xB3) /* GREEK SMALL LETTER EPSILON WITH TONOS */ \ 193004b94745Smrg MAP(0x5C, 0xB4) /* GREEK SMALL LETTER ETA WITH TONOS */ \ 193104b94745Smrg MAP(0x5D, 0xB5) /* GREEK SMALL LETTER IOTA WITH TONOS */ \ 193204b94745Smrg MAP(0x5E, 0x1B) /* reserved */ \ 193304b94745Smrg MAP(0x5F, 0xD2) /* GREEK SMALL LETTER OMICRON WITH TONOS */ \ 193404b94745Smrg MAP(0x60, 0xD1) /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA */ \ 193504b94745Smrg MAP(0x61, 0xB7) /* GREEK SMALL LETTER ALPHA */ \ 193604b94745Smrg MAP(0x62, 0xB8) /* GREEK SMALL LETTER BETA */ \ 193704b94745Smrg MAP(0x63, 0xB9) /* GREEK SMALL LETTER GAMMA */ \ 193804b94745Smrg MAP(0x64, 0xBA) /* GREEK SMALL LETTER DELTA */ \ 193904b94745Smrg MAP(0x65, 0xBB) /* GREEK SMALL LETTER EPSILON */ \ 194004b94745Smrg MAP(0x66, 0xBC) /* GREEK SMALL LETTER ZETA */ \ 194104b94745Smrg MAP(0x67, 0xBD) /* GREEK SMALL LETTER ETA */ \ 194204b94745Smrg MAP(0x68, 0xBE) /* GREEK SMALL LETTER THETA */ \ 194304b94745Smrg MAP(0x69, 0xBF) /* GREEK SMALL LETTER IOTA */ \ 194404b94745Smrg MAP(0x6A, 0xC0) /* GREEK SMALL LETTER KAPPA */ \ 194504b94745Smrg MAP(0x6B, 0xC1) /* GREEK SMALL LETTER LAMDA */ \ 194604b94745Smrg MAP(0x6C, 0xC2) /* GREEK SMALL LETTER MU */ \ 194704b94745Smrg MAP(0x6D, 0xC3) /* GREEK SMALL LETTER NU */ \ 194804b94745Smrg MAP(0x6E, 0xC4) /* GREEK SMALL LETTER XI */ \ 194904b94745Smrg MAP(0x6F, 0xC5) /* GREEK SMALL LETTER OMICRON */ \ 195004b94745Smrg MAP(0x70, 0x1B) /* reserved */ \ 195104b94745Smrg MAP(0x71, 0xC6) /* GREEK SMALL LETTER PI */ \ 195204b94745Smrg MAP(0x72, 0xC7) /* GREEK SMALL LETTER RHO */ \ 195304b94745Smrg MAP(0x73, 0xC9) /* GREEK SMALL LETTER SIGMA */ \ 195404b94745Smrg MAP(0x74, 0xCA) /* GREEK SMALL LETTER TAU */ \ 195504b94745Smrg MAP(0x75, 0xCB) /* GREEK SMALL LETTER UPSILON */ \ 195604b94745Smrg MAP(0x76, 0xCC) /* GREEK SMALL LETTER PHI */ \ 195704b94745Smrg MAP(0x77, 0xCD) /* GREEK SMALL LETTER CHI */ \ 195804b94745Smrg MAP(0x78, 0xCE) /* GREEK SMALL LETTER PSI */ \ 195904b94745Smrg MAP(0x79, 0xCF) /* GREEK SMALL LETTER OMEGA */ \ 196004b94745Smrg MAP(0x7A, 0xC8) /* GREEK SMALL LETTER FINAL SIGMA */ \ 196104b94745Smrg MAP(0x7B, 0xD3) /* GREEK SMALL LETTER UPSILON WITH TONOS */ \ 196204b94745Smrg MAP(0x7C, 0xD4) /* GREEK SMALL LETTER OMEGA WITH TONOS */ \ 196304b94745Smrg MAP(0x7D, 0x96) /* GREEK TONOS */ \ 196404b94745Smrg MAP(0x7E, 0x1B) /* reserved */ \ 196504b94745Smrg default: dft; break; \ 196604b94745Smrg } 196704b94745Smrg 196804b94745Smrg/* 196904b94745Smrg * figure A-22 "DEC Hebrew Supplemental Character Set" 197004b94745Smrg */ 197104b94745Smrg#define map_DEC_Hebrew_Supp(code) \ 197204b94745Smrg begin_CODEPAGE(94) \ 197304b94745Smrg switch (code) { \ 197404b94745Smrg UNI(0x21, 0x00A1) /* INVERTED EXCLAMATION MARK */ \ 197504b94745Smrg UNI(0x22, 0x00A2) /* CENT SIGN */ \ 197604b94745Smrg UNI(0x23, 0x00A3) /* POUND SIGN */ \ 197704b94745Smrg XXX(0x24, UNDEF) /* CURRENCY SIGN */ \ 197804b94745Smrg UNI(0x25, 0x00A5) /* YEN SIGN */ \ 197904b94745Smrg XXX(0x26, UNDEF) /* BROKEN BAR */ \ 198004b94745Smrg UNI(0x27, 0x00A7) /* SECTION SIGN */ \ 198104b94745Smrg UNI(0x28, 0x00A8) /* DIAERESIS */ \ 198204b94745Smrg UNI(0x29, 0x00A9) /* COPYRIGHT SIGN */ \ 198304b94745Smrg UNI(0x2A, 0x00D7) /* MULTIPLICATION SIGN */ \ 198404b94745Smrg UNI(0x2B, 0x00AB) /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 198504b94745Smrg XXX(0x2C, UNDEF) /* NOT SIGN */ \ 198604b94745Smrg XXX(0x2D, UNDEF) /* SOFT HYPHEN */ \ 198704b94745Smrg XXX(0x2E, UNDEF) /* REGISTERED SIGN */ \ 198804b94745Smrg XXX(0x2F, UNDEF) /* MACRON */ \ 198904b94745Smrg UNI(0x30, 0x00B0) /* DEGREE SIGN */ \ 199004b94745Smrg UNI(0x31, 0x00B1) /* PLUS-MINUS SIGN */ \ 199104b94745Smrg UNI(0x32, 0x00B2) /* SUPERSCRIPT TWO */ \ 199204b94745Smrg UNI(0x33, 0x00B3) /* SUPERSCRIPT THREE */ \ 199304b94745Smrg XXX(0x34, UNDEF) /* ACUTE ACCENT */ \ 199404b94745Smrg UNI(0x35, 0x00B5) /* MICRO SIGN */ \ 199504b94745Smrg UNI(0x36, 0x00B6) /* PILCROW SIGN */ \ 199604b94745Smrg UNI(0x37, 0x00B7) /* MIDDLE DOT */ \ 199704b94745Smrg XXX(0x38, UNDEF) /* CEDILLA */ \ 199804b94745Smrg UNI(0x39, 0x00B9) /* SUPERSCRIPT ONE */ \ 199904b94745Smrg UNI(0x3A, 0x00F7) /* DIVISION SIGN */ \ 200004b94745Smrg UNI(0x3B, 0x00BB) /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 200104b94745Smrg UNI(0x3C, 0x00BC) /* VULGAR FRACTION ONE QUARTER */ \ 200204b94745Smrg UNI(0x3D, 0x00BD) /* VULGAR FRACTION ONE HALF */ \ 200304b94745Smrg XXX(0x3E, UNDEF) /* VULGAR FRACTION THREE QUARTERS */ \ 200404b94745Smrg UNI(0x3F, 0x00BF) /* INVERTED QUESTION MARK */ \ 200504b94745Smrg XXX(0x40, UNDEF) /* reserved */ \ 200604b94745Smrg XXX(0x41, UNDEF) /* reserved */ \ 200704b94745Smrg XXX(0x42, UNDEF) /* reserved */ \ 200804b94745Smrg XXX(0x43, UNDEF) /* reserved */ \ 200904b94745Smrg XXX(0x44, UNDEF) /* reserved */ \ 201004b94745Smrg XXX(0x45, UNDEF) /* reserved */ \ 201104b94745Smrg XXX(0x46, UNDEF) /* reserved */ \ 201204b94745Smrg XXX(0x47, UNDEF) /* reserved */ \ 201304b94745Smrg XXX(0x48, UNDEF) /* reserved */ \ 201404b94745Smrg XXX(0x49, UNDEF) /* reserved */ \ 201504b94745Smrg XXX(0x4A, UNDEF) /* reserved */ \ 201604b94745Smrg XXX(0x4B, UNDEF) /* reserved */ \ 201704b94745Smrg XXX(0x4C, UNDEF) /* reserved */ \ 201804b94745Smrg XXX(0x4D, UNDEF) /* reserved */ \ 201904b94745Smrg XXX(0x4E, UNDEF) /* reserved */ \ 202004b94745Smrg XXX(0x4F, UNDEF) /* reserved */ \ 202104b94745Smrg XXX(0x50, UNDEF) /* reserved */ \ 202204b94745Smrg XXX(0x51, UNDEF) /* reserved */ \ 202304b94745Smrg XXX(0x52, UNDEF) /* reserved */ \ 202404b94745Smrg XXX(0x53, UNDEF) /* reserved */ \ 202504b94745Smrg XXX(0x54, UNDEF) /* reserved */ \ 202604b94745Smrg XXX(0x55, UNDEF) /* reserved */ \ 202704b94745Smrg XXX(0x56, UNDEF) /* reserved */ \ 202804b94745Smrg XXX(0x57, UNDEF) /* reserved */ \ 202904b94745Smrg XXX(0x58, UNDEF) /* reserved */ \ 203004b94745Smrg XXX(0x59, UNDEF) /* reserved */ \ 203104b94745Smrg XXX(0x5A, UNDEF) /* reserved */ \ 203204b94745Smrg XXX(0x5B, UNDEF) /* reserved */ \ 203304b94745Smrg XXX(0x5C, UNDEF) /* reserved */ \ 203404b94745Smrg XXX(0x5D, UNDEF) /* reserved */ \ 203504b94745Smrg XXX(0x5E, UNDEF) /* reserved */ \ 203604b94745Smrg XXX(0x5F, UNDEF) /* reserved */ \ 203704b94745Smrg UNI(0x60, 0x05D0) /* HEBREW LETTER ALEF */ \ 203804b94745Smrg UNI(0x61, 0x05D1) /* HEBREW LETTER BET */ \ 203904b94745Smrg UNI(0x62, 0x05D2) /* HEBREW LETTER GIMEL */ \ 204004b94745Smrg UNI(0x63, 0x05D3) /* HEBREW LETTER DALET */ \ 204104b94745Smrg UNI(0x64, 0x05D4) /* HEBREW LETTER HE */ \ 204204b94745Smrg UNI(0x65, 0x05D5) /* HEBREW LETTER VAV */ \ 204304b94745Smrg UNI(0x66, 0x05D6) /* HEBREW LETTER ZAYIN */ \ 204404b94745Smrg UNI(0x67, 0x05D7) /* HEBREW LETTER HET */ \ 204504b94745Smrg UNI(0x68, 0x05D8) /* HEBREW LETTER TET */ \ 204604b94745Smrg UNI(0x69, 0x05D9) /* HEBREW LETTER YOD */ \ 204704b94745Smrg UNI(0x6A, 0x05DA) /* HEBREW LETTER FINAL KAF */ \ 204804b94745Smrg UNI(0x6B, 0x05DB) /* HEBREW LETTER KAF */ \ 204904b94745Smrg UNI(0x6C, 0x05DC) /* HEBREW LETTER LAMED */ \ 205004b94745Smrg UNI(0x6D, 0x05DD) /* HEBREW LETTER FINAL MEM */ \ 205104b94745Smrg UNI(0x6E, 0x05DE) /* HEBREW LETTER MEM */ \ 205204b94745Smrg UNI(0x6F, 0x05DF) /* HEBREW LETTER FINAL NUN */ \ 205304b94745Smrg UNI(0x70, 0x05E0) /* HEBREW LETTER NUN */ \ 205404b94745Smrg UNI(0x71, 0x05E1) /* HEBREW LETTER SAMEKH */ \ 205504b94745Smrg UNI(0x72, 0x05E2) /* HEBREW LETTER AYIN */ \ 205604b94745Smrg UNI(0x73, 0x05E3) /* HEBREW LETTER FINAL PE */ \ 205704b94745Smrg UNI(0x74, 0x05E4) /* HEBREW LETTER PE */ \ 205804b94745Smrg UNI(0x75, 0x05E5) /* HEBREW LETTER FINAL TSADI */ \ 205904b94745Smrg UNI(0x76, 0x05E6) /* HEBREW LETTER TSADI */ \ 206004b94745Smrg UNI(0x77, 0x05E7) /* HEBREW LETTER QOF */ \ 206104b94745Smrg UNI(0x78, 0x05E8) /* HEBREW LETTER RESH */ \ 206204b94745Smrg UNI(0x79, 0x05E9) /* HEBREW LETTER SHIN */ \ 206304b94745Smrg UNI(0x7A, 0x05EA) /* HEBREW LETTER TAV */ \ 206404b94745Smrg XXX(0x7B, UNDEF) /* reserved */ \ 206504b94745Smrg XXX(0x7C, UNDEF) /* reserved */ \ 206604b94745Smrg XXX(0x7D, UNDEF) /* reserved */ \ 206704b94745Smrg XXX(0x7E, UNDEF) /* reserved */ \ 206804b94745Smrg } \ 206904b94745Smrg end_CODEPAGE() 207004b94745Smrg 207104b94745Smrg#define unmap_DEC_Hebrew_Supp(code,dft) \ 207204b94745Smrg switch (code) { \ 207304b94745Smrg MAP(0x24, 0x1B) /* CURRENCY SIGN */ \ 207404b94745Smrg MAP(0x26, 0x1B) /* BROKEN BAR */ \ 207504b94745Smrg MAP(0x28, 0xA4) /* DIAERESIS */ \ 207604b94745Smrg MAP(0x2C, 0x1B) /* NOT SIGN */ \ 207704b94745Smrg MAP(0x2D, 0x1B) /* SOFT HYPHEN */ \ 207804b94745Smrg MAP(0x2E, 0x1B) /* REGISTERED SIGN */ \ 207904b94745Smrg MAP(0x2F, 0x1B) /* MACRON */ \ 208004b94745Smrg MAP(0x34, 0x1B) /* ACUTE ACCENT */ \ 208104b94745Smrg MAP(0x38, 0x1B) /* CEDILLA */ \ 208204b94745Smrg MAP(0x3E, 0x1B) /* VULGAR FRACTION THREE QUARTERS */ \ 208304b94745Smrg MAP(0x40, 0x1B) /* reserved */ \ 208404b94745Smrg MAP(0x41, 0x1B) /* reserved */ \ 208504b94745Smrg MAP(0x42, 0x1B) /* reserved */ \ 208604b94745Smrg MAP(0x43, 0x1B) /* reserved */ \ 208704b94745Smrg MAP(0x44, 0x1B) /* reserved */ \ 208804b94745Smrg MAP(0x45, 0x1B) /* reserved */ \ 208904b94745Smrg MAP(0x46, 0x1B) /* reserved */ \ 209004b94745Smrg MAP(0x47, 0x1B) /* reserved */ \ 209104b94745Smrg MAP(0x48, 0x1B) /* reserved */ \ 209204b94745Smrg MAP(0x49, 0x1B) /* reserved */ \ 209304b94745Smrg MAP(0x4A, 0x1B) /* reserved */ \ 209404b94745Smrg MAP(0x4B, 0x1B) /* reserved */ \ 209504b94745Smrg MAP(0x4C, 0x1B) /* reserved */ \ 209604b94745Smrg MAP(0x4D, 0x1B) /* reserved */ \ 209704b94745Smrg MAP(0x4E, 0x1B) /* reserved */ \ 209804b94745Smrg MAP(0x4F, 0x1B) /* reserved */ \ 209904b94745Smrg MAP(0x50, 0x1B) /* reserved */ \ 210004b94745Smrg MAP(0x51, 0x1B) /* reserved */ \ 210104b94745Smrg MAP(0x52, 0x1B) /* reserved */ \ 210204b94745Smrg MAP(0x53, 0x1B) /* reserved */ \ 210304b94745Smrg MAP(0x54, 0x1B) /* reserved */ \ 210404b94745Smrg MAP(0x55, 0x1B) /* reserved */ \ 210504b94745Smrg MAP(0x56, 0x1B) /* reserved */ \ 210604b94745Smrg MAP(0x57, 0x1B) /* reserved */ \ 210704b94745Smrg MAP(0x58, 0x1B) /* reserved */ \ 210804b94745Smrg MAP(0x59, 0x1B) /* reserved */ \ 210904b94745Smrg MAP(0x5A, 0x1B) /* reserved */ \ 211004b94745Smrg MAP(0x5B, 0x1B) /* reserved */ \ 211104b94745Smrg MAP(0x5C, 0x1B) /* reserved */ \ 211204b94745Smrg MAP(0x5D, 0x1B) /* reserved */ \ 211304b94745Smrg MAP(0x5E, 0x1B) /* reserved */ \ 211404b94745Smrg MAP(0x5F, 0x1B) /* reserved */ \ 211504b94745Smrg MAP(0x60, 0x53) /* HEBREW LETTER ALEF */ \ 211604b94745Smrg MAP(0x61, 0x54) /* HEBREW LETTER BET */ \ 211704b94745Smrg MAP(0x62, 0x55) /* HEBREW LETTER GIMEL */ \ 211804b94745Smrg MAP(0x63, 0x56) /* HEBREW LETTER DALET */ \ 211904b94745Smrg MAP(0x64, 0x57) /* HEBREW LETTER HE */ \ 212004b94745Smrg MAP(0x65, 0x58) /* HEBREW LETTER VAV */ \ 212104b94745Smrg MAP(0x66, 0x59) /* HEBREW LETTER ZAYIN */ \ 212204b94745Smrg MAP(0x67, 0x5A) /* HEBREW LETTER HET */ \ 212304b94745Smrg MAP(0x68, 0x5B) /* HEBREW LETTER TET */ \ 212404b94745Smrg MAP(0x69, 0x5C) /* HEBREW LETTER YOD */ \ 212504b94745Smrg MAP(0x6A, 0x5D) /* HEBREW LETTER FINAL KAF */ \ 212604b94745Smrg MAP(0x6B, 0x5E) /* HEBREW LETTER KAF */ \ 212704b94745Smrg MAP(0x6C, 0x5F) /* HEBREW LETTER LAMED */ \ 212804b94745Smrg MAP(0x6D, 0x60) /* HEBREW LETTER FINAL MEM */ \ 212904b94745Smrg MAP(0x6E, 0x61) /* HEBREW LETTER MEM */ \ 213004b94745Smrg MAP(0x6F, 0x62) /* HEBREW LETTER FINAL NUN */ \ 213104b94745Smrg MAP(0x70, 0x63) /* HEBREW LETTER NUN */ \ 213204b94745Smrg MAP(0x71, 0x64) /* HEBREW LETTER SAMEKH */ \ 213304b94745Smrg MAP(0x72, 0x65) /* HEBREW LETTER AYIN */ \ 213404b94745Smrg MAP(0x73, 0x66) /* HEBREW LETTER FINAL PE */ \ 213504b94745Smrg MAP(0x74, 0x67) /* HEBREW LETTER PE */ \ 213604b94745Smrg MAP(0x75, 0x68) /* HEBREW LETTER FINAL TSADI */ \ 213704b94745Smrg MAP(0x76, 0x69) /* HEBREW LETTER TSADI */ \ 213804b94745Smrg MAP(0x77, 0x6A) /* HEBREW LETTER QOF */ \ 213904b94745Smrg MAP(0x78, 0x6B) /* HEBREW LETTER RESH */ \ 214004b94745Smrg MAP(0x79, 0x6C) /* HEBREW LETTER SHIN */ \ 214104b94745Smrg MAP(0x7A, 0x6D) /* HEBREW LETTER TAV */ \ 214204b94745Smrg MAP(0x7B, 0x1B) /* reserved */ \ 214304b94745Smrg MAP(0x7C, 0x1B) /* reserved */ \ 214404b94745Smrg MAP(0x7D, 0x1B) /* reserved */ \ 214504b94745Smrg MAP(0x7E, 0x1B) /* reserved */ \ 214604b94745Smrg default: dft; break; \ 214704b94745Smrg } 214804b94745Smrg 214904b94745Smrg/* 215004b94745Smrg * figure A-27 "DEC 8-Bit Turkish Supplemental Character Set" 215104b94745Smrg */ 215204b94745Smrg#define map_DEC_Turkish_Supp(code) \ 215304b94745Smrg begin_CODEPAGE(94) \ 215404b94745Smrg switch (code) { \ 215504b94745Smrg UNI(0x21, 0x00A1) /* INVERTED EXCLAMATION MARK */ \ 215604b94745Smrg UNI(0x22, 0x00A2) /* CENT SIGN */ \ 215704b94745Smrg UNI(0x23, 0x00A3) /* POUND SIGN */ \ 215804b94745Smrg XXX(0x24, UNDEF) /* reserved */ \ 215904b94745Smrg UNI(0x25, 0x00A5) /* YEN SIGN */ \ 216004b94745Smrg XXX(0x26, UNDEF) /* reserved */ \ 216104b94745Smrg UNI(0x27, 0x00A7) /* SECTION SIGN */ \ 216204b94745Smrg UNI(0x28, 0x00A8) /* DIAERESIS */ \ 216304b94745Smrg UNI(0x29, 0x00A9) /* COPYRIGHT SIGN */ \ 216404b94745Smrg UNI(0x2A, 0x00AA) /* FEMININE ORDINAL INDICATOR */ \ 216504b94745Smrg UNI(0x2B, 0x00AB) /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 216604b94745Smrg XXX(0x2C, UNDEF) /* reserved */ \ 216704b94745Smrg XXX(0x2D, UNDEF) /* reserved */ \ 216804b94745Smrg UNI(0x2E, 0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */ \ 216904b94745Smrg XXX(0x2F, UNDEF) /* reserved */ \ 217004b94745Smrg UNI(0x30, 0x00B0) /* DEGREE SIGN */ \ 217104b94745Smrg UNI(0x31, 0x00B1) /* PLUS-MINUS SIGN */ \ 217204b94745Smrg UNI(0x32, 0x00B2) /* SUPERSCRIPT TWO */ \ 217304b94745Smrg UNI(0x33, 0x00B3) /* SUPERSCRIPT THREE */ \ 217404b94745Smrg XXX(0x34, UNDEF) /* reserved */ \ 217504b94745Smrg UNI(0x35, 0x00B5) /* MICRO SIGN */ \ 217604b94745Smrg UNI(0x36, 0x00B6) /* PILCROW SIGN */ \ 217704b94745Smrg UNI(0x37, 0x00B7) /* MIDDLE DOT */ \ 217804b94745Smrg XXX(0x38, UNDEF) /* reserved */ \ 217904b94745Smrg UNI(0x39, 0x00B9) /* SUPERSCRIPT ONE */ \ 218004b94745Smrg UNI(0x3A, 0x00BA) /* MASCULINE ORDINAL INDICATOR */ \ 218104b94745Smrg UNI(0x3B, 0x00BB) /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */ \ 218204b94745Smrg UNI(0x3C, 0x00BC) /* VULGAR FRACTION ONE QUARTER */ \ 218304b94745Smrg UNI(0x3D, 0x00BD) /* VULGAR FRACTION ONE HALF */ \ 218404b94745Smrg UNI(0x3E, 0x0131) /* LATIN SMALL LETTER DOTLESS I */ \ 218504b94745Smrg UNI(0x3F, 0x00BF) /* INVERTED QUESTION MARK */ \ 218604b94745Smrg UNI(0x40, 0x00C0) /* LATIN CAPITAL LETTER A WITH GRAVE */ \ 218704b94745Smrg UNI(0x41, 0x00C1) /* LATIN CAPITAL LETTER A WITH ACUTE */ \ 218804b94745Smrg UNI(0x42, 0x00C2) /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */ \ 218904b94745Smrg UNI(0x43, 0x00C3) /* LATIN CAPITAL LETTER A WITH TILDE */ \ 219004b94745Smrg UNI(0x44, 0x00C4) /* LATIN CAPITAL LETTER A WITH DIAERESIS */ \ 219104b94745Smrg UNI(0x45, 0x00C5) /* LATIN CAPITAL LETTER A WITH RING ABOVE */ \ 219204b94745Smrg UNI(0x46, 0x00C6) /* LATIN CAPITAL LETTER AE */ \ 219304b94745Smrg UNI(0x47, 0x00C7) /* LATIN CAPITAL LETTER C WITH CEDILLA */ \ 219404b94745Smrg UNI(0x48, 0x00C8) /* LATIN CAPITAL LETTER E WITH GRAVE */ \ 219504b94745Smrg UNI(0x49, 0x00C9) /* LATIN CAPITAL LETTER E WITH ACUTE */ \ 219604b94745Smrg UNI(0x4A, 0x00CA) /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX */ \ 219704b94745Smrg UNI(0x4B, 0x00CB) /* LATIN CAPITAL LETTER E WITH DIAERESIS */ \ 219804b94745Smrg UNI(0x4C, 0x00CC) /* LATIN CAPITAL LETTER I WITH GRAVE */ \ 219904b94745Smrg UNI(0x4D, 0x00CD) /* LATIN CAPITAL LETTER I WITH ACUTE */ \ 220004b94745Smrg UNI(0x4E, 0x00CE) /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */ \ 220104b94745Smrg UNI(0x4F, 0x00CF) /* LATIN CAPITAL LETTER I WITH DIAERESIS */ \ 220204b94745Smrg UNI(0x50, 0x011E) /* LATIN CAPITAL LETTER G WITH BREVE */ \ 220304b94745Smrg UNI(0x51, 0x00D1) /* LATIN CAPITAL LETTER N WITH TILDE */ \ 220404b94745Smrg UNI(0x52, 0x00D2) /* LATIN CAPITAL LETTER O WITH GRAVE */ \ 220504b94745Smrg UNI(0x53, 0x00D3) /* LATIN CAPITAL LETTER O WITH ACUTE */ \ 220604b94745Smrg UNI(0x54, 0x00D4) /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */ \ 220704b94745Smrg UNI(0x55, 0x00D5) /* LATIN CAPITAL LETTER O WITH TILDE */ \ 220804b94745Smrg UNI(0x56, 0x00D6) /* LATIN CAPITAL LETTER O WITH DIAERESIS */ \ 220904b94745Smrg UNI(0x57, 0x0152) /* LATIN CAPITAL LIGATURE OE */ \ 221004b94745Smrg UNI(0x58, 0x00D8) /* LATIN CAPITAL LETTER O WITH STROKE */ \ 221104b94745Smrg UNI(0x59, 0x00D9) /* LATIN CAPITAL LETTER U WITH GRAVE */ \ 221204b94745Smrg UNI(0x5A, 0x00DA) /* LATIN CAPITAL LETTER U WITH ACUTE */ \ 221304b94745Smrg UNI(0x5B, 0x00DB) /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */ \ 221404b94745Smrg UNI(0x5C, 0x00DC) /* LATIN CAPITAL LETTER U WITH DIAERESIS */ \ 221504b94745Smrg UNI(0x5D, 0x0178) /* LATIN CAPITAL LETTER Y WITH DIAERESIS */ \ 221604b94745Smrg UNI(0x5E, 0x015E) /* LATIN CAPITAL LETTER S WITH CEDILLA */ \ 221704b94745Smrg UNI(0x5F, 0x00DF) /* LATIN SMALL LETTER SHARP S */ \ 221804b94745Smrg UNI(0x60, 0x00E0) /* LATIN SMALL LETTER A WITH GRAVE */ \ 221904b94745Smrg UNI(0x61, 0x00E1) /* LATIN SMALL LETTER A WITH ACUTE */ \ 222004b94745Smrg UNI(0x62, 0x00E2) /* LATIN SMALL LETTER A WITH CIRCUMFLEX */ \ 222104b94745Smrg UNI(0x63, 0x00E3) /* LATIN SMALL LETTER A WITH TILDE */ \ 222204b94745Smrg UNI(0x64, 0x00E4) /* LATIN SMALL LETTER A WITH DIAERESIS */ \ 222304b94745Smrg UNI(0x65, 0x00E5) /* LATIN SMALL LETTER A WITH RING ABOVE */ \ 222404b94745Smrg UNI(0x66, 0x00E6) /* LATIN SMALL LETTER AE */ \ 222504b94745Smrg UNI(0x67, 0x00E7) /* LATIN SMALL LETTER C WITH CEDILLA */ \ 222604b94745Smrg UNI(0x68, 0x00E8) /* LATIN SMALL LETTER E WITH GRAVE */ \ 222704b94745Smrg UNI(0x69, 0x00E9) /* LATIN SMALL LETTER E WITH ACUTE */ \ 222804b94745Smrg UNI(0x6A, 0x00EA) /* LATIN SMALL LETTER E WITH CIRCUMFLEX */ \ 222904b94745Smrg UNI(0x6B, 0x00EB) /* LATIN SMALL LETTER E WITH DIAERESIS */ \ 223004b94745Smrg UNI(0x6C, 0x00EC) /* LATIN SMALL LETTER I WITH GRAVE */ \ 223104b94745Smrg UNI(0x6D, 0x00ED) /* LATIN SMALL LETTER I WITH ACUTE */ \ 223204b94745Smrg UNI(0x6E, 0x00EE) /* LATIN SMALL LETTER I WITH CIRCUMFLEX */ \ 223304b94745Smrg UNI(0x6F, 0x00EF) /* LATIN SMALL LETTER I WITH DIAERESIS */ \ 223404b94745Smrg UNI(0x70, 0x011F) /* LATIN SMALL LETTER G WITH BREVE */ \ 223504b94745Smrg UNI(0x71, 0x00F1) /* LATIN SMALL LETTER N WITH TILDE */ \ 223604b94745Smrg UNI(0x72, 0x00F2) /* LATIN SMALL LETTER O WITH GRAVE */ \ 223704b94745Smrg UNI(0x73, 0x00F3) /* LATIN SMALL LETTER O WITH ACUTE */ \ 223804b94745Smrg UNI(0x74, 0x00F4) /* LATIN SMALL LETTER O WITH CIRCUMFLEX */ \ 223904b94745Smrg UNI(0x75, 0x00F5) /* LATIN SMALL LETTER O WITH TILDE */ \ 224004b94745Smrg UNI(0x76, 0x00F6) /* LATIN SMALL LETTER O WITH DIAERESIS */ \ 224104b94745Smrg UNI(0x77, 0x0153) /* LATIN SMALL LIGATURE OE */ \ 224204b94745Smrg UNI(0x78, 0x00F8) /* LATIN SMALL LETTER O WITH STROKE */ \ 224304b94745Smrg UNI(0x79, 0x00F9) /* LATIN SMALL LETTER U WITH GRAVE */ \ 224404b94745Smrg UNI(0x7A, 0x00FA) /* LATIN SMALL LETTER U WITH ACUTE */ \ 224504b94745Smrg UNI(0x7B, 0x00FB) /* LATIN SMALL LETTER U WITH CIRCUMFLEX */ \ 224604b94745Smrg UNI(0x7C, 0x00FC) /* LATIN SMALL LETTER U WITH DIAERESIS */ \ 224704b94745Smrg UNI(0x7D, 0x00FF) /* LATIN SMALL LETTER Y WITH DIAERESIS */ \ 224804b94745Smrg UNI(0x7E, 0x015F) /* LATIN SMALL LETTER S WITH CEDILLA */ \ 224904b94745Smrg } \ 225004b94745Smrg end_CODEPAGE() 225104b94745Smrg 225204b94745Smrg#define unmap_DEC_Turkish_Supp(code,dft) \ 225304b94745Smrg switch (code) { \ 225404b94745Smrg MAP(0x24, 0x1B) /* reserved */ \ 225504b94745Smrg MAP(0x26, 0x1B) /* reserved */ \ 225604b94745Smrg MAP(0x28, 0xA4) /* DIAERESIS */ \ 225704b94745Smrg MAP(0x2C, 0x1B) /* reserved */ \ 225804b94745Smrg MAP(0x2D, 0x1B) /* reserved */ \ 225904b94745Smrg MAP(0x2E, 0x4F) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */ \ 226004b94745Smrg MAP(0x2F, 0x1B) /* reserved */ \ 226104b94745Smrg MAP(0x34, 0x1B) /* reserved */ \ 226204b94745Smrg MAP(0x38, 0x1B) /* reserved */ \ 226304b94745Smrg MAP(0x3E, 0x51) /* LATIN SMALL LETTER DOTLESS I */ \ 226404b94745Smrg MAP(0x50, 0x4E) /* LATIN CAPITAL LETTER G WITH BREVE */ \ 226504b94745Smrg MAP(0x57, 0x97) /* LATIN CAPITAL LIGATURE OE */ \ 226604b94745Smrg MAP(0x5D, 0x98) /* LATIN CAPITAL LETTER Y WITH DIAERESIS */ \ 226704b94745Smrg MAP(0x5E, 0x9F) /* LATIN CAPITAL LETTER S WITH CEDILLA */ \ 226804b94745Smrg MAP(0x70, 0x50) /* LATIN SMALL LETTER G WITH BREVE */ \ 226904b94745Smrg MAP(0x77, 0x99) /* LATIN SMALL LIGATURE OE */ \ 227004b94745Smrg MAP(0x7D, 0xFF) /* LATIN SMALL LETTER Y WITH DIAERESIS */ \ 227104b94745Smrg MAP(0x7E, 0x2A) /* LATIN SMALL LETTER S WITH CEDILLA */ \ 227204b94745Smrg default: dft; break; \ 227304b94745Smrg } 227404b94745Smrg 227504b94745Smrg/* 227604b94745Smrg * mentioned, but not documented in VT510 manual, etc., this uses 227704b94745Smrg * the ELOT927 table from Kermit 95: 227804b94745Smrg */ 227904b94745Smrg#define map_NRCS_Greek(code) \ 228004b94745Smrg switch (code) { \ 228104b94745Smrg UNI(0x61, 0x0391) /* CAPITAL GREEK LETTER ALPHA */ \ 228204b94745Smrg UNI(0x62, 0x0392) /* CAPITAL GREEK LETTER BETA */ \ 228304b94745Smrg UNI(0x63, 0x0393) /* CAPITAL GREEK LETTER GAMMA */ \ 228404b94745Smrg UNI(0x64, 0x0394) /* CAPITAL GREEK LETTER DELTA */ \ 228504b94745Smrg UNI(0x65, 0x0395) /* CAPITAL GREEK LETTER EPSILON */ \ 228604b94745Smrg UNI(0x66, 0x0396) /* CAPITAL GREEK LETTER ZETA */ \ 228704b94745Smrg UNI(0x67, 0x0397) /* CAPITAL GREEK LETTER ETA */ \ 228804b94745Smrg UNI(0x68, 0x0398) /* CAPITAL GREEK LETTER THETA */ \ 228904b94745Smrg UNI(0x69, 0x0399) /* CAPITAL GREEK LETTER IOTA */ \ 229004b94745Smrg UNI(0x6a, 0x039A) /* CAPITAL GREEK LETTER KAPPA */ \ 229104b94745Smrg UNI(0x6b, 0x039B) /* CAPITAL GREEK LETTER LAMDA */ \ 229204b94745Smrg UNI(0x6c, 0x039C) /* CAPITAL GREEK LETTER MU */ \ 229304b94745Smrg UNI(0x6d, 0x039D) /* CAPITAL GREEK LETTER NU */ \ 229404b94745Smrg UNI(0x6e, 0x03A7) /* CAPITAL GREEK LETTER KSI (CHI) */ \ 229504b94745Smrg UNI(0x6f, 0x039F) /* CAPITAL GREEK LETTER OMICRON */ \ 229604b94745Smrg UNI(0x70, 0x03A0) /* CAPITAL GREEK LETTER PI */ \ 229704b94745Smrg UNI(0x71, 0x03A1) /* CAPITAL GREEK LETTER RHO */ \ 229804b94745Smrg UNI(0x72, 0x03A3) /* CAPITAL GREEK LETTER SIGMA */ \ 229904b94745Smrg UNI(0x73, 0x03A4) /* CAPITAL GREEK LETTER TAU */ \ 230004b94745Smrg UNI(0x74, 0x03A5) /* CAPITAL GREEK LETTER UPSILON */ \ 230104b94745Smrg UNI(0x75, 0x03A6) /* CAPITAL GREEK LETTER FI (PHI) */ \ 230204b94745Smrg UNI(0x76, 0x039E) /* CAPITAL GREEK LETTER XI */ \ 230304b94745Smrg UNI(0x77, 0x03A8) /* CAPITAL GREEK LETTER PSI */ \ 230404b94745Smrg UNI(0x78, 0x03A9) /* CAPITAL GREEK LETTER OMEGA */ \ 230504b94745Smrg XXX(0x79, UNDEF) /* unused */ \ 230604b94745Smrg XXX(0x7a, UNDEF) /* unused */ \ 230704b94745Smrg } 230804b94745Smrg 230904b94745Smrg#define unmap_NRCS_Greek(code,dft) \ 231004b94745Smrg switch (code) { \ 231104b94745Smrg MAP(0x79, 0x1B) /* unused */ \ 231204b94745Smrg MAP(0x7a, 0x1B) /* unused */ \ 231304b94745Smrg default: dft; break; \ 231404b94745Smrg } 231504b94745Smrg 231604b94745Smrg/* 231704b94745Smrg * figure A-21 "DEC 7-Bit Hebrew Character Set" 231804b94745Smrg */ 231904b94745Smrg#define map_NRCS_Hebrew(code) \ 232004b94745Smrg switch (code) { \ 232104b94745Smrg UNI(0x60, 0x05D0) /* HEBREW LETTER ALEF */ \ 232204b94745Smrg UNI(0x61, 0x05D1) /* HEBREW LETTER BET */ \ 232304b94745Smrg UNI(0x62, 0x05D2) /* HEBREW LETTER GIMEL */ \ 232404b94745Smrg UNI(0x63, 0x05D3) /* HEBREW LETTER DALET */ \ 232504b94745Smrg UNI(0x64, 0x05D4) /* HEBREW LETTER HE */ \ 232604b94745Smrg UNI(0x65, 0x05D5) /* HEBREW LETTER VAV */ \ 232704b94745Smrg UNI(0x66, 0x05D6) /* HEBREW LETTER ZAYIN */ \ 232804b94745Smrg UNI(0x67, 0x05D7) /* HEBREW LETTER HET */ \ 232904b94745Smrg UNI(0x68, 0x05D8) /* HEBREW LETTER TET */ \ 233004b94745Smrg UNI(0x69, 0x05D9) /* HEBREW LETTER YOD */ \ 233104b94745Smrg UNI(0x6a, 0x05DA) /* HEBREW LETTER FINAL KAF */ \ 233204b94745Smrg UNI(0x6b, 0x05DB) /* HEBREW LETTER KAF */ \ 233304b94745Smrg UNI(0x6c, 0x05DC) /* HEBREW LETTER LAMED */ \ 233404b94745Smrg UNI(0x6d, 0x05DD) /* HEBREW LETTER FINAL MEM */ \ 233504b94745Smrg UNI(0x6e, 0x05DE) /* HEBREW LETTER MEM */ \ 233604b94745Smrg UNI(0x6f, 0x05DF) /* HEBREW LETTER FINAL NUN */ \ 233704b94745Smrg UNI(0x70, 0x05E0) /* HEBREW LETTER NUN */ \ 233804b94745Smrg UNI(0x71, 0x05E1) /* HEBREW LETTER SAMEKH */ \ 233904b94745Smrg UNI(0x72, 0x05E2) /* HEBREW LETTER AYIN */ \ 234004b94745Smrg UNI(0x73, 0x05E3) /* HEBREW LETTER FINAL PE */ \ 234104b94745Smrg UNI(0x74, 0x05E4) /* HEBREW LETTER PE */ \ 234204b94745Smrg UNI(0x75, 0x05E5) /* HEBREW LETTER FINAL TSADI */ \ 234304b94745Smrg UNI(0x76, 0x05E6) /* HEBREW LETTER TSADI */ \ 234404b94745Smrg UNI(0x77, 0x05E7) /* HEBREW LETTER QOF */ \ 234504b94745Smrg UNI(0x78, 0x05E8) /* HEBREW LETTER RESH */ \ 234604b94745Smrg UNI(0x79, 0x05E9) /* HEBREW LETTER SHIN */ \ 234704b94745Smrg UNI(0x7a, 0x05EA) /* HEBREW LETTER TAV */ \ 234804b94745Smrg } 234904b94745Smrg 235004b94745Smrg#define unmap_NRCS_Hebrew(code,dft) /* nothing */ 235104b94745Smrg 23525104ee6eSmrg/* 23535104ee6eSmrg * VT520/VT525 manual p 4-35 explains "SCS" as Serbo-Croatian. The remaining 23545104ee6eSmrg * "S" may be Slovene. With that clue, choose ISO-IR-141, which provides a 23555104ee6eSmrg * chart with names of suitable replacement characters. 23565104ee6eSmrg */ 23575104ee6eSmrg#define map_NRCS_Serbo_Croatian(code) \ 23585104ee6eSmrg switch (code) { \ 23595104ee6eSmrg UNI(0x40, 0x017D) /* LATIN CAPITAL LETTER Z WITH CARON */ \ 23605104ee6eSmrg UNI(0x5B, 0x0160) /* LATIN CAPITAL LETTER S WITH CARON */ \ 23615104ee6eSmrg UNI(0x5C, 0x0110) /* LATIN CAPITAL LETTER D WITH STROKE */ \ 23625104ee6eSmrg UNI(0x5D, 0x0106) /* LATIN CAPITAL LETTER C WITH ACUTE */ \ 23635104ee6eSmrg UNI(0x5E, 0x010C) /* LATIN CAPITAL LETTER C WITH CARON */ \ 23645104ee6eSmrg UNI(0x60, 0x017E) /* LATIN SMALL LETTER Z WITH CARON */ \ 23655104ee6eSmrg UNI(0x7B, 0x0161) /* LATIN SMALL LETTER S WITH CARON */ \ 23665104ee6eSmrg UNI(0x7C, 0x0111) /* LATIN SMALL LETTER D WITH STROKE */ \ 23675104ee6eSmrg UNI(0x7D, 0x0107) /* LATIN SMALL LETTER C WITH ACUTE */ \ 23685104ee6eSmrg UNI(0x7E, 0x010D) /* LATIN SMALL LETTER C WITH CARON */ \ 23695104ee6eSmrg } 23705104ee6eSmrg 23715104ee6eSmrg#define unmap_NRCS_Serbo_Croatian(code,dft) /* nothing */ 23725104ee6eSmrg 23735104ee6eSmrg/* 23745104ee6eSmrg * VT520/VT525 manual p 7-2 explains "Russian" as KOI-7, though the dialect 23755104ee6eSmrg * is unknown. Choose the one Kermit used. 23765104ee6eSmrg */ 23775104ee6eSmrg#define map_NRCS_Russian(code) \ 23785104ee6eSmrg switch (code) { \ 23795104ee6eSmrg UNI(0x60, 0x042E) /* CYRILLIC CAPITAL LETTER YU */ \ 23805104ee6eSmrg UNI(0x61, 0x0410) /* CYRILLIC CAPITAL LETTER A */ \ 23815104ee6eSmrg UNI(0x62, 0x0411) /* CYRILLIC CAPITAL LETTER BE */ \ 23825104ee6eSmrg UNI(0x63, 0x0426) /* CYRILLIC CAPITAL LETTER TSE */ \ 23835104ee6eSmrg UNI(0x64, 0x0414) /* CYRILLIC CAPITAL LETTER DE */ \ 23845104ee6eSmrg UNI(0x65, 0x0415) /* CYRILLIC CAPITAL LETTER IE */ \ 23855104ee6eSmrg UNI(0x66, 0x0424) /* CYRILLIC CAPITAL LETTER EF */ \ 23865104ee6eSmrg UNI(0x67, 0x0413) /* CYRILLIC CAPITAL LETTER GHE */ \ 23875104ee6eSmrg UNI(0x68, 0x0425) /* CYRILLIC CAPITAL LETTER HA */ \ 23885104ee6eSmrg UNI(0x69, 0x0418) /* CYRILLIC CAPITAL LETTER I */ \ 23895104ee6eSmrg UNI(0x6A, 0x0419) /* CYRILLIC CAPITAL LETTER SHORT I */ \ 23905104ee6eSmrg UNI(0x6B, 0x041A) /* CYRILLIC CAPITAL LETTER KA */ \ 23915104ee6eSmrg UNI(0x6C, 0x041B) /* CYRILLIC CAPITAL LETTER EL */ \ 23925104ee6eSmrg UNI(0x6D, 0x041C) /* CYRILLIC CAPITAL LETTER EM */ \ 23935104ee6eSmrg UNI(0x6E, 0x041D) /* CYRILLIC CAPITAL LETTER EN */ \ 23945104ee6eSmrg UNI(0x6F, 0x041E) /* CYRILLIC CAPITAL LETTER O */ \ 23955104ee6eSmrg UNI(0x70, 0x041F) /* CYRILLIC CAPITAL LETTER PE */ \ 23965104ee6eSmrg UNI(0x71, 0x042F) /* CYRILLIC CAPITAL LETTER YA */ \ 23975104ee6eSmrg UNI(0x72, 0x0420) /* CYRILLIC CAPITAL LETTER ER */ \ 23985104ee6eSmrg UNI(0x73, 0x0421) /* CYRILLIC CAPITAL LETTER ES */ \ 23995104ee6eSmrg UNI(0x74, 0x0422) /* CYRILLIC CAPITAL LETTER TE */ \ 24005104ee6eSmrg UNI(0x75, 0x0423) /* CYRILLIC CAPITAL LETTER U */ \ 24015104ee6eSmrg UNI(0x76, 0x0416) /* CYRILLIC CAPITAL LETTER ZHE */ \ 24025104ee6eSmrg UNI(0x77, 0x0412) /* CYRILLIC CAPITAL LETTER VE */ \ 24035104ee6eSmrg UNI(0x78, 0x042C) /* CYRILLIC CAPITAL LETTER SOFT SIGN */ \ 24045104ee6eSmrg UNI(0x79, 0x042B) /* CYRILLIC CAPITAL LETTER YERU */ \ 24055104ee6eSmrg UNI(0x7A, 0x0417) /* CYRILLIC CAPITAL LETTER ZE */ \ 24065104ee6eSmrg UNI(0x7B, 0x0428) /* CYRILLIC CAPITAL LETTER SHA */ \ 24075104ee6eSmrg UNI(0x7C, 0x042D) /* CYRILLIC CAPITAL LETTER E */ \ 24085104ee6eSmrg UNI(0x7D, 0x0429) /* CYRILLIC CAPITAL LETTER SHCHA */ \ 24095104ee6eSmrg UNI(0x7E, 0x0427) /* CYRILLIC CAPITAL LETTER CHE */ \ 24105104ee6eSmrg } 24115104ee6eSmrg 24125104ee6eSmrg#define unmap_NRCS_Russian(code,dft) /* nothing */ 24135104ee6eSmrg 241404b94745Smrg/* 241504b94745Smrg * figure A-26 "DEC 7-Bit Turkish Character Set" 241604b94745Smrg */ 241704b94745Smrg#define map_NRCS_Turkish(code) \ 241804b94745Smrg switch (code) { \ 241904b94745Smrg UNI(0x26, 0x011F) /* LATIN SMALL LETTER G WITH BREVE */ \ 242004b94745Smrg UNI(0x40, 0x0130) /* LATIN CAPITAL LETTER I WITH DOT ABOVE */ \ 242104b94745Smrg UNI(0x5b, 0x015E) /* LATIN CAPITAL LETTER S WITH CEDILLA */ \ 242204b94745Smrg UNI(0x5c, 0x00D6) /* LATIN CAPITAL LETTER O WITH DIAERESIS */ \ 242304b94745Smrg UNI(0x5d, 0x00C7) /* LATIN CAPITAL LETTER C WITH CEDILLA */ \ 242404b94745Smrg UNI(0x5e, 0x00dC) /* LATIN CAPITAL LETTER U WITH DIAERESIS */ \ 242504b94745Smrg UNI(0x60, 0x011E) /* LATIN CAPITAL LETTER G WITH BREVE */ \ 242604b94745Smrg UNI(0x7b, 0x015F) /* LATIN SMALL LETTER S WITH CEDILLA */ \ 242704b94745Smrg UNI(0x7c, 0x00F6) /* LATIN SMALL LETTER O WITH DIAERESIS */ \ 242804b94745Smrg UNI(0x7d, 0x00E7) /* LATIN SMALL LETTER C WITH CEDILLA */ \ 242904b94745Smrg UNI(0x7e, 0x00FC) /* LATIN SMALL LETTER U WITH DIAERESIS */ \ 243004b94745Smrg } 243104b94745Smrg 243204b94745Smrg#define unmap_NRCS_Turkish(code,dft) /* nothing */ 243304b94745Smrg#else 243404b94745Smrg#define map_DEC_Cyrillic(code) /* nothing */ 243504b94745Smrg#define unmap_DEC_Cyrillic(code,dft) dft 243604b94745Smrg#define map_DEC_Greek_Supp(code) /* nothing */ 243704b94745Smrg#define unmap_DEC_Greek_Supp(code,dft) dft 243804b94745Smrg#define map_DEC_Hebrew_Supp(code) /* nothing */ 243904b94745Smrg#define unmap_DEC_Hebrew_Supp(code,dft) dft 244004b94745Smrg#define map_DEC_Technical(code) /* nothing */ 244104b94745Smrg#define unmap_DEC_Technical(code,dft) dft 244204b94745Smrg#define map_DEC_Turkish_Supp(code) /* nothing */ 244304b94745Smrg#define unmap_DEC_Turkish_Supp(code,dft) dft 244404b94745Smrg#define map_ISO_Greek_Supp(code) /* nothing */ 244504b94745Smrg#define unmap_ISO_Greek_Supp(code,dft) dft 244604b94745Smrg#define map_ISO_Hebrew(code) /* nothing */ 244704b94745Smrg#define unmap_ISO_Hebrew(code,dft) dft 244804b94745Smrg#define map_ISO_Latin_2(code) /* nothing */ 244904b94745Smrg#define unmap_ISO_Latin_2(code,dft) dft 245004b94745Smrg#define map_ISO_Latin_5(code) /* nothing */ 245104b94745Smrg#define unmap_ISO_Latin_5(code,dft) dft 245204b94745Smrg#define map_ISO_Latin_Cyrillic(code) /* nothing */ 245304b94745Smrg#define unmap_ISO_Latin_Cyrillic(code,dft) dft 24545104ee6eSmrg#define map_JIS_Katakana(code) /* nothing */ 24555104ee6eSmrg#define unmap_JIS_Katakana(code,dft) dft 24565104ee6eSmrg#define map_JIS_Roman(code) /* nothing */ 24575104ee6eSmrg#define unmap_JIS_Roman(code,dft) dft 245804b94745Smrg#define map_NRCS_Greek(code) /* nothing */ 245904b94745Smrg#define unmap_NRCS_Greek(code,dft) dft 246004b94745Smrg#define map_NRCS_Hebrew(code) /* nothing */ 246104b94745Smrg#define unmap_NRCS_Hebrew(code,dft) dft 24625104ee6eSmrg#define map_NRCS_Russian(code) /* nothing */ 24635104ee6eSmrg#define unmap_NRCS_Russian(code,dft) dft 24645104ee6eSmrg#define map_NRCS_Serbo_Croatian(code) /* nothing */ 24655104ee6eSmrg#define unmap_NRCS_Serbo_Croatian(code,dft) dft 246604b94745Smrg#define map_NRCS_Turkish(code) /* nothing */ 246704b94745Smrg#define unmap_NRCS_Turkish(code,dft) dft 246804b94745Smrg#endif /* OPT_WIDE_CHARS */ 246904b94745Smrg 247004b94745Smrg#endif /* included_charsets_h */ 2471