\end_layout
\end_deeper
+\begin_layout Description
+
+\change_inserted -712698321 1514534780
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\change_inserted -712698321 1514534780
+AutoNests
+\end_layout
+
+\end_inset
+
+ Includes a comma-separated list of layout names that should be nested in
+ and after the current one.
+ Only makes sense for nestable layouts (such as environments)
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\change_inserted -712698321 1514538124
+EndAutoNests
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
\begin_layout Description
\begin_inset Flex Code
status collapsed
not
\emph default
whether this command should itself be protected.)
-\change_inserted -712698321 1514479340
-
-\end_layout
-
-\begin_layout Description
-
-\change_inserted -712698321 1514479340
-\begin_inset Flex Code
-status collapsed
-
-\begin_layout Plain Layout
-
-\change_inserted -712698321 1514479340
-Nests
-\end_layout
-
-\end_inset
-
- Includes a comma-separated list of layout names that should be nested in
- and after the current one.
- Only makes sense for nestable layouts (such as environments)
-\begin_inset Quotes eld
-\end_inset
-
-
-\begin_inset Flex Code
-status collapsed
-
-\begin_layout Plain Layout
-
-\change_inserted -712698321 1514479340
-EndNests
-\end_layout
-
-\end_inset
-
-
-\begin_inset Quotes erd
-\end_inset
-
-.
-\change_unchanged
-
\end_layout
\begin_layout Description
EndFont
AutoInsert 1
EndArgument
- Nests
+ AutoNests
Standard,Itemize,Enumerate,Description,FrameTitle,FrameSubtitle,Column,
Columns,ColumnsCenterAligned,ColumnsTopAligned,Pause,Overprint,OverlayArea,Only,Block,
ExampleBlock,AlertBlock,Bibliography,Quotation,Quote,Verse,Corollary,Definition,Definitions,
Example,Examples,Fact,Lemma,Proof,Theorem,LyX-Code
- EndNests
+ EndAutoNests
End
Style PlainFrame
Family Roman
Color latex
EndFont
- Nests
+ AutoNests
Standard,Itemize,Enumerate,Description,Pause,Overprint,OverlayArea,Only,Block,
ExampleBlock,AlertBlock,Bibliography,Quotation,Quote,Verse,Corollary,Definition,Definitions,
Example,Examples,Fact,Lemma,Proof,Theorem,LyX-Code
- EndNests
+ EndAutoNests
End
Style ColumnsCenterAligned
EndFont
AutoInsert 1
EndArgument
- Nests
+ AutoNests
Standard,Itemize,Enumerate,Description,Pause,Overprint,OverlayArea,Only,Quotation,
Quote,Verse,Corollary,Definition,Definitions,Example,Examples,Fact,Lemma,Proof,Theorem,LyX-Code
- EndNests
+ EndAutoNests
End
Style ExampleBlock
LabelString "Additional Theorem Text"
Tooltip "Additional text appended to the theorem header"
EndArgument
- Nests
+ AutoNests
Standard,Itemize,Enumerate,Description,Pause,Overprint,OverlayArea,Only,LyX-Code
- EndNests
+ EndAutoNests
End
Style Definition
# Color collapsable -> collapsible
# Incremented to format 66, 28 December 2017 by spitz
-# New Layout tag "Nests ... EndNests"
+# New Layout tag "AutoNests ... EndAutoNests"
# Do not forget to document format change in Customization
# Manual (section "Declaring a new text class").
LT_ALIGN = 1,
LT_ALIGNPOSSIBLE,
LT_ARGUMENT,
+ LT_AUTONESTS,
LT_MARGIN,
LT_BOTTOMSEP,
LT_CATEGORY,
LT_NEED_PROTECT,
LT_NEWLINE,
LT_NEXTNOINDENT,
- LT_NESTS,
LT_PAR_GROUP,
LT_PARINDENT,
LT_PARSEP,
{ "align", LT_ALIGN },
{ "alignpossible", LT_ALIGNPOSSIBLE },
{ "argument", LT_ARGUMENT },
+ { "autonests", LT_AUTONESTS },
{ "babelpreamble", LT_BABELPREAMBLE },
{ "bottomsep", LT_BOTTOMSEP },
{ "category", LT_CATEGORY },
{ "leftmargin", LT_LEFTMARGIN },
{ "margin", LT_MARGIN },
{ "needprotect", LT_NEED_PROTECT },
- { "nests", LT_NESTS },
{ "newline", LT_NEWLINE },
{ "nextnoindent", LT_NEXTNOINDENT },
{ "obsoletedby", LT_OBSOLETEDBY },
break;
}
- case LT_NESTS: {
- docstring const nest = subst(subst(subst(lex.getLongString(from_ascii("EndNests")),
- from_ascii("\n"), docstring()),
- from_ascii(" "), docstring()),
- from_ascii("\t"), docstring());
- vector<docstring> const nests =
- getVectorFromString(nest);
- nests_.insert(nests.begin(), nests.end());
+ case LT_AUTONESTS: {
+ docstring const autonest =
+ subst(subst(subst(lex.getLongString(from_ascii("EndAutoNests")),
+ from_ascii("\n"), docstring()),
+ from_ascii(" "), docstring()),
+ from_ascii("\t"), docstring());
+ vector<docstring> const autonests =
+ getVectorFromString(autonest);
+ autonests_.insert(autonests.begin(), autonests.end());
break;
}
}
os << '\n';
}
- if (!nests_.empty()) {
- os << "\tNests\n\t";
- for (set<docstring>::const_iterator it = nests_.begin();
- it != nests_.end(); ++it) {
- if (it != nests_.begin())
+ if (!autonests_.empty()) {
+ os << "\tAutoNests\n\t";
+ for (set<docstring>::const_iterator it = autonests_.begin();
+ it != autonests_.end(); ++it) {
+ if (it != autonests_.begin())
os << ',';
os << to_utf8(*it);
}
- os << "\n\tEndNests\n";
+ os << "\n\tEndAutoNests\n";
}
if (refprefix.empty())
os << "\tRefPrefix OFF\n";
///
std::set<std::string> const & requires() const { return requires_; }
///
- std::set<docstring> const & nests() const { return nests_; }
+ std::set<docstring> const & autonests() const { return autonests_; }
///
std::string const & latexparam() const { return latexparam_; }
///
/// Packages needed for this layout
std::set<std::string> requires_;
/// Layouts that are by default nested after this one
- std::set<docstring> nests_;
+ std::set<docstring> autonests_;
///
LaTeXArgMap latexargs_;
///
break;
case LFUN_LAYOUT: {
- bool const ignorenests = cmd.getArg(1) == "ignorenests";
- docstring layout = ignorenests ? from_utf8(cmd.getArg(0)) : cmd.argument();
+ bool const ignoreautonests = cmd.getArg(1) == "ignoreautonests";
+ docstring layout = ignoreautonests ? from_utf8(cmd.getArg(0)) : cmd.argument();
LYXERR(Debug::INFO, "LFUN_LAYOUT: (arg) " << to_utf8(layout));
Paragraph const & para = cur.paragraph();
docstring const old_layout = para.layout().name();
- set<docstring> nests = para.layout().nests();
DocumentClass const & tclass = bv->buffer().params().documentClass();
if (layout.empty())
if (change_layout) {
setLayout(cur, layout);
bool do_nest = false;
- if (cur.pit() > 0 && pars_[cur.pit() - 1].layout().name() == old_layout)
- do_nest = !ignorenests;
- if (do_nest && nests.find(layout) != nests.end())
+ set<docstring> autonests;
+ if (cur.pit() > 0) {
+ autonests = pars_[cur.pit() - 1].layout().autonests();
+ do_nest = !ignoreautonests;
+ }
+ if (do_nest && autonests.find(layout) != autonests.end())
lyx::dispatch(FuncRequest(LFUN_DEPTH_INCREMENT));
}
}
DocumentClass const & tc = bv->buffer().params().documentClass();
lyx::dispatch(FuncRequest(LFUN_LAYOUT, from_ascii("\"") + tc.plainLayout().name()
- + from_ascii("\" ignorenests")));
+ + from_ascii("\" ignoreautonests")));
lyx::dispatch(FuncRequest(LFUN_SEPARATOR_INSERT, "plain"));
if (before) {
cur.backwardPos();
case LFUN_LAYOUT: {
DocumentClass const & tclass = cur.buffer()->params().documentClass();
- bool const ignorenests = cmd.getArg(1) == "ignorenests";
- docstring layout = ignorenests ? from_utf8(cmd.getArg(0)) : cmd.argument();
+ bool const ignoreautonests = cmd.getArg(1) == "ignoreautonests";
+ docstring layout = ignoreautonests ? from_utf8(cmd.getArg(0)) : cmd.argument();
if (layout.empty())
layout = tclass.defaultLayoutName();
enable = !owner_->forcePlainLayout() && tclass.hasLayout(layout);
// You should also run the development/tools/updatelayouts.py script,
// to update the format of all of our layout files.
//
-int const LAYOUT_FORMAT = 66; //spitz: New layout tag Nests
+int const LAYOUT_FORMAT = 66; //spitz: New layout tag AutoNests
// Layout format for the current lyx file format. Controls which format is