return make_pair(true, 1);
}
-} // namespace anon
+} // namespace
docstring const find2string(docstring const & search,
return selectChange(cur, forward);
}
-}
+} // namespace
bool findNextChange(BufferView * bv)
{
// plus the last subexpression, if a (.*?) was inserted in the constructor.
if (!braces_match(m[0].first, m[0].second, open_braces))
return 0;
-
+
// Check braces on segments that matched all (.*?) subexpressions,
// except the last "padding" one inserted by lyx.
for (size_t i = 1; i < m.size() - 1; ++i)
if (!braces_match(m[i].first, m[i].second))
return false;
-
+
// Exclude from the returned match length any length
// due to close wildcards added at end of regexp
if (close_wildcards == 0)
// Retrieve the math environment type, and add '$' or '$]'
// or others (\end{equation}) accordingly
for (int s = cur.depth() - 1; s >= 0; --s) {
- CursorSlice const & cs = cur[s];
- InsetMath * inset = cs.asInsetMath();
+ CursorSlice const & cs2 = cur[s];
+ InsetMath * inset = cs2.asInsetMath();
if (inset && inset->asHullInset()) {
WriteStream ws(os);
inset->asHullInset()->footer_write(ws);
if (match_len) {
for (; !theApp()->longOperationCancelled() && cur; cur.forwardPos()) {
LYXERR(Debug::FIND, "Advancing cur: " << cur);
- int match_len = match(cur);
- LYXERR(Debug::FIND, "match_len: " << match_len);
- if (match_len) {
+ int match_len2 = match(cur);
+ LYXERR(Debug::FIND, "match_len: " << match_len2);
+ if (match_len2) {
// Sometimes in finalize we understand it wasn't a match
// and we need to continue the outest loop
int len = findAdvFinalize(cur, match);
}
-} // anonym namespace
+} // namespace
docstring stringifyFromForSearch(FindAndReplaceOptions const & opt,
pit->changeCase(buffer.params(), pos_type(1), right, others_case);
}
-} // anon namespace
+} // namespace
///
static void findAdvReplace(BufferView * bv, FindAndReplaceOptions const & opt, MatchStringAdv & matchAdv)
{
Cursor & cur = bv->cursor();
- if (opt.repl_buf_name == docstring())
+ if (opt.repl_buf_name == docstring()
+ || theBufferList().getBuffer(FileName(to_utf8(opt.repl_buf_name)), true) == 0
+ || theBufferList().getBuffer(FileName(to_utf8(opt.find_buf_name)), true) == 0)
return;
DocIterator sel_beg = cur.selectionBegin();
changeFirstCase(repl_buffer, text_uppercase, text_uppercase);
}
}
- cap::cutSelection(cur, false, false);
+ cap::cutSelection(cur, false);
if (cur.inTexted()) {
repl_buffer.changeLanguage(
repl_buffer.language(),
DocIterator cur;
int match_len = 0;
+ // e.g., when invoking word-findadv from mini-buffer wither with
+ // wrong options syntax or before ever opening advanced F&R pane
+ if (theBufferList().getBuffer(FileName(to_utf8(opt.find_buf_name)), true) == 0)
+ return false;
+
try {
MatchStringAdv matchAdv(bv->buffer(), opt);
int length = bv->cursor().selectionEnd().pos() - bv->cursor().selectionBegin().pos();
return is;
}
-} // lyx namespace
+} // namespace lyx