X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fencoding.h;h=cce42157aa27003685985de4d6c0c1f354cd1f0a;hb=35204f8f33d7400a5fefeffea533fb4cb4097211;hp=b80dd613d3ea1bb20b446948c809f6368055341f;hpb=6c300f72a217722652dc27db9108e1050028979c;p=lyx.git diff --git a/src/encoding.h b/src/encoding.h index b80dd613d3..cce42157aa 100644 --- a/src/encoding.h +++ b/src/encoding.h @@ -16,47 +16,36 @@ #include #include +#include "support/types.h" namespace lyx { - -/// -typedef unsigned short int Uchar; - /// class Encoding { public: /// Encoding() {} /// - Encoding(std::string const & n, std::string const & l, Uchar const * e) - : Name_(n), LatexName_(l) { - for (int i = 0; i < 256; ++i) - encoding_table[i] = e[i]; + Encoding(std::string const & n, std::string const & l, + std::string const & i) + : Name_(n), LatexName_(l), iconvName_(i) + { } /// - std::string const & name() const { - return Name_; - } + std::string const & name() const { return Name_; } /// - std::string const & latexName() const { - return LatexName_; - } + std::string const & latexName() const { return LatexName_; } /// - Uchar ucs(unsigned char c) const { - return encoding_table[c]; - } + std::string const & iconvName() const { return iconvName_; } private: /// std::string Name_; /// std::string LatexName_; /// - Uchar encoding_table[256]; + std::string iconvName_; }; -extern Encoding symbol_encoding; - class Encodings { public: /// @@ -65,12 +54,10 @@ public: Encodings(); /// void read(std::string const & filename); - /// - Encoding const * getEncoding(std::string const & encoding) const; - /// - Encoding const * symbol_encoding() { - return &symbol_encoding_; - } + /// Get encoding from LyX name \p name + Encoding const * getFromLyXName(std::string const & name) const; + /// Get encoding from LaTeX name \p name + Encoding const * getFromLaTeXName(std::string const & name) const; /// enum Letter_Form { @@ -84,26 +71,19 @@ public: FORM_MEDIAL }; /// - static - bool isComposeChar_hebrew(unsigned char c); + static bool isComposeChar_hebrew(char_type c); /// - static - bool isComposeChar_arabic(unsigned char c); + static bool isComposeChar_arabic(char_type c); /// - static - bool is_arabic_special(unsigned char c); + static bool is_arabic_special(char_type c); /// - static - bool is_arabic(unsigned char c); + static bool is_arabic(char_type c); /// - static - unsigned char transformChar(unsigned char c, Letter_Form form); + static char_type transformChar(char_type c, Letter_Form form); private: /// EncodingList encodinglist; - /// - Encoding symbol_encoding_; }; extern Encodings encodings;