const char * const known_lyx_packages[] = {"amsbsy", "amsmath", "amssymb",
"amstext", "amsthm", "array", "babel", "booktabs", "calc", "CJK", "color",
"float", "fontspec", "framed", "graphicx", "hhline", "ifthen", "longtable",
-"makeidx", "multirow", "nomencl", "pdfpages", "prettyref", "refstyle", "rotating",
-"rotfloat", "splitidx", "setspace", "subscript", "textcomp", "tipa", "tipx",
-"tone", "ulem", "url", "varioref", "verbatim", "wrapfig", "xcolor", "xunicode", 0};
+"makeidx", "minted", "multirow", "nomencl", "pdfpages", "prettyref", "refstyle",
+"rotating", "rotfloat", "splitidx", "setspace", "subscript", "textcomp", "tipa",
+"tipx", "tone", "ulem", "url", "varioref", "verbatim", "wrapfig", "xcolor",
+"xunicode", 0};
// codes used to remove packages that are loaded automatically by LyX.
// Syntax: package_beg_sep<name>package_mid_sep<package loading code>package_end_sep
h_font_tt_scale[1] = "100";
//h_font_cjk
h_is_mathindent = "0";
- h_math_number_before = "0";
+ h_math_numbering_side = "default";
h_graphics = "default";
h_default_output_format = "default";
h_html_be_strict = "false";
h_use_hyperref = "false";
h_use_microtype = "false";
h_use_refstyle = false;
+ h_use_minted = false;
h_use_packages["amsmath"] = "1";
h_use_packages["amssymb"] = "0";
h_use_packages["cancel"] = "0";
else if (is_known(name, known_lyx_packages) && options.empty()) {
if (name == "splitidx")
h_use_indices = "true";
- if (name == "refstyle")
+ else if (name == "minted")
+ h_use_minted = true;
+ else if (name == "refstyle")
h_use_refstyle = true;
else if (name == "prettyref")
h_use_refstyle = false;
<< "\\paperorientation " << h_paperorientation << '\n'
<< "\\suppress_date " << h_suppress_date << '\n'
<< "\\justification " << h_justification << '\n'
- << "\\use_refstyle " << h_use_refstyle << '\n';
+ << "\\use_refstyle " << h_use_refstyle << '\n'
+ << "\\use_minted " << h_use_minted << '\n';
if (!h_fontcolor.empty())
os << "\\fontcolor " << h_fontcolor << '\n';
if (!h_notefontcolor.empty())
os << "\\is_math_indent " << h_is_mathindent << "\n";
if (!h_mathindentation.empty())
os << "\\math_indentation " << h_mathindentation << "\n";
- os << "\\math_number_before " << h_math_number_before << "\n";
+ os << "\\math_numbering_side " << h_math_numbering_side << "\n";
os << "\\quotes_style " << h_quotes_style << "\n"
<< "\\dynamic_quotes " << h_dynamic_quotes << "\n"
<< "\\papercolumns " << h_papercolumns << "\n"
// formula numbering side
if ((it = find(opts.begin(), opts.end(), "leqno"))
!= opts.end()) {
- h_math_number_before = "1";
+ h_math_numbering_side = "left";
opts.erase(it);
}
-
+ else if ((it = find(opts.begin(), opts.end(), "reqno"))
+ != opts.end()) {
+ h_math_numbering_side = "right";
+ opts.erase(it);
+ }
+
// paper orientation
if ((it = find(opts.begin(), opts.end(), "landscape")) != opts.end()) {
h_paperorientation = "landscape";
}
else if (t.cs() == "newtheorem") {
+ bool star = false;
+ if (p.next_token().character() == '*') {
+ p.get_token();
+ star = true;
+ }
string const name = p.getArg('{', '}');
string const opt1 = p.getFullOpt();
string const opt2 = p.getFullOpt();
string const body = p.verbatim_item();
string const opt3 = p.getFullOpt();
+ string const cmd = star ? "\\newtheorem*" : "\\newtheorem";
- string const complete = "\\newtheorem{" + name + '}' +
+ string const complete = cmd + "{" + name + '}' +
opt1 + opt2 + '{' + body + '}' + opt3;
add_known_theorem(name, opt1, !opt2.empty(), from_utf8(complete));
if (!forceclass.empty())
h_textclass = forceclass;
tc.setName(h_textclass);
- if (!tc.load()) {
+ if (!LayoutFileList::get().haveClass(h_textclass) || !tc.load()) {
cerr << "Error: Could not read layout file for textclass \"" << h_textclass << "\"." << endl;
exit(EXIT_FAILURE);
}