* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
- * \author André Pönitz
+ * \author André Pönitz
*
* Full author contact details are available in file CREDITS.
*/
#include <config.h>
#include "MathAutoCorrect.h"
-#include "MathArray.h"
+#include "MathData.h"
#include "InsetMath.h"
#include "MathSupport.h"
#include "MathParser.h"
-#include "debug.h"
+#include "support/debug.h"
+#include "support/FileName.h"
#include "support/filetools.h" // LibFileSearch
+#include "support/docstream.h"
#include <fstream>
#include <sstream>
+using namespace std;
namespace lyx {
using support::libFileSearch;
-using std::string;
-using std::ifstream;
-using std::endl;
-using std::vector;
-
namespace {
class Correction {
public:
///
+ /// \brief Correction
+ // it is fine not to initialize from2_
+ // coverity[UNINIT_CTOR]
Correction() {}
///
bool correct(MathAtom & at, char_type c) const;
return false;
if (s2.size() != 1)
return false;
- MathArray ar1, ar3;
+ MathData ar1, ar3;
mathed_parse_cell(ar1, s1);
mathed_parse_cell(ar3, s3);
if (ar1.size() != 1 || ar3.size() != 1)
}
-void Correction::write(odocstream & os) const
-{
- os << "from: '" << from1_ << "' and '" << from2_
- << "' to '" << to_ << '\'' << endl;
-}
-
-
bool Correction::correct(MathAtom & at, char_type c) const
{
- //LYXERR(Debug::MATHED)
- // << "trying to correct ar: " << at << " from: '" << from1_ << '\'' << endl;
+ //LYXERR(Debug::MATHED,
+ // "trying to correct ar: " << at << " from: '" << from1_ << '\'');
if (from2_ != c)
return false;
if (asString(at) != asString(from1_))
return false;
- LYXERR(Debug::MATHED)
- << "match found! subst in " << at
- << " from: '" << from1_ << "' to '" << to_ << '\'' << endl;
+ LYXERR(Debug::MATHED, "match found! subst in " << at
+ << " from: '" << from1_ << "' to '" << to_ << '\'');
at = to_;
return true;
}
+#if 0
+void Correction::write(odocstream & os) const
+{
+ os << "from: '" << from1_ << "' and '" << from2_
+ << "' to '" << to_ << '\'' << endl;
+}
+
+
idocstream & operator>>(idocstream & is, Correction & corr)
{
corr.read(is);
corr.write(os);
return os;
}
-
+#endif
void initAutoCorrect()
{
- LYXERR(Debug::MATHED) << "reading autocorrect file" << endl;
+ LYXERR(Debug::MATHED, "reading autocorrect file");
support::FileName const file = libFileSearch(string(), "autocorrect");
if (file.empty()) {
lyxerr << "Could not find autocorrect file" << endl;
string line;
ifstream is(file.toFilesystemEncoding().c_str());
while (getline(is, line)) {
- if (line.size() == 0 || line[0] == '#') {
- //LYXERR(Debug::MATHED) << "ignoring line '" << line << '\'' << endl;
+ if (line.empty() || line[0] == '#') {
+ //LYXERR(Debug::MATHED, "ignoring line '" << line << '\'');
continue;
}
idocstringstream il(from_utf8(line));
- //LYXERR(Debug::MATHED) << "line '" << line << '\'' << endl;
+ //LYXERR(Debug::MATHED, "line '" << line << '\'');
Correction corr;
if (corr.read(il)) {
- //LYXERR(Debug::MATHED) << "parsed: '" << corr << '\'' << endl;
+ //LYXERR(Debug::MATHED, "parsed: '" << corr << '\'');
theCorrections.insert(corr);
}
}
- LYXERR(Debug::MATHED) << "done reading autocorrections." << endl;
+ LYXERR(Debug::MATHED, "done reading autocorrections.");
}
} // namespace anon
-bool math_autocorrect(MathAtom & at, char c)
+bool math_autocorrect(MathAtom & at, char_type c)
{
static bool initialized = false;