@intlayer/docs 8.3.0-canary.4 → 8.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/ar/compiler.md +84 -49
- package/docs/ar/configuration.md +80 -37
- package/docs/ar/intlayer_with_nextjs_16.md +174 -1
- package/docs/ar/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ar/intlayer_with_react_router_v7.md +224 -1
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/ar/intlayer_with_svelte_kit.md +175 -2
- package/docs/ar/intlayer_with_tanstack.md +176 -1
- package/docs/ar/intlayer_with_vite+preact.md +174 -1
- package/docs/ar/intlayer_with_vite+react.md +174 -1
- package/docs/ar/intlayer_with_vite+solid.md +174 -1
- package/docs/ar/intlayer_with_vite+svelte.md +174 -1
- package/docs/ar/intlayer_with_vite+vue.md +174 -1
- package/docs/de/compiler.md +83 -48
- package/docs/de/configuration.md +434 -212
- package/docs/de/intlayer_with_nextjs_16.md +176 -1
- package/docs/de/intlayer_with_nextjs_compiler.md +106 -349
- package/docs/de/intlayer_with_react_router_v7.md +225 -2
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +221 -79
- package/docs/de/intlayer_with_svelte_kit.md +158 -2
- package/docs/de/intlayer_with_tanstack.md +159 -1
- package/docs/de/intlayer_with_vite+preact.md +157 -1
- package/docs/de/intlayer_with_vite+react.md +157 -1
- package/docs/de/intlayer_with_vite+solid.md +159 -3
- package/docs/de/intlayer_with_vite+svelte.md +157 -1
- package/docs/de/intlayer_with_vite+vue.md +157 -1
- package/docs/en/compiler.md +60 -33
- package/docs/en/configuration.md +80 -57
- package/docs/en/intlayer_with_nextjs_16.md +176 -0
- package/docs/en/intlayer_with_nextjs_compiler.md +179 -1
- package/docs/en/intlayer_with_react_router_v7.md +159 -0
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +159 -0
- package/docs/en/intlayer_with_svelte_kit.md +159 -0
- package/docs/en/intlayer_with_tanstack.md +160 -1
- package/docs/en/intlayer_with_vite+preact.md +159 -0
- package/docs/en/intlayer_with_vite+react.md +159 -0
- package/docs/en/intlayer_with_vite+solid.md +148 -27
- package/docs/en/intlayer_with_vite+svelte.md +159 -0
- package/docs/en/intlayer_with_vite+vue.md +142 -41
- package/docs/en-GB/compiler.md +66 -34
- package/docs/en-GB/configuration.md +78 -36
- package/docs/es/compiler.md +83 -48
- package/docs/es/configuration.md +429 -206
- package/docs/es/intlayer_with_adonisjs.md +1 -1
- package/docs/es/intlayer_with_express.md +1 -1
- package/docs/es/intlayer_with_fastify.md +1 -1
- package/docs/es/intlayer_with_hono.md +1 -1
- package/docs/es/intlayer_with_nestjs.md +1 -1
- package/docs/es/intlayer_with_nextjs_16.md +176 -3
- package/docs/es/intlayer_with_nextjs_compiler.md +175 -2
- package/docs/es/intlayer_with_nuxt.md +1 -1
- package/docs/es/intlayer_with_react_router_v7.md +227 -4
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +162 -4
- package/docs/es/intlayer_with_svelte_kit.md +158 -2
- package/docs/es/intlayer_with_tanstack.md +160 -2
- package/docs/es/intlayer_with_vite+preact.md +162 -6
- package/docs/es/intlayer_with_vite+react.md +160 -4
- package/docs/es/intlayer_with_vite+solid.md +163 -7
- package/docs/es/intlayer_with_vite+svelte.md +157 -1
- package/docs/es/intlayer_with_vite+vue.md +165 -9
- package/docs/fr/compiler.md +81 -46
- package/docs/fr/configuration.md +355 -134
- package/docs/fr/intlayer_with_adonisjs.md +1 -1
- package/docs/fr/intlayer_with_express.md +1 -1
- package/docs/fr/intlayer_with_fastify.md +1 -1
- package/docs/fr/intlayer_with_hono.md +1 -1
- package/docs/fr/intlayer_with_nestjs.md +1 -1
- package/docs/fr/intlayer_with_nextjs_16.md +183 -7
- package/docs/fr/intlayer_with_nextjs_compiler.md +179 -3
- package/docs/fr/intlayer_with_react_router_v7.md +229 -3
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +237 -6
- package/docs/fr/intlayer_with_svelte_kit.md +158 -2
- package/docs/fr/intlayer_with_tanstack.md +159 -1
- package/docs/fr/intlayer_with_vite+preact.md +164 -8
- package/docs/fr/intlayer_with_vite+react.md +162 -6
- package/docs/fr/intlayer_with_vite+solid.md +163 -7
- package/docs/fr/intlayer_with_vite+svelte.md +157 -1
- package/docs/fr/intlayer_with_vite+vue.md +164 -8
- package/docs/hi/compiler.md +81 -46
- package/docs/hi/configuration.md +87 -44
- package/docs/hi/intlayer_with_nextjs_16.md +174 -1
- package/docs/hi/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/hi/intlayer_with_react_router_v7.md +224 -1
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/hi/intlayer_with_svelte_kit.md +158 -2
- package/docs/hi/intlayer_with_tanstack.md +159 -1
- package/docs/hi/intlayer_with_vite+preact.md +157 -1
- package/docs/hi/intlayer_with_vite+react.md +157 -1
- package/docs/hi/intlayer_with_vite+solid.md +157 -1
- package/docs/hi/intlayer_with_vite+svelte.md +157 -1
- package/docs/hi/intlayer_with_vite+vue.md +157 -1
- package/docs/id/compiler.md +84 -51
- package/docs/id/configuration.md +83 -45
- package/docs/id/intlayer_with_nextjs_16.md +174 -1
- package/docs/id/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/id/intlayer_with_react_router_v7.md +224 -1
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/id/intlayer_with_svelte_kit.md +158 -2
- package/docs/id/intlayer_with_tanstack.md +159 -1
- package/docs/id/intlayer_with_vite+preact.md +157 -1
- package/docs/id/intlayer_with_vite+react.md +157 -1
- package/docs/id/intlayer_with_vite+solid.md +157 -1
- package/docs/id/intlayer_with_vite+svelte.md +157 -1
- package/docs/id/intlayer_with_vite+vue.md +157 -1
- package/docs/it/compiler.md +81 -46
- package/docs/it/configuration.md +426 -204
- package/docs/it/intlayer_with_nextjs_16.md +174 -1
- package/docs/it/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/it/intlayer_with_react_router_v7.md +225 -2
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/it/intlayer_with_svelte_kit.md +158 -2
- package/docs/it/intlayer_with_tanstack.md +159 -1
- package/docs/it/intlayer_with_vite+preact.md +157 -1
- package/docs/it/intlayer_with_vite+react.md +157 -1
- package/docs/it/intlayer_with_vite+solid.md +159 -3
- package/docs/it/intlayer_with_vite+svelte.md +157 -1
- package/docs/it/intlayer_with_vite+vue.md +157 -1
- package/docs/ja/compiler.md +94 -58
- package/docs/ja/configuration.md +88 -45
- package/docs/ja/intlayer_with_nextjs_16.md +174 -1
- package/docs/ja/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ja/intlayer_with_react_router_v7.md +184 -394
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/ja/intlayer_with_svelte_kit.md +119 -595
- package/docs/ja/intlayer_with_tanstack.md +131 -642
- package/docs/ja/intlayer_with_vite+preact.md +111 -1231
- package/docs/ja/intlayer_with_vite+react.md +129 -1304
- package/docs/ja/intlayer_with_vite+solid.md +159 -3
- package/docs/ja/intlayer_with_vite+svelte.md +157 -1
- package/docs/ja/intlayer_with_vite+vue.md +157 -1
- package/docs/ko/compiler.md +88 -52
- package/docs/ko/configuration.md +87 -44
- package/docs/ko/intlayer_with_nextjs_16.md +174 -1
- package/docs/ko/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ko/intlayer_with_react_router_v7.md +225 -2
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/ko/intlayer_with_svelte_kit.md +158 -2
- package/docs/ko/intlayer_with_tanstack.md +159 -1
- package/docs/ko/intlayer_with_vite+preact.md +157 -1
- package/docs/ko/intlayer_with_vite+react.md +157 -1
- package/docs/ko/intlayer_with_vite+solid.md +159 -3
- package/docs/ko/intlayer_with_vite+svelte.md +157 -1
- package/docs/ko/intlayer_with_vite+vue.md +157 -1
- package/docs/pl/compiler.md +84 -51
- package/docs/pl/configuration.md +83 -37
- package/docs/pl/intlayer_with_nextjs_16.md +174 -1
- package/docs/pl/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/pl/intlayer_with_react_router_v7.md +224 -1
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/pl/intlayer_with_svelte_kit.md +158 -2
- package/docs/pl/intlayer_with_tanstack.md +159 -1
- package/docs/pl/intlayer_with_vite+preact.md +157 -1
- package/docs/pl/intlayer_with_vite+react.md +157 -1
- package/docs/pl/intlayer_with_vite+solid.md +157 -1
- package/docs/pl/intlayer_with_vite+svelte.md +157 -1
- package/docs/pl/intlayer_with_vite+vue.md +157 -1
- package/docs/pt/compiler.md +81 -46
- package/docs/pt/configuration.md +404 -194
- package/docs/pt/intlayer_with_nextjs_16.md +174 -1
- package/docs/pt/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/pt/intlayer_with_react_router_v7.md +224 -1
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/pt/intlayer_with_svelte_kit.md +158 -2
- package/docs/pt/intlayer_with_tanstack.md +159 -1
- package/docs/pt/intlayer_with_vite+preact.md +157 -1
- package/docs/pt/intlayer_with_vite+react.md +157 -1
- package/docs/pt/intlayer_with_vite+solid.md +157 -1
- package/docs/pt/intlayer_with_vite+svelte.md +157 -1
- package/docs/pt/intlayer_with_vite+vue.md +157 -1
- package/docs/ru/compiler.md +90 -57
- package/docs/ru/configuration.md +76 -46
- package/docs/ru/intlayer_with_nextjs_16.md +174 -1
- package/docs/ru/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ru/intlayer_with_react_router_v7.md +224 -1
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/ru/intlayer_with_svelte_kit.md +158 -2
- package/docs/ru/intlayer_with_tanstack.md +159 -1
- package/docs/ru/intlayer_with_vite+preact.md +157 -1
- package/docs/ru/intlayer_with_vite+react.md +157 -1
- package/docs/ru/intlayer_with_vite+solid.md +157 -1
- package/docs/ru/intlayer_with_vite+svelte.md +157 -1
- package/docs/ru/intlayer_with_vite+vue.md +157 -1
- package/docs/tr/compiler.md +85 -52
- package/docs/tr/configuration.md +83 -40
- package/docs/tr/intlayer_with_nextjs_16.md +174 -1
- package/docs/tr/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/tr/intlayer_with_react_router_v7.md +224 -1
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/tr/intlayer_with_svelte_kit.md +158 -2
- package/docs/tr/intlayer_with_tanstack.md +159 -1
- package/docs/tr/intlayer_with_vite+preact.md +157 -1
- package/docs/tr/intlayer_with_vite+react.md +157 -1
- package/docs/tr/intlayer_with_vite+solid.md +157 -1
- package/docs/tr/intlayer_with_vite+svelte.md +157 -1
- package/docs/tr/intlayer_with_vite+vue.md +157 -1
- package/docs/uk/compiler.md +96 -61
- package/docs/uk/configuration.md +83 -37
- package/docs/uk/intlayer_with_nextjs_16.md +174 -1
- package/docs/uk/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/uk/intlayer_with_react_router_v7.md +224 -1
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/uk/intlayer_with_svelte_kit.md +157 -1
- package/docs/uk/intlayer_with_tanstack.md +159 -1
- package/docs/uk/intlayer_with_vite+preact.md +157 -1
- package/docs/uk/intlayer_with_vite+react.md +157 -1
- package/docs/uk/intlayer_with_vite+solid.md +157 -1
- package/docs/uk/intlayer_with_vite+svelte.md +157 -1
- package/docs/uk/intlayer_with_vite+vue.md +157 -1
- package/docs/vi/compiler.md +85 -50
- package/docs/vi/configuration.md +85 -39
- package/docs/vi/intlayer_with_nextjs_16.md +174 -1
- package/docs/vi/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/vi/intlayer_with_react_router_v7.md +224 -1
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/vi/intlayer_with_svelte_kit.md +158 -2
- package/docs/vi/intlayer_with_tanstack.md +159 -1
- package/docs/vi/intlayer_with_vite+preact.md +157 -1
- package/docs/vi/intlayer_with_vite+react.md +157 -1
- package/docs/vi/intlayer_with_vite+solid.md +157 -1
- package/docs/vi/intlayer_with_vite+svelte.md +157 -1
- package/docs/vi/intlayer_with_vite+vue.md +157 -1
- package/docs/zh/compiler.md +84 -49
- package/docs/zh/configuration.md +80 -37
- package/docs/zh/intlayer_with_adonisjs.md +1 -1
- package/docs/zh/intlayer_with_express.md +1 -1
- package/docs/zh/intlayer_with_fastify.md +1 -1
- package/docs/zh/intlayer_with_hono.md +1 -1
- package/docs/zh/intlayer_with_nestjs.md +1 -1
- package/docs/zh/intlayer_with_nextjs_16.md +174 -1
- package/docs/zh/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/zh/intlayer_with_react_router_v7.md +227 -4
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +228 -4
- package/docs/zh/intlayer_with_svelte_kit.md +158 -2
- package/docs/zh/intlayer_with_tanstack.md +159 -1
- package/docs/zh/intlayer_with_vite+preact.md +159 -3
- package/docs/zh/intlayer_with_vite+react.md +157 -1
- package/docs/zh/intlayer_with_vite+solid.md +161 -5
- package/docs/zh/intlayer_with_vite+svelte.md +157 -1
- package/docs/zh/intlayer_with_vite+vue.md +158 -2
- package/package.json +6 -6
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-04-18
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Vite + Solid i18n - Solid 앱 번역 방법 2026
|
|
5
5
|
description: Vite와 Solid 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
|
|
6
6
|
keywords:
|
|
@@ -45,7 +45,7 @@ history:
|
|
|
45
45
|
</Tab>
|
|
46
46
|
</Tabs>
|
|
47
47
|
|
|
48
|
-
##
|
|
48
|
+
## 목차
|
|
49
49
|
|
|
50
50
|
<TOC/>
|
|
51
51
|
|
|
@@ -68,7 +68,7 @@ Intlayer를 사용하면 다음을 할 수 있습니다:
|
|
|
68
68
|
|
|
69
69
|
## Vite 및 Solid 애플리케이션에서 Intlayer 설정 단계별 가이드
|
|
70
70
|
|
|
71
|
-
##
|
|
71
|
+
## 목차
|
|
72
72
|
|
|
73
73
|
<TOC/>
|
|
74
74
|
|
|
@@ -577,6 +577,162 @@ Intlayer와 함께 개발 경험을 향상시키기 위해 공식 **Intlayer VS
|
|
|
577
577
|
|
|
578
578
|
---
|
|
579
579
|
|
|
580
|
+
### (선택 사항) 단계 1 : 컴포넌트 콘텐츠 추출
|
|
581
|
+
|
|
582
|
+
기존 코드베이스가 있는 경우 수천 개의 파일을 변환하는 데 시간이 많이 걸릴 수 있습니다.
|
|
583
|
+
|
|
584
|
+
이 프로세스를 용이하게 하기 위해 Intlayer는 컴포넌트를 변환하고 콘텐츠를 추출하기 위한 [컴파일러](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/compiler.md) / [추출기](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/cli/extract.md)를 제안합니다.
|
|
585
|
+
|
|
586
|
+
설정하려면 `intlayer.config.ts` 파일에 `compiler` 섹션을 추가할 수 있습니다.
|
|
587
|
+
|
|
588
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
589
|
+
import { type IntlayerConfig } from "intlayer";
|
|
590
|
+
|
|
591
|
+
const config: IntlayerConfig = {
|
|
592
|
+
// ... 나머지 구성
|
|
593
|
+
compiler: {
|
|
594
|
+
/**
|
|
595
|
+
* 컴파일러 활성화 여부를 나타냅니다.
|
|
596
|
+
*/
|
|
597
|
+
enabled: true,
|
|
598
|
+
|
|
599
|
+
/**
|
|
600
|
+
* 출력 파일 경로를 정의합니다.
|
|
601
|
+
*/
|
|
602
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
603
|
+
|
|
604
|
+
/**
|
|
605
|
+
* 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
|
|
606
|
+
*/
|
|
607
|
+
saveComponents: false,
|
|
608
|
+
|
|
609
|
+
/**
|
|
610
|
+
* 사전 키 접두사
|
|
611
|
+
*/
|
|
612
|
+
dictionaryKeyPrefix: "",
|
|
613
|
+
},
|
|
614
|
+
};
|
|
615
|
+
|
|
616
|
+
export default config;
|
|
617
|
+
```
|
|
618
|
+
|
|
619
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
620
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
621
|
+
const config = {
|
|
622
|
+
// ... 나머지 구성
|
|
623
|
+
compiler: {
|
|
624
|
+
/**
|
|
625
|
+
* 컴파일러 활성화 여부를 나타냅니다.
|
|
626
|
+
*/
|
|
627
|
+
enabled: true,
|
|
628
|
+
|
|
629
|
+
/**
|
|
630
|
+
* 출력 파일 경로를 정의합니다.
|
|
631
|
+
*/
|
|
632
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
633
|
+
|
|
634
|
+
/**
|
|
635
|
+
* 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
|
|
636
|
+
*/
|
|
637
|
+
saveComponents: false,
|
|
638
|
+
|
|
639
|
+
/**
|
|
640
|
+
* 사전 키 접두사
|
|
641
|
+
*/
|
|
642
|
+
dictionaryKeyPrefix: "",
|
|
643
|
+
},
|
|
644
|
+
};
|
|
645
|
+
|
|
646
|
+
export default config;
|
|
647
|
+
```
|
|
648
|
+
|
|
649
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
650
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
651
|
+
const config = {
|
|
652
|
+
// ... 나머지 구성
|
|
653
|
+
compiler: {
|
|
654
|
+
/**
|
|
655
|
+
* 컴파일러 활성화 여부를 나타냅니다.
|
|
656
|
+
*/
|
|
657
|
+
enabled: true,
|
|
658
|
+
|
|
659
|
+
/**
|
|
660
|
+
* 출력 파일 경로를 정의합니다.
|
|
661
|
+
*/
|
|
662
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
663
|
+
|
|
664
|
+
/**
|
|
665
|
+
* 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
|
|
666
|
+
*/
|
|
667
|
+
saveComponents: false,
|
|
668
|
+
|
|
669
|
+
/**
|
|
670
|
+
* 사전 키 접두사
|
|
671
|
+
*/
|
|
672
|
+
dictionaryKeyPrefix: "",
|
|
673
|
+
},
|
|
674
|
+
};
|
|
675
|
+
|
|
676
|
+
module.exports = config;
|
|
677
|
+
```
|
|
678
|
+
|
|
679
|
+
<Tabs>
|
|
680
|
+
<Tab value='추출 명령'>
|
|
681
|
+
|
|
682
|
+
컴포넌트를 변환하고 콘텐츠를 추출하기 위해 추출기를 실행합니다
|
|
683
|
+
|
|
684
|
+
```bash packageManager="npm"
|
|
685
|
+
npx intlayer extract
|
|
686
|
+
```
|
|
687
|
+
|
|
688
|
+
```bash packageManager="pnpm"
|
|
689
|
+
pnpm intlayer extract
|
|
690
|
+
```
|
|
691
|
+
|
|
692
|
+
```bash packageManager="yarn"
|
|
693
|
+
yarn intlayer extract
|
|
694
|
+
```
|
|
695
|
+
|
|
696
|
+
```bash packageManager="bun"
|
|
697
|
+
bunx intlayer extract
|
|
698
|
+
```
|
|
699
|
+
|
|
700
|
+
</Tab>
|
|
701
|
+
<Tab value='Babel 컴파일러'>
|
|
702
|
+
|
|
703
|
+
`vite.config.ts`를 업데이트하여 `intlayerCompiler` 플러그인을 포함합니다.
|
|
704
|
+
|
|
705
|
+
```ts fileName="vite.config.ts"
|
|
706
|
+
import { defineConfig } from "vite";
|
|
707
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
708
|
+
|
|
709
|
+
export default defineConfig({
|
|
710
|
+
plugins: [
|
|
711
|
+
intlayer(),
|
|
712
|
+
intlayerCompiler(), // 컴파일러 플러그인을 추가합니다
|
|
713
|
+
],
|
|
714
|
+
});
|
|
715
|
+
```
|
|
716
|
+
|
|
717
|
+
```bash packageManager="npm"
|
|
718
|
+
npm run build # 또는 npm run dev
|
|
719
|
+
```
|
|
720
|
+
|
|
721
|
+
```bash packageManager="pnpm"
|
|
722
|
+
pnpm run build # 또는 pnpm run dev
|
|
723
|
+
```
|
|
724
|
+
|
|
725
|
+
```bash packageManager="yarn"
|
|
726
|
+
yarn build # 또는 yarn dev
|
|
727
|
+
```
|
|
728
|
+
|
|
729
|
+
```bash packageManager="bun"
|
|
730
|
+
bun run build # Or bun run dev
|
|
731
|
+
```
|
|
732
|
+
|
|
733
|
+
</Tab>
|
|
734
|
+
</Tabs>
|
|
735
|
+
|
|
580
736
|
### 더 나아가기
|
|
581
737
|
|
|
582
738
|
더 나아가려면 [비주얼 에디터](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_visual_editor.md)를 구현하거나 [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_CMS.md)를 사용하여 콘텐츠를 외부화할 수 있습니다.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-04-18
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Vite + Svelte i18n - Svelte 앱 번역 방법 2026
|
|
5
5
|
description: Vite 및 Svelte 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
|
|
6
6
|
keywords:
|
|
@@ -498,6 +498,162 @@ Intlayer 개발 경험을 향상시키기 위해 공식 **Intlayer VS Code 확
|
|
|
498
498
|
|
|
499
499
|
---
|
|
500
500
|
|
|
501
|
+
### (선택 사항) 단계 4 : 컴포넌트 콘텐츠 추출
|
|
502
|
+
|
|
503
|
+
기존 코드베이스가 있는 경우 수천 개의 파일을 변환하는 데 시간이 많이 걸릴 수 있습니다.
|
|
504
|
+
|
|
505
|
+
이 프로세스를 용이하게 하기 위해 Intlayer는 컴포넌트를 변환하고 콘텐츠를 추출하기 위한 [컴파일러](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/compiler.md) / [추출기](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/cli/extract.md)를 제안합니다.
|
|
506
|
+
|
|
507
|
+
설정하려면 `intlayer.config.ts` 파일에 `compiler` 섹션을 추가할 수 있습니다.
|
|
508
|
+
|
|
509
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
510
|
+
import { type IntlayerConfig } from "intlayer";
|
|
511
|
+
|
|
512
|
+
const config: IntlayerConfig = {
|
|
513
|
+
// ... 나머지 구성
|
|
514
|
+
compiler: {
|
|
515
|
+
/**
|
|
516
|
+
* 컴파일러 활성화 여부를 나타냅니다.
|
|
517
|
+
*/
|
|
518
|
+
enabled: true,
|
|
519
|
+
|
|
520
|
+
/**
|
|
521
|
+
* 출력 파일 경로를 정의합니다.
|
|
522
|
+
*/
|
|
523
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
524
|
+
|
|
525
|
+
/**
|
|
526
|
+
* 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
|
|
527
|
+
*/
|
|
528
|
+
saveComponents: false,
|
|
529
|
+
|
|
530
|
+
/**
|
|
531
|
+
* 사전 키 접두사
|
|
532
|
+
*/
|
|
533
|
+
dictionaryKeyPrefix: "",
|
|
534
|
+
},
|
|
535
|
+
};
|
|
536
|
+
|
|
537
|
+
export default config;
|
|
538
|
+
```
|
|
539
|
+
|
|
540
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
541
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
542
|
+
const config = {
|
|
543
|
+
// ... 나머지 구성
|
|
544
|
+
compiler: {
|
|
545
|
+
/**
|
|
546
|
+
* 컴파일러 활성화 여부를 나타냅니다.
|
|
547
|
+
*/
|
|
548
|
+
enabled: true,
|
|
549
|
+
|
|
550
|
+
/**
|
|
551
|
+
* 출력 파일 경로를 정의합니다.
|
|
552
|
+
*/
|
|
553
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
554
|
+
|
|
555
|
+
/**
|
|
556
|
+
* 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
|
|
557
|
+
*/
|
|
558
|
+
saveComponents: false,
|
|
559
|
+
|
|
560
|
+
/**
|
|
561
|
+
* 사전 키 접두사
|
|
562
|
+
*/
|
|
563
|
+
dictionaryKeyPrefix: "",
|
|
564
|
+
},
|
|
565
|
+
};
|
|
566
|
+
|
|
567
|
+
export default config;
|
|
568
|
+
```
|
|
569
|
+
|
|
570
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
571
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
572
|
+
const config = {
|
|
573
|
+
// ... 나머지 구성
|
|
574
|
+
compiler: {
|
|
575
|
+
/**
|
|
576
|
+
* 컴파일러 활성화 여부를 나타냅니다.
|
|
577
|
+
*/
|
|
578
|
+
enabled: true,
|
|
579
|
+
|
|
580
|
+
/**
|
|
581
|
+
* 출력 파일 경로를 정의합니다.
|
|
582
|
+
*/
|
|
583
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
584
|
+
|
|
585
|
+
/**
|
|
586
|
+
* 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
|
|
587
|
+
*/
|
|
588
|
+
saveComponents: false,
|
|
589
|
+
|
|
590
|
+
/**
|
|
591
|
+
* 사전 키 접두사
|
|
592
|
+
*/
|
|
593
|
+
dictionaryKeyPrefix: "",
|
|
594
|
+
},
|
|
595
|
+
};
|
|
596
|
+
|
|
597
|
+
module.exports = config;
|
|
598
|
+
```
|
|
599
|
+
|
|
600
|
+
<Tabs>
|
|
601
|
+
<Tab value='추출 명령'>
|
|
602
|
+
|
|
603
|
+
컴포넌트를 변환하고 콘텐츠를 추출하기 위해 추출기를 실행합니다
|
|
604
|
+
|
|
605
|
+
```bash packageManager="npm"
|
|
606
|
+
npx intlayer extract
|
|
607
|
+
```
|
|
608
|
+
|
|
609
|
+
```bash packageManager="pnpm"
|
|
610
|
+
pnpm intlayer extract
|
|
611
|
+
```
|
|
612
|
+
|
|
613
|
+
```bash packageManager="yarn"
|
|
614
|
+
yarn intlayer extract
|
|
615
|
+
```
|
|
616
|
+
|
|
617
|
+
```bash packageManager="bun"
|
|
618
|
+
bunx intlayer extract
|
|
619
|
+
```
|
|
620
|
+
|
|
621
|
+
</Tab>
|
|
622
|
+
<Tab value='Babel 컴파일러'>
|
|
623
|
+
|
|
624
|
+
`vite.config.ts`를 업데이트하여 `intlayerCompiler` 플러그인을 포함합니다.
|
|
625
|
+
|
|
626
|
+
```ts fileName="vite.config.ts"
|
|
627
|
+
import { defineConfig } from "vite";
|
|
628
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
629
|
+
|
|
630
|
+
export default defineConfig({
|
|
631
|
+
plugins: [
|
|
632
|
+
intlayer(),
|
|
633
|
+
intlayerCompiler(), // 컴파일러 플러그인을 추가합니다
|
|
634
|
+
],
|
|
635
|
+
});
|
|
636
|
+
```
|
|
637
|
+
|
|
638
|
+
```bash packageManager="npm"
|
|
639
|
+
npm run build # 또는 npm run dev
|
|
640
|
+
```
|
|
641
|
+
|
|
642
|
+
```bash packageManager="pnpm"
|
|
643
|
+
pnpm run build # 또는 pnpm run dev
|
|
644
|
+
```
|
|
645
|
+
|
|
646
|
+
```bash packageManager="yarn"
|
|
647
|
+
yarn build # 또는 yarn dev
|
|
648
|
+
```
|
|
649
|
+
|
|
650
|
+
```bash packageManager="bun"
|
|
651
|
+
bun run build # Or bun run dev
|
|
652
|
+
```
|
|
653
|
+
|
|
654
|
+
</Tab>
|
|
655
|
+
</Tabs>
|
|
656
|
+
|
|
501
657
|
### 더 나아가기
|
|
502
658
|
|
|
503
659
|
더 나아가려면 [비주얼 에디터](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_visual_editor.md)를 구현하거나 [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_CMS.md)를 사용하여 콘텐츠를 외부화할 수 있습니다.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-04-18
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Vite + Vue i18n - Vue 앱 번역 방법 2026
|
|
5
5
|
description: Vite와 Vue 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
|
|
6
6
|
keywords:
|
|
@@ -1094,6 +1094,162 @@ Intlayer와 함께 개발 경험을 향상시키기 위해 공식 **Intlayer VS
|
|
|
1094
1094
|
|
|
1095
1095
|
---
|
|
1096
1096
|
|
|
1097
|
+
### (선택 사항) 단계 1 : 컴포넌트 콘텐츠 추출
|
|
1098
|
+
|
|
1099
|
+
기존 코드베이스가 있는 경우 수천 개의 파일을 변환하는 데 시간이 많이 걸릴 수 있습니다.
|
|
1100
|
+
|
|
1101
|
+
이 프로세스를 용이하게 하기 위해 Intlayer는 컴포넌트를 변환하고 콘텐츠를 추출하기 위한 [컴파일러](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/compiler.md) / [추출기](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/cli/extract.md)를 제안합니다.
|
|
1102
|
+
|
|
1103
|
+
설정하려면 `intlayer.config.ts` 파일에 `compiler` 섹션을 추가할 수 있습니다.
|
|
1104
|
+
|
|
1105
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
1106
|
+
import { type IntlayerConfig } from "intlayer";
|
|
1107
|
+
|
|
1108
|
+
const config: IntlayerConfig = {
|
|
1109
|
+
// ... 나머지 구성
|
|
1110
|
+
compiler: {
|
|
1111
|
+
/**
|
|
1112
|
+
* 컴파일러 활성화 여부를 나타냅니다.
|
|
1113
|
+
*/
|
|
1114
|
+
enabled: true,
|
|
1115
|
+
|
|
1116
|
+
/**
|
|
1117
|
+
* 출력 파일 경로를 정의합니다.
|
|
1118
|
+
*/
|
|
1119
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1120
|
+
|
|
1121
|
+
/**
|
|
1122
|
+
* 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
|
|
1123
|
+
*/
|
|
1124
|
+
saveComponents: false,
|
|
1125
|
+
|
|
1126
|
+
/**
|
|
1127
|
+
* 사전 키 접두사
|
|
1128
|
+
*/
|
|
1129
|
+
dictionaryKeyPrefix: "",
|
|
1130
|
+
},
|
|
1131
|
+
};
|
|
1132
|
+
|
|
1133
|
+
export default config;
|
|
1134
|
+
```
|
|
1135
|
+
|
|
1136
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
1137
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1138
|
+
const config = {
|
|
1139
|
+
// ... 나머지 구성
|
|
1140
|
+
compiler: {
|
|
1141
|
+
/**
|
|
1142
|
+
* 컴파일러 활성화 여부를 나타냅니다.
|
|
1143
|
+
*/
|
|
1144
|
+
enabled: true,
|
|
1145
|
+
|
|
1146
|
+
/**
|
|
1147
|
+
* 출력 파일 경로를 정의합니다.
|
|
1148
|
+
*/
|
|
1149
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1150
|
+
|
|
1151
|
+
/**
|
|
1152
|
+
* 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
|
|
1153
|
+
*/
|
|
1154
|
+
saveComponents: false,
|
|
1155
|
+
|
|
1156
|
+
/**
|
|
1157
|
+
* 사전 키 접두사
|
|
1158
|
+
*/
|
|
1159
|
+
dictionaryKeyPrefix: "",
|
|
1160
|
+
},
|
|
1161
|
+
};
|
|
1162
|
+
|
|
1163
|
+
export default config;
|
|
1164
|
+
```
|
|
1165
|
+
|
|
1166
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
1167
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1168
|
+
const config = {
|
|
1169
|
+
// ... 나머지 구성
|
|
1170
|
+
compiler: {
|
|
1171
|
+
/**
|
|
1172
|
+
* 컴파일러 활성화 여부를 나타냅니다.
|
|
1173
|
+
*/
|
|
1174
|
+
enabled: true,
|
|
1175
|
+
|
|
1176
|
+
/**
|
|
1177
|
+
* 출력 파일 경로를 정의합니다.
|
|
1178
|
+
*/
|
|
1179
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1180
|
+
|
|
1181
|
+
/**
|
|
1182
|
+
* 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
|
|
1183
|
+
*/
|
|
1184
|
+
saveComponents: false,
|
|
1185
|
+
|
|
1186
|
+
/**
|
|
1187
|
+
* 사전 키 접두사
|
|
1188
|
+
*/
|
|
1189
|
+
dictionaryKeyPrefix: "",
|
|
1190
|
+
},
|
|
1191
|
+
};
|
|
1192
|
+
|
|
1193
|
+
module.exports = config;
|
|
1194
|
+
```
|
|
1195
|
+
|
|
1196
|
+
<Tabs>
|
|
1197
|
+
<Tab value='추출 명령'>
|
|
1198
|
+
|
|
1199
|
+
컴포넌트를 변환하고 콘텐츠를 추출하기 위해 추출기를 실행합니다
|
|
1200
|
+
|
|
1201
|
+
```bash packageManager="npm"
|
|
1202
|
+
npx intlayer extract
|
|
1203
|
+
```
|
|
1204
|
+
|
|
1205
|
+
```bash packageManager="pnpm"
|
|
1206
|
+
pnpm intlayer extract
|
|
1207
|
+
```
|
|
1208
|
+
|
|
1209
|
+
```bash packageManager="yarn"
|
|
1210
|
+
yarn intlayer extract
|
|
1211
|
+
```
|
|
1212
|
+
|
|
1213
|
+
```bash packageManager="bun"
|
|
1214
|
+
bunx intlayer extract
|
|
1215
|
+
```
|
|
1216
|
+
|
|
1217
|
+
</Tab>
|
|
1218
|
+
<Tab value='Babel 컴파일러'>
|
|
1219
|
+
|
|
1220
|
+
`vite.config.ts`를 업데이트하여 `intlayerCompiler` 플러그인을 포함합니다.
|
|
1221
|
+
|
|
1222
|
+
```ts fileName="vite.config.ts"
|
|
1223
|
+
import { defineConfig } from "vite";
|
|
1224
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
1225
|
+
|
|
1226
|
+
export default defineConfig({
|
|
1227
|
+
plugins: [
|
|
1228
|
+
intlayer(),
|
|
1229
|
+
intlayerCompiler(), // 컴파일러 플러그인을 추가합니다
|
|
1230
|
+
],
|
|
1231
|
+
});
|
|
1232
|
+
```
|
|
1233
|
+
|
|
1234
|
+
```bash packageManager="npm"
|
|
1235
|
+
npm run build # 또는 npm run dev
|
|
1236
|
+
```
|
|
1237
|
+
|
|
1238
|
+
```bash packageManager="pnpm"
|
|
1239
|
+
pnpm run build # 또는 pnpm run dev
|
|
1240
|
+
```
|
|
1241
|
+
|
|
1242
|
+
```bash packageManager="yarn"
|
|
1243
|
+
yarn build # 또는 yarn dev
|
|
1244
|
+
```
|
|
1245
|
+
|
|
1246
|
+
```bash packageManager="bun"
|
|
1247
|
+
bun run build # Or bun run dev
|
|
1248
|
+
```
|
|
1249
|
+
|
|
1250
|
+
</Tab>
|
|
1251
|
+
</Tabs>
|
|
1252
|
+
|
|
1097
1253
|
### 더 나아가기
|
|
1098
1254
|
|
|
1099
1255
|
더 나아가려면 [비주얼 에디터](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_visual_editor.md)를 구현하거나 [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_CMS.md)를 사용하여 콘텐츠를 외부화할 수 있습니다.
|