i18n-editor는 다국어 JSON 번역 파일을 효율적으로 관리할 수 있는 데스크톱 에디터입니다. 여러 워크스페이스를 전환하면서 다양한 프로젝트의 번역 파일을 한 곳에서 관리할 수 있습니다.
워크스페이스는 하나의 프로젝트에서 사용되는 다국어 번역 파일들의 집합을 의미합니다. 각 워크스페이스는 다음과 같은 특징을 가집니다:
- 독립적인 언어 설정: 각 워크스페이스는 자신만의 지원 언어 목록을 가질 수 있습니다.
- 여러 네임스페이스 관리: 하나의 워크스페이스 안에서 여러 개의 네임스페이스를 관리할 수 있습니다.
네임스페이스는 번역 파일을 논리적으로 구분하는 단위입니다. 예를 들어:
- common: 공통으로 사용되는 번역
- auth: 인증 관련 번역
- product: 상품 관련 번역
각 네임스페이스는 지원하는 모든 언어의 번역을 포함하며, JSON 파일로 관리됩니다.
-
워크스페이스 관리
- 여러 프로젝트의 번역 파일을 별도의 워크스페이스로 관리
- 워크스페이스 간 빠른 전환 지원
- 마지막으로 작업한 워크스페이스 자동 복원
-
네임스페이스 편집
- 모든 언어의 번역을 한 화면에서 관리
- 새로운 번역 키-값 쌍 추가 및 삭제
- 번역 실시간 수정
-
언어 관리
- 새로운 언어 추가 및 삭제
- 언어별 번역 파일 자동 동기화
npm을 사용하는 경우:
npm install -D i18n-editoryarn을 사용하는 경우:
yarn add -D i18n-editor기본 설정으로 실행 (포트 5252 사용):
npx i18n-editor커스텀 포트로 실행:
i18n-editor -p 9000또는
i18n-editor --port 9000명령어를 실행하면 자동으로 브라우저 창이 열리면서 애플리케이션이 실행됩니다. 기본적으로 시스템의 기본 브라우저를 사용하여 실행됩니다.
워크스페이스는 다음과 같은 구조를 가져야 합니다:
📂workspace
📂ko
🗒️common.json
🗒️...
📂en
🗒️common.json
🗒️...
📂ja
🗒️common.json
🗒️...
📂... (언어 코드명)
- 홈 화면에서 "디렉토리 선택하고 시작" 버튼을 클릭합니다.
- 번역 파일이 있는 디렉토리를 선택합니다.
- 선택한 디렉토리가 워크스페이스로 등록됩니다.
- 사이드바의 워크스페이스 목록에서 원하는 워크스페이스를 클릭하여 전환할 수 있습니다.
- 최근 사용한 워크스페이스는 자동으로 저장되어 다음 실행 시 복원됩니다.
- 워크스페이스의 기본 정보를 수정할 수 있습니다
- 디렉토리 변경
- 워크스페이스명
- 언어 추가 및 삭제
- 네임스페이스 추가 및 삭제
- 워크스페이스에서 편집할 네임스페이스를 선택합니다.
- 표 형식의 에디터에서 번역을 관리할 수 있습니다:
- 새 번역 추가
- 특정 번역의 행 옵션 메뉴에서 "위에 번역 추가" 혹은 "아래에 번역 추가" 선택
- 네임스페이스 최하단에 번역 키값을 입력하여 번역 추가
- 번역 수정: 셀을 클릭하여 직접 편집
- 번역 삭제: 행 옵션 메뉴에서 "삭제" 선택
- 새 번역 추가
# 의존성 설치
yarn install
# 개발 서버 실행
yarn dev# 전체 빌드
yarn build
# 플랫폼별 패키징
yarn package:mac # macOS용 빌드
yarn package:win # Windows용 빌드
yarn package:linux # Linux용 빌드
yarn package # 모든 플랫폼용 빌드빌드가 완료되면 release/ 디렉토리에 다음과 같은 구조로 파일들이 생성됩니다:
release/
├── packed/ # 배포용 설치 파일들
│ ├── mac/ # macOS .dmg 파일들
│ ├── windows/ # Windows .exe 파일들
│ └── linux/ # Linux .AppImage, .deb 파일들
└── unpacked/ # 압축 해제된 앱 파일들
GitHub Release를 자동으로 생성하고 빌드된 파일들을 업로드하는 스크립트를 제공합니다.
-
GitHub CLI 설치 (이미 설치되어 있다면 건너뛰기):
# macOS brew install gh # Windows (Chocolatey) choco install gh # Linux # https://github.com/cli/cli/blob/trunk/docs/install_linux.md 참조
-
GitHub 인증:
gh auth login
# 기본 릴리스 생성 (빌드 + 릴리스 생성)
yarn release
# 드래프트 릴리스 생성
yarn release:draft
# 프리릴리스 생성
yarn release:prerelease
# 빌드 없이 릴리스 생성 (이미 빌드된 파일 사용)
yarn release:skip-build릴리스 노트를 커스터마이징하려면 프로젝트 루트에 RELEASE_NOTES.md 파일을 생성하세요:
# 템플릿 복사
cp RELEASE_NOTES.template.md RELEASE_NOTES.md
# 릴리스 노트 편집
# RELEASE_NOTES.md 파일을 수정하여 이번 릴리스의 변경사항을 작성- 버전 업데이트:
package.json의version필드를 업데이트 - 변경사항 작성:
RELEASE_NOTES.md파일에 이번 릴리스의 변경사항 작성 - 릴리스 생성:
yarn release명령어 실행 - 확인: GitHub에서 생성된 릴리스 확인
--draft: 드래프트 릴리스로 생성 (공개되지 않음)--prerelease: 프리릴리스로 표시 (베타, 알파 버전 등)--skip-build: 빌드 과정을 건너뛰고 기존 빌드 파일 사용
# v1.2.0 정식 릴리스
yarn release
# v1.3.0-beta.1 베타 릴리스
yarn release:prerelease
# 드래프트로 먼저 확인 후 공개
yarn release:draft
# GitHub에서 드래프트 확인 후 수동으로 공개
