\newwrite{\layouts} \immediate\openout \layouts = textclass.lst.tmp
\newwrite{\vars} \immediate\openout \vars = chkconfig.vars
\newwrite{\packages} \immediate\openout \packages = packages.lst.tmp
+% Version of the packages list
+\immediate\write\packages{!!fileformat 2}
\immediate\write\layouts{%
# This file declares layouts and their associated definition files.^^J%
#include "support/FileName.h"
#include "support/filetools.h"
#include "support/lstrings.h"
+#include "support/Package.h"
using namespace std;
packages_.clear();
bool finished = false;
+ string lstformat = "1";
// Parse config-file
while (lex.isOK() && !finished) {
switch (lex.lex()) {
// Parse optional version info
lex.eatLine();
string const v = trim(lex.getString());
+ if (p == "!!fileformat") {
+ lstformat = v;
+ continue;
+ }
packages_.insert(make_pair(p, v));
}
}
}
+ // Check if the pkglist has current format.
+ // Reconfigure and re-parse if not.
+ if (lstformat != "2") {
+ package().reconfigureUserLyXDir("");
+ getAvailable();
+ }
}