set lang config default value

This commit is contained in:
bobo.yang 2023-12-27 16:15:39 +08:00
parent 7fdc5fc985
commit b734c69d61
5 changed files with 13 additions and 29 deletions

View File

@ -554,7 +554,7 @@
},
"DevChat.Language": {
"type": "string",
"default": "en",
"default": "",
"enum": ["en", "zh"],
"enumDescriptions": [
"English",

View File

@ -206,6 +206,16 @@ async function configUpdate0912To0924() {
}
}
async function setLangDefaultValue() {
const lang = vscode.env.language;
if (!UiUtilWrapper.getConfiguration("DevChat", "Language")) {
if (lang.startsWith("zh-")) {
UiUtilWrapper.updateConfiguration("DevChat", "Language", "zh");
} else {
UiUtilWrapper.updateConfiguration("DevChat", "Language", "en");
}
}
}
async function activate(context: vscode.ExtensionContext) {
ExtensionContextHolder.context = context;
@ -216,6 +226,7 @@ async function activate(context: vscode.ExtensionContext) {
await configUpdateTo0924();
await configUpdate0912To0924();
await configUpdateTo1115();
await setLangDefaultValue();
regLanguageContext();
registerCodeLensProvider(context);

View File

@ -15,7 +15,6 @@ import { getSetting, updateSetting } from './userSettingHandler';
import { featureToggle, getFeatureToggles } from './featureToggleHandler';
import { getUserAccessKey } from './accessKeyHandler';
import { getValidLlmModelList } from './llmModelHandler';
import { getIdeLanguage } from './langHandler';
// According to the context menu selected by the user, add the corresponding context file
@ -80,4 +79,3 @@ messageHandler.registerHandler('regModelList', getValidLlmModelList);
messageHandler.registerHandler('userInput', userInput);
messageHandler.registerHandler('getIdeLanguage', getIdeLanguage);

View File

@ -1,25 +0,0 @@
import * as vscode from 'vscode';
import { regInMessage, regOutMessage } from '../util/reg_messages'; // Ensure these functions are imported
import { MessageHandler } from './messageHandler';
// Register the incoming and outgoing messages for the 'getIdeLanguage' command
regInMessage({ command: 'getIdeLanguage' });
regOutMessage({ command: 'ideLanguage', lang: "" }); // Placeholder for the lang property
// Implement the handler function to get the current IDE language setting
export async function getIdeLanguage(panel: vscode.WebviewPanel | vscode.WebviewView): Promise<void> {
// Get the current IDE language setting
let ideLanguage = vscode.env.language;
if (ideLanguage.startsWith("zh-")) {
ideLanguage = "zh";
}
// 'en' stands for English, 'zh' stands for Simplified Chinese
// Construct the message with the language information
const langMessage = {
"command": "ideLanguage",
"lang": ideLanguage
};
// Send the message to the webview panel or view
MessageHandler.sendMessage(panel, langMessage);
}

View File

@ -33,7 +33,7 @@ const functionRegistry: any = {
"/ide_language": {
"keys": [],
"handler": async () => {
const language = vscode.env.language.startsWith("zh-") ? "zh" : "en";
const language = UiUtilWrapper.getConfiguration("DevChat", "Language");
// 'en' stands for English, 'zh' stands for Simplified Chinese
return language;
}