15
* [old comments: - KW ]
18
* Interface between console.c, selection.c and UCmap.c
26
* Some conventions I try to follow (loosely):
27
* [a-z]* only internal, names from linux driver code.
28
* UC_* to be only known internally.
29
* UC[A-Z]* to be exported to other parts of Lynx. -KW
31
extern void UC_Charset_Setup PARAMS((
32
CONST char * UC_MIMEcharset,
33
CONST char * UC_LYNXcharset,
37
struct unimapdesc_str replacedesc,
48
struct unimapdesc_str replacedesc;
54
int codepage; /* codepage number, used by OS/2 font-switching code */
57
extern int UCNumCharsets;
58
extern int UCInitialized;
60
extern void UCInit NOARGS;
63
* INSTRUCTIONS for adding new character sets which do not have
66
* Several #defines below are declarations for charsets which need no
67
* tables for mapping to Unicode - CJK multibytes, x-transparent, UTF8 -
68
* Lynx takes care of them internally.
70
* The declaration's format is kept in chrtrans/XXX_uni.h -
71
* keep this in mind when changing ucmaketbl.c,
72
* see also UC_Charset_Setup() above for details.
76
* There is no strict correlation for the next five, since the transfer
77
* charset gets decoded into Display Char Set by the CJK code (separate
78
* from Unicode mechanism). For now we use the MIME name that describes
79
* what is output to the terminal. - KW
82
/*----------------------------------------------------------------------------*/
84
#ifndef NO_CHARSET_euc_cn
85
#define NO_CHARSET_euc_cn !ALL_CHARSETS
89
#define UC_CHARSET_SETUP_euc_cn /*nothing*/
91
#define UC_CHARSET_SETUP_euc_cn UC_Charset_NoUctb_Setup("euc-cn","Chinese",\
95
/*----------------------------------------------------------------------------*/
97
#ifndef NO_CHARSET_euc_jp
98
#define NO_CHARSET_euc_jp !ALL_CHARSETS
101
#if NO_CHARSET_euc_jp
102
#define UC_CHARSET_SETUP_euc_jp /*nothing*/
104
#define UC_CHARSET_SETUP_euc_jp UC_Charset_NoUctb_Setup("euc-jp","Japanese (EUC-JP)",\
105
1, 128,UCT_ENC_CJK,0)
108
/*----------------------------------------------------------------------------*/
110
#ifndef NO_CHARSET_shift_jis
111
#define NO_CHARSET_shift_jis !ALL_CHARSETS
114
#if NO_CHARSET_shift_jis
115
#define UC_CHARSET_SETUP_shift_jis /*nothing*/
117
#define UC_CHARSET_SETUP_shift_jis UC_Charset_NoUctb_Setup("shift_jis","Japanese (Shift_JIS)",\
118
1, 128,UCT_ENC_CJK,0)
121
/*----------------------------------------------------------------------------*/
123
#ifndef NO_CHARSET_euc_kr
124
#define NO_CHARSET_euc_kr !ALL_CHARSETS
127
#if NO_CHARSET_euc_kr
128
#define UC_CHARSET_SETUP_euc_kr /*nothing*/
130
#define UC_CHARSET_SETUP_euc_kr UC_Charset_NoUctb_Setup("euc-kr","Korean",\
131
1, 128,UCT_ENC_CJK,0)
134
/*----------------------------------------------------------------------------*/
136
#ifndef NO_CHARSET_big5
137
#define NO_CHARSET_big5 !ALL_CHARSETS
141
#define UC_CHARSET_SETUP_big5 /*nothing*/
143
#define UC_CHARSET_SETUP_big5 UC_Charset_NoUctb_Setup("big5","Taipei (Big5)",\
144
1, 128,UCT_ENC_CJK,0)
147
/*----------------------------------------------------------------------------*/
150
* Placeholder for non-translation mode. - FM
153
#ifndef NO_CHARSET_x_transparent
154
#define NO_CHARSET_x_transparent !ALL_CHARSETS
157
#if NO_CHARSET_x_transparent
158
#define UC_CHARSET_SETUP_x_transparent /*nothing*/
160
#define UC_CHARSET_SETUP_x_transparent UC_Charset_NoUctb_Setup("x-transparent","Transparent",\
161
0, 128,UCT_ENC_8BIT,0)
164
/*----------------------------------------------------------------------------*/
166
#ifndef NO_CHARSET_utf_8
167
#define NO_CHARSET_utf_8 !ALL_CHARSETS
171
#define UC_CHARSET_SETUP_utf_8 /*nothing*/
173
#define UC_CHARSET_SETUP_utf_8 UC_Charset_NoUctb_Setup("utf-8","UNICODE (UTF-8)",\
174
0, 128,UCT_ENC_UTF8,-4)
178
#endif /* UCDOMAP_H */