]> git.lyx.org Git - lyx.git/blobdiff - src/tex2lyx/Preamble.h
support for Georgian
[lyx.git] / src / tex2lyx / Preamble.h
index d438c95e2f7485fe1d92bcb6dc4bb4e6c8ef4a5c..ffc9bda03be74575bf9536ee569e5f5a3d2c00a7 100644 (file)
@@ -37,12 +37,24 @@ public:
        ///
        std::string inputencoding() const { return h_inputencoding; }
        ///
+       void setInputencoding(std::string const & e) { h_inputencoding = e; }
+       ///
        std::string notefontcolor() const { return h_notefontcolor; }
+       ///
+       bool refstyle() const { return h_use_refstyle; }
+       ///
+       bool fontCJKSet() const { return h_font_cjk_set; }
+       ///
+       std::string fontCJK() const { return h_font_cjk; }
+       ///
+       void fontCJK(std::string const & f) { h_font_cjk_set = true; h_font_cjk = f; }
        /// The document language
        std::string docLanguage() const { return h_language; }
        /// The language of text which is not explicitly marked
        std::string defaultLanguage() const  { return default_language; }
        ///
+       bool usePolyglossia() const;
+       ///
        std::string use_indices() const { return h_use_indices; }
        ///
        std::string polyglossia2lyx(std::string const & language);
@@ -73,6 +85,9 @@ public:
        void registerAuthor(std::string const & name);
        /// Get author named \p name (must be registered first)
        Author const & getAuthor(std::string const & name) const;
+       /// Get number of arguments of special table column type \c or -1
+       /// if no column type \p c exists
+       int getSpecialTableColumnArguments(char c) const;
 
        /// Parses the LaTeX preamble into internal data
        void parse(Parser & p, std::string const & forceclass,
@@ -97,6 +112,8 @@ private:
        bool one_language;
        /// the main non-CJK language
        std::string default_language;
+       /// Was babel called explicitly?
+       bool explicit_babel;
 
        /// was at least one title layout found?
        bool title_layout_found;
@@ -118,17 +135,19 @@ private:
        std::string h_font_sans;
        std::string h_font_typewriter;
        std::string h_font_default_family;
-       std::string h_use_non_tex_fonts;
+       bool h_use_non_tex_fonts;
        std::string h_font_sc;
        std::string h_font_osf;
        std::string h_font_sf_scale;
        std::string h_font_tt_scale;
+       bool h_font_cjk_set;
+       std::string h_font_cjk;
        std::string h_graphics;
        std::string h_default_output_format;
        std::string h_html_be_strict;
        std::string h_html_css_as_file;
        std::string h_html_math_output;
-       std::string h_index;
+       std::string h_index[99];
        std::string h_index_command;
        std::string h_inputencoding;
        std::string h_justification;
@@ -168,7 +187,7 @@ private:
        std::string h_pdf_quoted_options;
        std::string h_quotes_language;
        std::string h_secnumdepth;
-       std::string h_shortcut;
+       std::string h_shortcut[99];
        std::string h_spacing;
        std::string h_suppress_date;
        std::string h_textclass;
@@ -180,7 +199,7 @@ private:
        std::map<std::string, std::string> h_use_packages;
        std::string h_use_default_options;
        std::string h_use_hyperref;
-       std::string h_use_refstyle;
+       bool h_use_refstyle;
 
        /*!
         * Add package \p name with options \p options to used_packages.
@@ -198,7 +217,10 @@ private:
        ///
        void handle_if(Parser & p, bool in_lyx_preamble);
 
+       ///
        AuthorList authors_;
+       /// special table column types
+       std::map<char, int> special_columns_;
 };