[v2.0.0] Phase L3-5 파일 태그 시스템 구현
FileTagService.cs (140줄) — 신규:
- 파일·폴더에 사용자 태그 부여 서비스 (싱글턴)
- AddTag / RemoveTag / ClearTags / GetTags / GetFilesByTag / GetAllTags / HasTags
- %APPDATA%\AxCopilot\file_tags.json 로컬 저장 (key=경로, value=태그목록)
- 태그 정규화: 소문자 + 공백→하이픈 변환
TagHandler.cs (190줄) — 신규:
- "tag" 프리픽스 핸들러 (IActionHandler 구현)
- tag → 전체 태그 목록 (파일 수 내림차순)
- tag work → "work" 태그 파일 목록 (prefix match + contains)
- tag add [태그] [경로] → 파일에 태그 추가 (Enter로 확정)
- tag del [태그] [경로] → 파일에서 태그 제거 (Enter로 확정)
- tag clear [경로] → 파일의 모든 태그 삭제 (Enter로 확정)
- 파일 열기: Process.Start UseShellExecute
Symbols.cs (+1줄):
- Tag = "\uEAB4" 심볼 상수 추가
LauncherViewModel.cs (+2줄):
- PrefixMap에 "tag" → ("태그", Symbols.Tag, "#6366F1") 추가
App.xaml.cs (+2줄):
- Phase L3 핸들러 섹션에 TagHandler 등록
docs/LAUNCHER_ROADMAP.md:
- L3-1~L3-5 완료 표시 (✅)
빌드: 경고 0, 오류 0
This commit is contained in:
@@ -166,6 +166,8 @@ public partial class App : System.Windows.Application
|
||||
var snippetTemplateSvc = new SnippetTemplateService(settings, _sharedLlm);
|
||||
commandResolver.RegisterHandler(new AiSnippetHandler(settings, snippetTemplateSvc));
|
||||
commandResolver.RegisterHandler(new WebSearchSummaryHandler(settings, _sharedLlm));
|
||||
// Phase L3-5: 파일 태그 시스템
|
||||
commandResolver.RegisterHandler(new TagHandler());
|
||||
|
||||
// ─── 플러그인 로드 ────────────────────────────────────────────────────
|
||||
var pluginHost = new PluginHost(settings, commandResolver);
|
||||
|
||||
Reference in New Issue
Block a user