tablica określająca typ znaków
Tablica definiuje typ znaków, każdy bit określa przynależność
do określonej kategorii;
#define IS_UPPER 0x01 /*duża litera*/
#define IS_LOWER 0x02 /*mała litera*/
#define IS_BLANK 0x04 /*,,białe znaki''*/
#define IS_DIG 0x08 /*cyfra*/
#define IS_XDIG 0x10 /*cyfra szesnastkowa*/
#define IS_CTR 0x20 /*znak sterujący*/
#define IS_ALPH 0x40 /*znak traktowany jak litera*/
#define IS_ALPHA (IS_LOWER | IS_UPPER) /*litera*/
#define IS_ALNUM (IS_DIG | IS_ALPHA) /*litera lub cyfra*/
static a_char_u pl_maz_char_type =
{
IS_CTR, IS_CTR, IS_CTR, IS_CTR,
IS_CTR, IS_CTR, IS_CTR, IS_CTR,
IS_CTR, IS_CTR | IS_BLANK, IS_CTR | IS_BLANK, IS_CTR | IS_BLANK,
IS_CTR | IS_BLANK, IS_CTR | IS_BLANK, IS_CTR, IS_CTR,
IS_CTR, IS_CTR, IS_CTR, IS_CTR,
IS_CTR, IS_CTR, IS_CTR, IS_CTR,
IS_CTR, IS_CTR, IS_CTR, IS_CTR,
IS_CTR, IS_CTR, IS_CTR, IS_CTR,
IS_BLANK, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
IS_XDIG | IS_DIG, IS_XDIG | IS_DIG, IS_XDIG | IS_DIG, IS_XDIG | IS_DIG,
IS_XDIG | IS_DIG, IS_XDIG | IS_DIG, IS_XDIG | IS_DIG, IS_XDIG | IS_DIG,
IS_XDIG | IS_DIG, IS_XDIG | IS_DIG, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, IS_XDIG | IS_UPPER,IS_XDIG | IS_UPPER,IS_XDIG | IS_UPPER,
IS_XDIG | IS_UPPER,IS_XDIG | IS_UPPER,IS_XDIG | IS_UPPER,IS_UPPER,
IS_UPPER, IS_UPPER, IS_UPPER, IS_UPPER,
IS_UPPER, IS_UPPER, IS_UPPER, IS_UPPER,
IS_UPPER, IS_UPPER, IS_UPPER, IS_UPPER,
IS_UPPER, IS_UPPER, IS_UPPER, IS_UPPER,
IS_UPPER, IS_UPPER, IS_UPPER, 0x000,
0x000, 0x000, 0x000, IS_ALPH,
0x000, IS_XDIG | IS_LOWER,IS_XDIG | IS_LOWER,IS_XDIG | IS_LOWER,
IS_XDIG | IS_LOWER,IS_XDIG | IS_LOWER,IS_XDIG | IS_LOWER,IS_LOWER,
IS_LOWER, IS_LOWER, IS_LOWER, IS_LOWER,
IS_LOWER, IS_LOWER, IS_LOWER, IS_LOWER,
IS_LOWER, IS_LOWER, IS_LOWER, IS_LOWER,
IS_LOWER, IS_LOWER, IS_LOWER, IS_LOWER,
IS_LOWER, IS_LOWER, IS_LOWER, 0x000,
0x000, 0x000, 0x000, IS_CTR,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, IS_LOWER, 0x000, /* 84 */
/* a ogonek */
0x000, 0x000, 0x000, 0x000, /* 88 */
0x000, IS_LOWER, 0x000, IS_UPPER, /* 8c */
/* c acute*/ /* A ogonek*/
IS_UPPER, IS_LOWER, IS_LOWER, 0x000, /* 90 */
/*E ogonek */ /*e ogonek */ /* polish l */
0x000, IS_UPPER, 0x000, 0x000, /* 94 */
/* C acute */
IS_UPPER, 0x000, 0x000, 0x000, /* 98 */
/* S acute */
IS_UPPER, 0x000, IS_LOWER, 0x000, /* 9c */
/* Polish L */ /* s acute */
IS_UPPER, IS_UPPER, IS_LOWER, IS_UPPER, /* a0 */
/* Z acute */ /* Z dot */ /* o acute */ /* O acute*/
IS_LOWER, IS_UPPER, IS_LOWER, IS_LOWER, /* a4 */
/*n acute */ /* N acute */ /* z acute */ /* z dot */
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000,
0x000, 0x000, 0x000, 0x000
};