이 페이지와 원하는 AI 어시스턴트를 사용하여 문서를 요약합니다
Intlayer MCP 서버를 통해 ChatGPT, DeepSeek, Cursor, VSCode 등에서 직접 문서를 검색할 수 있습니다.
MCP 서버 문서 보기이 페이지의 콘텐츠는 AI를 사용하여 번역되었습니다.
영어 원본 내용의 최신 버전을 보기이 문서를 개선할 아이디어가 있으시면 GitHub에 풀 리퀘스트를 제출하여 자유롭게 기여해 주세요.
문서에 대한 GitHub 링크문서의 Markdown을 클립보드에 복사
New Intlayer v6 - 새로운 기능은 무엇인가요?
Intlayer v6에 오신 것을 환영합니다! 이번 릴리스는 성능, 개발자 경험, 그리고 안정성에 중점을 두고 있습니다. 아래는 주요 내용과 마이그레이션 노트, 복사하여 붙여넣을 수 있는 예제들입니다.
주요 내용
- 누락된 번역을 감지하는 새로운 명령어: npx intlayer content test
- 누락된 번역을 자동 생성하는 새로운 전역 autoFill 옵션
- Fill 명령어는 기본적으로 기존 번역을 건너뜁니다: npx intlayer fill
- VS Code 확장: 새로운 Intlayer 활동 표시줄(검색 및 사전), 툴바/컨텍스트 액션, 자동 표시, Fill/Test 명령어
- 프로미스 병렬 처리로 10배 빠른 빌드 속도
- 앱 시작 시 재요청을 방지하는 원격 사전 캐싱
- 향상된 로깅: 동작을 검사하려면 log.mode: 'verbose' 설정
- 사전 문제로 인한 앱 충돌 방지를 위한 강화된 검증
- build.importMode = 'live' 및 pnpm intlayer live를 사용한 CMS 실시간 업데이트
- 수정 사항: Vue.js 통합, Lynx 어댑터, Windows용 비주얼 에디터
새로운 기능: 누락된 번역 테스트
프로젝트를 빠르게 감사하여 누락된 키/로케일을 찾습니다.
코드를 클립보드에 복사
npx intlayer content test
출력:
코드를 클립보드에 복사
pnpm intlayer content test누락된 번역: - blog-data - 일본어 (ja), 한국어 (ko), 중국어 (zh), 독일어 (de), 이탈리아어 (it) - src/components/BlogPage/blogData.content.ts - demo-page - 프랑스어 (fr), 이탈리아어 (it) - src/components/DemoPage/demo.content.ts - locale-switcher - 이탈리아어 (it), 포르투갈어 (pt) - src/components/LocaleSwitcher/localeSwitcher.content.ts로케일: 영어 (en), 러시아어 (ru), 일본어 (ja), 프랑스어 (fr), 한국어 (ko), 중국어 (zh), 스페인어 (es), 독일어 (de), 아랍어 (ar), 이탈리아어 (it), 영국 영어 (en-GB), 포르투갈어 (pt), 힌디어 (hi)필수 로케일: 영어 (en)누락된 로케일: 일본어 (ja), 한국어 (ko), 중국어 (zh), 독일어 (de), 이탈리아어 (it), 프랑스어 (fr), 포르투갈어 (pt)필수 누락 로케일: -총 누락 로케일 수: 7총 필수 누락 로케일 수: 0
CLI 문서에서 더 많은 옵션을 확인하세요: CLI 참조 → "누락된 번역 테스트". 또한 테스팅 가이드를 참고하세요.
새 기능: 누락된 번역을 완성하는 글로벌 autoFill
이제 전역적으로 auto-fill을 활성화하여 누락된 번역이 있는 모든 사전을 자동으로 완성할 수 있습니다.
코드를 클립보드에 복사
import { type IntlayerConfig, Locales } from "intlayer";const config: IntlayerConfig = { internationalization: { locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH], defaultLocale: Locales.ENGLISH, requiredLocales: [Locales.ENGLISH, Locales.FRENCH], }, content: { // 모든 사전의 누락된 번역을 자동 생성합니다 autoFill: "./{{fileName}}.content.ts", // // autoFill: "/messages/{{locale}}/{{key}}/{{fileName}}.content.json", // // autoFill: true, // "./{{fileName}}.content.json"을 사용하는 것처럼 모든 사전에 대해 누락된 번역을 자동 생성합니다 // // autoFill: { // en: "./{{fileName}}.en.content.json", // fr: "./{{fileName}}.fr.content.json", // es: "./{{fileName}}.es.content.json", // }, },};export default config;
콘텐츠 파일 내 autoFill 필드를 사용하여 사전별로 세부 조정을 계속할 수 있습니다. 전체 참조는 doc/autoFill 및 doc/dictionary/content_file에서 확인하세요.
fill 명령어: 더 안전한 기본값
fill 명령어는 이제 기본적으로 누락된 번역만 채우고 기존 콘텐츠는 건너뜁니다.
코드를 클립보드에 복사
npx intlayer fill
코드를 클립보드에 복사
처리할 사전 키: access-key-creation-form-schema, doc-search-metadata, doc-search-page - [access-key-creation-form-schema] 사전에 파일 경로가 없습니다. 건너뜁니다. - [access-key-creation-form-schema] 콘텐츠 선언 처리 중: src/components/Dashboard/ProjectForm/AccessKey/useAccessKeyCreationFormSchema.content.ts - [access-key-creation-form-schema] 채울 로케일이 없습니다 - 사전 건너뜁니다 - [doc-search-metadata] 사전 파일 경로가 없습니다. 건너뜁니다. - [doc-search-metadata] 콘텐츠 선언 처리 중: src/app/[locale]/(docs)/doc/search/metadata.content.ts - [doc-search-metadata] 채울 로케일이 없습니다 - 사전 건너뜁니다. - [doc-search-page] 사전 파일 경로가 없습니다. 건너뜁니다. - [doc-search-page] 콘텐츠 선언 처리 중: src/app/[locale]/(docs)/doc/search/page.content.ts - [doc-search-page] [러시아어 (ru)] 영어(en)에서 러시아어(ru)로 사전 번역 준비 중[intlayer] src/app/[locale]/(docs)/doc/search/page.content.ts에 Prettier 포맷팅 적용 완료 - [doc-search-page] Content declaration written to src/app/[locale]/(docs)/doc/search/page.content.ts
CI 예제는 CI/CD에서 확인할 수 있습니다.
업데이트된 VS Code 확장 기능
이 확장 기능은 이제 Activity Bar에 전용 Intlayer 탭을 포함하며 여러 워크플로우 개선 사항이 적용되었습니다:
- 두 가지 뷰가 있는 Intlayer Activity Bar:
- 라이브 사전/콘텐츠 검색을 위한 검색 웹뷰 (intlayer.searchBar)
- 환경, 사전, 기여 파일을 나열하는 사전 트리 (intlayer.dictionaries)
- 사전 뷰의 툴바: 빌드, 풀, 푸시, 채우기, 새로 고침, 테스트, 사전 파일 생성
- 컨텍스트 메뉴: 사전에서 풀/푸시; 파일에서 채우기
- 자동 표시: 현재 편집기 파일이 해당되는 경우 사전 트리에서 강조 표시됩니다.
- 명령 팔레트에서 사용할 수 있는 새로운 명령: 사전 채우기(Fill Dictionaries) 및 사전 테스트(Test Dictionaries)
자세한 내용은 공식 VS Code 확장 문서를 참조하세요.
성능: 10배 빠름
- 로컬 및 원격 사전의 병렬 해석
- 원격 사전은 앱 시작 시 재요청을 방지하기 위해 캐시됨
코드를 클립보드에 복사
npx intlayer build
출력:
코드를 클립보드에 복사
[intlayer] Intlayer 준비 중 (v6.0.1)[intlayer] 사전:[intlayer] ✓ 로컬 콘텐츠: 163/163[intlayer] ✓ 원격 콘텐츠: 100/100[intlayer] - access-key-creation-form [local: ✔ 빌드됨] [distant: ✔ 가져옴][intlayer] - access-key-creation-form-schema [local: ✔ 빌드됨] [distant: ✔ 가져옴][intlayer] - access-key-form [local: ✔ 빌드됨] [distant: ✔ 가져옴][intlayer] - ai-ab-testing-section [distant: ✔ 가져옴][intlayer] - application-not-running-view [local: ✔ 빌드됨] [distant: ✔ 가져옴][intlayer] - application-template-message [local: ✔ 빌드됨] [distant: ✔ 가져옴][intlayer] - aside-navigation [local: ✔ 빌드됨] [distant: ✔ 가져옴][intlayer] - ask-reset-password [local: ✔ 빌드됨] [distant: ✔ 가져옴][intlayer] - ask-reset-password-schema [local: ✔ 빌드됨] [distant: ✔ 가져옴][intlayer] - 자동완성-섹션 [로컬: ✔ 빌드됨] [원격: ✔ 가져옴][intlayer] - 사용가능-기술-섹션 [로컬: ✔ 빌드됨] [원격: ✔ 가져옴][intlayer] - 블로그-데이터 [로컬: ✔ 빌드됨][intlayer] - 블로그-메타데이터 [로컬: ✔ 빌드됨][intlayer] - 블로그-네비게이션-리스트 [로컬: ✔ 빌드됨] [원격: ✔ 가져옴][intlayer] - 블로그-페이지 [원격: ✔ 가져옴][intlayer] - 블로그-검색-메타데이터 [로컬: ✔ 빌드됨] [원격: ✔ 가져옴][intlayer] - 블로그-검색-페이지 [로컬: ✔ 빌드됨] [원격: ✔ 가져옴]...[intlayer] 콘텐츠 로드 완료 (총: 8401ms - 로컬: 4050ms - 원격: 4222ms)
로깅 개선사항
빌드 및 런타임 변환 중에 발생하는 상황에 대해 더 자세한 정보를 제공하도록 로깅 시스템이 개선되었습니다.
빌드 및 런타임 변환 중에 발생하는 상황을 더 잘 이해하려면 자세한 로그를 활성화하세요.
코드를 클립보드에 복사
export default { log: { mode: "verbose", // 옵션: "default" | "verbose" | "disabled" },};
모든 로깅 옵션은 설정에서 확인하세요.
강화된 검증
사전 처리 시 더 강력한 검증이 수행됩니다. 사전 처리에 실패할 경우, Intlayer는 애플리케이션이 중단되지 않도록 하며, 실행 가능한 오류를 표시합니다.
CMS와 함께하는 라이브 업데이트 (프로덕션 안전)
프로덕션 환경에서 애플리케이션을 다시 빌드하지 않고 라이브 콘텐츠 업데이트(예: 편집 업데이트)를 제공합니다.
- 라이브 임포트 모드를 활성화하세요:
코드를 클립보드에 복사
import { type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { build: { importMode: "live", // "static" | "dynamic" | "live" }, editor: { liveSync: true, // 서버 측 라이브 동기화 활성화 },};export default config;
- 앱을 실행하고 라이브 프로세스를 병행하세요:
코드를 클립보드에 복사
npx intlayer live --process 'vite preview'
참고:
- 라이브 모드 사용으로 표시된 사전만 라이브로 가져옵니다. 나머지는 성능 최적화를 위해 처리됩니다.
- 라이브 API에 접근할 수 없으면 동적 임포트로 대체됩니다.
CMS 및 라이브 동기화와 구성을 참조하여 완전한 안내를 확인하세요.
마이그레이션 노트
- 제거됨: dictionaryOutput (이전에는 i18next 또는 next-intl). 향후 버전에서 플러그형 어댑터로 다시 제공될 예정입니다. 구성에서 해당 필드를 제거하세요.
- 관련 제거: i18nextResourcesDir (doc/configuration 변경 로그 참조).
- 대규모 누락 번역 생성을 위해 새로운 전역 옵션 content.autoFill 사용을 권장합니다.
- 누락된 번역에 대해 PR을 검증하려면 npx intlayer content test를 사용하세요.
- 자세한 진단을 위해 log.mode = 'verbose'로 설정하세요.
수정 사항
- Vue.js 통합 안정성 향상
- Lynx 어댑터 개선
- Windows에서의 비주얼 에디터