comparison src/charset.h @ 3659:98af8a976fc3

[xemacs-hg @ 2006-11-05 22:31:31 by aidan] Support specifying fonts for particular character sets in Mule; support translation to ISO 10646-1 for Mule character sets without an otherwise matching font; move to a vector of X11-charset-X11-registry instead of a regex for the charset-registry property.
author aidan
date Sun, 05 Nov 2006 22:31:46 +0000
parents d08f0a2c8722
children 3ef0aaf3dc34
comparison
equal deleted inserted replaced
3658:0db1aaedbbef 3659:98af8a976fc3
56 #define BREAKUP_ICHAR(ch, charset, byte1, byte2) do { \ 56 #define BREAKUP_ICHAR(ch, charset, byte1, byte2) do { \
57 (charset) = Vcharset_ascii; \ 57 (charset) = Vcharset_ascii; \
58 (byte1) = (ch); \ 58 (byte1) = (ch); \
59 (byte2) = 0; \ 59 (byte2) = 0; \
60 } while (0) 60 } while (0)
61 #define XCHARSET_CCL_PROGRAM(cs) Qnil
62 #define XCHARSET_NAME(cs) Qascii
61 63
62 #else /* MULE */ 64 #else /* MULE */
63 65
64 66
65 /************************************************************************/ 67 /************************************************************************/
184 struct LCRECORD_HEADER header; 186 struct LCRECORD_HEADER header;
185 187
186 int id; 188 int id;
187 Lisp_Object name; 189 Lisp_Object name;
188 Lisp_Object doc_string; 190 Lisp_Object doc_string;
189 Lisp_Object registry; 191 Lisp_Object registries;
190 Lisp_Object short_name; 192 Lisp_Object short_name;
191 Lisp_Object long_name; 193 Lisp_Object long_name;
192 194
193 Lisp_Object reverse_direction_charset; 195 Lisp_Object reverse_direction_charset;
194 196
269 #define CHARSET_ENCODE_AS_UTF_8(cs) ((cs)->encode_as_utf_8) 271 #define CHARSET_ENCODE_AS_UTF_8(cs) ((cs)->encode_as_utf_8)
270 #define CHARSET_TYPE(cs) ((cs)->type) 272 #define CHARSET_TYPE(cs) ((cs)->type)
271 #define CHARSET_DIRECTION(cs) ((cs)->direction) 273 #define CHARSET_DIRECTION(cs) ((cs)->direction)
272 #define CHARSET_FINAL(cs) ((cs)->final) 274 #define CHARSET_FINAL(cs) ((cs)->final)
273 #define CHARSET_DOC_STRING(cs) ((cs)->doc_string) 275 #define CHARSET_DOC_STRING(cs) ((cs)->doc_string)
274 #define CHARSET_REGISTRY(cs) ((cs)->registry) 276 #define CHARSET_REGISTRIES(cs) ((cs)->registries)
275 #define CHARSET_CCL_PROGRAM(cs) ((cs)->ccl_program) 277 #define CHARSET_CCL_PROGRAM(cs) ((cs)->ccl_program)
276 #define CHARSET_DIMENSION(cs) ((cs)->dimension) 278 #define CHARSET_DIMENSION(cs) ((cs)->dimension)
277 #define CHARSET_CHARS(cs) ((cs)->chars) 279 #define CHARSET_CHARS(cs) ((cs)->chars)
278 #define CHARSET_REVERSE_DIRECTION_CHARSET(cs) ((cs)->reverse_direction_charset) 280 #define CHARSET_REVERSE_DIRECTION_CHARSET(cs) ((cs)->reverse_direction_charset)
279 #define CHARSET_TO_UNICODE_TABLE(cs) ((cs)->to_unicode_table) 281 #define CHARSET_TO_UNICODE_TABLE(cs) ((cs)->to_unicode_table)
280 #define CHARSET_FROM_UNICODE_TABLE(cs) ((cs)->from_unicode_table) 282 #define CHARSET_FROM_UNICODE_TABLE(cs) ((cs)->from_unicode_table)
281 #define CHARSET_FROM_UNICODE_LEVELS(cs) ((cs)->from_unicode_levels) 283 #define CHARSET_FROM_UNICODE_LEVELS(cs) ((cs)->from_unicode_levels)
282
283 284
284 #define CHARSET_PRIVATE_P(cs) leading_byte_private_p (CHARSET_LEADING_BYTE (cs)) 285 #define CHARSET_PRIVATE_P(cs) leading_byte_private_p (CHARSET_LEADING_BYTE (cs))
285 286
286 #define XCHARSET_ID(cs) CHARSET_ID (XCHARSET (cs)) 287 #define XCHARSET_ID(cs) CHARSET_ID (XCHARSET (cs))
287 #define XCHARSET_NAME(cs) CHARSET_NAME (XCHARSET (cs)) 288 #define XCHARSET_NAME(cs) CHARSET_NAME (XCHARSET (cs))
293 #define XCHARSET_ENCODE_AS_UTF_8(cs) CHARSET_ENCODE_AS_UTF_8 (XCHARSET (cs)) 294 #define XCHARSET_ENCODE_AS_UTF_8(cs) CHARSET_ENCODE_AS_UTF_8 (XCHARSET (cs))
294 #define XCHARSET_TYPE(cs) CHARSET_TYPE (XCHARSET (cs)) 295 #define XCHARSET_TYPE(cs) CHARSET_TYPE (XCHARSET (cs))
295 #define XCHARSET_DIRECTION(cs) CHARSET_DIRECTION (XCHARSET (cs)) 296 #define XCHARSET_DIRECTION(cs) CHARSET_DIRECTION (XCHARSET (cs))
296 #define XCHARSET_FINAL(cs) CHARSET_FINAL (XCHARSET (cs)) 297 #define XCHARSET_FINAL(cs) CHARSET_FINAL (XCHARSET (cs))
297 #define XCHARSET_DOC_STRING(cs) CHARSET_DOC_STRING (XCHARSET (cs)) 298 #define XCHARSET_DOC_STRING(cs) CHARSET_DOC_STRING (XCHARSET (cs))
298 #define XCHARSET_REGISTRY(cs) CHARSET_REGISTRY (XCHARSET (cs)) 299 #define XCHARSET_REGISTRIES(cs) CHARSET_REGISTRIES (XCHARSET (cs))
299 #define XCHARSET_LEADING_BYTE(cs) CHARSET_LEADING_BYTE (XCHARSET (cs)) 300 #define XCHARSET_LEADING_BYTE(cs) CHARSET_LEADING_BYTE (XCHARSET (cs))
300 #define XCHARSET_CCL_PROGRAM(cs) CHARSET_CCL_PROGRAM (XCHARSET (cs)) 301 #define XCHARSET_CCL_PROGRAM(cs) CHARSET_CCL_PROGRAM (XCHARSET (cs))
301 #define XCHARSET_DIMENSION(cs) CHARSET_DIMENSION (XCHARSET (cs)) 302 #define XCHARSET_DIMENSION(cs) CHARSET_DIMENSION (XCHARSET (cs))
302 #define XCHARSET_CHARS(cs) CHARSET_CHARS (XCHARSET (cs)) 303 #define XCHARSET_CHARS(cs) CHARSET_CHARS (XCHARSET (cs))
304
303 #define XCHARSET_PRIVATE_P(cs) CHARSET_PRIVATE_P (XCHARSET (cs)) 305 #define XCHARSET_PRIVATE_P(cs) CHARSET_PRIVATE_P (XCHARSET (cs))
304 #define XCHARSET_REVERSE_DIRECTION_CHARSET(cs) \ 306 #define XCHARSET_REVERSE_DIRECTION_CHARSET(cs) \
305 CHARSET_REVERSE_DIRECTION_CHARSET (XCHARSET (cs)) 307 CHARSET_REVERSE_DIRECTION_CHARSET (XCHARSET (cs))
306 #define XCHARSET_TO_UNICODE_TABLE(cs) \ 308 #define XCHARSET_TO_UNICODE_TABLE(cs) \
307 CHARSET_TO_UNICODE_TABLE (XCHARSET (cs)) 309 CHARSET_TO_UNICODE_TABLE (XCHARSET (cs))