Clean up vscode plugin

This commit is contained in:
SilasMarvin
2024-06-02 11:21:08 -07:00
parent a67f85bb79
commit 41289af4b4
2 changed files with 2 additions and 27 deletions

View File

@@ -40,13 +40,6 @@
"type": "object", "type": "object",
"default": {}, "default": {},
"description": "JSON configuration for LSP-AI generation" "description": "JSON configuration for LSP-AI generation"
},
"lsp-ai.inlineCompletionConfiguration": {
"type": "object",
"default": {
"maxCompletionsPerSecond": 1
},
"description": "JSON configuration for LSP-AI generation"
} }
} }
} }

View File

@@ -180,8 +180,6 @@ export function activate(context: vscode.ExtensionContext) {
context.subscriptions.push(vscode.commands.registerTextEditorCommand(generateCommand, generateCommandHandler)); context.subscriptions.push(vscode.commands.registerTextEditorCommand(generateCommand, generateCommandHandler));
// Register as an inline completion provider // Register as an inline completion provider
let lastInlineCompletion = Date.now();
let inlineCompletionRequestCounter = 0;
vscode.languages.registerInlineCompletionItemProvider({ pattern: '**' }, vscode.languages.registerInlineCompletionItemProvider({ pattern: '**' },
{ {
provideInlineCompletionItems: async (document: vscode.TextDocument, position: vscode.Position) => { provideInlineCompletionItems: async (document: vscode.TextDocument, position: vscode.Position) => {
@@ -193,24 +191,8 @@ export function activate(context: vscode.ExtensionContext) {
model: generationConfiguration.model, model: generationConfiguration.model,
parameters: generationConfiguration.parameters parameters: generationConfiguration.parameters
}; };
const result = await client.sendRequest("textDocument/generation", params);
inlineCompletionRequestCounter += 1; return [new vscode.InlineCompletionItem(result["generatedText"])];
let localInlineCompletionRequestCounter = inlineCompletionRequestCounter;
if ((Date.now() - lastInlineCompletion) / 1000 < 1 / inlineCompletionConfiguration["maxCompletionsPerSecond"]) {
await new Promise(r => setTimeout(r, ((1 / inlineCompletionConfiguration["maxCompletionsPerSecond"]) - ((Date.now() - lastInlineCompletion) / 1000 )) * 1000));
if (inlineCompletionRequestCounter == localInlineCompletionRequestCounter) {
lastInlineCompletion = Date.now();
const result = await client.sendRequest("textDocument/generation", params);
return [new vscode.InlineCompletionItem(result["generatedText"])];
} else {
return [];
}
} else {
lastInlineCompletion = Date.now();
const result = await client.sendRequest("textDocument/generation", params);
return [new vscode.InlineCompletionItem(result["generatedText"])];
}
} }
} }
); );