Skip to content

Commit 4ec4b65

Browse files
committed
fix: 修正输出的md格式显示问题
1 parent d65054c commit 4ec4b65

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

src/extension.ts

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,11 @@ export async function doUploadCommand(cvbFilePath: string, userPrompt: string, o
4949

5050
const filenameSummary = await generateFilenameFromRequest(userPrompt);
5151
const timestamp = generateTimestamp();
52-
let baseFileName = `${timestamp}_${filenameSummary}.cvb`;
53-
let fileName = baseFileName;
52+
let baseFileName = `${timestamp}_${filenameSummary}`;
53+
let fileName = `${baseFileName}.cvb`;
5454
let i = 1;
5555
while (fs.existsSync(path.join(tmpDir, fileName))) {
56-
fileName = `${timestamp}_${filenameSummary}_${i}.cvb`;
56+
fileName = `${baseFileName}_${i}.cvb`;
5757
i++;
5858
}
5959

@@ -84,20 +84,26 @@ export async function doUploadCommand(cvbFilePath: string, userPrompt: string, o
8484
}
8585
} while (!processSuccess && attemptCount < 3 && !CurrentOperationController.signal.aborted);
8686

87-
const lastMessageBody = GetLastMessageBody();
87+
let lastMessageBody = GetLastMessageBody();
8888

8989
if (lastMessageBody && lastMessageBody.length > 2) {
90-
const timestamp = generateTimestamp();
91-
const summary = await generateFilenameFromRequest(userPrompt);
92-
const mdFileName = `${timestamp}_${summary}.md`;
90+
const mdFileName = `${baseFileName}.md`;
9391
const mdFilePath = path.join(tmpDir, mdFileName);
9492

9593
// 创建新数组,第一条消息替换为 { "role": "user", "content": userPrompt }
9694
const modifiedMessages = [{ role: "user", content: userPrompt }, ...lastMessageBody.slice(2)];
9795

98-
const mdContent = modifiedMessages.map(msg => {
96+
let mdContent = modifiedMessages.map(msg => {
9997
return `**${msg.role}**:\n\n${msg.content}\n\n`;
10098
}).join('\n');
99+
100+
// 处理 TCVB 格式,只匹配行首的标记
101+
if (mdContent.includes('## BEGIN_TCVB')) {
102+
// 匹配行首的 ```任意语言标记\n## BEGIN_TCVB
103+
mdContent = mdContent.replace(/^```[^\n]*\n## BEGIN_TCVB/gm, '## BEGIN_TCVB');
104+
// 匹配行首的 ## END_TCVB\n```
105+
mdContent = mdContent.replace(/^## END_TCVB\n```$/gm, '## END_TCVB');
106+
}
101107

102108
fs.writeFileSync(mdFilePath, mdContent, 'utf-8');
103109
vscode.window.showInformationMessage(`Conversation log saved as: ${mdFilePath}`);

0 commit comments

Comments
 (0)