From 932b828de0a01ab139f1d989eb6335992a050a5d Mon Sep 17 00:00:00 2001 From: fofolee Date: Sat, 25 Jan 2025 17:36:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96CodeEditor=E8=AF=AD=E8=A8=80?= =?UTF-8?q?=E9=AB=98=E4=BA=AE=E5=A4=84=E7=90=86=EF=BC=9A=E6=8A=BD=E5=8F=96?= =?UTF-8?q?=E8=AF=AD=E8=A8=80=E6=98=A0=E5=B0=84=E9=80=BB=E8=BE=91=E5=88=B0?= =?UTF-8?q?=E7=8B=AC=E7=AB=8B=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/composer/common/CodeEditor.vue | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/src/components/composer/common/CodeEditor.vue b/src/components/composer/common/CodeEditor.vue index a84358f..0bf4730 100644 --- a/src/components/composer/common/CodeEditor.vue +++ b/src/components/composer/common/CodeEditor.vue @@ -15,11 +15,6 @@ import { toRaw } from "vue"; import importAll from "js/common/importAll.js"; import { defineComponent } from "vue"; -// 批量导入声明文件 -let apis = importAll( - require.context("!raw-loader!plugins/monaco/types/", false, /\.ts$/) -); - // 批量导入关键字补全 let languageCompletions = importAll( require.context("plugins/monaco/completions/", false, /\.js$/) @@ -161,9 +156,7 @@ export default defineComponent({ immediate: true, handler(newValue) { if (this.editor) { - const language = ["webjavascript", "quickcommand"].includes(newValue) - ? "javascript" - : newValue; + const language = this.getHighlighter(newValue); monaco.editor.setModelLanguage(this.rawEditor().getModel(), language); this.loadTypes(); } @@ -182,9 +175,7 @@ export default defineComponent({ methods: { // 初始化编辑器 initEditor() { - const language = ["webjavascript", "quickcommand"].includes(this.language) - ? "javascript" - : this.language; + const language = this.getHighlighter(this.language); const options = { ...this.defaultOptions, @@ -374,6 +365,19 @@ export default defineComponent({ ); } }, + getHighlighter(language) { + if ( + ["quickcommand", "javascript", "webjavascript"].includes( + language + ) + ) { + return "javascript"; + } + if (language === "cmd") { + return "bat"; + } + return language; + }, }, computed: { showPlaceholder() {