Skip to content

Commit 0d35445

Browse files
committed
feat: add an option to display the reason for polishing or not
1 parent 584d48d commit 0d35445

File tree

2 files changed

+45
-14
lines changed

2 files changed

+45
-14
lines changed

src/info.json

+16
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,22 @@
3939
"value": "text-davinci-002"
4040
}
4141
]
42+
},
43+
{
44+
"identifier": "polishing_mode",
45+
"type": "menu",
46+
"title": "润色模式",
47+
"defaultValue": "simplicity",
48+
"menuValues": [
49+
{
50+
"title": "简洁(只输出润色后的文本)",
51+
"value": "simplicity"
52+
},
53+
{
54+
"title": "详尽(附加解释修改原因)",
55+
"value": "detailed"
56+
},
57+
]
4258
}
4359
]
4460
}

src/main.js

+29-14
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,44 @@ function translate(query, completion) {
1212
"Content-Type": "application/json",
1313
Authorization: `Bearer ${api_key}`,
1414
};
15-
let prompt = "Revise the following sentence to make it more clear, concise, and coherent. Please note that you need to list the changes and briefly explain why.";
15+
const detailedPolishingMode = $option.polishing_mode === "detailed";
16+
let prompt =
17+
"Revise the following sentences to make them more clear, concise, and coherent";
18+
if (detailedPolishingMode) {
19+
prompt = `${prompt}. Please note that you need to list the changes and briefly explain why`;
20+
}
1621
switch (query.detectFrom) {
1722
case "zh-Hant":
1823
case "zh-Hans":
19-
prompt = "请润色一下这句话";
24+
prompt = "润色此句";
25+
if (detailedPolishingMode) {
26+
prompt = `${prompt}。请注意要列出更改以及简要解释一下为什么这么修改`;
27+
}
2028
break;
2129
case "ja":
22-
prompt = "この文章を装飾してください";
30+
prompt = "この文章を装飾する";
31+
if (detailedPolishingMode) {
32+
prompt = `${prompt}。変更点をリストアップし、なぜそのように変更したかを簡単に説明することに注意してください`;
33+
}
2334
break;
2435
case "ru":
25-
prompt = "Пожалуйста, приукрасьте это предложение";
36+
prompt =
37+
"Переформулируйте следующие предложения, чтобы они стали более ясными, краткими и связными";
38+
if (detailedPolishingMode) {
39+
prompt = `${prompt}. Пожалуйста, обратите внимание на необходимость перечисления изменений и краткого объяснения причин таких изменений`;
40+
}
2641
break;
2742
case "wyw":
28-
prompt = "请润色一下这句古文";
43+
prompt = "润色此句古文";
44+
if (detailedPolishingMode) {
45+
prompt = `${prompt}。请注意要列出更改以及简要解释一下为什么这么修改`;
46+
}
2947
break;
3048
case "yue":
31-
prompt = "请润色一下这句粤语";
49+
prompt = "潤色呢句粵語";
50+
if (detailedPolishingMode) {
51+
prompt = `${prompt}。記住要列出修改嘅內容同簡單解釋下點解要做呢啲更改`;
52+
}
3253
break;
3354
}
3455
const body = {
@@ -43,10 +64,10 @@ function translate(query, completion) {
4364
if (isChatGPTModel) {
4465
body.messages = [
4566
{ role: "system", content: prompt },
46-
{ role: "user", content: `"${query.text}"` },
67+
{ role: "user", content: query.text },
4768
];
4869
} else {
49-
body.prompt = `${prompt}:\n\n"${query.text}" =>`;
70+
body.prompt = `${prompt}:\n\n${query.text} =>`;
5071
}
5172
(async () => {
5273
const resp = await $http.request({
@@ -89,12 +110,6 @@ function translate(query, completion) {
89110
} else {
90111
targetTxt = choices[0].text.trim();
91112
}
92-
if (targetTxt.startsWith('"') || targetTxt.startsWith("「")) {
93-
targetTxt = targetTxt.slice(1);
94-
}
95-
if (targetTxt.endsWith('"') || targetTxt.endsWith("」")) {
96-
targetTxt = targetTxt.slice(0, -1);
97-
}
98113
completion({
99114
result: {
100115
from: query.detectFrom,

0 commit comments

Comments
 (0)