summaryrefslogtreecommitdiff
path: root/src/unit_tests.cc
AgeCommit message (Collapse)Author
2014-10-19Add a split function that does not take an escape and returns StringViewsMaxime Coste
When an escape character is not present, split can just return sub strings of the parameter, so we can avoid duplicating the original string data.
2014-10-07WordDB: Use interned strings pointing directly into the buffer line dataMaxime Coste
2014-10-01Add support for interned stringsMaxime Coste
Use interned strings for Modification contents and word database. Interned strings are guaranteed not to move in memory and are reference counted.
2014-07-05utf8: use end of sequence iterators for more securityMaxime Coste
2014-05-26Remove ModificationMaxime Coste
Lets consider that as a failed experiment. You see, I learned something today, for a complicated problem, it is important to keep as much knowledge of the exact problem as possible. the Modification approach failed because it tried to solve the general problem, which is quite complex. The new approach, which keeps the knowledge that selections are sorted is much simpler and faster (see f49bec802157fc592bc6e35755807c6c3a531e78).
2014-05-24Remove use of 'offset' in buffer iterators, lines are just StringMaxime Coste
No need to maintain line offsets anymore.
2014-05-24Still more fixes for ModificationMaxime Coste
2014-05-24Fix ModificationMaxime Coste
2014-05-24Fix, cleanup and refactor compute_modificationsMaxime Coste
2014-05-21Add initial (and probably buggy) compute_modifications codeMaxime Coste
compute_modifications compiles a list of buffer change into a list of Modifications that can be used for updating BufferCoord
2014-05-07Refactor LineAndColumn coordinatesMaxime Coste
BufferCoord -> ByteCoord DisplayCoord -> CharCoord Moved their definition along with LineAndColumn into coord.hh
2014-04-22Preserve current word in word completion if found elsewhereMaxime Coste
If occurence count in the buffer if greater that one, do not remove it from the matches.
2014-01-16Word completion use a WordDB stored as a buffer value.Maxime Coste
2013-12-20Get rid of Editor for goodMaxime Coste
ClientManager now stores only the free windows, clients take ownership of its own.
2013-12-15Move insert and erase to normal.cc, and move edition management to contextMaxime Coste
2013-12-14Remove Editor::select methods, add a non-const selections getterMaxime Coste
2013-12-14Remove Editor::main_selection(|index), directly use the SelectionList methodMaxime Coste
2013-12-14Remove simple selectors, always go through a multi selectorMaxime Coste
2013-11-14indent cleanup, correct erroneous 3 spaces indentMaxime Coste
2013-11-04Remove IncrementalInserter and move it's code to InputModes::InsertMaxime Coste
2013-09-23add subsequence_match(str, subseq) utility functionMaxime Coste
2013-09-23Add prefix_match function and use it instead of adhoc codeMaxime Coste
2013-07-30fix insert mode erase utf-8 handling, add unit testMaxime Coste
2013-07-24string escaping support functionsMaxime Coste
the split function now takes an additional escape parameter and does not split on separators that have the escaper before it. An utility escape function that adds escape before separators is also added.
2013-06-06add an UndoGroupOptimizer testMaxime Coste
2013-06-06Buffer: insert and erase go back to taking iterators, and return iteratorsMaxime Coste
2013-06-06remove BufferIterator conversion to/from BufferCoordMaxime Coste
2013-06-04Remove Buffer::iterator_at_line_{begin,end}, use iterator_at(line{,+1})Maxime Coste
2013-06-04Use coord instead of iterators for selectionsMaxime Coste
2013-06-01Explicitly pass buffer to selectorsMaxime Coste
2013-05-30Remove begin/end from Ranges, replace with min/maxMaxime Coste
Ranges should not be utf8 aware (needed for end), and a lot of uses for end() were in fact looking for max.
2013-05-30buffer end should not be in a selectionMaxime Coste
2013-05-13Use more std::* for string handlingMaxime Coste
2013-04-09sort includes directivesMaxime Coste
2013-04-09rename assert to kak_assert to avoid collisionsMaxime Coste
2013-04-05refactor regex based selectors, move regex construction out of themMaxime Coste
2013-03-15Editor: replace selections().back() with main_selection()Maxime Coste
2013-03-13Editor: fix replace at end of bufferMaxime Coste
2013-02-20Buffer: replace {begin,end}_undo_group with a single commit_undo_group methodMaxime Coste
2013-01-31tweak buffer unit testMaxime Coste
2013-01-30add some tests for Key functionsMaxime Coste
2013-01-23add undo unit_test and fix BufferMaxime Coste
2012-11-28add an empty buffer unit testMaxime Coste
2012-11-23Buffer takes a vector of lines as initial contentMaxime Coste
2012-11-22Cleanups and minor refactoring on BufferMaxime Coste
2012-11-20Buffer: replace Buffer::Type with Buffer::FlagsMaxime Coste
2012-10-22add basic utf8 unit testMaxime Coste
2012-09-26Extract IncrementalInserter::Mode as InsertModeMaxime Coste
move ClientMode classes in a namespace due to InsertMode name collisions
2012-09-10Buffer: Allow inserting at the end when the inserted text ends with an end ↵Maxime Coste
of line Adapted other code in consequence and added unit tests so that this behavior is maintained.
2012-09-03fix open line above for first line and add a unit testMaxime Coste