summaryrefslogtreecommitdiff
path: root/internal/lsp/server.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2025-09-28 21:56:32 +0300
committerPaul Buetow <paul@buetow.org>2025-09-28 21:56:32 +0300
commitf14eb9199f4e1aee49594e590c08996244bb77b3 (patch)
tree6ecc23fda81ddc562bc6431b4e32bf69fd64fceb /internal/lsp/server.go
parent6103208e0fd382fb5f8c3e317fa28d888d42cb2b (diff)
Add slash toggle for completionsv0.14.0
Diffstat (limited to 'internal/lsp/server.go')
-rw-r--r--internal/lsp/server.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/internal/lsp/server.go b/internal/lsp/server.go
index 974b926..8e210b4 100644
--- a/internal/lsp/server.go
+++ b/internal/lsp/server.go
@@ -48,6 +48,8 @@ type Server struct {
nextID int64
lastLLMCall time.Time
+ completionsDisabled bool
+
// Dispatch table for JSON-RPC methods → handler functions
handlers map[string]func(Request)
}
@@ -334,6 +336,20 @@ func (s *Server) storePendingCompletion(key string, items []CompletionItem) {
s.mu.Unlock()
}
+func (s *Server) setCompletionsDisabled(disabled bool) bool {
+ s.mu.Lock()
+ prev := s.completionsDisabled
+ s.completionsDisabled = disabled
+ s.mu.Unlock()
+ return prev
+}
+
+func (s *Server) completionDisabled() bool {
+ s.mu.RLock()
+ defer s.mu.RUnlock()
+ return s.completionsDisabled
+}
+
func (s *Server) takePendingCompletion(key string) []CompletionItem {
s.mu.Lock()
defer s.mu.Unlock()