class Buffer;
class BufferParams;
class BufferView;
+class CompletionList;
class CursorSlice;
class DocIterator;
class ErrorList;
void getWord(CursorSlice & from, CursorSlice & to, word_location const) const;
/// just selects the word the cursor is in
void selectWord(Cursor & cur, word_location loc);
-
+ /// convenience function get the previous word or an empty string
+ docstring previousWord(CursorSlice const & sl) const;
+
/// what type of change operation to make
enum ChangeOp {
ACCEPT,
bool cursorBackwardOneWord(Cursor & cur);
///
bool cursorForwardOneWord(Cursor & cur);
+ ///
+ bool cursorVisLeftOneWord(Cursor & cur);
+ ///
+ bool cursorVisRightOneWord(Cursor & cur);
/// Delete from cursor up to the end of the current or next word.
void deleteWordForward(Cursor & cur);
/// Delete from cursor to start of current or prior word.
///
void setMacrocontextPosition(DocIterator const & pos);
+ ///
+ bool completionSupported(Cursor const & cur) const;
+ ///
+ CompletionList const * createCompletionList(Cursor const & cur) const;
+ ///
+ bool insertCompletion(Cursor & cur, docstring const & s, bool /*finished*/);
+ ///
+ docstring completionPrefix(Cursor const & cur) const;
+
public:
///
ParagraphList pars_;