From 4beed16814752f405273659ff228f6e4a798a68c Mon Sep 17 00:00:00 2001 From: Cameron Fowler Date: Thu, 27 Mar 2025 13:14:47 +1300 Subject: [PATCH] fix: omit document key when empty --- internal/completer/candidates.go | 12 ++++++------ internal/lsp/lsp.go | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/completer/candidates.go b/internal/completer/candidates.go index c512a7cc..065f18e9 100644 --- a/internal/completer/candidates.go +++ b/internal/completer/candidates.go @@ -87,7 +87,7 @@ func generateColumnCandidates(tableName string, columns []*database.ColumnDesc) Label: column.Name, Kind: lsp.FieldCompletion, Detail: columnDetail(tableName), - Documentation: lsp.MarkupContent{ + Documentation: &lsp.MarkupContent{ Kind: lsp.Markdown, Value: database.ColumnDoc(tableName, column), }, @@ -329,7 +329,7 @@ func generateTableCandidates(tables []string, dbCache *database.DBCache) []lsp.C } cols, ok := dbCache.ColumnDescs(tableName) if ok { - candidate.Documentation = lsp.MarkupContent{ + candidate.Documentation = &lsp.MarkupContent{ Kind: lsp.Markdown, Value: database.TableDoc(tableName, cols), } @@ -355,7 +355,7 @@ func generateTableCandidatesByInfos(tables []*parseutil.TableInfo, dbCache *data } cols, ok := dbCache.ColumnDescs(table.Name) if ok { - candidate.Documentation = lsp.MarkupContent{ + candidate.Documentation = &lsp.MarkupContent{ Kind: lsp.Markdown, Value: database.TableDoc(table.Name, cols), } @@ -372,7 +372,7 @@ func (c *Completer) SubQueryCandidates(infos []*parseutil.SubQueryInfo) []lsp.Co Label: info.Name, Kind: lsp.FieldCompletion, Detail: "subquery", - Documentation: lsp.MarkupContent{ + Documentation: &lsp.MarkupContent{ Kind: lsp.Markdown, Value: database.SubqueryDoc(info.Name, info.Views, c.DBCache), }, @@ -397,7 +397,7 @@ func (c *Completer) SubQueryColumnCandidates(infos []*parseutil.SubQueryInfo) [] Label: tableCol.Name, Kind: lsp.FieldCompletion, Detail: subQueryColumnDetail(info.Name), - Documentation: lsp.MarkupContent{ + Documentation: &lsp.MarkupContent{ Kind: lsp.Markdown, Value: database.SubqueryColumnDoc(tableCol.Name, info.Views, c.DBCache), }, @@ -409,7 +409,7 @@ func (c *Completer) SubQueryColumnCandidates(infos []*parseutil.SubQueryInfo) [] Label: col.DisplayName(), Kind: lsp.FieldCompletion, Detail: subQueryColumnDetail(info.Name), - Documentation: lsp.MarkupContent{ + Documentation: &lsp.MarkupContent{ Kind: lsp.Markdown, Value: database.SubqueryColumnDoc(col.DisplayName(), info.Views, c.DBCache), }, diff --git a/internal/lsp/lsp.go b/internal/lsp/lsp.go index b0683664..56d3128b 100644 --- a/internal/lsp/lsp.go +++ b/internal/lsp/lsp.go @@ -139,7 +139,7 @@ type CompletionItem struct { Kind CompletionItemKind `json:"kind,omitempty"` Tags []CompletionItemTag `json:"tags,omitempty"` Detail string `json:"detail,omitempty"` - Documentation MarkupContent `json:"documentation,omitempty"` // string | MarkupContent + Documentation *MarkupContent `json:"documentation,omitempty"` // string | MarkupContent Deprecated bool `json:"deprecated,omitempty"` Preselect bool `json:"preselect,omitempty"` SortText string `json:"sortText,omitempty"`