| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-05-09 | Mark Client, Window, Buffer and OptionManager as final | Maxime Coste | |
| Avoids warning about non virtual destructor calls on them, as they have a vtable due to OptionManagerWatcher. | |||
| 2018-05-02 | Refactor buffer undo tree | Maxime Coste | |
| Store the undo tree as an array of undo nodes, instead of as a pointer based tree. | |||
| 2018-03-13 | Do not jump to buffer start on `g.` with no previous modifications | Maxime Coste | |
| 2018-02-11 | Refuse modification of ReadOnly buffers and make Debug buffer readonly | Maxime Coste | |
| The debug buffer is a bit special as lots of events might mutate it, permitting it to be modified leads to some buggy behaviour: For example, `pipe` uses a ForwardChangeTracker to track buffer changes, but when applied on a debug buffer with the profile flag on, each shell execution will trigger an additional modification of the buffer while applying the changes, leading to an assertion failing as changes might not be happening in a forward way anymore. Trying to modify a debug buffer will now raise an error immediatly. | |||
| 2017-11-12 | Move Array and ConstexprVector to a constexpr_utils.hh header | Maxime Coste | |
| 2017-09-20 | Add max_history_id in status printed with <a-u> and <a-U> | Delapouite | |
| 2017-08-18 | Respecify EnumDescs array sizes manually to workaround clang-3.6 bug | Maxime Coste | |
| 2017-08-12 | Remove size redundancy in enum_desc function declaration | Maxime Coste | |
| The need to have the array size in the return type was redundant with the actual list of elements. | |||
| 2017-08-04 | Purge history on buffer reload when NoUndo flag is on | Maxime Coste | |
| We were preserving the history in that case, so on fifo buffers (that set the NoUndo flag until the fifo is closed), we still had the history from the "previous life" of the buffer, leading crashes when trying to apply it. Fixes #1518 | |||
| 2017-07-07 | Formatting fixes | Maxime Coste | |
| 2017-06-11 | Fix the Buffer::end() madness | Maxime Coste | |
| Until now, buffer had multiple recognized end coordinates, either { line_count, 0 } or { line_count - 1, line[line_count - 1].length }. Now the only correct end coord is { line_count, 0 }, removing the need for various special cases. | |||
| 2017-06-07 | noexept-ify BufferIterator methods | Maxime Coste | |
| 2017-06-07 | Use String default ctor instead of empty string | Maxime Coste | |
| 2017-05-22 | Do not avoid eol in insert mode vertical movement | Maxime Coste | |
| 2017-05-22 | Remove virtual destructor from OptionManagerWatcher | Maxime Coste | |
| We should never destruct anything through an OptionManagerWatcher pointer, so having all those destructor virtual makes no sense. | |||
| 2017-05-07 | Respect tabstop in Buffer::offset_coord | Maxime Coste | |
| 2017-03-16 | Try to clean up option include a bit | Maxime Coste | |
| 2017-03-15 | Small code tweaks regarding flags handling | Maxime Coste | |
| 2017-03-15 | Migrate WithBitOps template specialization to with_bit_ops function | Maxime Coste | |
| This way we dont depend on knowing the base template to enable bit ops on an enum type. | |||
| 2017-03-15 | Migrate to a more value based meta programming model | Maxime Coste | |
| Introduce Meta::Type<T> to store a type as value, and pass it around, migrate enum_desc and option_type_name to this. | |||
| 2017-02-20 | Fix performance of word completion with many different selections | Maxime Coste | |
| Fixes #1228 | |||
| 2017-02-06 | Small layout tweak for Buffer::HistoryNode | Maxime Coste | |
| 2017-01-28 | Make BufferIterator only a bidirectional iterator | Maxime Coste | |
| Distance computation is too expensive on BufferIterators to treat them as random access. | |||
| 2017-01-08 | Apply clang-tidy modernize to the codebase | Maxime Coste | |
| 2016-11-24 | Forward client name to contexts created for write-all | Maxime Coste | |
| Fixes #937 | |||
| 2016-11-14 | Propagate the hooks disabled state through prompt, menu, and command execution | Maxime Coste | |
| Maintain it as well during buffer creation even if the hooks are not executed in client context. Fixes #818 | |||
| 2016-10-01 | Support codepoints of variable width | Maxime Coste | |
| Add a ColumnCount type and use it in place of CharCount whenever more appropriate, take column size of codepoints into account for vertical movements and docstring wrapping. Fixes #811 | |||
| 2016-07-27 | BufferIterator is random access, not just bidirectional | Maxime Coste | |
| 2016-07-27 | Revert "Try to disambiguate timespec as a struct" | Maxime Coste | |
| This reverts commit 17d2dc9477444786b3db8ea834a45abbcb88abfd. | |||
| 2016-07-27 | Try to disambiguate timespec as a struct | Maxime Coste | |
| 2016-07-27 | Add missing <time.h> header so that timespec is well defined | Maxime Coste | |
| 2016-07-24 | Support for going backward/forward in buffer history with <a-u>/<a-U> | Maxime Coste | |
| 2016-07-24 | Support counts for undo/redo | Maxime Coste | |
| 2016-07-24 | Support moving between arbitrary history nodes | Maxime Coste | |
| 2016-07-24 | Store creation timepoint in HistoryNode | Maxime Coste | |
| 2016-07-24 | Set memory domains for Buffer::HistoryNode | Maxime Coste | |
| 2016-07-24 | Store buffer undo/redo information in a tree instead of a vector | Maxime Coste | |
| 2016-07-24 | Merge remote-tracking branch 'lenormf/readonly-mode' | Maxime Coste | |
| 2016-07-23 | Implement a `readonly` mode | Frank LENORMAND | |
| This commit introduces the `readonly` variable as well as the `-ro` command line option which prevent buffers from being overwritten on disk when the `write` command is used without arguments. Some buffers can selectively be put in readonly mode by setting the `readonly` variable on the `buffer` scope, the `global` mode will affect all buffers (even those who will be open subsequently), using the `window` scope will have no effect. Closes #685 | |||
| 2016-07-15 | Make buffer iterator iteration/dereference faster | Maxime Coste | |
| 2016-07-10 | Ensure buffer create/close hooks are run at appropriate times | Maxime Coste | |
| They used to be ran before the buffer was added to the buffer list we now run them afterwards. | |||
| 2016-04-21 | Fix BufferIterator::difference_type, it should be signed | Maxime Coste | |
| 2016-03-16 | Use ByteCoords directly for buffer insert/erase/replace | Maxime Coste | |
| 2016-03-16 | Avoid the spurious newline insertion when replacing at end of buffer | Maxime Coste | |
| Add a Buffer::replace method to handle the replacements properly Fixes #633 | |||
| 2016-03-12 | Do not include the debug buffer in word completion | Maxime Coste | |
| 2016-01-27 | Make BufferIterator::operator* return a const ref to be more compatible | Maxime Coste | |
| 2015-12-06 | Change eolformat and BOM options to be enums instead of strings | Maxime Coste | |
| 2015-12-01 | Update buffer display names after changing working directory | Maxime Coste | |
| Fixes #501 | |||
| 2015-11-12 | Faster BufferIterator::operator++/-- | Maxime Coste | |
| 2015-11-07 | Optimize BufferIterator to avoid a lot of pointer chasing | Maxime Coste | |
