diff --git a/doc/history/2026-09-18-11차.md b/doc/history/2026-09-18-11차.md index 83e39d5..bb9253c 100644 --- a/doc/history/2026-09-18-11차.md +++ b/doc/history/2026-09-18-11차.md @@ -60,3 +60,36 @@ - 폴더 창(`#32770`)은 데스크톱 바로 아래가 아니라 **본 창 아래**에 붙는다 → 본 창의 자손에서 찾게 고침. - 폴더 창의 경로 칸(`id 1152`)과 [이 폴더 선택](`id 1`)은 UIA 에서 **Pane** 으로 보이고, 같은 id 를 가진 다른 칸이 먼저 잡혔다 → id + 클래스(`Edit` · `Button`)로 고르고, 경로를 한 글자씩 친 뒤 Enter 로 닫게 함. - 백그라운드로 돌리면 앱 창이 앞으로 나오지 못해 마우스가 다른 창을 누른다 → **앞에서** 돌린다. + +## F-12. C# 코드 스타일 맞춤의 기본값을 AURORA 로 (2026-09-18, 완료) + +사용자: "기본값은 원본형태를 따르고 C#인 경우에 AURORA 스타일로 하자" → 물어서 정한 것은 **제품 기본값 AURORA · C# 파일만 · 저장 동작은 지금 그대로**(켜져 있으면 저장도 그 스타일로 쓴다). + +### 알아본 것 + +- C/C++ · XAML 은 고칠 것이 없었다. 스타일 맞춤은 `CSharpStyle.Applies` 가 **확장자 `.cs` 만** 보므로(`Services/CSharpStyle.cs:60`) 설정이 무엇이든 다른 파일은 원본 그대로 견준다. +- 그래서 바뀐 것은 설정 기본값 한 줄뿐이다. + +### 고친 것 + +| 자리 | 고친 것 | +|---|---| +| `MergeHubSettings.cs:77` | `CSharpBraceStyle` 기본값 `None` → **`Aurora`**. 왜 그렇게 정했는지와 "C# 파일에만 걸린다" 를 주석으로 남김 | +| 웹 문서 매뉴얼 | "기본은 끔" → "**기본은 AURORA**(2026-09-18 결정) · 끄려면 콤보에서 [맞추지 않음]" · "C# 파일에만 걸린다" 한 줄 더함 | +| 웹 문서 설정 표 | 기본값 칸 `끔` → `AURORA`, "`.cs` 파일에만 걸린다" | +| 웹 문서 시연 대본 | "스타일 맞춤은 끔으로 둔다" → "기본이 AURORA 이므로 시연 전에 [맞추지 않음] 으로 바꿔 둔다" | +| 하네스 `StyleTest` | **+12건(78 → 90)** — 설정 기본값이 AURORA 인지, `.cpp` · `.h` · `.hpp` · `.c` · `.xaml` · `.py` · `.txt` · `.cs.txt` 는 안 걸리는지, `.cs` · `.CS` · 한글 경로 `.cs` 는 걸리는지. 고치기 전에 먼저 넣어 **기본값 검사만 실패**하는 것을 보고 시작했다 | + +### 확인한 것 — 설정 파일이 없는 첫 실행 (`e11-f12.ps1`) + +설정 파일을 백업해 치우고, 중괄호 자리만 다른 짝 두 벌을 명령줄(`--diff`)로 열었다. + +| 무엇 | 결과 | +|---|---| +| C# 짝(`left.cs` Allman · `right.cs` AURORA) | 요약 **"차이 없음"** · 상태바 `무시: 머지 주석 · C# AURORA` (`e11-f12-cs.png`) | +| C++ 짝(`left.cpp` · `right.cpp`, 같은 모양의 중괄호 차이) | 요약 **"남은 차이 4줄"** — 원본 그대로 (`e11-f12-cpp.png`) | +| 앱이 새로 만든 설정 파일 | `"CSharpBraceStyle": 1` (= Aurora) | +| 설정 파일 되돌림 | 해시 같음 | + +- 하네스 22벌 **1,159건** 통과(1,147 → +12) · 빌드 경고 0 · 오류 0. +- 이미 설정 파일이 있는 PC 는 그 값을 그대로 쓴다. 이번 변경은 **설정이 없는 첫 실행**에만 닿는다. diff --git a/doc/history/changelog.md b/doc/history/changelog.md index 4a73a42..20e0f0d 100644 --- a/doc/history/changelog.md +++ b/doc/history/changelog.md @@ -8,6 +8,7 @@ | 날짜 | 항목 | 커밋 | |---|---|---| +| 2026-09-18 | **11차 F-12 (추가 요청)** — C# 코드 스타일 맞춤의 제품 기본값을 끔 → **AURORA** 로(사용자 결정). 사내 코드가 이 스타일이라 설정을 켜지 않아도 중괄호 자리 차이를 안 보게 한다. C/C++ · XAML 은 원래부터 확장자 `.cs` 에만 걸려 손대지 않음. 저장 동작은 그대로. 설정 없는 첫 실행에서 AURORA 확인, C# 짝 "차이 없음" · C++ 짝 "남은 차이 4줄". 하네스 StyleTest +12(90건) | 아래 | | 2026-09-18 | **11차 A-1** — 변경분 추출을 화면에서 아홉 경우로 뽑아 git 과 대조(고치지 않음). 파일 고르기 · 바이트 보존(이진 · 한글 · 깊은 경로) · 범위 표시는 맞았다. 확정된 문제 넷: 지운 파일 · 이름 바뀐 옛 경로가 결과에 안 남음, 무엇과 무엇 사이를 뽑았는지 안 남음(병합 커밋은 첫 부모와만 · 거꾸로 범위도 말없이 됨), 비어 있지 않은 폴더에 묻지 않고 덮어써 옛 추출이 섞임, 쓰다 막히면 반쯤 뽑힌 채 멈춤. A-2 · A-3 으로 넘김. 제품 코드 변경 없음 | 아래 | | 2026-09-18 | **11차 F 절 (추가 요청)** — 사용자가 한꺼번에 준 열한 가지를 지시서에 넣음: 칸 이름 · 어느 파일인지(F-1) · 메서드 단위 반영(F-2) · 폴더 두 개 보내기 + 설치 없이 되는지(F-3) · 툴박스 감추기(F-4) · 글자 크기(F-5) · 넓게 보기(F-6) · 모니터(F-7) · 저장 뒤 되돌리기(F-8) · 백업 저장(F-9) · 덩어리 잇기 UI(F-10) · Git 계정 · 토큰 저장 확인(F-11). 항목마다 지금 코드가 어떤지와 정할 것을 함께 적음. 코드 변경 없음 | 아래 | | 2026-09-17 | **11차 지시서** — 10차 전부 끝(E-1 새로 걸린 것 없음). 기획안 v1.2 에서 "일부" 로 남은 것과 베타 전 확인에서 나온 것을 11차로 — A 변경분 추출(먼저 뽑아 보고 적기 · 지운 파일 · 범위 안내 · 비어 있지 않은 폴더 · ZIP) · B 배포 폴더가 09-07 것 · D 드라이브 고정 설정 위치 · C 커밋 메시지 수정(있는 [커밋 수정] 의 [마지막 메시지] 가 목록 맨 위 · 스테이징 파일이 말없이 들어감 · 작성자가 바뀜 · 작업 중에도 켜짐, 임의 커밋 수정은 할지 정함) · D 시험 도구 · E 확인 · 문서. 코드 변경 없음 | 아래 | diff --git a/doc/web/index.html b/doc/web/index.html index 6d3d7ff..7c50307 100644 --- a/doc/web/index.html +++ b/doc/web/index.html @@ -407,7 +407,8 @@ UbisamBase.Shell.exe --merge --base B.cs

시연 재료 demo\style: 스타일 끔 남은 차이 39줄 → AURORA 1줄(값 한 줄의 진짜 변경만 남는다).

@@ -549,7 +550,7 @@ Accept Theirs (상대 쪽 파일 그대로) 15 머지 주석반영한 줄에 주석 남기기켬 비교 · 병합에서 머지 주석 무시켬 작성자 (비우면 git config user.name)비움 - 비교 옵션C# 코드 스타일 맞춤 (None=끔 · Aurora · Allman) — 파일 비교 화면 콤보와 같은 값끔 + 비교 옵션C# 코드 스타일 맞춤 (None=끔 · Aurora · Allman) — 파일 비교 화면 콤보와 같은 값. .cs 파일에만 걸린다AURORA

알아 둘 한계

@@ -1268,7 +1269,7 @@ D:\MergeHubDemo\repo\ make-demo.ps1 이 만드는 Git
  • PowerShell 에서 powershell -ExecutionPolicy Bypass -File D:\Sorce\MergeTool\MergeHub\demo\make-demo.ps1. 시연 직전에도 한 번 더 돌려 처음 상태로 만든다.
  • 저장소 병합을 미리 한 번 해 보고 충돌 수 · 자동으로 풀린 수를 적어 둔다(발표 때 숫자를 말하기 위해). 끝나면 make-demo.ps1 로 되돌린다.
  • 설정 → MergeHub → 데모: .git 있는 폴더 = D:\MergeHubDemo\repo, .git 없는 폴더 = …\demo\plain\left. 위 줄에 두 화면을 오가는 버튼이 생긴다.
  • -
  • 설정 → 머지 주석: “비교 · 병합에서 머지 주석 무시” 켬. 비교 옵션 “C# 코드 스타일 맞춤” 은 끔으로 둔다 — 시연 중에 화면에서 고르는 것을 보여 준다.
  • +
  • 설정 → 머지 주석: “비교 · 병합에서 머지 주석 무시” 켬. 비교 옵션 “C# 코드 스타일 맞춤” 은 기본이 AURORA 이므로, 시연 전에 콤보에서 맞추지 않음 으로 바꿔 둔다 — 시연 중에 화면에서 고르는 것을 보여 준다.
  • 셸 창을 최대화, 화면 배율 100~125%. 작업자 이름 창에는 발표자 이름.
  • diff --git a/doc/작업지시/11차.md b/doc/작업지시/11차.md index 6bb1cc5..b754773 100644 --- a/doc/작업지시/11차.md +++ b/doc/작업지시/11차.md @@ -269,6 +269,13 @@ - **정할 것**: 토큰을 저장할지. 저장한다면 **평문은 안 된다** — 윈도 자격 증명 관리자(DPAPI) 에 사용자 계정으로 묶어 넣는다. 저장하지 않기로 하면 매뉴얼에 그렇게 적는다. - **판정 기준**: 확인한 결과를 적는다. 저장하기로 하면 설정 파일 어디에도 토큰 글자가 없고(파일 grep 0), 껐다 켜도 Push 가 다시 묻지 않는다. 지우는 단추가 있다. +### F-12. C# 코드 스타일 맞춤의 **기본값을 AURORA 로** (2026-09-18, 사용자 결정 · 완료) + +- 사용자: "기본값은 원본형태를 따르고 C#인 경우에 AURORA 스타일로 하자" → 물어 정한 것: **제품 기본값 AURORA · C# 파일만 · 저장 동작은 지금 그대로**(켜져 있으면 저장도 그 스타일로 쓴다). +- 지금은: `MergeHubSettings.CSharpBraceStyle` 기본값이 `None`(끔). C/C++ · XAML 은 `CSharpStyle.Applies` 가 확장자 `.cs` 만 보므로 **어느 값이어도 원본 그대로**다 — 따로 고칠 것이 없다. +- 2026-09-17 에 "비교할 때만 맞추고 저장은 원본대로" 하는 선택지는 만들지 않기로 했다. 이번 결정도 그 위에 선다. +- **판정 기준**: 설정 파일이 없는 첫 실행에서 AURORA 로 시작한다. 중괄호 자리만 다른 C# 짝이 "차이 없음", 같은 모양의 C/C++ 짝은 차이가 그대로 남는다. 하네스에 기본값 · 확장자 검사를 넣는다. 매뉴얼 · 설정 표 · 시연 대본의 "기본은 끔" 을 고친다. + --- ## 이번 지시서에서 하지 않는 것 diff --git a/doc/진행상황.md b/doc/진행상황.md index 69e1d28..5baee26 100644 --- a/doc/진행상황.md +++ b/doc/진행상황.md @@ -381,6 +381,7 @@ | 대기 | F-9 백업본으로 저장 · 원본을 건드릴지 고르게 | | 대기 | F-10 덩어리가 어디로 갔는지 UI 로 잇기 (지금은 "자리 옮김" 색만) | | 대기 | F-11 Git 계정 · URL · 암호 저장 확인 (지금은 주소 · 계정만 저장, 토큰은 메모리) | +| **완료** | F-12 C# 코드 스타일 맞춤 기본값을 AURORA 로 (2026-09-18 사용자 결정) — 설정 없는 첫 실행에서 AURORA, 중괄호만 다른 C# 짝 "차이 없음" · 같은 모양의 C++ 짝은 "남은 차이 4줄"(원본 그대로). 저장 동작은 그대로. 하네스 StyleTest +12(90건) | --- ## 3~4주차로 미룬 것 diff --git a/src/MergeHub/MergeHubSettings.cs b/src/MergeHub/MergeHubSettings.cs index 5b7f81d..39af4bc 100644 --- a/src/MergeHub/MergeHubSettings.cs +++ b/src/MergeHub/MergeHubSettings.cs @@ -71,10 +71,15 @@ namespace MergeHub /// C# 파일을 비교하기 전에 중괄호 줄바꿈을 맞출 스타일(6차 추가). /// AURORA = 형식 · 메서드 중괄호만 새 줄, 나머지와 else/catch/finally 는 같은 줄. Allman = 모두 새 줄(Visual Studio 기본값). /// 켜면 편집 칸의 결과도 그 스타일로 저장된다. + /// + /// 기본값은 AURORA(11차 F-12, 2026-09-18 사용자 결정) - 사내 코드가 이 스타일이라 + /// 처음 켜는 사람이 설정을 찾아 켜지 않아도 중괄호 자리 때문에 생기는 차이를 안 보게 된다. + /// C# 파일에만 걸린다( 가 확장자 .cs 만 본다) - + /// C/C++ · XAML 같은 다른 파일은 어느 값이어도 원본 그대로다. /// [Category("비교 옵션")] [DisplayName("C# 코드 스타일 맞춤 (None=끔 · Aurora · Allman)")] - public MergeHub.Services.CSharpBraceStyle CSharpBraceStyle { get; set; } = MergeHub.Services.CSharpBraceStyle.None; + public MergeHub.Services.CSharpBraceStyle CSharpBraceStyle { get; set; } = MergeHub.Services.CSharpBraceStyle.Aurora; [Category("비교 옵션")] [DisplayName("단어 단위 diff")]