작업지시-4차에 C 묶음(화면 구성 정리) 추가

경로 중복 · 하단 정보 흩어짐 · Git 원격 블록 접기 · 색 구분 범례 · ACTIONS 칸 나누기 다섯 가지.
3-Way 원본 칸 접기는 행 잠금을 건드리는 같은 성격이라 B-2 에 묶었다.
This commit is contained in:
김승준 2026-09-09 16:01:41 +09:00
parent c846474e4b
commit c870eacfe8
2 changed files with 202 additions and 121 deletions

View File

@ -9,7 +9,8 @@
## 공통 규칙
- **A → B 순서로 진행한다.** A 는 작업한 것이 사라지는 문제라 제일 먼저다.
- **A → B → C 순서로 진행한다.** A 는 작업한 것이 사라지는 문제라 제일 먼저다.
C(화면 구성)는 서로 얽히지 않아 순서를 바꿔도 되지만, 기능이 자리를 잡은 뒤에 손대는 편이 손이 덜 간다.
- **항목 하나를 끝낼 때마다** 빌드하고 실제로 실행해 화면을 확인한 뒤 보고한다. 전부 끝내고 한 번에 보고하지 않는다.
- 항목 하나가 끝나면 `doc/진행상황.md` 의 대기/진행/완료를 갱신하고 **로컬 커밋**한다. 커밋 메시지는 한국어 한 줄.
- **푸쉬하지 않는다.** 원격 저장소가 생기기 전까지 `.git` 에만 쌓아 둔다.
@ -74,8 +75,13 @@
- 줄 번호는 접힌 뒤에도 **원래 파일의 번호**여야 한다. 다시 매기면 안 된다.
- 차이 이동(`Alt+↑↓`) · 미니맵 · 폴더 검색으로 들어온 줄 짚기가 접힌 상태에서도 맞아야 한다.
- 편집기는 투명한 `TextBox` 한 장이 스크롤 주인이다. 접힌 줄을 편집기에서 어떻게 다룰지가 이 항목의 핵심이다.
- **곁들여 — 3-Way 에서 원본 세 칸을 접는 토글도 여기서 함께 한다.** 2560 화면에서 칸이 넷이면
칸당 500px 남짓이라 코드 폭이 모자란다. 대개는 MERGED 와 원본 하나만 보면 된다.
가로로 칸을 접는 일과 세로로 줄을 접는 일은 **행 잠금을 건드린다는 점에서 같은 성격**이라 묶는다.
화면 구성 항목(C 묶음)에 넣지 않은 까닭이 그것이다.
- **판정 기준**: 3000줄에 차이 5군데인 파일을 열면 화면 한 장에 다섯 군데가 다 보인다.
접었다 펴도 줄 번호와 좌우 정렬이 그대로다. 3-Way 에서도 네 칸이 같은 자리에서 접힌다.
원본 칸을 접으면 MERGED 가 넓어지고, 펼치면 네 칸이 원래 자리로 돌아온다.
### B-3. 폴더 비교에서 다음 다른 파일로 바로 넘어가기
@ -102,6 +108,71 @@
---
## C. 화면 구성 정리
기능을 더하는 것이 아니라 **자리를 되찾는** 일이다. 코드를 나란히 읽는 도구에서
가로·세로 한 줄은 그대로 읽을 수 있는 코드 양이다.
C 묶음은 서로 얽히지 않으므로 **어느 것부터 해도 된다.** 값이 큰 순서로 적었다.
### C-1. 같은 경로가 세 군데 나온다 (파일 비교)
- 지금: ① 위 툴바에 `기준 파일...` · `내 파일...` 옆의 **잘린** 경로 ② 패널 머리글의 `BASE · 파일이름.cs`
③ 그 아래 `경로` 상자의 전체 경로. 셋이 같은 것을 말한다.
- ③ 경로 상자가 패널마다 세로 40px 남짓을 먹는다. 3-Way 는 칸이 넷이라 그만큼 곱해진다.
- 머리글 한 줄로 합치고 **전체 경로는 툴팁**으로 옮긴다. 위 툴바의 잘린 경로는 읽을 수 없으므로 뺀다.
- **경로를 드래그해서 복사할 수 있는 것은 지킨다.** 지금 읽기전용 `TextBox` 를 쓰는 까닭이 그것이다
(`HomeView.xaml` 의 경로 줄 주석 참고). 복사 방법이 사라지면 안 된다 - 대안(우클릭 복사 등)을 함께 낸다.
- **행 잠금을 깨지 않는다.** 지금 경로 줄은 BASE·LOCAL 의 높이를 맞추려고 자리를 맞춰 둔 것이다.
줄을 없애거나 합칠 때 두(네) 칸의 01행이 여전히 같은 높이여야 한다.
- **판정 기준**: 2-Way·3-Way 모두에서 코드가 두 줄 이상 더 보이고, 각 칸의 01행이 같은 높이에 있다.
경로 전체는 어딘가에서 여전히 읽고 복사할 수 있다.
### C-2. 아래쪽 정보가 세 군데로 흩어져 있다
- 지금: 왼쪽 아래 `Diff 요약 총 43 라인 · 차이 10 라인` / 가운데 `1행 1열 | 차이 - / 5 | UTF-8 · LF · C#` /
그 아래 `편집 0건 · 되돌리기 0건 · 남은 차이 10 라인 | 코드 검사 이상 없음`.
- 비슷한 숫자가 세 군데 있다 - `차이 10 라인` · `차이 - / 5` · `남은 차이 10 라인`. 어느 것을 봐야 할지 헷갈린다.
- 한 줄로 합친다. 자리 규칙을 정해 둔다 - **왼쪽은 지금 위치**(행·열), **가운데는 진행**(차이 3/5 · 남은 10줄 · 편집 2건),
**오른쪽은 파일 정보**(UTF-8 · LF · C# · 코드 검사).
- 줄이 하나 줄어드는 만큼 코드가 그만큼 더 보인다.
- **판정 기준**: 아래쪽이 한 줄이 되고, 같은 뜻의 숫자가 두 번 나오지 않는다.
### C-3. Git 탭에서 지금 못 쓰는 것이 위쪽 4분의 1을 차지한다
- 지금: `저장소 연결` 블록에 원격 URL · 이름 · 클론 · 원격 추가 · 원격 삭제 · Gitea 계정 · 토큰 ·
Fetch · Pull · Push 가 있다. **원격 저장소가 없어 전부 비활성**이다(`GitView.xaml`).
- 이 프로젝트는 로컬 머지툴이 우선이고 푸시도 하지 않는다. 그런데 화면에서는 원격이 제일 넓다.
- **지우지 않는다. 접는다.** 사내 Gitea 가 생기면 다시 필요하다. 펼침 상태를 기억한다.
- 접었을 때 남는 것은 `로컬 경로` · `폴더...` · `열기` 한 줄이다.
- **판정 기준**: 접으면 세로 100px 이상이 브랜치 목록·이력으로 가고, 펼치면 지금과 똑같다.
껐다 켜도 접힌 상태가 그대로다.
### C-4. 색 구분 범례를 읽는 것에서 쓰는 것으로
- 지금: `색 구분 | BASE와 다름 5 | 머지 반영함 0 | 직접 수정 0 | 추가 5 | 삭제 0 | 무시 0 | 자리 옮김 0 | 줄 안에서 바뀐 부분`
이 늘 한 줄을 차지한다. 0건인 것도 그대로 자리를 잡는다.
- 두 가지를 한다.
- 0건인 갈래는 흐리게 한다. 있는 것과 없는 것이 한눈에 갈린다.
- **개수를 누르면 그 갈래로 이동한다.** `추가 5` 를 누르면 추가된 줄만 차례로 훑는다.
이러면 범례가 설명이 아니라 도구가 되고, 색 이름을 외울 필요가 없어진다.
- 이동은 이미 있는 차이 이동(`Alt+↑↓`)과 **같은 방식으로 움직인다.** 새 이동 규칙을 만들지 않는다.
- **판정 기준**: 0건 갈래가 눈에 띄게 흐리다. `추가 N` 을 누르면 첫 추가 줄로 가고, 다시 누르면 다음 추가 줄로 간다.
### C-5. ACTIONS 칸이 매번 쓰는 것과 한 번 정하는 것을 섞어 놨다
- 매번 쓰는 것: `Accept` · `이 덩어리 반영` · `Undo`/`Redo` · 차이 이동 · `저장`.
- 한 번 정하면 그대로인 것: `저장 형식` 두 칸 · `비교 규칙` 네 개(공백 비교 · Aa 구분 · 필터 끔 · 줄바꿈 끔) · `편집 잠금`.
- 뒤쪽을 접는다(예: `▸ 비교 규칙`). 접힌 상태를 기억한다. 오른쪽 칸 폭을 그만큼 코드에 돌려준다.
- **차이 이동 버튼의 자리를 다시 본다.** 가장 자주 누르는데 손이 가장 먼 오른쪽 끝에 있고,
정작 `차이 3 / 5` 표시는 아래쪽 상태바에 있다. **개수와 이동 단추를 같은 자리에 둔다** -
C-2 와 함께 하면 자연스럽다.
- 규칙을 바꾸면 화면을 다시 그리므로 **반영·편집 표시가 유지되는지 확인한다**(3차 E-5 에서 한 번 깨졌던 자리다).
- **판정 기준**: 접으면 코드 폭이 눈에 띄게 넓어지고, 펼치면 지금과 같다. 차이 이동을 누르는 손이 짧아진다.
규칙을 바꿔도 반영한 줄 색이 그대로다.
---
## 이번 지시서에서 하지 않는 것
번호를 붙여 두는 이유는 나중에 "왜 안 했나" 를 다시 묻지 않기 위해서다.

View File

@ -674,6 +674,16 @@ System.ArgumentException
| 대기 | B-3 폴더 비교에서 다음 다른 파일로 |
| 대기 | B-4 외부 편집기로 열기 |
### C. 화면 구성 정리
| 상태 | 항목 |
|---|---|
| 대기 | C-1 같은 경로가 세 군데 나온다 |
| 대기 | C-2 아래쪽 정보가 세 군데로 흩어져 있다 |
| 대기 | C-3 Git 탭의 원격 블록을 접는다 |
| 대기 | C-4 색 구분 범례를 이동 도구로 |
| 대기 | C-5 ACTIONS 칸을 자주 쓰는 것과 한 번 정하는 것으로 나눈다 |
---
## 3~4주차로 미룬 것