blob: 3e8f8d6c7c6833dad25714d957b43e3f8ea308a1 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
#ifndef LYCHARSETS_H
#define LYCHARSETS_H
#ifndef HTUTILS_H
#include <HTUtils.h>
#endif
#include <UCDefs.h>
#ifndef UCMAP_H
#include <UCMap.h>
#endif /* !UCMAP_H */
extern BOOL HTPassEightBitRaw;
extern BOOL HTPassEightBitNum;
extern BOOL HTPassHighCtrlRaw;
extern BOOL HTPassHighCtrlNum;
extern BOOLEAN LYHaveCJKCharacterSet;
extern BOOLEAN DisplayCharsetMatchLocale;
#include <HTCJK.h>
extern HTkcode kanji_code;
/*
* currently active character set (internal handler)
*/
extern int current_char_set;
/*
* Initializer, calls initialization function for the
* CHARTRANS handling. - KW
*/
extern int LYCharSetsDeclared (void);
extern const char ** LYCharSets[];
extern const char * SevenBitApproximations[];
extern const char ** p_entity_values;
extern const char * LYchar_set_names[]; /* Full name, not MIME */
extern int LYlowest_eightbit[];
extern int LYNumCharsets;
extern LYUCcharset LYCharSet_UC[];
extern int UCGetLYhndl_byAnyName (char *value);
extern void HTMLSetCharacterHandling (int i);
extern void HTMLSetUseDefaultRawMode (int i, BOOLEAN modeflag);
extern void HTMLUseCharacterSet (int i);
extern UCode_t HTMLGetEntityUCValue (const char *name);
extern void Set_HTCJK (const char *inMIMEname, const char *outMIMEname);
extern const char * HTMLGetEntityName (UCode_t code);
/*
** HTMLGetEntityName calls LYEntityNames for iso-8859-1 entity
** names only. This is an obsolete technique but widely used in
** the code. Note that unicode number in general may have
** several equivalent entity names because of synonyms.
*/
extern BOOL force_old_UCLYhndl_on_reload;
extern int forced_UCLYhdnl;
#ifndef EXP_CHARSET_CHOICE
# define ALL_CHARSETS_IN_O_MENU_SCREEN 1
#endif
#ifdef EXP_CHARSET_CHOICE
typedef struct {
BOOL hide_display; /* if FALSE, show in "display-charset" menu */
BOOL hide_assumed; /* if FALSE, show in "assumed-charset" menu */
#ifndef ALL_CHARSETS_IN_O_MENU_SCREEN
int assumed_idx; /* only this field is needed */
#endif
} charset_subset_t;
/* each element corresponds to charset in LYCharSets */
extern charset_subset_t charset_subsets[];
/* all zeros by default - i.e., all charsets allowed */
extern BOOL custom_display_charset; /* whether the charset choices for display
charset were requested by user via lynx.cfg. It will remain FALSE if no
"display_charset_choice" settings were encountered in lynx.cfg */
extern BOOL custom_assumed_doc_charset; /* similar to custom_display_charset */
#ifndef ALL_CHARSETS_IN_O_MENU_SCREEN
/* this stuff is initialized after reading lynx.cfg and .lynxrc */
/* these arrays maps index of charset shown in menu to the index in LYCharsets[]*/
extern int display_charset_map[];
extern int assumed_doc_charset_map[];
/* these arrays are NULL terminated */
extern const char* display_charset_choices[];
extern const char* assumed_charset_choices[];
extern int displayed_display_charset_idx;
#endif
/* this will be called after lynx.cfg and .lynxrc are read */
extern void init_charset_subsets (void);
#endif /* EXP_CHARSET_CHOICE */
#if !defined(NO_AUTODETECT_DISPLAY_CHARSET)
# ifdef __EMX__
# define CAN_AUTODETECT_DISPLAY_CHARSET
# ifdef EXP_CHARTRANS_AUTOSWITCH
# define CAN_SWITCH_DISPLAY_CHARSET
# endif
# endif
#endif
#ifdef CAN_AUTODETECT_DISPLAY_CHARSET
extern int auto_display_charset;
#endif
#ifdef CAN_SWITCH_DISPLAY_CHARSET
enum switch_display_charset_t {
SWITCH_DISPLAY_CHARSET_MAYBE,
SWITCH_DISPLAY_CHARSET_REALLY,
SWITCH_DISPLAY_CHARSET_RESIZE
};
extern int Switch_Display_Charset (int ord, enum switch_display_charset_t really);
extern int Find_Best_Display_Charset (int ord);
extern char *charsets_directory;
extern char *charset_switch_rules;
extern int switch_display_charsets;
extern int auto_other_display_charset;
extern int codepages[2];
extern int real_charsets[2]; /* Non "auto-" charsets for the codepages */
#endif
#endif /* LYCHARSETS_H */
|