]> git.lyx.org Git - lyx.git/blobdiff - src/TextClass.cpp
Move bind file format tag to LyXAction.cpp, and rename it.
[lyx.git] / src / TextClass.cpp
index 7da1a9729e7c50ed479ef6b36e419a496ecaa728..4465b1b7799b335178f9c2149e09732dfc2f46d5 100644 (file)
@@ -60,7 +60,7 @@ namespace lyx {
 // development/updatelayouts.sh script, to update the format of 
 // all of our layout files.
 //
-int const LAYOUT_FORMAT = 30;
+int const LAYOUT_FORMAT = 31;
        
 namespace {
 
@@ -196,6 +196,7 @@ enum TextClassTags {
        TC_RIGHTMARGIN,
        TC_FLOAT,
        TC_COUNTER,
+       TC_NOCOUNTER,
        TC_IFCOUNTER,
        TC_NOFLOAT,
        TC_TITLELATEXNAME,
@@ -233,6 +234,7 @@ namespace {
                { "input",             TC_INPUT },
                { "insetlayout",       TC_INSETLAYOUT },
                { "leftmargin",        TC_LEFTMARGIN },
+               { "nocounter",         TC_NOCOUNTER },
                { "nofloat",           TC_NOFLOAT },
                { "nostyle",           TC_NOSTYLE },
                { "outputformat",      TC_OUTPUTFORMAT },
@@ -652,6 +654,14 @@ TextClass::ReturnValues TextClass::read(Lexer & lexrc, ReadType rt)
                        readCiteFormat(lexrc);
                        break;
 
+               case TC_NOCOUNTER:
+                       if (lexrc.next()) {
+                               docstring const cnt = lexrc.getDocString();
+                               if (!counters_.remove(cnt))
+                                       LYXERR0("Unable to remove counter: " + to_utf8(cnt));
+                       }
+                       break;
+
                case TC_IFCOUNTER:
                        ifcounter = true;
                case TC_COUNTER:
@@ -1298,12 +1308,16 @@ DocumentClass & DocumentClassBundle::makeDocumentClass(
                        continue;
                }
                if (!lm->isAvailable()) {
+                       docstring const prereqs = from_utf8(getStringFromVector(lm->prerequisites(), "\n\t"));
                        docstring const msg =
-                               bformat(_("The module %1$s requires a package that is\n"
-                               "not available in your LaTeX installation, or a converter\n"
-                               "you have not installed. LaTeX output may not be possible.\n"), 
-                               from_utf8(modName));
-                       frontend::Alert::warning(_("Package not available"), msg);
+                               bformat(_("The module %1$s requires a package that is not\n"
+                                       "available in your LaTeX installation, or a converter that\n"
+                                       "you have not installed. LaTeX output may not be possible.\n"
+                                       "Missing prerequisites:\n"
+                                               "\t%2$s\n"
+                                       "See section 3.1.2.3 of the User's Guide for more information."),
+                               from_utf8(modName), prereqs);
+                       frontend::Alert::warning(_("Package not available"), msg, true);
                }
                FileName layout_file = libFileSearch("layouts", lm->getFilename());
                if (!doc_class.read(layout_file, TextClass::MODULE)) {
@@ -1378,7 +1392,7 @@ Layout const & DocumentClass::htmlTOCLayout() const
 
 string const & DocumentClass::getCiteFormat(string const & entry_type) const
 {
-       static string default_format = N_("{%author%[[%author%, ]][[{%editor%[[%editor%, ed., ]]}]]}\"%title%\"{%journal%[[, {!<i>!}%journal%{!</i>!}]][[{%publisher%[[, %publisher%]][[{%institution%[[, %institution%]]}]]}]]}{%year%[[ (%year%)]]}{%pages%[[, %pages%]]}.");
+       static string default_format = "{%author%[[%author%, ]][[{%editor%[[%editor%, ed., ]]}]]}\"%title%\"{%journal%[[, {!<i>!}%journal%{!</i>!}]][[{%publisher%[[, %publisher%]][[{%institution%[[, %institution%]]}]]}]]}{%year%[[ (%year%)]]}{%pages%[[, %pages%]]}.";
        
        map<string, string>::const_iterator it = cite_formats_.find(entry_type);
        if (it != cite_formats_.end())