diff --git a/core/autocomplete/context/static-context/StaticContextService.ts b/core/autocomplete/context/static-context/StaticContextService.ts index fb6919d35..b955a38ff 100644 --- a/core/autocomplete/context/static-context/StaticContextService.ts +++ b/core/autocomplete/context/static-context/StaticContextService.ts @@ -1,5 +1,6 @@ import * as fs from "fs/promises"; import path from "path"; +import { pathToFileURL } from "url"; import Parser from "web-tree-sitter"; import { IDE, Position } from "../../.."; import { localPathOrUriToPath } from "../../../util/pathToUri"; @@ -153,14 +154,33 @@ export class StaticContextService { this.logAutocompleteStaticSnippet(ctx); - console.log(end - start); + // console.log(end - start); - return [ - { + const snippets: AutocompleteStaticSnippet[] = []; + + snippets.push({ + type: AutocompleteSnippetType.Static, + filepath: pathToFileURL(path.resolve(holeContext.source)).toString(), + content: holeContext.fullHoverResult, + }); + + for (const [filepath, typs] of ctx.relevantTypes.entries()) { + snippets.push({ type: AutocompleteSnippetType.Static, - content: StaticContextService.formatAutocompleteStaticSnippet(ctx), - }, - ]; + filepath: pathToFileURL(path.resolve(filepath)).toString(), + content: typs.join("\n"), + }); + } + + for (const [filepath, headers] of ctx.relevantHeaders.entries()) { + snippets.push({ + type: AutocompleteSnippetType.Static, + filepath: pathToFileURL(path.resolve(filepath)).toString(), + content: headers.join("\n"), + }); + } + + return snippets; } private async getHoleContext( diff --git a/core/autocomplete/snippets/types.ts b/core/autocomplete/snippets/types.ts index c486c0106..be820609b 100644 --- a/core/autocomplete/snippets/types.ts +++ b/core/autocomplete/snippets/types.ts @@ -26,6 +26,7 @@ export interface AutocompleteClipboardSnippet extends BaseAutocompleteSnippet { export interface AutocompleteStaticSnippet extends BaseAutocompleteSnippet { type: AutocompleteSnippetType.Static; + filepath: string; } export type AutocompleteSnippet =