From 37f5ee216031862bad24b8e58051f95b99a6c554 Mon Sep 17 00:00:00 2001 From: fofolee Date: Mon, 24 Feb 2025 00:53:21 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=90=E8=A1=8C=E8=84=9A=E6=9C=AC=E5=92=8C?= =?UTF-8?q?=E6=96=B0=E5=BB=BA=E4=BB=A3=E7=A0=81=E7=89=87=E6=AE=B5=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=BC=95=E5=85=A5=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/CommandEditor.vue | 2 +- .../composer/script/ScriptEditor.vue | 36 ++++++++++++++++--- src/components/editor/CodeEditor.vue | 4 +-- 3 files changed, 35 insertions(+), 7 deletions(-) diff --git a/src/components/CommandEditor.vue b/src/components/CommandEditor.vue index 5632313..3d3dceb 100644 --- a/src/components/CommandEditor.vue +++ b/src/components/CommandEditor.vue @@ -187,7 +187,7 @@ export default { this.showComposer = true; break; case "insert-text": - this.$refs.editor.repacleEditorSelection(data); + this.$refs.editor.replaceEditorSelection(data); break; case "restore": this.restoreHistory(data); diff --git a/src/components/composer/script/ScriptEditor.vue b/src/components/composer/script/ScriptEditor.vue index cc02233..60b6a72 100644 --- a/src/components/composer/script/ScriptEditor.vue +++ b/src/components/composer/script/ScriptEditor.vue @@ -2,6 +2,7 @@
+ + + + { + return `.replace("${variable}", ${variable.slice(3, -3)})`; + }) + .join("") || ""; if (this.isCodeSnippet) { - return `quickcomposer.coding.base64Decode("${quickcomposer.coding.base64Encode( - argvs.code - )}")`; + return ( + `quickcomposer.coding.base64Decode("${quickcomposer.coding.base64Encode( + argvs.code + )}")` + replaceStr + ); } const options = { language: argvs.language, @@ -239,7 +264,7 @@ export default defineComponent({ return `${this.modelValue.value}(${stringifyArgv( argvs.code - )}, ${stringifyArgv(options)})`; + )}${replaceStr}, ${stringifyArgv(options)})`; }, getSummary(argvs) { return `运行${argvs.language}代码`; @@ -268,6 +293,9 @@ export default defineComponent({ argvs, }); }, + insertVariable(_, variable) { + this.$refs.codeEditor.replaceEditorSelection("___" + variable + "___"); + }, }, mounted() { const argvs = this.modelValue.argvs || this.defaultArgvs; diff --git a/src/components/editor/CodeEditor.vue b/src/components/editor/CodeEditor.vue index f6f7683..c015e47 100644 --- a/src/components/editor/CodeEditor.vue +++ b/src/components/editor/CodeEditor.vue @@ -388,7 +388,7 @@ export default defineComponent({ ); }, // 替换选中的文本,供外部调用 - repacleEditorSelection(text) { + replaceEditorSelection(text) { var selection = this.codeEditor.getSelection(); var range = new monaco.Range( selection.startLineNumber, @@ -413,7 +413,7 @@ export default defineComponent({ if (type === "replace") { this.codeEditor.setValue(value); } else if (type === "insert") { - this.repacleEditorSelection(value); + this.replaceEditorSelection(value); } this.$emit("saveHistory", value); },