다타이쿠(Dataiku) 웹 인터페이스의 한글 번역 품질을 개선하는 브라우저 확장프로그램입니다.
- 글로서리 기반 번역: 사용자 정의 용어집을 통해 오번역 수정
- Angular SPA 대응: Dataiku의 Angular 기반 앱에 최적화된 번역 시스템
- JSON 파일 관리: 번역 규칙을 JSON 파일로 내보내기/가져오기
- 실시간 번역 적용: 페이지 로드 및 동적 콘텐츠에 자동 적용
- 간편한 관리: 팝업 인터페이스를 통한 쉬운 설정 관리
- 토글 기능: 필요에 따라 번역 개선 기능 활성화/비활성화
- Angular 기반 SPA: Single Page Application으로 동적 콘텐츠 로딩
- i18n 번역 시스템:
translate="HOME.RESOURCES.LEARN.HEADING"
속성 사용 - 동적 DOM 구조:
/html/body/div[1]/div[12]/div[1]/ng2-home-page/div/...
형태의 복잡한 XPath - Angular 컴포넌트:
ng2-home-page
,_ngcontent-ng-c844578629
등의 Angular 특성 속성
- Angular 로딩 대기:
[translate]
,ng2-home-page
,[_ngcontent]
요소 감지 - 다단계 번역 적용: Angular i18n 완료 후 → 우리 번역 적용
- 동적 요소 감지: MutationObserver로 새로 추가되는 translate 요소 즉시 처리
- 디바운싱: 성능 최적화를 위한 번역 실행 지연 (300ms)
- 다중 시도: 동적 로딩 고려하여 1초, 3초 후 추가 번역 시도
- Chrome 브라우저에서
chrome://extensions/
페이지로 이동 - 우측 상단의 "개발자 모드" 활성화
- "압축해제된 확장 프로그램을 로드합니다" 클릭
- 이 폴더를 선택하여 확장프로그램 설치
- 다타이쿠 페이지에서 확장프로그램 아이콘 클릭
- "번역 개선 활성화" 버튼으로 기능 활성화
- 글로서리 섹션에서 번역 규칙 추가/수정
- 원문: 영어 원문 입력
- 번역: 원하는 한글 번역 입력
- 페이지가 자동으로 개선된 번역으로 업데이트됨
- Home → 홈
- Dashboard → 대시보드
- Project → 프로젝트
- Dataset → 데이터셋
- Recipe → 레시피
- Flow → 플로우
- Model → 모델
- Scenario → 시나리오
- Notebook → 노트북
- Analysis → 분석
- Learn → 학습공간
- 배우다 → 학습공간
- 내보내기: 현재 번역 규칙을
glossary.json
파일로 다운로드 - 가져오기: JSON 파일에서 번역 규칙 일괄 업로드
- 파일 형식:
[
{
"original": "Learn",
"translation": "학습공간"
},
{
"original": "배우다",
"translation": "학습공간"
}
]
- 팝업에서 "JSON 내보내기" 클릭
- 다운로드된
glossary.json
파일을 텍스트 에디터로 편집 - "JSON 가져오기"로 수정된 파일 업로드
- 번역 규칙이 자동으로 적용됨
- 공식 Dataiku 사이트 (*.dataiku.com)
- 사용자 지정 인스턴스 (http://140.238.30.49:11000)
- Manifest V3: 최신 Chrome 확장프로그램 표준
- Vanilla JavaScript: 프레임워크 없는 순수 자바스크립트
- Chrome Extensions API: 브라우저 확장 기능
- MutationObserver: DOM 변화 실시간 감지
- TreeWalker: 효율적인 텍스트 노드 탐색
- Angular 감지: SPA 앱 로딩 상태 확인
F12 개발자 도구 → Console 탭에서 다음 로그 확인:
Dataiku 번역 개선기: Angular 앱 감지됨, 번역 시작
Dataiku 번역 개선기: 글로서리 업데이트됨
Dataiku 번역: "Learn" → "학습공간"
-
번역이 안 되는 경우:
- 확장프로그램 새로고침 (
chrome://extensions/
) - Dataiku 페이지 새로고침
- 콘솔에서 오류 메시지 확인
- 확장프로그램 새로고침 (
-
Angular 로딩 지연:
- 페이지 로드 후 1-3초 대기
- 동적 콘텐츠는 자동으로 감지하여 번역 적용
MIT License