]> git.lyx.org Git - lyx.git/blobdiff - src/Layout.cpp
Attempt to fix #8137 (arrived at r40862).
[lyx.git] / src / Layout.cpp
index 0faa29e847c972542f0118058fa2dc01219df59c..ec6e2dc5a5dfe760f5c931acea611e93f1635ddf 100644 (file)
@@ -24,7 +24,6 @@
 #include "support/lassert.h"
 #include "support/lstrings.h"
 #include "support/Messages.h"
-#include "support/regex.h"
 #include "support/textutils.h"
 
 
@@ -859,64 +858,6 @@ void Layout::readSpacing(Lexer & lex)
 }
 
 
-namespace {
-
-docstring const i18npreamble(Language const * lang, Encoding const & enc,
-                            docstring const & templ, bool const polyglossia)
-{
-       if (templ.empty())
-               return templ;
-
-       string preamble = polyglossia ?
-               subst(to_utf8(templ), "$$lang", lang->polyglossia()) :
-               subst(to_utf8(templ), "$$lang", lang->babel());
-
-#ifdef TEX2LYX
-       // tex2lyx does not have getMessages()
-       LASSERT(false, /**/);
-       (void)enc;
-#else
-       string const langenc = lang->encoding()->iconvName();
-       string const texenc = lang->encoding()->latexName();
-       string const bufenc = enc.iconvName();
-       // First and second character of plane 15 (Private Use Area)
-       char const s1[5] = {0xf3, 0xb0, 0x80, 0x80, 0x00}; // U+F0000
-       char const s2[5] = {0xf3, 0xb0, 0x80, 0x81, 0x00}; // U+F0001
-       // FIXME UNICODE
-       // lyx::regex is not unicode-safe.
-       // Should use QRegExp or (boost::u32regex, but that requires ICU)
-       static regex const reg("_\\(([^\\)]+)\\)");
-       smatch sub;
-       while (regex_search(preamble, sub, reg)) {
-               string const key = sub.str(1);
-               string translated = to_utf8(lang->translateLayout(key));
-               if (langenc != bufenc)
-                       translated = "\\inputencoding{" + texenc + "}"
-                               + string(s1) + langenc + string(s2) + translated
-                               + string(s1) + bufenc + string(s2);
-               preamble = subst(preamble, sub.str(), translated);
-       }
-#endif
-       return from_utf8(preamble);
-}
-
-}
-
-
-docstring const Layout::langpreamble(Language const * lang,
-                       Encoding const & enc, bool const polyglossia) const
-{
-       return i18npreamble(lang, enc, langpreamble_, polyglossia);
-}
-
-
-docstring const Layout::babelpreamble(Language const * lang,
-                       Encoding const & enc, bool const polyglossia) const
-{
-       return i18npreamble(lang, enc, babelpreamble_, polyglossia);
-}
-
-
 string const & Layout::htmltag() const 
 { 
        if (htmltag_.empty())