#include "support/debug.h"
#include "support/FileName.h"
+#include "support/gettext.h"
#include "support/filetools.h"
#include "support/lstrings.h"
}
+vector<string> LyXModule::prerequisites() const {
+#ifdef TEX2LYX
+ return vector<string>();
+#else
+ if (!checked_)
+ isAvailable();
+ return prerequisites_;
+#endif
+}
+
+
bool LyXModule::isAvailable() const {
#ifdef TEX2LYX
return true;
if (checked_)
return available_;
checked_ = true;
+ available_ = true;
//check whether all of the required packages are available
vector<string>::const_iterator it = package_list_.begin();
vector<string>::const_iterator end = package_list_.end();
for (; it != end; ++it) {
if (!LaTeXFeatures::isAvailable(*it)) {
available_ = false;
- return available_;
+ prerequisites_.push_back(*it);
}
}
- available_ = true;
return available_;
#endif
}
return true;
}
+
// used when sorting the module list.
class ModuleSorter
{
public:
int operator()(LyXModule const & lm1, LyXModule const & lm2) const
{
- return lm1.getName() < lm2.getName();
+ return _(lm1.getName()) < _(lm2.getName());
}
};
-//Much of this is borrowed from LayoutFileList::read()
+// Much of this is borrowed from LayoutFileList::read()
bool ModuleList::read()
{
FileName const real_file = libFileSearch("", "lyxmodules.lst");
LYXERR(Debug::TCLASS, "Reading modules from `" << real_file << '\'');
if (real_file.empty()) {
- LYXERR0("unable to find modules file `"
- << to_utf8(makeDisplayPath(real_file.absFilename(), 1000))
- << "'.\nNo modules will be available.");
+ LYXERR0("unable to find modules file `lyxmodules.lst'.\n"
+ << "No modules will be available.");
return false;
}
if (!lex.isOK()) {
LYXERR0("unable to open modules file `"
- << to_utf8(makeDisplayPath(real_file.absFilename(), 1000))
+ << to_utf8(makeDisplayPath(real_file.absFileName(), 1000))
<< "'\nNo modules will be available.");
return false;
}