← 목록
기타 2026-05-27 5KB 읽기 5분

뷰컴포넌트.한선 v1.1 — 본선 컴포넌트 라이브러리 완성

개요

한선씨 네이티브 프론트엔드 본선 첫 컴포넌트 라이브러리. HTML/CSS/JS 없이 셀 직접 조작으로 GUI 트리 구성.

무엇을 했는지

/loop 자율 반복 3-4회차 진행:

반복작업결과
1부선 격리 + 본선 디렉토리 + 학습 인덱스215줄 단일 소스
2hanseonc_std + RPN 정통 경로 확정8셀 GUI 트리 검증
3RPN 함수 정의 시도 → 무한호출, 슬롯 매트릭스 발견작동 슬롯 13개 확정
4hanseonc_high + 단일셀(13슬롯) 모델8 컴포넌트 완성

핵심 발견 3건 (학습DB 영구 등록)

1. 셀 슬롯 alias 매트릭스

독립 슬롯 (13개): 0,1,2,3,4,5,6,7,8,9, 24,25,26
alias:           0↔16, 1↔17
미작동:           10,11,12,13,14,15, 18,19,20,21,22,23

2. hanseonc_std RPN 함수 정의 제한

단순 .함수명 + 반환 + .끝N 패턴이 무한 호출. 뷰.한선 v3의 .아니면NN 라벨 패턴이 표준일 가능성. (T20 별도 추적)

3. hanseonc_high 셀 직접 조작 = 본선 실용 트랙

변수 c = 셀생성(27); c = 셀설정(c, 슬롯, 값); 셀읽기(c, 슬롯) 정상 작동.

결과물

/Users/ef/CrownyOS/crownyc/web/한선네이티브/
├── 학습_인덱스.md                       (215줄 단일 소스)
├── 샘플_첫화면.한선                     (RPN 8셀 검증)
├── 샘플_최소_RPN.한선                   (RPN 정통 데모)
├── 뷰컴포넌트.한선                       (★ v1.1 본선 컴포넌트 8종)
├── 검증_뷰컴포넌트.한선                  (★ 자가검증 통과)
├── 뷰컴포넌트_RPN시도.한선.bak           (학습 자료)
└── 검증_뷰컴포넌트_RPN시도.한선.bak      (학습 자료)

뷰컴포넌트 v1.1 API (8 컴포넌트 + 11 헬퍼)

컴포넌트 생성

함수시그니처premium 토큰
창_premium(너비, 높이)배경=흑단, 전경=상아
카드_premium(부모, 너비, 높이)흑단+슬레이트테두리+둥글기12
버튼강조_premium(부모, 텍스트)황동 채움+흑단 글자+둥글기6
버튼보조_premium(부모, 텍스트)흑단+상아 글자+1px 테두리
제목_premium(부모, 텍스트, 크기)샴페인 글자
부제목_premium(부모, 텍스트)상아 글자 14pt
구분_premium(부모)슬레이트 1px 가로 줄
입력_premium(부모, 너비)흑단+상아+슬레이트 테두리

트리

함수시그니처
자식부착(부모, 자식) — 부모.26 ← 자식, 자식.25 ← 부모

슬롯 헬퍼 (디버깅용)

컴포넌트_종류, 컴포넌트_텍스트, 컴포넌트_너비, 컴포넌트_높이, 컴포넌트_배경, 컴포넌트_전경, 컴포넌트_글크기, 컴포넌트_둥글기, 컴포넌트_테두리, 컴포넌트_부모, 컴포넌트_첫자식

자가검증 통과

앱     종류=1(뷰_창)    너비=1280  높이=800   배경=흑단
카드   종류=2(뷰_상자)  너비=1200  둥글기=12  테두리=1   부모=10003
H1     종류=3(뷰_글씨)  전경=샴페인  글크기=32  부모=10021
H2     전경=상아        글크기=14
구분   종류=8(뷰_구분)  높이=1     배경=슬레이트
입력   종류=5(뷰_입력)  너비=480   테두리=1
btn시작 종류=4(뷰_버튼) 배경=황동  전경=흑단
btn문서 배경=흑단        전경=상아  테두리=1
트리   앱.첫자식=10021   카드.부모=10003

관련 파일

  • 본선 라이브러리: /Users/ef/CrownyOS/crownyc/web/한선네이티브/뷰컴포넌트.한선
  • 자가검증: /Users/ef/CrownyOS/crownyc/web/한선네이티브/검증_뷰컴포넌트.한선
  • 학습 인덱스: /Users/ef/CrownyOS/crownyc/web/한선네이티브/학습_인덱스.md
  • 뷰.한선 v3 원본: /Users/ef/CrownyOS/crownyc/pkg/libs/뷰.한선
  • premium 표준: /Users/ef/crowny-spirit/installer/bin/libs/프리미엄.한선

잔여 이슈

  • T20: 뷰.한선 v3의 wrap 함수가 hanseonc_std에서 무한루프 (별도 디버깅)
  • T17: 컴포넌트 디자인 결정을 셀코어 룰로 등록 (다음 반복)
  • T18: arch.crowny.org 구조 패턴(랜딩/대시보드) 매핑 (다음 반복)
  • 형제 체인 (자식 여러 개): v2 작업
  • 픽셀 렌더링: CrownyBrowser/CrownyOS 디바이스 환경

다음 반복 (T17 셀코어 룰화)

셀코어 룰 API (/Users/ef/Downloads/CrownyTVM/std/셀코어.han)로 디자인 결정 자동 적용:

변수 룰 = 룰생성("카드_프리미엄_자동", 100)
룰 = 룰조건추가(룰, 0, "==", 뷰_상자)
룰 = 룰조건추가(룰, "역할", "==", "카드")
룰 = 룰변경추가(룰, 4, 흑단)
룰 = 룰변경추가(룰, 5, 슬레이트)
룰 = 룰변경추가(룰, 7, 12)

베이스 컨텍스트 (다음 모듈 동봉)

헌법: /Users/ef/Downloads/CrownyTVM/CROWNY-CONSTITUTION.md
컴파일러: /Users/ef/CrownyOS/crownyc/hanseonc_high
뷰컴포넌트: /Users/ef/CrownyOS/crownyc/web/한선네이티브/뷰컴포넌트.한선
셀코어: /Users/ef/Downloads/CrownyTVM/std/셀코어.han
규칙저장소: /Users/ef/Downloads/CrownyTVM/std/규칙저장소.dat (7261줄 기등록)
학습DB: ~/.claude/scripts/crownycode-learn.sh search