fix: edit_file diff 显示修复 — 多行替换排序 & 行间间隙
This commit is contained in:
parent
84336b1802
commit
b6818bc0d0
@ -1228,7 +1228,7 @@ function renderEasterEgg(result: any, args: any): string {
|
||||
grid-template-columns: 5ch 1ch minmax(0, 1fr);
|
||||
column-gap: 8px;
|
||||
padding: 2px 4px;
|
||||
margin: 1px 0;
|
||||
margin: 0;
|
||||
align-items: start;
|
||||
}
|
||||
|
||||
|
||||
@ -386,6 +386,14 @@ function renderEditFile(result: any, args: any): string {
|
||||
return true;
|
||||
})
|
||||
.sort((a: any, b: any) => {
|
||||
const aIsChange = a.marker === '-' || a.marker === '+';
|
||||
const bIsChange = b.marker === '-' || b.marker === '+';
|
||||
// 仅变更行之间优先按 marker 分组(- 在前 + 在后),再按行号
|
||||
if (aIsChange && bIsChange) {
|
||||
const markerDelta = (markerOrder[a.marker] ?? 9) - (markerOrder[b.marker] ?? 9);
|
||||
return markerDelta || (a.lineNo ?? Number.MAX_SAFE_INTEGER) - (b.lineNo ?? Number.MAX_SAFE_INTEGER);
|
||||
}
|
||||
// 上下文行或跨类型:按行号优先
|
||||
const lineDelta = (a.lineNo ?? Number.MAX_SAFE_INTEGER) - (b.lineNo ?? Number.MAX_SAFE_INTEGER);
|
||||
return lineDelta || (markerOrder[a.marker] ?? 9) - (markerOrder[b.marker] ?? 9);
|
||||
})
|
||||
|
||||
@ -764,7 +764,7 @@ const formatTime = (value: string) => {
|
||||
|
||||
.diff-line {
|
||||
padding: 2px 4px;
|
||||
margin: 1px 0;
|
||||
margin: 0;
|
||||
white-space: pre-wrap;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user