목록에서 파일을 두 번 누르거나 줄 단위 비교 를 누르면 파일 비교 탭에서 열린다. 거기서 Ctrl+PageDown / PageUp 으로 목록의 다음 · 앞 파일로 간다.
상태와 보기 필터
- 같음 다름 주석만 다름 왼쪽에만 · 오른쪽에만 이진 — 주석만 다름은 코드가 같고 주석 · 공백만 다른 파일이다(언어를 아는 파일만, 8MB 까지). 머지 주석만 다른 파일은 같음으로 본다(설정에서 끔).
+ 같음 다름 다름(코드는 같음) 왼쪽에만 · 오른쪽에만 이진 — 다름(코드는 같음)은 코드가 같고 주석 · 공백 · 빈 줄 · 줄끝 · BOM · 인코딩만 다른 파일이다(언어를 아는 파일만, 8MB 까지). 설정에 따라 머지 주석 줄이나 C# 중괄호 자리만 다른 파일은 같음으로 보고 “같음(머지 주석만 다름)” · “같음(스타일만 다름)” 처럼 까닭을 붙인다. 같은 것만 · 왼쪽에만 · 오른쪽에만으로 걸러 보면 폴더 줄은 걸린 파일 수(“같음 122개”)로 적는다.
보기 필터: 다른 것만 · 전체 · 왼쪽에만 · 오른쪽에만 · 같은 것만 · 코드가 다른 것만. 필터는 다시 비교하지 않고 목록만 다시 그린다.
복사 · 삭제
→ 오른쪽으로 복사 ← 왼쪽으로 복사 왼쪽 삭제 오른쪽 삭제. 폴더째 된다. 확인 창에 안에 든 파일 수가 나온다 — 몇 개가 덮이는지 보고 누른다.
@@ -616,7 +616,7 @@ Accept Theirs (상대 쪽 파일 그대로) 15
탭 순서가 곧 작업 순서
- | 폴더 비교 | 어느 파일이 다른가 — 같음 · 다름 · 주석만 다름 · 한쪽만 · 이진 |
+ | 폴더 비교 | 어느 파일이 다른가 — 같음 · 다름 · 다름(코드는 같음) · 한쪽만 · 이진 |
| 파일 비교 | 줄을 골라 반영 — 두 칸 또는 네 칸, 커밋 이력, 미니맵 |
| Git | 브랜치 · 병합 · 충돌 · 커밋 · 이력 · Blame · 태그 |
| 설정 | 비교 규칙 · 머지 주석 · Gitea · 데모 경로 |
@@ -636,7 +636,7 @@ Accept Theirs (상대 쪽 파일 그대로) 15
- 훑기 · 가리기 · 세기 세 걸음으로 나눔. 가리기만 여러 갈래
- - 주석만 다름을 따로 색칠, 코드가 다른 것만 필터
+ - 다름(코드는 같음)을 따로 색칠, 코드가 다른 것만 필터
- 폴더 전체 검색 — 결과마다 왼쪽 · 오른쪽 · 양쪽
- 폴더째 복사 · 삭제, 확인 창에 파일 수
@@ -1061,7 +1061,7 @@ Log("step 5");
기능 목록
| 영역 | 기능 | 상태 |
- | 폴더 비교 | 전체 / 빠른 비교 · 하위 폴더 · 취소 · 보기 필터 6가지 · 주석만 다름 · 머지 주석만 다르면 같음 · 폴더째 복사/삭제 · 전체 검색 · 결과 내보내기 · 다음/앞 파일 | 완료 |
+ | 폴더 비교 | 전체 / 빠른 비교 · 하위 폴더 · 취소 · 보기 필터 6가지 · 다름(코드는 같음) · 머지 주석 · 스타일만 다르면 같음(까닭 표시) · 폴더째 복사/삭제 · 전체 검색 · 결과 내보내기 · 다음/앞 파일 | 완료 |
| 파일 비교 | 히스토그램 정렬 · 단어 단위 · 자리 옮김 · 줄/덩어리/전체 반영 · Undo/Redo · 색 구분 범례 이동 · 미니맵 · 북마크 · 찾기/바꾸기 · 줄 접기 · 편집 잠금 · 코드 검사 · 저장 형식 · 비교 규칙 · 최근 목록 · 끌어다 놓기 | 완료 |
| 언어 | 13가지 색칠(C# · C/C++ · Java · JS/TS · Python · SQL · 셸 · XML/XAML/HTML · JSON · YAML · INI · Markdown · 평문) · CP949 판별 · 이진/그림 | 완료 |
| 네 칸 병합 | LOCAL · BASE · REMOTE · MERGED · Take Mine/Theirs · 자동 병합 · 충돌만 이동 · 완료 판정 · 한쪽 삭제 띠 · git mergetool | 완료 |
@@ -1120,7 +1120,7 @@ Log("step 5");
3.1 정보 구조도 (실제)
MergeHub (UbisamBase 셸 탭)
├─ 폴더 비교 — v1.1 에 없던 탭
-│ ├─ 전체 / 빠른 비교 · 보기 필터 · 주석만 다름
+│ ├─ 전체 / 빠른 비교 · 보기 필터 · 다름(코드는 같음)
│ ├─ 폴더째 복사 · 삭제
│ └─ 폴더 전체 검색 · 결과 내보내기
├─ 파일 비교
@@ -1234,7 +1234,7 @@ D:\MergeHubDemo\repo\ make-demo.ps1 이 만드는 Git
feature/mine · feature/theirs
| 재료 | 들어 있는 경우 | 보여 줄 것 |
- plain\left · plain\right | 같은 파일 · 코드 다름 · 주석만 다름 · 머지 주석만 다름 · C# 스타일만 다름(AURORA vs Allman) · 한쪽에만 있음 · 이진 파일 | 폴더 비교 상태와 필터, 머지 주석 · 스타일 무시 |
+ plain\left · plain\right | 같은 파일 · 코드 다름 · 코드는 같음(주석 · 공백) · 머지 주석만 다름 · C# 스타일만 다름(AURORA vs Allman) · 한쪽에만 있음 · 이진 파일 | 폴더 비교 상태와 필터, 머지 주석 · 스타일 무시 |
style\ | 같은 코드를 AURORA 와 Allman 로 | 스타일 맞춤 전후의 차이 수 |
mergetool\ | BASE · LOCAL · REMOTE · 충돌 표시가 든 MERGED | git mergetool 네 칸 |
big\ | 7,479줄 두 파일 | 큰 파일에서 이동 · 줄 번호 다섯 자리 |
@@ -1262,7 +1262,7 @@ D:\MergeHubDemo\repo\ make-demo.ps1 이 만드는 Git
폴더 비교 (2분)
- 폴더 비교 탭. 탐색기에서
plain\left 를 왼쪽 경로 칸에, plain\right 를 오른쪽 칸에 끌어다 놓는다 → 바로 비교가 돈다.
- - 상태 색을 짚는다: 같음 · 다름 · 주석만 다름 · 왼쪽에만/오른쪽에만 · 이진.
+ - 상태 색을 짚는다: 같음 · 다름 · 다름(코드는 같음) · 왼쪽에만/오른쪽에만 · 이진.
- 보기 필터를 코드가 다른 것만 으로 → 주석만 다른 파일이 빠진다.
MergeNoteOnly.cs 가 같음에 있는 것을 보여 준다. StyleOnly.cs 는 스타일 맞춤을 켜고 다시 비교하면 같음으로 옮겨 간다.
- 검색 칸에
PowerWatt 같은 낱말 → 찾기 → 결과 줄의 왼쪽 · 오른쪽 · 양쪽 → 찾은 줄 열기.
@@ -1357,7 +1357,7 @@ D:\MergeHubDemo\repo\ make-demo.ps1 이 만드는 Git
| 폴더 비교 | 2-way · 3-way | 2-way 만 |
| 줄 안 변경 강조 · 이동 블록 | 있음 | 있음 (단어 단위 · 자리 옮김) |
| 공백 · 대소문자 · 정규식 줄 필터 | 있음 | 있음 (공백 3단계) |
- | 주석 차이 | 주석 차이 무시 옵션 | 폴더 비교에 주석만 다름 상태와 코드가 다른 것만 필터 |
+ | 주석 차이 | 주석 차이 무시 옵션 | 폴더 비교에 다름(코드는 같음) 상태와 코드가 다른 것만 필터 |
머지 주석 // [이름] 날짜 | 없음 | 반영할 때 넣고, 비교 · 병합에서는 무시 |
| C# 중괄호 스타일 맞춤 | 없음 (전처리 플러그인을 직접 만들면 가능) | AURORA / Allman 로 맞춘 뒤 비교 · 저장 · 폴더 비교에서도 같음 |
| 이미지 · 이진 | 이미지 비교 창(겹쳐 보기 등) · 16진 비교 | 기본만 — 크기 · SHA-1 · 처음 갈리는 바이트 · 그림 나란히 · 앞 4KB 16진 |
diff --git a/doc/작업지시/10차.md b/doc/작업지시/10차.md
index 2b41e91..a7e9795 100644
--- a/doc/작업지시/10차.md
+++ b/doc/작업지시/10차.md
@@ -134,6 +134,12 @@
사용자 결정: **같음으로 두고 따로 표시** — "같음(스타일만 다름)" · "같음(머지 주석만 다름)" · "같음(스타일 · 머지 주석만 다름)". 필터 · 요약 수는 그대로.
- **판정 기준**: 시험 묶음 "같은 것만" 에 주황 "다름" 줄이 없다. 작은 짝(같음 · 중괄호만 · 머지 주석만 · 코드 값 등)에서 까닭이 맞게 붙고 코드 값이 다른 파일은 어느 설정에서도 "다름". 요약 수 · 결과 글자 그대로.
+### F-3. "주석만 다름" 이름을 바꾼다 (2026-09-17, 사용자)
+
+- F-1 · F-2 를 가리다 보니 BOM · 줄끝 · 인코딩 · 끝 공백 · 빈 줄 · 들여쓰기만 다른 파일도 "주석만 다름" 이었다(주석 · 공백을 걷어내고 글자로 견주는 판정). 사용자: "이름을 바꿔줘".
+- 방향: 판정은 그대로 두고 이름만 사실대로 — "다름(이진)" 과 같은 꼴로 **"다름(코드는 같음)"**, 요약은 "다름 N(코드는 같음 M)". 범례 · 목록 · 보고서 · 웹 문서 모두.
+- **판정 기준**: 화면 · 요약 · 보고서에 "주석만 다름" 이 없다(머지 주석 쪽 "같음(머지 주석만 다름)" 은 다른 말). 상태 판정 · 수는 그대로.
+
---
## 이번 지시서에서 하지 않는 것
diff --git a/doc/진행상황.md b/doc/진행상황.md
index 0ab38b1..0d99da6 100644
--- a/doc/진행상황.md
+++ b/doc/진행상황.md
@@ -318,6 +318,7 @@
| 상태 | 항목 |
|---|---|
| **완료** | F-1 · F-2 폴더 비교 "같은 것만" 에 내용이 다른 것처럼 보이는 줄이 섞인다 (2026-09-17 사용자) — 폴더 줄이 폴더 자신의 "다름"(주황)으로 보이던 것을 걸러 본 갈래의 개수("같음 122개")로. 설정(스타일 맞춤 · 머지 주석 무시)으로 같음이 된 파일은 사용자 결정대로 "같음(스타일만 다름)" · "같음(머지 주석만 다름)" 으로 따로 표시. 요약 수 그대로 |
+| **완료** | F-3 "주석만 다름" 이름을 바꾼다 (2026-09-17 사용자) — BOM · 줄끝 · 인코딩 · 공백만 달라도 들어오던 상태를 "다름(코드는 같음)" 으로. 요약 "다름 N(코드는 같음 M)" · 범례 · 보고서 · 웹 문서. 판정 · 수 그대로 |
---
## 3~4주차로 미룬 것
diff --git a/src/MergeHub/Services/CompareReport.cs b/src/MergeHub/Services/CompareReport.cs
index 65de3c3..2e409b7 100644
--- a/src/MergeHub/Services/CompareReport.cs
+++ b/src/MergeHub/Services/CompareReport.cs
@@ -143,7 +143,7 @@ namespace MergeHub.Services
private static string StatusName(FolderEntryStatus status) => status switch
{
FolderEntryStatus.Different => "다름",
- FolderEntryStatus.CommentOnly => "주석만 다름",
+ FolderEntryStatus.CommentOnly => FolderStatusText.Of(FolderEntryStatus.CommentOnly, SameReason.None),
FolderEntryStatus.Binary => "다름(이진)",
FolderEntryStatus.LeftOnly => "왼쪽에만",
FolderEntryStatus.RightOnly => "오른쪽에만",
diff --git a/src/MergeHub/Services/FolderComparer.cs b/src/MergeHub/Services/FolderComparer.cs
index 19d3d76..47d0438 100644
--- a/src/MergeHub/Services/FolderComparer.cs
+++ b/src/MergeHub/Services/FolderComparer.cs
@@ -23,7 +23,7 @@ namespace MergeHub.Services
Binary,
///
- /// 코드는 같고 주석·공백만 다르다.
+ /// 코드는 같고 주석 · 공백 · 빈 줄 · 줄끝 · BOM · 인코딩만 다르다. 화면 이름 "다름(코드는 같음)"(10차 F-3).
///
/// 따로 두는 이유 - 봐야 할 성격이 다르다. 주석만 손댄 파일은 눈으로 훑고 넘길 수 있는데
/// 다른 것과 같은 색으로 섞여 있으면 전부 열어 봐야 한다.
@@ -66,7 +66,8 @@ namespace MergeHub.Services
FolderEntryStatus.LeftOnly => "왼쪽만",
FolderEntryStatus.RightOnly => "오른쪽만",
FolderEntryStatus.Binary => "다름(이진)",
- FolderEntryStatus.CommentOnly => "주석만 다름",
+ // 예전 이름 "주석만 다름" - 주석뿐 아니라 공백 · 빈 줄 · 줄끝 · BOM · 인코딩만 다른 파일도 여기 들어와 맞지 않는 말이었다(10차 F-3, 사용자).
+ FolderEntryStatus.CommentOnly => "다름(코드는 같음)",
_ => string.Empty
};
@@ -170,7 +171,7 @@ namespace MergeHub.Services
public int LeftOnlyCount { get; set; }
public int RightOnlyCount { get; set; }
- /// 그중 코드는 같고 주석만 다른 것. "다름" 안에 든 수다.
+ /// 그중 코드는 같은 것("다름(코드는 같음)"). "다름" 안에 든 수다.
public int CommentOnlyCount { get; set; }
/// 항목 상한에 걸려 도중에 멈췄는지.
@@ -178,7 +179,7 @@ namespace MergeHub.Services
public string Summary =>
$"전체 {TotalFiles}개 · 다름 {DifferentCount}"
- + (CommentOnlyCount > 0 ? $"(주석만 {CommentOnlyCount})" : string.Empty)
+ + (CommentOnlyCount > 0 ? $"(코드는 같음 {CommentOnlyCount})" : string.Empty)
+ $" · 왼쪽만 {LeftOnlyCount} · 오른쪽만 {RightOnlyCount} · 같음 {SameCount}"
+ (Truncated ? " (너무 많아 일부만 봄)" : string.Empty);
}
@@ -284,7 +285,7 @@ namespace MergeHub.Services
switch (item.Status)
{
case FolderEntryStatus.Same: result.SameCount++; break;
- // "주석만 다름"도 다름의 한 갈래다. 둘 다 센다 - 요약이 "다름 3(주석만 1)" 로 읽힌다.
+ // "다름(코드는 같음)"도 다름의 한 갈래다. 둘 다 센다 - 요약이 "다름 3(코드는 같음 1)" 로 읽힌다.
case FolderEntryStatus.CommentOnly:
result.DifferentCount++;
result.CommentOnlyCount++;
diff --git a/src/MergeHub/Views/FolderView.xaml b/src/MergeHub/Views/FolderView.xaml
index 68d0834..c702fd4 100644
--- a/src/MergeHub/Views/FolderView.xaml
+++ b/src/MergeHub/Views/FolderView.xaml
@@ -259,8 +259,8 @@
Background="{Binding Source={x:Static svc:FolderEntryStatus.CommentOnly},
Converter={StaticResource StatusBrush}}"
BorderThickness="1" BorderBrush="{DynamicResource Ubisam.Brush.Input.Border}"/>
-
+