| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2024-02-28 | Templatize StringData::create | Maxime Coste | |
| This improves performance by letting the compiler optimize most use cases where string count and length are known are compile time. | |||
| 2023-10-25 | Default comparison operators that can be | Maxime Coste | |
| 2022-09-17 | Avoid potentially quadratic runtime when updating selections after modification | Johannes Altmanninger | |
| LineRangeSet::add_range() calls Vector::erase() in a loop over the same vector. This could cause performance problems when there are many selections. Fix this by only calling Vector::erase() once. I didn't measure anything because my benchmark is dominated by another issue (see next commit). LineRangeSet::remove_range() also has a suspicious call to erase() but that one is only used in test code, so it doesn't matter. | |||
| 2021-05-28 | Support opening files bigger than 2 GiB | Maxime Coste | |
| The real technical limit is with lines bigger than 2 GiB and buffers with more than 2 Gi lines, refactor buffer loading to make it possible to load those files. Fix an overflow with the hash_data function at the same time | |||
| 2020-05-29 | Add a range based remove_if overload | Maxime Coste | |
| 2020-05-02 | Fix traling whitespaces | Maxime Coste | |
| 2019-09-01 | Introduce FunctionRef to replace std::function when not storing | Maxime Coste | |
| std::function is not necessary when we just want to pass a type erased callback that does not need to own its target. FunctionRef provides that functionality for a much lower compile time cost. | |||
| 2019-01-24 | Header and dependency cleanup | Maxime Coste | |
| 2018-10-21 | Move LineRangeSet to line_modification.hh | Maxime Coste | |
| 2018-05-17 | compute_line_modifications: avoid potentially long iteration | 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. | |||
| 2016-05-17 | Use variadic macros for kak_assert to remove the need for COMMA | Maxime Coste | |
| 2016-03-16 | Use ByteCoords directly for buffer insert/erase/replace | Maxime Coste | |
| 2015-12-27 | Fix uses of non-keyword logical operators (replace &&, || and ! with and, or ↵ | Maxime Coste | |
| and not) | |||
| 2015-10-17 | Move line parsing and to Buffer.cc directly | Maxime Coste | |
| 2015-05-22 | Move unit test functions in next to the code they are testing | Maxime Coste | |
| 2015-02-01 | Fixes in line_modification change, along with style tweak | Maxime Coste | |
| 2015-01-31 | Rewrite line modifications, hopefully with easier to comprehend code | Maxime Coste | |
| 2015-01-12 | replace all std::vector with Vector | Maxime Coste | |
| 2014-09-18 | Add a small validation assert to catch a rare bug | Maxime Coste | |
| 2014-05-26 | Revert "Remove line modification, replaced by modification" | Maxime Coste | |
| This reverts commit a7540962cc90266f4f46858184b89f048364f9b2. | |||
| 2014-05-21 | Remove line modification, replaced by modification | Maxime Coste | |
| 2014-05-14 | replace LineChangeWatcher with a free function compute_line_modifications | Maxime Coste | |
