Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
bit-pm
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
燕伟桐
bit-pm
Commits
d6c71ef8
Unverified
提交
d6c71ef8
authored
5月 27, 2025
作者:
Will Chen
提交者:
GitHub
5月 27, 2025
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Normalize Windows-style path for dyad tags to prevent Git issues (#262)
上级
a915d892
显示空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
16 行增加
和
3 行删除
+16
-3
response_processor.ts
src/ipc/processors/response_processor.ts
+16
-3
没有找到文件。
src/ipc/processors/response_processor.ts
浏览文件 @
d6c71ef8
...
...
@@ -20,6 +20,16 @@ import { SqlQuery } from "../../lib/schemas";
const
readFile
=
fs
.
promises
.
readFile
;
const
logger
=
log
.
scope
(
"response_processor"
);
/**
* Normalize the path to use forward slashes instead of backslashes.
* This is important to prevent weird Git issues, particularly on Windows.
* @param path Source path.
* @returns Normalized path.
*/
function
normalizePath
(
path
:
string
):
string
{
return
path
.
replace
(
/
\\
/g
,
"/"
);
}
export
function
getDyadWriteTags
(
fullResponse
:
string
):
{
path
:
string
;
content
:
string
;
...
...
@@ -52,7 +62,7 @@ export function getDyadWriteTags(fullResponse: string): {
}
content
=
contentLines
.
join
(
"
\
n"
);
tags
.
push
({
path
,
content
,
description
});
tags
.
push
({
path
:
normalizePath
(
path
)
,
content
,
description
});
}
else
{
logger
.
warn
(
"Found <dyad-write> tag without a valid 'path' attribute:"
,
...
...
@@ -72,7 +82,10 @@ export function getDyadRenameTags(fullResponse: string): {
let
match
;
const
tags
:
{
from
:
string
;
to
:
string
}[]
=
[];
while
((
match
=
dyadRenameRegex
.
exec
(
fullResponse
))
!==
null
)
{
tags
.
push
({
from
:
match
[
1
],
to
:
match
[
2
]
});
tags
.
push
({
from
:
normalizePath
(
match
[
1
]),
to
:
normalizePath
(
match
[
2
]),
});
}
return
tags
;
}
...
...
@@ -83,7 +96,7 @@ export function getDyadDeleteTags(fullResponse: string): string[] {
let
match
;
const
paths
:
string
[]
=
[];
while
((
match
=
dyadDeleteRegex
.
exec
(
fullResponse
))
!==
null
)
{
paths
.
push
(
match
[
1
]
);
paths
.
push
(
normalizePath
(
match
[
1
])
);
}
return
paths
;
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论