* LyX, The Document Processor
*
* Copyright 1995 Matthias Ettrich
- * Copyright 1995-1999 The LyX Team.
+ * Copyright 1995-2000 The LyX Team.
*
* ====================================================== */
#include "debug.h"
#include "support/lyxlib.h"
#include "support/lstrings.h"
+#include "lyxrc.h"
+#include "language.h"
+
+using std::ostream;
+using std::endl;
BufferParams::BufferParams()
{
secnumdepth = 3;
tocdepth = 3;
language = "default";
+ language_info = default_language;
fonts = "default";
inputenc = "latin1";
graphicsDriver = "default";
sides = LyXTextClass::OneSide;
columns = 1;
pagestyle = "default";
- for(int iter = 0; iter < 4; iter++) {
+ for(int iter = 0; iter < 4; ++iter) {
user_defined_bullets[iter] = temp_bullets[iter]
= ITEMIZE_DEFAULTS[iter];
}
}
-void BufferParams::writeFile(ostream & os)
+void BufferParams::writeFile(ostream & os) const
{
// The top of the file is written by the buffer.
// Prints out the buffer info into the .lyx file given by file
// then the the preamble
if (!preamble.empty()) {
// remove '\n' from the end of preamble
- preamble = strip(preamble, '\n');
+ string tmppreamble = strip(preamble, '\n');
os << "\\begin_preamble\n"
- << preamble
+ << tmppreamble
<< "\n\\end_preamble\n";
}
if (!lex.next()) return;
string tmptok = lex.GetString();
- string test;
- int n = 0;
+
// check if tmptok is part of tex_babel in tex-defs.h
- while (true) {
- test = tex_babel[n++];
-
- if (test == tmptok) {
- language = tmptok;
- break;
- }
- else if (test.empty()) {
+ Languages::iterator lit = languages.find(tmptok);
+ if (lit != languages.end()) {
+ // found it
+ language = tmptok;
+ language_info = &(*lit).second;
+ } else {
+ // not found
+ language = "default";
+ language_info = default_language;
+ if (tmptok != "default") {
lyxerr << "Warning: language `"
<< tmptok << "' not recognized!\n"
<< " Setting language to `default'."
<< endl;
- language = "default";
- break;
- }
+ }
}
}