📄 kwqcharsetdata.c
字号:
/*
* Copyright (c) 2005 Nokia Corporation, Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the Nokia Corporation nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#if NOKIA_CHANGES
struct TCharsetEntry
{
TUint32 uid;
const char* charsetName;
KWQEncodingFlags flags;
};
const TUint32 KCharacterSetIdentifierWindow1250 = 0x100059d6;
const TUint32 KCharacterSetIdentifierWindow1251 = 0x100059D7;
const TUint32 KCharacterSetIdentifierWindow1252 = 0x101F873B;
const TUint32 KCharacterSetIdentifierWindow1253 = 0x100059D8;
const TUint32 KCharacterSetIdentifierWindow1254 = 0x100059D9;
const TUint32 KCharacterSetIdentifierWindow1255 = 0x101F8547;
const TUint32 KCharacterSetIdentifierWindow1256 = 0x101F8548;
const TUint32 KCharacterSetIdentifierWindow1257 = 0x100059DA;
const TUint32 KCharacterSetIdentifierWindow1258 = 0x102073B8;
// UID (symbian), standard + common charset name
const TCharsetEntry supportedCharsetTable[] =
{
{KCharacterSetIdentifierIso88591, "iso-8859-1", NoEncodingFlags },
{KCharacterSetIdentifierIso88591, "latin1", NoEncodingFlags },
{KCharacterSetIdentifierIso88591, "cp819", NoEncodingFlags },
{KCharacterSetIdentifierUtf8, "utf-8", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "gb2312", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "EUC-CN", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "chinese", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "cngb", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "cp936", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "csgb2312", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "csgb231280", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "csiso58gb231280", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "gb2312", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "gb231280", NoEncodingFlags },
{KCharacterSetIdentifierGbk, "gbk", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "isoir58", NoEncodingFlags },
{KCharacterSetIdentifierGbk, "ms936", NoEncodingFlags },
{KCharacterSetIdentifierGbk, "windows936", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "xeuccn", NoEncodingFlags },
{KCharacterSetIdentifierGb2312, "xgbk", NoEncodingFlags },
{KCharacterSetIdentifierBig5, "big5", NoEncodingFlags },
{KCharacterSetIdentifierIso88592, "iso-8859-2", NoEncodingFlags },
{KCharacterSetIdentifierIso88592, "latin2", NoEncodingFlags },
{KCharacterSetIdentifierIso88592, "l2", NoEncodingFlags },
{KCharacterSetIdentifierIso88593, "iso-8859-3", NoEncodingFlags },
{KCharacterSetIdentifierIso88593, "latin3", NoEncodingFlags },
{KCharacterSetIdentifierIso88593, "l3", NoEncodingFlags },
{KCharacterSetIdentifierIso88594, "iso-8859-4", NoEncodingFlags },
{KCharacterSetIdentifierIso88594, "latin4", NoEncodingFlags },
{KCharacterSetIdentifierIso88594, "l4", NoEncodingFlags },
{KCharacterSetIdentifierIso88595, "iso-8859-5", NoEncodingFlags },
{KCharacterSetIdentifierIso88596, "cyrillic", NoEncodingFlags },
{KCharacterSetIdentifierIso88596, "iso-8859-6", NoEncodingFlags },
{KCharacterSetIdentifierIso88596, "arabic", NoEncodingFlags },
{KCharacterSetIdentifierIso88597, "iso-8859-7", NoEncodingFlags },
{KCharacterSetIdentifierIso88597, "greek", NoEncodingFlags },
{KCharacterSetIdentifierIso88597, "greek8", NoEncodingFlags },
{KCharacterSetIdentifierIso88598, "iso-8859-8", VisualOrdering },
{KCharacterSetIdentifierIso88598, "hebrew", VisualOrdering },
{KCharacterSetIdentifierIso88598, "visual", VisualOrdering },
{KCharacterSetIdentifierIso88598, "iso-8859-8i", NoEncodingFlags },
{KCharacterSetIdentifierIso88598, "logical", NoEncodingFlags },
{KCharacterSetIdentifierIso88599, "iso-8859-9", NoEncodingFlags },
{KCharacterSetIdentifierIso88599, "latin5" , NoEncodingFlags },
{KCharacterSetIdentifierIso88599, "l5" , NoEncodingFlags },
{KCharacterSetIdentifierIso885910, "iso-8859-10", NoEncodingFlags },
{KCharacterSetIdentifierIso885910, "latin6", NoEncodingFlags },
{KCharacterSetIdentifierIso885910, "l6", NoEncodingFlags },
{KCharacterSetIdentifierIso885913, "iso-8859-13", NoEncodingFlags },
{KCharacterSetIdentifierIso885913, "latin7", NoEncodingFlags },
{KCharacterSetIdentifierIso885914, "iso-8859-14", NoEncodingFlags },
{KCharacterSetIdentifierIso885914, "latin8", NoEncodingFlags },
{KCharacterSetIdentifierIso885914, "l8", NoEncodingFlags },
{KCharacterSetIdentifierIso885915, "iso-8859-15", NoEncodingFlags },
{KCharacterSetIdentifierIso885915, "latin9", NoEncodingFlags },
{KCharacterSetIdentifierIso885915, "l9", NoEncodingFlags },
{KCharacterSetIdentifierWindow1250, "windows-1250", NoEncodingFlags },
{KCharacterSetIdentifierWindow1250, "cp1250", NoEncodingFlags },
{KCharacterSetIdentifierWindow1251, "windows-1251", NoEncodingFlags },
{KCharacterSetIdentifierWindow1251, "cp1251", NoEncodingFlags },
{KCharacterSetIdentifierWindow1252, "windows-1252", NoEncodingFlags },
{KCharacterSetIdentifierWindow1252, "cp1252", NoEncodingFlags },
{KCharacterSetIdentifierWindow1253, "windows-1253", NoEncodingFlags },
{KCharacterSetIdentifierWindow1253, "cp1253", NoEncodingFlags },
{KCharacterSetIdentifierIso88599, "windows-1254", NoEncodingFlags },
{KCharacterSetIdentifierIso88599, "cp1254", NoEncodingFlags },
{KCharacterSetIdentifierIso88598, "windows-1255", NoEncodingFlags },
{KCharacterSetIdentifierIso88598, "cp1255", NoEncodingFlags },
{KCharacterSetIdentifierWindow1256, "windows-1256", NoEncodingFlags },
{KCharacterSetIdentifierWindow1256, "cp1256", NoEncodingFlags },
{KCharacterSetIdentifierWindow1257, "windows-1257", NoEncodingFlags },
{KCharacterSetIdentifierWindow1257, "tis-620", NoEncodingFlags },
{KCharacterSetIdentifierWindow1257, "cp1257", NoEncodingFlags },
{KCharacterSetIdentifierWindow1258, "windows-1258", NoEncodingFlags },
{KCharacterSetIdentifierShiftJis, "shift_jis", IsJapanese },
{KCharacterSetIdentifierShiftJis, "x-sjis", IsJapanese },
{KCharacterSetIdentifierShiftJis, "ms932", IsJapanese },
{KCharacterSetIdentifierShiftJis, "windows932", IsJapanese },
{KCharacterSetIdentifierShiftJis, "cp932", IsJapanese },
{KCharacterSetIdentifierJis, "jis_x0201-1997", IsJapanese },
{KCharacterSetIdentifierJis, "jis_x0208-1997", IsJapanese },
{KCharacterSetIdentifierEucJpPacked,"euc-jp", IsJapanese },
{KCharacterSetIdentifierEucJpPacked,"x-euc-jp", IsJapanese },
{KCharacterSetIdentifierIso2022Jp, "iso-2022-jp", IsJapanese },
{KCharacterSetIdentifierIso2022Jp1, "iso-2022-jp-1",IsJapanese },
{0x101F854A, "windows-874", NoEncodingFlags }, // no header file is provided with the converter windows-874
{0x101F8778, "koi8-r", NoEncodingFlags }, // no header file is provided with the converter Russian
{0x101F8761, "koi8-u", NoEncodingFlags }, // no header file is provided with the converter Ukrainian
{KCharacterSetIdentifierUcs2, "iso-10646-ucs-2", NoEncodingFlags },
{KCharacterSetIdentifierUcs2, "unicode", NoEncodingFlags },
{KCharacterSetIdentifierUcs2, "ucs2", NoEncodingFlags },
{KCharacterSetIdentifierUcs2, "utf16", NoEncodingFlags },
{KCharacterSetIdentifierUnicodeBig, "ucs-2-big", NoEncodingFlags },
{KCharacterSetIdentifierUnicodeBig, "utf-16be", NoEncodingFlags },
{KCharacterSetIdentifierUnicodeLittle,"ucs-2-little", NoEncodingFlags },
{KCharacterSetIdentifierUnicodeLittle, "utf-16le", NoEncodingFlags },
{0x1027508E, "iscii", NoEncodingFlags},
{KCharacterSetIdentifierShiftJis, "windows-31j", IsJapanese },
{KCharacterSetIdentifierGb2312, "zh_cn.gbk", NoEncodingFlags },
{0, NULL}
};
// char converting table for windows-1250
const unsigned short win1250toUnicode[] = {
0x20AC,0x00,0x201A,0x00,0x201E,0x2026,0x2020,0x2021,
0x00,0x2030,0x160,0x2039,0x15A,0x164,0x17D,0x179,
0x00,0x2018,0x2019,0x201C,0x201D,0x2022,0x2013,0x2014,
0x00,0x2122,0x161,0x203A,0x15B,0x165,0x17E,0x17A,
0xA0,0x2C7,0x2D8,0x141,0xA4,0x104,0xA6,0xA7,
0xA8,0xA9,0x15E,0xAB,0xAC,0xAD,0xAE,0x17B,
0xB0,0xB1,0x2DB,0x142,0xB4,0xB5,0xB6,0xB7,
0xB8,0x105,0x15F,0xBB,0x13D,0x2DD,0x13E,0x17C,
0x154,0xC1,0xC2,0x102,0xC4,0x139,0x106,0xC7,
0x10C,0xC9,0x118,0xCB,0x11A,0xCD,0xCE,0x10E,
0x110,0x143,0x147,0xD3,0xD4,0x150,0xD6,0xD7,
0x158,0x16E,0xDA,0x170,0xDC,0xDD,0x162,0xDF,
0x155,0xE1,0xE2,0x103,0xE4,0x13A,0x107,0xE7,
0x10D,0xE9,0x119,0xEB,0x11B,0xED,0xEE,0x10F,
0x111,0x144,0x148,0xF3,0xF4,0x151,0xF6,0xF7,
0x159,0x16F,0xFA,0x171,0xFC,0xFD,0x163,0x2D9
};
// char converting table for windows-1251
const unsigned short win1251toUnicode[] = {
0x0402,0x0403,0x201A,0x0453,0x201E,0x2026,0x2020,0x2021,
0x20AC,0x2030,0x0409,0x2039,0x040A,0x040C,0x040B,0x040F,
0x0452,0x2018,0x2019,0x201C,0x201D,0x2022,0x2013,0x2014,
0x0000,0x2122,0x0459,0x203A,0x045A,0x045C,0x045B,0x045F,
0x00A0,0x040E,0x045E,0x0408,0x00A4,0x0490,0x00A6,0x00A7,
0x0401,0x00A9,0x0404,0x00AB,0x00AC,0x00AD,0x00AE,0x0407,
0x00B0,0x00B1,0x0406,0x0456,0x0491,0x00B5,0x00B6,0x00B7,
0x0451,0x2116,0x0454,0x00BB,0x0458,0x0405,0x0455,0x0457,
0x0410,0x0411,0x0412,0x0413,0x0414,0x0415,0x0416,0x0417,
0x0418,0x0419,0x041A,0x041B,0x041C,0x041D,0x041E,0x041F,
0x0420,0x0421,0x0422,0x0423,0x0424,0x0425,0x0426,0x0427,
0x0428,0x0429,0x042A,0x042B,0x042C,0x042D,0x042E,0x042F,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -