aboutsummaryrefslogtreecommitdiff
path: root/helix-term/tests/integration.rs
diff options
context:
space:
mode:
authorPascal Kuthe2023-03-09 22:08:55 +0000
committerBlaž Hrastnik2023-03-10 07:54:17 +0000
commitb1f75280909884c9621b553b43030ac39cfa47ce (patch)
treeb1491f69bb8280a2f6a5445c7ffe36ea0bfd852c /helix-term/tests/integration.rs
parent2b64a64d7ea43e22ad82f97f2c118891b74c3199 (diff)
fix snippet bugs and multicursor completion edgecases
Multicursor completions may overlap and therefore overlapping completions must be dropped to avoid crashes. Furthermore, multicursor edits might simply be out of range if the word before/after the cursor is shorter. This currently leads to crashes, instead these selections are now also removed for completions. This commit also significantly refactors snippet transaction generation so that tabstops behave correctly with the above rules. Furthermore, snippet tabstops need to be carefully mapped to ensure their position is correct and consistent with our selection semantics. Finally, we now keep a partially updated Rope while creating snippet transactions so that we can fill information into snippets that depends on the position in the document.
Diffstat (limited to 'helix-term/tests/integration.rs')
0 files changed, 0 insertions, 0 deletions