]> git.lyx.org Git - features.git/commitdiff
tex2lyx: a fix for the \tone support
authorUwe Stöhr <uwestoehr@lyx.org>
Mon, 18 Feb 2013 13:07:13 +0000 (14:07 +0100)
committerUwe Stöhr <uwestoehr@lyx.org>
Mon, 18 Feb 2013 13:07:13 +0000 (14:07 +0100)
- the package tone must explicitly be registered because there can be a single tone that is not found via unicodesymbols

src/tex2lyx/text.cpp

index d0427c29a9bc37056a953d9d8f907b6e2521e6d9..490692563a01e7f4462c4ba0514084b89639885c 100644 (file)
@@ -294,7 +294,7 @@ char const * const known_tipa_marks[] = {"textsubwedge", "textsubumlaut",
 "texthighrise", "textlowrise", "textrisefall", "textsyllabic",
 "textsubring", 0};
 
-/// tones that need special handling
+/// TIPA tones that need special handling
 char const * const known_tones[] = {"15", "51", "45", "12", "454", 0};
 
 // string to store the float type to be able to determine the type of subfloats
@@ -3278,7 +3278,8 @@ void parse_text(Parser & p, ostream & os, unsigned flags, bool outer,
 
                else if (t.cs() == "tone" ) {
                        context.check_layout(os);
-                       // try to see whether the string is in unicodesymbols
+                       // register the tone package
+                       preamble.registerAutomaticallyLoadedPackage("tone");
                        string content = trimSpaceAndEol(p.verbatim_item());
                        string command = t.asInput() + "{" + content + "}";
                        // some tones can be detected by unicodesymbols, some need special code
@@ -3286,6 +3287,7 @@ void parse_text(Parser & p, ostream & os, unsigned flags, bool outer,
                                os << "\\IPAChar " << command << "\n";
                                continue;
                        }
+                       // try to see whether the string is in unicodesymbols
                        bool termination;
                        docstring rem;
                        set<string> req;
@@ -3298,9 +3300,6 @@ void parse_text(Parser & p, ostream & os, unsigned flags, bool outer,
                                             << ", result is " << to_utf8(s)
                                                 << "+" << to_utf8(rem) << endl;
                                os << to_utf8(s);
-                               // thiw will register the package "tone"
-                               for (set<string>::const_iterator it = req.begin(); it != req.end(); ++it)
-                                       preamble.registerAutomaticallyLoadedPackage(*it);
                        } else
                                // we did not find a non-ert version
                                output_ert_inset(os, command, context);