aboutsummaryrefslogtreecommitdiff
path: root/runtime/queries
diff options
context:
space:
mode:
authorPascal Kuthe2023-03-09 22:08:55 +0000
committerBlaž Hrastnik2023-03-10 07:54:17 +0000
commitb1f75280909884c9621b553b43030ac39cfa47ce (patch)
treeb1491f69bb8280a2f6a5445c7ffe36ea0bfd852c /runtime/queries
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 'runtime/queries')
0 files changed, 0 insertions, 0 deletions