4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Lars Gullik Bjønnes
8 * \author Jean-Marc Lasgouttes
10 * Full author contact details are available in file CREDITS.
21 typedef unsigned short int Uchar
;
29 Encoding(std::string
const & n
, std::string
const & l
, Uchar
const * e
)
30 : Name_(n
), LatexName_(l
) {
31 for (int i
= 0; i
< 256; ++i
)
32 encoding_table
[i
] = e
[i
];
35 std::string
const & Name() const {
39 std::string
const & LatexName() const {
43 Uchar
ucs(unsigned char c
) const {
44 return encoding_table
[c
];
50 std::string LatexName_
;
52 Uchar encoding_table
[256];
55 extern Encoding symbol_encoding
;
60 typedef std::map
<std::string
, Encoding
> EncodingList
;
64 void read(std::string
const & filename
);
66 Encoding
const * getEncoding(std::string
const & encoding
) const;
68 Encoding
const * symbol_encoding() {
69 return &symbol_encoding_
;
85 bool IsComposeChar_hebrew(unsigned char c
);
88 bool IsComposeChar_arabic(unsigned char c
);
91 bool is_arabic_special(unsigned char c
);
94 bool is_arabic(unsigned char c
);
97 unsigned char TransformChar(unsigned char c
, Letter_Form form
);
101 EncodingList encodinglist
;
103 Encoding symbol_encoding_
;
106 extern Encodings encodings
;