Skip to content

Commit b3c6b3f

Browse files
committed
do not append : after struct field or map key in call syntax
1 parent 0efec83 commit b3c6b3f

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

apps/language_server/lib/language_server/providers/completion.ex

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -313,11 +313,21 @@ defmodule ElixirLS.LanguageServer.Providers.Completion do
313313
}
314314
end
315315

316-
defp from_completion_item(%{type: :field, name: name, origin: origin}, _context) do
316+
defp from_completion_item(
317+
%{type: :field, subtype: subtype, name: name, origin: origin, call?: call?},
318+
_context
319+
) do
320+
detail =
321+
case {subtype, origin} do
322+
{:map_key, _} -> "map key"
323+
{:struct_field, nil} -> "struct field"
324+
{:struct_field, module_name} -> "#{module_name} struct field"
325+
end
326+
317327
%__MODULE__{
318328
label: to_string(name),
319-
detail: "#{origin} struct field",
320-
insert_text: "#{name}: ",
329+
detail: detail,
330+
insert_text: if(call?, do: name, else: "#{name}: "),
321331
priority: 0,
322332
kind: :field,
323333
tags: []

0 commit comments

Comments
 (0)