오피스 워드뷰 — 검증된 편집기 토대 이식
개요
크라우니오피스 7앱 셸의
워드뷰를 임시방편
편집중 문자열 모델에서
검증된 커서기반 편집기 토대(텍스트모델 + 편집 + 실행취소, 27 검증 함수)로 교체.
무엇을 했는지
가져오기 "편집기/편집.한선" + "편집기/실행취소.한선" 추가
- 워드 상태:
편집중(단일 라인 문자열) → 워드버퍼(전체 텍스트) + 워드커서(오프셋) + 워드스택(undo)
- CDF 적재:
줄을버퍼로(문서줄, 줄수) — word-0 셀 줄배열 → newline 조인 버퍼
- CDF 저장:
버퍼를줄로(워드버퍼, 문서줄) → 셀교체 (타 셀 보존)
- 입력:
문자열_삽입(워드버퍼, 워드커서, 신규) + 커서 전진 (임의 위치 삽입)
- 키: ←→
커서_한문자, ↑↓ 커서_위줄/아래줄, Backspace 앞_문자_삭제, Enter 줄_분할, Cmd+Z 실행취소_위치+현재상태
- 시트뷰는
편집중(셀 단위) 유지 — 워드와 분리
검증 (실행출력 일치)
- 버퍼↔줄 변환: 4/4 (총줄수·줄내용·왕복)
- 워드 통합 로직 헤드리스: 7/7 (맨앞삽입·줄중간삽입·백스페이스·실행취소×2·CDF 저장왕복 줄수보존·줄0보존)
- 백스페이스 단독 확인:
"_HERE_"→"_HERE" 끝 1자만 삭제 ✓
- 컴파일 OK 273KB
관련 파일
/Users/ef/CrownyDoc/한선씨/오피스네이티브/오피스.한선 (이식 대상)
/Users/ef/CrownyOS/crownyc/libs/편집기/{텍스트모델,편집,실행취소}.한선 (토대)
/Users/ef/CrownyOS/crownyc/libs/편집기/편집기카탈로그.psv (SSOT, 검증완료 27)
잔여 이슈
- 실키보드 테스트 대기: 오피스 워드뷰에서 사용자가 직접 한글 타이핑·화살표·백스페이스·Cmd+Z·Cmd+S 확인 (윈도우 이벤트 배선은 메모장과 동일 = 이미 실키보드 검증됨)
- 커서 x좌표 고정폭(13px) 근사 → 비례 CoreText 폰트에서 미세 드리프트.
텍스트폭 측정 함수(텍스트레이아웃 도메인) 들어가면 해소
- 호스트 OS 창 raise(터미널 뒤) = VM 어댑터 영역, 별건