diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/completion.odin | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/server/completion.odin b/src/server/completion.odin index eb0a76e..d81998a 100644 --- a/src/server/completion.odin +++ b/src/server/completion.odin @@ -46,9 +46,15 @@ get_completion_list :: proc(document: ^common.Document, position: common.Positio return list, true; } + /* + NOTE + Currently bug in contains_any, uncomment when https://github.com/odin-lang/Odin/issues/1129 is closed. + */ + /* if position_context.import_stmt == nil && strings.contains_any(completion_context.triggerCharacter, "/:\"") { return list, true; } + */ ast_context := make_ast_context(document.ast, document.imports, document.package_name, document.uri.uri); @@ -969,6 +975,11 @@ get_identifier_completion :: proc(ast_context: ^analysis.AstContext, position_co result := result; + //Skip procedures when the position is in proc decl + if position_in_proc_decl(position_context) && result.symbol.type == .Function && common.config.enable_procedure_context { + continue; + } + item := CompletionItem { label = result.symbol.name, }; |