#include "Paragraph.h"
#include "paragraph_funcs.h"
#include "ParagraphParameters.h"
+#include "TextClass.h"
#include "TextMetrics.h"
#include "VSpace.h"
#include "WordLangTuple.h"
#include "insets/InsetSpecialChar.h"
#include "insets/InsetTabular.h"
+#include "support/docstream.h"
#include "support/lstrings.h"
#include "support/textutils.h"
#include "support/convert.h"
using support::bformat;
using support::contains;
using support::split;
+using support::subst;
using cap::cutSelection;
using cap::pasteParagraphList;
break;
}
- LYXERR(Debug::PARSER) << "Handling paragraph token: `"
- << token << '\'' << endl;
+ LYXERR(Debug::PARSER, "Handling paragraph token: `" << token << '\'');
if (token == "\\begin_layout" || token == "\\end_document"
|| token == "\\end_inset" || token == "\\begin_deeper"
|| token == "\\end_deeper") {
// the cursor set functions have a special mechanism. When they
// realize, that you left an empty paragraph, they will delete it.
-bool Text::cursorRightOneWord(Cursor & cur)
+bool Text::cursorForwardOneWord(Cursor & cur)
{
BOOST_ASSERT(this == cur.text());
}
-bool Text::cursorLeftOneWord(Cursor & cur)
+bool Text::cursorBackwardOneWord(Cursor & cur)
{
BOOST_ASSERT(this == cur.text());
else {
cur.resetAnchor();
cur.selection() = true;
- cursorRightOneWord(cur);
+ cursorForwardOneWord(cur);
cur.setSelection();
cutSelection(cur, true, false);
checkBufferStructure(cur.buffer(), cur);
else {
cur.resetAnchor();
cur.selection() = true;
- cursorLeftOneWord(cur);
+ cursorBackwardOneWord(cur);
cur.setSelection();
cutSelection(cur, true, false);
checkBufferStructure(cur.buffer(), cur);
} else {
from = cur.top();
getWord(from, to, PARTIAL_WORD);
- cursorRightOneWord(cur);
+ cursorForwardOneWord(cur);
}
cur.recordUndoSelection();
ParagraphList plist;
if (cur.lastpit() != 0 || cur.lastpos() != 0)
plist = paragraphs();
- cur.popLeft();
+ cur.popBackward();
// store cursor offset
if (spit == 0)
spos += cur.pos();
docstring text;
docstring par_text = pars_[pit].asString(cur.buffer(), false);
+ string piece;
+ // the return string of math matrices might contain linebreaks
+ par_text = subst(par_text, '\n', '-');
for (int i = 0; i < lyxrc.label_init_length; ++i) {
if (par_text.empty())
break;