| Age | Commit message (Expand) | Author |
| 2012-11-23 | Buffer takes a vector of lines as initial content | Maxime Coste |
| 2012-11-22 | Cleanups and minor refactoring on Buffer | Maxime Coste |
| 2012-11-22 | move Window ownership to the ClientManager instead of the Buffer | Maxime Coste |
| 2012-11-22 | rename (hook|option)_manager to (hook|option)s. | Maxime Coste |
| 2012-11-21 | Buffer: replace reset_undo_data with a NoUndo flag | Maxime Coste |
| 2012-11-20 | Buffer: replace Buffer::Type with Buffer::Flags | Maxime Coste |
| 2012-11-12 | make Buffer::{add,remove}_change_listener const and the listener list mutable | Maxime Coste |
| 2012-11-12 | BufferIterator holds a safe_ptr to their buffer instead of a raw pointer | Maxime Coste |
| 2012-11-05 | Rework Window creation, avoid using the same window in multiple clients | Maxime Coste |
| 2012-10-11 | use ByteCount instead of CharCount when we are really counting bytes | Maxime Coste |
| 2012-10-08 | Buffer: add some utf8 sanity checks | Maxime Coste |
| 2012-10-08 | selections should always point to an utf8 character sequence start byte | Maxime Coste |
| 2012-10-02 | add postfix operator++ to BufferIterator | Maxime Coste |
| 2012-10-01 | String and BufferIterator value_type goes back to plain char | Maxime Coste |
| 2012-09-10 | Buffer: Allow inserting at the end when the inserted text ends with an end of... | Maxime Coste |
| 2012-09-04 | use more constexpr | Maxime Coste |
| 2012-08-23 | use a strongly typed int CharCount for character counts | Maxime Coste |
| 2012-08-22 | use a strongly typed int LineCount for line counts | Maxime Coste |
| 2012-08-21 | Add Buffer::iterator_at_line{begin,end}(size_t line) overloads | Maxime Coste |
| 2012-08-15 | Add BufferIterator::clamp(bool avoid_eol) method | Maxime Coste |
| 2012-08-15 | Buffer::{iterator_at,clamp} takes an optional avoid_eol parameter | Maxime Coste |
| 2012-08-15 | Buffer: add a timestamp | Maxime Coste |
| 2012-08-14 | Buffer: stronger invariant, a buffer is never empty and all lines finish by '\n' | Maxime Coste |
| 2012-08-10 | Buffer: move back Modification as an implementation detail | Maxime Coste |
| 2012-08-10 | Buffer: add reset_undo_data method | Maxime Coste |
| 2012-08-10 | Window,Buffer: add const overload for {option,hook}_manager | Maxime Coste |
| 2012-08-08 | BufferIterator: use default operator= | Maxime Coste |
| 2012-07-16 | Go back to a generic BufferChangeListener interface for selection update | Maxime Coste |
| 2012-06-29 | Buffer: pass by value instead of by reference when object will be copied anyway | Maxime Coste |
| 2012-06-28 | BufferManager use safe_ptr to reference the Buffers | Maxime Coste |
| 2012-06-25 | code cleanups in buffer | Maxime Coste |
| 2012-06-07 | HookManager are now hierarchical from window to buffer to global | Maxime Coste |
| 2012-05-29 | DisplayBuffer optimization, suppressed some paranoid checks | Maxime Coste |
| 2012-04-14 | replace std::string references with String | Maxime Coste |
| 2012-04-04 | remove ModificationListener and use a list of iterators to update instead | Maxime Coste |
| 2012-04-03 | add an OptionManager class and use it to manage tabstops | Maxime Coste |
| 2012-03-30 | add a Line::length method | Maxime Coste |
| 2012-03-30 | Store buffer content in a list of lines | Maxime Coste |
| 2012-03-19 | get rid of Buffer::at | Maxime Coste |
| 2012-03-12 | get rid of Buffer::compute_lines | Maxime Coste |
| 2012-03-08 | rename BufferString to String | Maxime Coste |
| 2012-02-22 | Buffer: optimize line updating when applying a modification | Maxime Coste |
| 2012-02-02 | Use an Editor instead of a Window as much as possible | Maxime Coste |
| 2012-01-31 | Buffer: support creation of temporary windows to apply commands when no windo... | Maxime Coste |
| 2012-01-31 | Buffer: add NewFile buffer type for buffer with an non existing yet file | Maxime Coste |
| 2012-01-11 | Document some Kakoune concepts, as Window, Buffer, DisplayAtom... | Maxime Coste |
| 2011-12-07 | Filters: move from buffer to window | Maxime Coste |
| 2011-12-07 | Buffer: replace insert and erase methods with modify | Maxime Coste |
| 2011-12-06 | Buffer: rename BufferModification to Modification | Maxime Coste |
| 2011-12-05 | Buffer: add comment for clamp | Maxime Coste |