| Age | Commit message (Expand) | Author |
| 2017-01-13 | Fix capture group handling | Maxime Coste |
| 2017-01-03 | Fix bug relying on undefined arg evaluation order. | Maxime Coste |
| 2017-01-03 | Fix handling of main selection when copying selection to next/previous lines | Maxime Coste |
| 2017-01-01 | Refactor SelectionList::insert a bit | Maxime Coste |
| 2016-10-01 | Support codepoints of variable width | Maxime Coste |
| 2016-08-27 | Support merging consecutive selections with <a-m> | Maxime Coste |
| 2016-07-30 | Support sorting and merging overlapping separately, fix bug in move | Maxime Coste |
| 2016-07-08 | Keep modified selections in non-draft exec/eval -itersel | Maxime Coste |
| 2015-12-27 | Fix uses of non-keyword logical operators (replace &&, || and ! with and, or ... | Maxime Coste |
| 2015-09-12 | Add some missing memory domains | Maxime Coste |
| 2015-06-27 | Initial selection saving/restoring support bound to ^ and alt-^ | Maxime Coste |
| 2015-04-13 | Add support for string <-> selection list serialization | Maxime Coste |
| 2015-03-09 | ArrayView content is not const anymore | Maxime Coste |
| 2015-02-19 | Rename safe_ptr and ref_ptr to SafePtr and RefPtr | Maxime Coste |
| 2015-01-16 | Add support for per type default memory domain | Maxime Coste |
| 2015-01-12 | replace all std::vector with Vector | Maxime Coste |
| 2015-01-06 | Rename memoryview to ArrayView | Maxime Coste |
| 2014-09-09 | Add support for target column preservation | Maxime Coste |
| 2014-07-05 | Add support for paste all (on <a-[pP]>) | Maxime Coste |
| 2014-06-02 | Move compute_modified_ranges to selection.cc and use an optimized approach | Maxime Coste |
| 2014-06-01 | Extract merge_overlapping as a free function template | Maxime Coste |
| 2014-05-31 | remove reverse iterator from SelectionList | Maxime Coste |
| 2014-05-29 | Use forward iteration on selections, and take advantage of it when updating | Maxime Coste |
| 2014-05-26 | Go back to Buffer::Change based implementation for SelectionList::update | Maxime Coste |
| 2014-05-25 | Use SelectionList::insert in InputModes::Insert | Maxime Coste |
| 2014-05-25 | Move insert/erase methods from normal.cc to member functions in SelectionList | Maxime Coste |
| 2014-05-17 | Minor cleanup in SelectionList methods | Maxime Coste |
| 2014-05-14 | Iterate in reversed order on selections when modifing buffer | Maxime Coste |
| 2014-05-13 | Make it harder to have an invalid SelectionList | Maxime Coste |
| 2014-05-13 | SelectionList know its buffer and timestamp | Maxime Coste |
| 2014-05-13 | Pass a at_end param to BufferChangeListener::on_{insert,erase} | Maxime Coste |
| 2014-05-12 | SelectionList no longer inherit from std::vector | Maxime Coste |
| 2014-05-07 | Refactor LineAndColumn coordinates | Maxime Coste |
| 2014-04-28 | Move some buffer related utility functions to buffer_utils.{cc,hh} | Maxime Coste |
| 2014-04-02 | Fix clang compilation | Maxime Coste |
| 2014-03-29 | Remove Range struct, merge it back in Selection | Maxime Coste |
| 2014-01-28 | Rename selections first,last to more explicit anchor,cursor | Maxime Coste |
| 2014-01-13 | Much faster implementation of SelectionList::merge_overlapping | Maxime Coste |
| 2013-12-15 | Fix replace_with_char behaviour, keep the same selections | Maxime Coste |
| 2013-12-14 | Remove Editor::select methods, add a non-const selections getter | Maxime Coste |
| 2013-12-14 | Move (keep|flip|remove|clear)_selections from editor method to free selectors | Maxime Coste |
| 2013-12-14 | Move main selection index to SelectionList | Maxime Coste |
| 2013-07-26 | LineAndColumns: always pass by value | Maxime Coste |
| 2013-07-12 | Editor: clamp coordinates in select(BufferCoord) | Maxime Coste |
| 2013-06-18 | restore compilation with gcc 4.7 | Maxime Coste |
| 2013-06-06 | Buffer: insert and erase go back to taking iterators, and return iterators | Maxime Coste |
| 2013-06-04 | Use coord instead of iterators for selections | Maxime Coste |
| 2013-06-01 | BufferChangeListener: pass buffer to on_{inser,erase} | Maxime Coste |
| 2013-05-30 | remove Selection::buffer | Maxime Coste |
| 2013-05-30 | reorganize check_invariant in SelectionList | Maxime Coste |