## 기능 스포트라이트: 전환 가능한 실시간 번역 모드 구현 플러그인 가능한 음성 지원 프레임워크는 유연성을 극대화하도록 설계되었습니다. 이 가이드는 간단한 음성 명령으로 켜고 끌 수 있는 실시간 번역 모드라는 강력한 기능을 보여줍니다. 어시스턴트에게 독일어로 말하고 포르투갈어로 출력을 들은 다음 즉시 정상적인 동작으로 전환한다고 상상해 보세요. 이는 핵심 엔진을 변경하는 것이 아니라 규칙 구성 파일 자체를 교묘하게 조작함으로써 달성됩니다. ### 사용 방법 이를 설정하려면 `FUZZY_MAP_pre.py` 파일에 두 가지 규칙을 추가하고 해당 스크립트를 생성해야 합니다. **1. 토글 규칙:** 이 규칙은 번역 모드를 켜거나 끄는 명령을 수신합니다. ```python # Rule to turn the translation mode on or off ('', r'^(portugiesisch|übersetzung|übersetzer) (aktivieren|aktiviert|aktiv|einschalten|deaktivieren|ausschalten|toggle|Dogge|doppelt)\b', 95, { 'command_flags': re.IGNORECASE, 'on_match_exec': [CONFIG_DIR / 'toggle_translation_mode.py'] }), ``` "Übersetzung einschalten"(번역 켜기)이라고 말하면 `toggle_translation_mode.py` 스크립트가 실행됩니다. **2. 번역 규칙:** 이는 활성화되면 모든 텍스트를 일치시켜 번역 스크립트로 보내는 "포괄적" 규칙입니다. ```python # ANCHOR: The following line is controlled by the toggle script. # TRANSLATION_RULE ('', r'.+', 5, {'command_flags': re.IGNORECASE,'on_match_exec': [CONFIG_DIR / 'translate_from_to.py']}), ``` 여기서 핵심은 '# TRANSLATION_RULE' 주석입니다. 이는 토글 스크립트가 그 아래의 규칙을 찾고 수정하는 데 사용하는 "앵커" 역할을 합니다. ### 작동 원리: 커튼 뒤의 마법 내부 상태를 사용하는 대신 이 방법은 파일 시스템의 규칙 맵을 직접 편집합니다. `toggle_translation_mode.py` 스크립트는 구성 관리자 역할을 합니다. 1. **규칙 찾기:** 트리거되면 스크립트는 `FUZZY_MAP_pre.py`의 내용을 읽습니다. 고유한 앵커 댓글 `# TRANSLATION_RULE`을 검색합니다. 2. **상태 전환:** * **비활성화하려면:** 앵커 아래의 규칙 줄이 활성화된 경우 스크립트는 줄 시작 부분에 '#'을 추가하여 효과적으로 주석 처리하고 비활성화합니다. * **활성화하려면:** 규칙 줄이 이미 주석 처리된 경우 스크립트는 선행 `#`을 조심스럽게 제거하여 규칙을 다시 활성화합니다. 3. **저장 및 다시 로드:** 스크립트는 수정된 콘텐츠를 `FUZZY_MAP_pre.py`에 다시 저장합니다. 그런 다음 특수 트리거 파일(예: `RELOAD_RULES.trigger`)을 생성합니다. 기본 서비스는 이 트리거 파일을 지속적으로 감시합니다. 표시되면 서비스는 해당 구성이 변경되었음을 알고 디스크에서 전체 규칙 맵을 다시 로드하여 변경 사항을 즉시 적용합니다. ### 디자인 철학: 장점 및 고려사항 구성 파일을 직접 수정하는 이러한 접근 방식은 최종 사용자를 위한 명확성과 단순성을 위해 선택되었습니다. #### 장점: * **높은 투명성:** 시스템의 현재 상태가 항상 표시됩니다. `FUZZY_MAP_pre.py` 파일을 잠깐 살펴보면 번역 규칙이 활성화되어 있는지 아니면 주석 처리되어 있는지 즉시 알 수 있습니다. * **핵심 엔진 변경 사항 없음:** 이 강력한 기능은 핵심 규칙 처리 엔진의 한 줄도 변경하지 않고 구현되었습니다. 이는 플러그인 시스템의 유연성을 보여줍니다. * **개발자를 위한 직관적인 방법:** 주석 처리를 통해 구성 일부를 활성화 또는 비활성화하는 개념은 코드 또는 구성 파일 작업을 해본 모든 사람에게 친숙하고 간단하며 신뢰할 수 있는 패턴입니다. #### 고려사항: * **파일 시스템 권한:** 이 방법이 작동하려면 보조자의 프로세스에 자체 구성 파일에 대한 쓰기 권한이 있어야 합니다. 일부 높은 수준의 보안 환경에서는 이것이 고려사항일 수 있습니다.