diff options
| author | Kenichi Handa | 2000-06-10 00:13:13 +0000 |
|---|---|---|
| committer | Kenichi Handa | 2000-06-10 00:13:13 +0000 |
| commit | 88b837a212a031aa9bfce585e4fcf5d0a38f6867 (patch) | |
| tree | e273ad388c40d235e9ee515f2f763a9c178538f0 /src | |
| parent | c83ef37172531109659f65f52e0893320d2c050e (diff) | |
| download | emacs-88b837a212a031aa9bfce585e4fcf5d0a38f6867.tar.gz emacs-88b837a212a031aa9bfce585e4fcf5d0a38f6867.zip | |
(CHARSET_8_BIT_GRAPHIC): Define as 0x80.
(UNIBYTE_STR_AS_MULTIBYTE_P): Fix for an invalid multibyte
sequence.
Diffstat (limited to 'src')
| -rw-r--r-- | src/charset.h | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/charset.h b/src/charset.h index 60cd120897c..c64d280b90f 100644 --- a/src/charset.h +++ b/src/charset.h | |||
| @@ -66,14 +66,14 @@ Boston, MA 02111-1307, USA. */ | |||
| 66 | 0x00 official dim1 -- none -- -- none -- | 66 | 0x00 official dim1 -- none -- -- none -- |
| 67 | (ASCII) | 67 | (ASCII) |
| 68 | 0x01..0x7F --never used-- | 68 | 0x01..0x7F --never used-- |
| 69 | 0x80 --never used-- | 69 | 0x80 official dim1 -- none -- -- none -- |
| 70 | (eight-bit-graphic) | ||
| 70 | 0x81..0x8F official dim1 same as charset -- none -- | 71 | 0x81..0x8F official dim1 same as charset -- none -- |
| 71 | 0x90..0x99 official dim2 same as charset -- none -- | 72 | 0x90..0x99 official dim2 same as charset -- none -- |
| 72 | 0x9A..0x9D --never used-- | 73 | 0x9A..0x9D --never used-- |
| 73 | 0x9E official dim1 same as charset -- none -- | 74 | 0x9E official dim1 same as charset -- none -- |
| 74 | (eight-bit-control) | 75 | (eight-bit-control) |
| 75 | 0x9F official dim1 -- none -- -- none -- | 76 | 0x9F --never used-- |
| 76 | (eight-bit-graphic) | ||
| 77 | 0xA0..0xDF private dim1 0x9A same as charset | 77 | 0xA0..0xDF private dim1 0x9A same as charset |
| 78 | of 1-column width | 78 | of 1-column width |
| 79 | 0xE0..0xEF private dim1 0x9B same as charset | 79 | 0xE0..0xEF private dim1 0x9B same as charset |
| @@ -119,7 +119,7 @@ Boston, MA 02111-1307, USA. */ | |||
| 119 | /* Definition of special charsets. */ | 119 | /* Definition of special charsets. */ |
| 120 | #define CHARSET_ASCII 0 /* 0x00..0x7F */ | 120 | #define CHARSET_ASCII 0 /* 0x00..0x7F */ |
| 121 | #define CHARSET_8_BIT_CONTROL 0x9E /* 0x80..0x9F */ | 121 | #define CHARSET_8_BIT_CONTROL 0x9E /* 0x80..0x9F */ |
| 122 | #define CHARSET_8_BIT_GRAPHIC 0x9F /* 0xA0..0xFF */ | 122 | #define CHARSET_8_BIT_GRAPHIC 0x80 /* 0xA0..0xFF */ |
| 123 | 123 | ||
| 124 | extern int charset_latin_iso8859_1; /* ISO8859-1 (Latin-1) */ | 124 | extern int charset_latin_iso8859_1; /* ISO8859-1 (Latin-1) */ |
| 125 | extern int charset_jisx0208_1978; /* JISX0208.1978 (Japanese Kanji old set) */ | 125 | extern int charset_jisx0208_1978; /* JISX0208.1978 (Japanese Kanji old set) */ |
| @@ -443,14 +443,16 @@ extern int width_by_char_head[256]; | |||
| 443 | set to the byte length of the multibyte form. */ | 443 | set to the byte length of the multibyte form. */ |
| 444 | 444 | ||
| 445 | #define UNIBYTE_STR_AS_MULTIBYTE_P(str, length, bytes) \ | 445 | #define UNIBYTE_STR_AS_MULTIBYTE_P(str, length, bytes) \ |
| 446 | (((bytes) = BYTES_BY_CHAR_HEAD ((str)[0])) == 1 \ | 446 | (((str)[0] < 0x80 || (str)[0] >= 0xA0) \ |
| 447 | || ((str)[0] != LEADING_CODE_8_BIT_CONTROL \ | 447 | ? (bytes) = 1 \ |
| 448 | : (((bytes) = BYTES_BY_CHAR_HEAD ((str)[0])), \ | ||
| 449 | ((str)[0] != LEADING_CODE_8_BIT_CONTROL \ | ||
| 448 | && (bytes) <= (length) \ | 450 | && (bytes) <= (length) \ |
| 449 | && !CHAR_HEAD_P ((str)[1]) \ | 451 | && !CHAR_HEAD_P ((str)[1]) \ |
| 450 | && ((bytes) == 2 \ | 452 | && ((bytes) == 2 \ |
| 451 | || (!CHAR_HEAD_P ((str)[2]) \ | 453 | || (!CHAR_HEAD_P ((str)[2]) \ |
| 452 | && ((bytes) == 3 \ | 454 | && ((bytes) == 3 \ |
| 453 | || !CHAR_HEAD_P ((str)[3])))))) | 455 | || !CHAR_HEAD_P ((str)[3]))))))) |
| 454 | 456 | ||
| 455 | /* Return 1 iff the byte sequence at multibyte string STR is valid as | 457 | /* Return 1 iff the byte sequence at multibyte string STR is valid as |
| 456 | a unibyte form. By a side effect, BYTES is set to the byte length | 458 | a unibyte form. By a side effect, BYTES is set to the byte length |