Skip to content

CLI — UI 문자열 ​

extract ​

개요: ai-i18n-tools extract

strings.json를 t("…") / i18n.t("…") 리터럴, 선택적 package.json 설명, 그리고 includeUiLanguageEnglishNames가 활성화된 경우 선택적 번들 마스터 englishName 항목에서 업데이트합니다(ui.uiExtractor 참조; languagesManifestPath는 읽지 않음). 또한 languagesManifestPath에서 ui-languages.json을(를) 재생성합니다. .html / .htm이(가) ui.uiExtractor.extensions에 나열된 경우, HTML에서 data-i18n / data-i18n-title / data-i18n-placeholder 마커 문자열도 캡처합니다. 비어 있지 않은 ui.sourceRoots이(가) 필요합니다. LLM을 호출하지 않습니다.

참고 항목: UI 문자열 개요, 순수 HTML 앱


migrate-intlayer ​

개요: ai-i18n-tools migrate-intlayer [paths...] [--write] [--report <path>] [--content-glob <glob>] [--t-import <specifier>]

Intlayer *.content.ts 사전을 strings.json 및 플랫 로케일 파일로 가져오고, 단순한 useIntlayer / getIntlayer 호출 지점을 t('English source')로 다시 작성합니다. 기본적으로 드라이 런입니다(보고서는 여전히 작성됩니다). --write는 카탈로그를 시드하고 안전한 다시 쓰기를 적용합니다. LLM을 호출하지 않습니다.

보고서는 --write에서 남긴 모든 작업에 대한 인수인계 문서이며, 나머지 작업 순서를 정리한 단계별 TODO로 마무리됩니다: 각 수동 사이트별 구체적인 t() 또는 JSX 호출, import { t } 행, 나중에 삭제할 사전 파일 및 IntlayerProvider 잔여 파일, extract 다음 translate-ui 작업이 필요한 소스 문자열, 그리고 앱의 i18n 모듈에 붙여넣을 i18next 런타임 부트스트랩. 로케일 제어는 loadLocale뿐만 아니라 i18n.changeLanguage도 호출해야 합니다. extract은(는) 이 부트스트랩에서 가져오는 ui-languages.json을(를) 생성합니다. strings.json, 플랫 로케일 파일, ui-languages.json은(는) 수동으로 편집하지 마십시오.

주요 옵션: --write, --report, --content-glob (기본값 **/*.content.ts), --t-import

참고 항목: Intlayer에서 마이그레이션


mark-html ​

개요: ai-i18n-tools mark-html [paths...] [--write]

소스 텍스트가 한 번만 작성되도록(요소 자체에) HTML에 단순 data-i18n / data-i18n-title / data-i18n-placeholder 마커를 삽입합니다. 지정된 파일/디렉터리/글로브를 스캔합니다(기본값: ui.sourceRoots 아래의 .html / .htm). 기본적으로 드라이 런(파일별 추가 개수 및 수동 <span data-i18n>이(가) 필요한 혼합 콘텐츠 요소를 보고); --write이(가) 변경 사항을 적용합니다. 멱등성을 유지하며, data-i18n-ignore을(를) 존중하고(해당 요소와 하위 트리를 건너뜀), 코드 유사 요소(code, pre, kbd, samp, var)나 빈/숫자 전용 텍스트는 처리하지 않으며, 값이 있는 마커는 생성하지 않습니다. LLM을 호출하지 않습니다.

주요 옵션: --write

참고 항목: 번역을 위한 HTML 마킹


generate-ui-languages ​

개요: ai-i18n-tools generate-ui-languages [--master <path>] [--dry-run]

sourceLocale + targetLocales 및 번들된 data/ui-languages-complete.json(또는 --master)를 사용하여 ui-languages.json을(를) languagesManifestPath(기본값: {ui.flatOutputDir}/ui-languages.json)에 씁니다. 마스터 파일에 없는 로케일에 대해 경고를 표시하고 TODO 자리 표시자를 생성합니다. 사용자 지정된 label 또는 englishName 값이 있는 기존 매니페스트가 있는 경우, 마스터 카탈로그 기본값으로 대체됩니다 — 생성된 파일을 이후에 검토하고 조정하십시오.

주요 옵션: --master, --dry-run


translate-ui ​

개요: ai-i18n-tools translate-ui [-l <codes>] [--force] [--dry-run] [-j <n>]

UI 문자열만 번역합니다(strings.json → 로케일 JSON). features.translateUIStrings이(가) 필요합니다.

주요 옵션: -l / --locale, --force, --dry-run, -j / --concurrency

-l / --locale: 쉼표로 구분된 대상 로케일 (기본값: config targetLocales에서 sourceLocale 제외). --force: 로케일별로 모든 항목 재번역 (기존 번역 무시). --dry-run: 쓰기 및 API 호출 없음. -j은(는) locales를 병렬 처리합니다; 각 로케일 내에서 config uiBatchConcurrency(기본값 2)은(는) LLM 배치(50개 문자열 청크, 그 다음 복수형 그룹)를 병렬 처리합니다. uiBatchConcurrency에 대한 CLI 플래그는 없습니다.


sync-ui ​

개요: ai-i18n-tools sync-ui [-l <codes>] [--force] [--dry-run] [-j <n>]

UI 문자열을 추출한 다음 번역합니다(features.translateUIStrings 필요). UI 전용 — 문서, SVG 또는 json[]은(는) 제외됩니다. translate-ui과(와) 동일한 -l, --force, --dry-run, -j 옵션을 사용합니다.


proofread-ui ​

개요: ai-i18n-tools proofread-ui [-l <code>] [--chunk <n>] [--dry-run] [--json] [-j <n>]

strings.json이(가) 소스와 일치하도록 먼저 extract을(를) 실행하고(features.translateUIStrings 필요), 그 다음 소스 로케일 UI 문자열(맞춤법, 문법)에 대한 LLM 검토를 수행합니다. 용어 힌트는 glossary.userGlossary CSV에서만 가져옵니다(translate-ui와 동일한 범위 — strings.json / uiGlossary이(가) 아니므로 잘못된 사본이 용어집으로 강화되지 않음). 활성 LLM 제공자(해당 API 키 환경 변수)를 사용합니다.

실패 시(기능 플래그 누락, 추출 실패, 카탈로그 누락 또는 유효하지 않음, API 키 누락, 모든 배치 실패) 1로 종료하고, 실행이 성공적으로 완료되면(결과는 권고 사항) 0으로 종료합니다. cacheDir 아래에 proofread-ui-results_<timestamp>.log을(를) 사람이 읽을 수 있는 보고서(요약, 문제, 검토되지 않은 행, 문자열별 정상 행)로 작성합니다. 터미널에는 요약 개수와 문제만 출력되며(문자열당 [ok] 줄은 출력되지 않음), 실패한 배치나 배치보다 짧고 각 슬롯에 사용 가능한 index이(가) 없는 모델 응답의 경우 해당 문자열은 검토되지 않은 것으로 처리됩니다. 짧은 배열이 잘못된 문자열에 적용되는 것을 방지하기 위해 해당 문제는 삭제됩니다. 마지막 줄에 로그 파일 이름을 출력합니다. --json을(를) 사용하면 사용자 친화적 형식의 출력이 stderr로 전송됩니다. 링크는 대시보드 UI 문자열 링크 버튼과 마찬가지로 path:line을(를) 사용합니다.

주요 옵션: -l / --locale, --chunk (기본값 50), --dry-run, --json, -j / --concurrency


export-ui-xliff ​

개요: ai-i18n-tools export-ui-xliff [-l <codes>] [-o <dir>] [--untranslated-only] [--dry-run]

strings.json을(를) XLIFF 2.0으로 내보냅니다(대상 로케일당 하나의 .xliff). 읽기 전용이며 API는 없습니다.

주요 옵션: -l / --locale, -o / --output-dir, --untranslated-only, --dry-run

-o / --output-dir: 출력 디렉터리(기본값: 카탈로그와 동일한 폴더). --untranslated-only: 해당 로케일에 대한 번역이 누락된 단위만 해당합니다.

MIT 라이선스에 따라 배포됩니다.