… | |
… | |
66 | ZERO_WIDTH_CHAR = 0x200b, |
66 | ZERO_WIDTH_CHAR = 0x200b, |
67 | REPLACEMENT_CHAR = 0xfffd, |
67 | REPLACEMENT_CHAR = 0xfffd, |
68 | NOCHAR = 0xffff, // must be invalid in ANY codeset (!) |
68 | NOCHAR = 0xffff, // must be invalid in ANY codeset (!) |
69 | }; |
69 | }; |
70 | |
70 | |
71 | struct rxvt_codeset_conv { |
71 | struct rxvt_codeset_conv |
|
|
72 | { |
72 | uint32_t (*from_unicode) (unicode_t unicode); |
73 | uint32_t (*from_unicode) (unicode_t unicode); |
73 | #if ENCODING_TO_UNICODE |
74 | #if ENCODING_TO_UNICODE |
74 | unicode_t (*to_unicode) (uint32_t enc); |
75 | unicode_t (*to_unicode) (uint32_t enc); |
75 | #endif |
76 | #endif |
76 | }; |
77 | }; |
… | |
… | |
80 | extern unicode_t rxvt_compose (unicode_t c1, unicode_t c2); |
81 | extern unicode_t rxvt_compose (unicode_t c1, unicode_t c2); |
81 | |
82 | |
82 | #define FROM_UNICODE(cs,code) rxvt_codeset[cs].from_unicode (code) |
83 | #define FROM_UNICODE(cs,code) rxvt_codeset[cs].from_unicode (code) |
83 | #define TO_UNICODE(cs,code) rxvt_codeset[cs].to_unicode (code) |
84 | #define TO_UNICODE(cs,code) rxvt_codeset[cs].to_unicode (code) |
84 | |
85 | |
85 | struct unicode { // namespace für arme |
86 | struct unicode // namespace für arme |
|
|
87 | { |
86 | static bool is_space (unicode_t c); |
88 | static bool is_space (unicode_t c); |
87 | }; |
89 | }; |
88 | |
90 | |
89 | #endif |
91 | #endif |
90 | |
92 | |