[Phase L23] 한국 사무 환경 특화 도구 4종 구현

CalHandler (cal 프리픽스, 205줄):
- 2024~2027 한국 공휴일 딕셔너리 (DateOnly → string, 66개 날짜)
- cal: 이번달 달력·공휴일 / cal next: 다음 공휴일 5개 D-N일
- cal workdays: 이번달 업무일·잔여 / cal today: 오늘 공휴일 여부
- cal yyyy-MM: 특정 월 / cal yyyy-MM-dd: 특정 날짜 조회

LeaveHandler (leave 프리픽스, 185줄):
- %APPDATA%\AxCopilot\leave.json 로컬 저장 (LeaveData/LeaveRecord 모델)
- set/use/del/remaining/list/clear 서브커맨드
- 반차(0.5일) 지원, 잔여 연차 실시간 계산

WorkTimeHandler (work 프리픽스, 160줄):
- work 09:00 18:30: 근무시간·초과근무 (점심 1시간 자동 제외)
- work 09:00 18:30 -30: 점심 N분 지정 / -0: 미적용
- work 09:00 18:30 pay 15000: 시급 기준 급여 산출 (초과 1.5배)
- work week N: 주간 40h 기준 초과 계산 / _lastWorkedHours 캐시

FixHandler (fix 프리픽스, 220줄):
- 두벌식 영→자모 매핑 (소문자+Shift 된소리/쌍모음)
- HangulComposer 상태 기계: 초성19·중성21·종성28 + 복합모음7·복합종성11
- 빈 쿼리 시 클립보드 자동 교정
- 예: fix gksrmf → 안녕

App.xaml.cs: 4개 핸들러 등록 추가
빌드: 경고 0, 오류 0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-04 18:18:30 +09:00
parent 406a2fc2e5
commit babe593482
5 changed files with 1462 additions and 0 deletions

View File

@@ -350,6 +350,16 @@ public partial class App : System.Windows.Application
// L22-4: 업무 양식·문서 구조 템플릿 (prefix=form)
commandResolver.RegisterHandler(new FormHandler());
// ─── L23: 한국 사무 환경 특화 ─────────────────────────────────────
// L23-1: 한국 공휴일·업무일 달력 (prefix=cal)
commandResolver.RegisterHandler(new CalHandler());
// L23-2: 연차·휴가 관리 (prefix=leave)
commandResolver.RegisterHandler(new LeaveHandler());
// L23-3: 근무 시간·급여 계산 (prefix=work)
commandResolver.RegisterHandler(new WorkTimeHandler());
// L23-4: 한/영 타이핑 오류 교정 (prefix=fix)
commandResolver.RegisterHandler(new FixHandler());
// ─── 플러그인 로드 ────────────────────────────────────────────────────
var pluginHost = new PluginHost(settings, commandResolver);
pluginHost.LoadAll();