Skip to content

Commit

Permalink
chore: try to add for languages
Browse files Browse the repository at this point in the history
  • Loading branch information
phodal committed Apr 8, 2024
1 parent b8a9f0d commit 836d314
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 15 deletions.
4 changes: 0 additions & 4 deletions src/providers/AutoDocumentationActionProvider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,6 @@ export class AutoDocumentationActionProvider
token: vscode.CancellationToken
): vscode.ProviderResult<vscode.CodeAction[]> {
const langId = document.languageId;
// check is our support id;
if (!SUPPORTED_LANGID.includes(langId as any)) {
return [];
}

// 获取用户选择的代码范围
const selectedCode = document.getText(range);
Expand Down
20 changes: 20 additions & 0 deletions src/providers/ChatWithThisActionProvider.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import * as vscode from "vscode";

export class ChatWithThisActionProvider extends vscode.CodeAction {
provideCodeActions(
document: vscode.TextDocument,
range: vscode.Range | vscode.Selection,
context: vscode.CodeActionContext,
token: vscode.CancellationToken
): vscode.ProviderResult<vscode.CodeAction[]> {
const langId = document.languageId;

const codeAction = new vscode.CodeAction(
"Chat With this (AutoDev)",
vscode.CodeActionKind.Empty
);

codeAction.edit = new vscode.WorkspaceEdit();
return [codeAction];
}
}
30 changes: 19 additions & 11 deletions src/providers/registerProviders.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
import * as vscode from "vscode";
import { AutoDevQuickFixProvider } from "./AutoDevQuickFixProvider";
import { AutoDocumentationActionProvider } from "./AutoDocumentationActionProvider";
import { SUPPORTED_LANGID } from "../supported";
import { ChatWithThisActionProvider } from "./ChatWithThisActionProvider";

export function registerQuickFixProvider() {
// In your extension's activate function:
vscode.languages.registerCodeActionsProvider(
{ language: "*" },
new AutoDevQuickFixProvider(),
Expand All @@ -12,14 +13,21 @@ export function registerQuickFixProvider() {
}
);

// Normal action
vscode.languages.registerCodeActionsProvider(
{ language: "*" },
new AutoDocumentationActionProvider(),
{
providedCodeActionKinds: [vscode.CodeActionKind.Empty],
}
);
}

SUPPORTED_LANGID.forEach((langId) => {
vscode.languages.registerCodeActionsProvider(
{ language: langId },
new AutoDocumentationActionProvider(),
{
providedCodeActionKinds: [vscode.CodeActionKind.Empty],
}
);

vscode.languages.registerCodeActionsProvider(
{ language: langId },
new ChatWithThisActionProvider("Chat with This"),
{
providedCodeActionKinds: [vscode.CodeActionKind.Empty],
}
);
});
}

0 comments on commit 836d314

Please sign in to comment.