summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBradley Lewis <22850972+BradLewis@users.noreply.github.com>2026-01-05 09:43:45 +1100
committerGitHub <noreply@github.com>2026-01-05 09:43:45 +1100
commitaf7ece508418a62cd85ca6c453738d81cda68306 (patch)
tree3455c6f14cb9e436deac75ebf0d4716ab07d0872
parent16cd61e0f5ad5409f1747c24bdca545423892fdb (diff)
parent78dafa583beddd1d9b0c3bfcd6024a0e55d7c312 (diff)
Merge pull request #1244 from ske2004/fix_in_not_in
fix `in`/`not_in` bit_set complete
-rw-r--r--src/server/completion.odin7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/server/completion.odin b/src/server/completion.odin
index 31ecf0e..9c9ea9c 100644
--- a/src/server/completion.odin
+++ b/src/server/completion.odin
@@ -835,6 +835,9 @@ get_selector_completion :: proc(
remove_edit, rok := create_remove_edit(position_context, true)
if !rok {break}
+ // Sublime Text will remove the original `.` for some reason
+ is_sublime := config.client_name == "Sublime Text LSP"
+
for name in enumv.names {
append(
results,
@@ -855,7 +858,7 @@ get_selector_completion :: proc(
label = fmt.tprintf(".%s in", name),
kind = .EnumMember,
detail = in_text,
- insertText = in_text[1:],
+ insertText = is_sublime ? in_text : in_text[1:],
additionalTextEdits = remove_edit,
},
},
@@ -868,7 +871,7 @@ get_selector_completion :: proc(
label = fmt.tprintf(".%s not_in", name),
kind = .EnumMember,
detail = not_in_text,
- insertText = not_in_text[1:],
+ insertText = is_sublime ? not_in_text : not_in_text[1:],
additionalTextEdits = remove_edit,
},
},