Commit Graph

68 Commits

Author SHA1 Message Date
Maxime Coste
390d4ccdfc Buffer::{iterator_at,clamp} takes an optional avoid_eol parameter
when avoid_eol is true, clamping does avoid end-of-line if possible
2012-08-15 18:06:59 +02:00
Maxime Coste
759319ca44 Buffer: move back Modification as an implementation detail
* Filters now only works on insertion and take directly the
   iterator and content
 * use Buffer::insert and Buffer::erase to modify a buffer
2012-08-10 19:12:43 +02:00
Maxime Coste
a3cb9bfc5e editor.cc: remove unused id_not_unique 2012-07-30 13:39:38 +02:00
Maxime Coste
c915e18950 Move selection to last modification position in editor::{undo,redo} 2012-07-16 21:53:00 +02:00
Maxime Coste
fe988868e5 IncrementalInserter preserves selections 2012-07-16 21:21:56 +02:00
Maxime Coste
06dd3f8aad Add Editor::replace(memoryview) and bind alt-P to replace paste 2012-07-11 14:15:27 +02:00
Maxime Coste
5b2ef1da6a IncrementalInsertor::insert takes a memoryview<String> rather than a Register 2012-06-29 18:35:48 +02:00
Maxime Coste
c0987ebacc Add a FilterGroup, and cleanup HighlighterGroup
FilterGroup is similar to HighlighterGroup, it permits grouping
together filters for easy removal.
2012-06-12 18:24:29 +00:00
Maxime Coste
2c4bc5582a Alt-Space permits to remove a selection by index 2012-05-29 11:15:43 +00:00
Maxime Coste
9337938403 replace std::string references with String 2012-04-14 01:17:09 +00:00
Maxime Coste
df0f7b4689 rename BufferString to String 2012-03-08 21:23:29 +00:00
Maxime Coste
7e01867d55 'I' now inserts before the first non blank character of the line instead of the first character of the line 2012-03-07 19:19:33 +00:00
Maxime Coste
0352ad7983 Editor: replace all captures if one capture is present
before, selecting with 2 captures after selecting with 3 captures
would keep the third capture from the first selection.
2012-02-10 13:58:29 +00:00
Maxime Coste
d84d085cc2 Merge captures into registers, implements register insertion 2012-02-09 23:47:55 +00:00
Maxime Coste
04a37d8895 Editor refactoring, merge undo and batch management 2012-02-07 23:41:10 +00:00
Maxime Coste
9b5e9ffee2 selectors now take a Selection as parameter instead of a BufferIterator 2012-02-07 14:26:51 +00:00
Maxime Coste
96b167859a batches support in Editor, used by IncrementalInserter and exec_string
Editor groups all modification together in one undo group when batching.
nested batches are supported.
2012-02-03 13:55:22 +00:00
Maxime Coste
69d96c90da extract an Editor class from Window and refactor 2012-01-31 19:12:06 +00:00