Phase 6 구현: 커스텀 명령어 + i18n (ko/en)

- CustomInstructionService: 프리셋 5개 (번역/요약/전문리라이트/코드설명/자유프롬프트)
- 커스텀 명령어 CRUD + 프리셋 보호 (삭제 불가)
- CommandsPage: 명령어 목록 + 추가/편집 다이얼로그
- i18n: ko.json/en.json 리소스 파일, t() 함수, React 컨텍스트
- IPC: instruction 핸들러 6개
- AppLayout: Commands 네비게이션 추가
This commit is contained in:
Yun Chan 2026-04-05 02:53:32 +09:00
parent 5ccbf85a65
commit d940c5020e
11 changed files with 701 additions and 5 deletions

58
src/renderer/i18n/en.json Normal file
View file

@ -0,0 +1,58 @@
{
"app.name": "D3RO Voice",
"nav.dashboard": "Dashboard",
"nav.history": "History",
"nav.dictionary": "Dictionary",
"nav.commands": "Commands",
"nav.settings": "Settings",
"dashboard.title": "Dashboard",
"dashboard.totalSessions": "Total Sessions",
"dashboard.totalTime": "Total Time",
"dashboard.totalWords": "Total Words",
"dashboard.streak": "Streak",
"dashboard.today": "Today",
"dashboard.sessions": "Sessions",
"dashboard.time": "Time",
"dashboard.words": "Words",
"history.title": "History",
"history.search": "Search transcriptions...",
"history.empty": "No history yet.",
"history.noResults": "No results found.",
"dictionary.title": "Dictionary",
"dictionary.search": "Search words...",
"dictionary.addWord": "Add Word",
"dictionary.empty": "No words yet. Add custom words for better STT accuracy.",
"dictionary.noResults": "No words found.",
"dictionary.word": "Word",
"dictionary.pronunciation": "Pronunciation (optional)",
"commands.title": "Custom Commands",
"commands.add": "Add Command",
"commands.name": "Name",
"commands.description": "Description",
"commands.prompt": "Prompt",
"commands.builtin": "Built-in",
"commands.custom": "Custom",
"settings.title": "Settings",
"settings.general": "General",
"settings.audio": "Audio",
"settings.stt": "STT",
"settings.llm": "LLM",
"settings.theme": "Theme",
"settings.language": "Language",
"settings.closeToTray": "Close to tray",
"settings.autoInsert": "Auto-insert text after transcription",
"settings.soundEffects": "Sound effects",
"settings.insertMethod": "Insert Method",
"settings.whisperModel": "Whisper Model",
"settings.sttLanguage": "Recognition Language",
"settings.ollamaUrl": "Ollama Server URL",
"common.cancel": "Cancel",
"common.save": "Save",
"common.delete": "Delete",
"common.add": "Add",
"common.edit": "Edit",
"common.close": "Close",
"common.loading": "Loading...",
"status.ollamaConnected": "Ollama Connected",
"status.ollamaOffline": "Ollama Offline"
}