int upper;
};
-static vector<Border> borders = vector<Border>(30);
-
#define MAXOPENED 30
class Intervall {
bool isPatternString;
- public:
- explicit Intervall(bool isPattern) :
- isPatternString(isPattern),
- ignoreidx(-1),
- actualdeptindex(0) { depts[0] = 0; closes[0] = 0;};
+public:
+ explicit Intervall(bool isPattern, string const & p) :
+ isPatternString(isPattern), par(p), ignoreidx(-1), actualdeptindex(0),
+ hasTitle(false)
+ {
+ depts[0] = 0;
+ closes[0] = 0;
+ }
+
string par;
int ignoreidx;
+ static vector<Border> borders;
int depts[MAXOPENED];
int closes[MAXOPENED];
int actualdeptindex;
// string show(int lastpos);
};
+vector<Border> Intervall::borders = vector<Border>(30);
+
int Intervall::isOpeningPar(int pos)
{
if ((pos < 0) || (size_t(pos) >= par.size()))
"ḒḓḘḙḼḽṊṋṰṱṶṷ"); // subcircum
buildaccent("subtilde|textsubtilde", "EeIiUu",
"ḚḛḬḭṴṵ"); // subtilde
+ accents["dgrave{\\imath}"] = "ȉ";
+ accents["textdoublegrave{\\i}"] = "ȉ";
+ buildaccent("dgrave|textdoublegrave", "AaEeIiOoRrUu",
+ "ȀȁȄȅȈȉȌȍȐȑȔȕ"); // double grave
+ accents["rcap{\\imath}"] = "ȉ";
+ accents["textroundcap{\\i}"] = "ȉ";
+ buildaccent("rcap|textroundcap", "AaEeIiOoRrUu",
+ "ȂȃȆȇȊȋȎȏȒȓȖȗ"); // inverted breve
}
/*
{
if (accents.empty())
buildAccentsMap();
- static regex const accre("\\\\(([\\S]|grave|breve|lyxmathsym|text|ddot|dot|acute|dacute|mathring|check|hat|bar|tilde|subdot|ogonek|cedilla|subring|textsubring|subhat|textsubcircum|subtilde|textsubtilde)\\{[^\\{\\}]+\\}|(i|imath|jmath)(?![a-zA-Z]))");
+ static regex const accre("\\\\(([\\S]|grave|breve|lyxmathsym|text|ddot|dot|acute|dacute|mathring|check|hat|bar|tilde|subdot|ogonek|cedilla|subring|textsubring|subhat|textsubcircum|subtilde|textsubtilde|dgrave|textdoublegrave|rcap|textroundcap)\\{[^\\{\\}]+\\}|(i|imath|jmath)(?![a-zA-Z]))");
smatch sub;
for (sregex_iterator itacc(par.begin(), par.end(), accre), end; itacc != end; ++itacc) {
sub = *itacc;
void removeHead(KeyInfo&, int count=0);
public:
- LatexInfo(string par, bool isPatternString) : entidx(-1), interval(isPatternString) {
- interval.par = par;
- interval.hasTitle = false;
- interval.titleValue = "";
+ LatexInfo(string par, bool isPatternString) : entidx(-1), interval(isPatternString, par)
+ {
buildKeys(isPatternString);
entries = vector<KeyInfo>();
buildEntries(isPatternString);