@intlayer/docs 8.3.0 → 8.3.2
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/blog/ar/i18n_using_next-i18next.md +1 -0
- package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +0 -29
- package/blog/uk/internationalization_and_SEO.md +1 -1
- package/docs/ar/compiler.md +84 -49
- package/docs/ar/configuration.md +82 -58
- package/docs/ar/intlayer_with_analog.md +2 -2
- package/docs/ar/intlayer_with_angular.md +2 -2
- package/docs/ar/intlayer_with_astro.md +2 -2
- package/docs/ar/intlayer_with_lynx+react.md +2 -2
- 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_nextjs_no_locale_path.md +4 -7
- package/docs/ar/intlayer_with_react_native+expo.md +2 -2
- 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 +176 -3
- package/docs/ar/intlayer_with_vite+react.md +174 -1
- package/docs/ar/intlayer_with_vite+solid.md +176 -3
- package/docs/ar/intlayer_with_vite+svelte.md +176 -3
- package/docs/ar/intlayer_with_vite+vue.md +178 -5
- package/docs/ar/vs_code_extension.md +1 -1
- package/docs/de/compiler.md +83 -48
- package/docs/de/configuration.md +417 -214
- package/docs/de/intlayer_with_analog.md +2 -2
- package/docs/de/intlayer_with_angular.md +2 -2
- package/docs/de/intlayer_with_astro.md +2 -2
- package/docs/de/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +159 -3
- package/docs/de/intlayer_with_vite+react.md +157 -1
- package/docs/de/intlayer_with_vite+solid.md +161 -5
- package/docs/de/intlayer_with_vite+svelte.md +159 -3
- package/docs/de/intlayer_with_vite+vue.md +159 -3
- package/docs/de/vs_code_extension.md +1 -1
- package/docs/en/compiler.md +60 -33
- package/docs/en/configuration.md +82 -77
- package/docs/en/intlayer_with_analog.md +1 -1
- package/docs/en/intlayer_with_angular.md +1 -1
- package/docs/en/intlayer_with_astro.md +1 -1
- package/docs/en/intlayer_with_lynx+react.md +1 -1
- 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_native+expo.md +1 -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 +160 -1
- package/docs/en/intlayer_with_vite+react.md +159 -0
- package/docs/en/intlayer_with_vite+solid.md +149 -28
- package/docs/en/intlayer_with_vite+svelte.md +160 -1
- package/docs/en/intlayer_with_vite+vue.md +143 -42
- package/docs/en/vs_code_extension.md +1 -1
- package/docs/en-GB/compiler.md +66 -34
- package/docs/en-GB/configuration.md +80 -57
- package/docs/en-GB/intlayer_with_analog.md +1 -1
- package/docs/en-GB/intlayer_with_angular.md +1 -1
- package/docs/en-GB/intlayer_with_astro.md +1 -1
- package/docs/en-GB/intlayer_with_lynx+react.md +1 -1
- package/docs/en-GB/intlayer_with_react_native+expo.md +1 -1
- package/docs/en-GB/intlayer_with_vite+preact.md +1 -1
- package/docs/en-GB/intlayer_with_vite+react.md +1 -1
- package/docs/en-GB/intlayer_with_vite+solid.md +1 -1
- package/docs/en-GB/intlayer_with_vite+svelte.md +1 -1
- package/docs/en-GB/intlayer_with_vite+vue.md +2 -2
- package/docs/en-GB/vs_code_extension.md +1 -1
- package/docs/es/compiler.md +83 -48
- package/docs/es/configuration.md +412 -208
- package/docs/es/intlayer_with_adonisjs.md +1 -1
- package/docs/es/intlayer_with_analog.md +2 -2
- package/docs/es/intlayer_with_angular.md +2 -2
- package/docs/es/intlayer_with_astro.md +2 -2
- 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_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +164 -8
- package/docs/es/intlayer_with_vite+react.md +160 -4
- package/docs/es/intlayer_with_vite+solid.md +165 -9
- package/docs/es/intlayer_with_vite+svelte.md +159 -3
- package/docs/es/intlayer_with_vite+vue.md +169 -13
- package/docs/es/vs_code_extension.md +1 -1
- package/docs/fr/compiler.md +81 -46
- package/docs/fr/configuration.md +351 -149
- package/docs/fr/intlayer_with_adonisjs.md +1 -1
- package/docs/fr/intlayer_with_analog.md +2 -2
- package/docs/fr/intlayer_with_angular.md +2 -2
- package/docs/fr/intlayer_with_astro.md +2 -2
- 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_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +166 -10
- package/docs/fr/intlayer_with_vite+react.md +163 -7
- package/docs/fr/intlayer_with_vite+solid.md +165 -9
- package/docs/fr/intlayer_with_vite+svelte.md +159 -3
- package/docs/fr/intlayer_with_vite+vue.md +168 -12
- package/docs/fr/vs_code_extension.md +1 -1
- package/docs/hi/compiler.md +81 -46
- package/docs/hi/configuration.md +89 -65
- package/docs/hi/intlayer_with_analog.md +1 -1
- package/docs/hi/intlayer_with_angular.md +2 -2
- package/docs/hi/intlayer_with_astro.md +2 -2
- package/docs/hi/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +159 -3
- package/docs/hi/intlayer_with_vite+react.md +157 -1
- package/docs/hi/intlayer_with_vite+solid.md +159 -3
- package/docs/hi/intlayer_with_vite+svelte.md +159 -3
- package/docs/hi/intlayer_with_vite+vue.md +159 -3
- package/docs/hi/vs_code_extension.md +1 -1
- package/docs/id/compiler.md +84 -51
- package/docs/id/configuration.md +85 -65
- package/docs/id/intlayer_with_analog.md +2 -2
- package/docs/id/intlayer_with_angular.md +2 -2
- package/docs/id/intlayer_with_astro.md +2 -2
- package/docs/id/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +159 -3
- package/docs/id/intlayer_with_vite+react.md +159 -3
- package/docs/id/intlayer_with_vite+solid.md +159 -3
- package/docs/id/intlayer_with_vite+svelte.md +159 -3
- package/docs/id/intlayer_with_vite+vue.md +159 -3
- package/docs/id/vs_code_extension.md +1 -1
- package/docs/it/compiler.md +81 -46
- package/docs/it/configuration.md +410 -208
- package/docs/it/intlayer_with_analog.md +2 -2
- package/docs/it/intlayer_with_angular.md +2 -2
- package/docs/it/intlayer_with_astro.md +2 -2
- package/docs/it/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +159 -3
- package/docs/it/intlayer_with_vite+react.md +159 -3
- package/docs/it/intlayer_with_vite+solid.md +161 -5
- package/docs/it/intlayer_with_vite+svelte.md +159 -3
- package/docs/it/intlayer_with_vite+vue.md +161 -5
- package/docs/it/vs_code_extension.md +1 -1
- package/docs/ja/compiler.md +94 -58
- package/docs/ja/configuration.md +90 -66
- package/docs/ja/intlayer_with_analog.md +2 -2
- package/docs/ja/intlayer_with_angular.md +2 -2
- package/docs/ja/intlayer_with_astro.md +2 -2
- package/docs/ja/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +161 -5
- package/docs/ja/intlayer_with_vite+svelte.md +159 -3
- package/docs/ja/intlayer_with_vite+vue.md +159 -3
- package/docs/ja/vs_code_extension.md +1 -1
- package/docs/ko/compiler.md +88 -52
- package/docs/ko/configuration.md +89 -65
- package/docs/ko/intlayer_with_analog.md +2 -2
- package/docs/ko/intlayer_with_angular.md +2 -2
- package/docs/ko/intlayer_with_astro.md +2 -2
- package/docs/ko/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +159 -3
- package/docs/ko/intlayer_with_vite+react.md +157 -1
- package/docs/ko/intlayer_with_vite+solid.md +161 -5
- package/docs/ko/intlayer_with_vite+svelte.md +159 -3
- package/docs/ko/intlayer_with_vite+vue.md +159 -3
- package/docs/ko/vs_code_extension.md +1 -1
- package/docs/pl/compiler.md +84 -51
- package/docs/pl/configuration.md +85 -57
- package/docs/pl/intlayer_with_analog.md +2 -2
- package/docs/pl/intlayer_with_angular.md +2 -2
- package/docs/pl/intlayer_with_astro.md +2 -2
- package/docs/pl/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +158 -2
- package/docs/pl/intlayer_with_vite+react.md +159 -3
- package/docs/pl/intlayer_with_vite+solid.md +159 -3
- package/docs/pl/intlayer_with_vite+svelte.md +159 -3
- package/docs/pl/intlayer_with_vite+vue.md +161 -5
- package/docs/pl/vs_code_extension.md +1 -1
- package/docs/pt/compiler.md +81 -46
- package/docs/pt/configuration.md +399 -199
- package/docs/pt/intlayer_with_analog.md +2 -2
- package/docs/pt/intlayer_with_angular.md +2 -2
- package/docs/pt/intlayer_with_astro.md +2 -2
- package/docs/pt/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +158 -2
- package/docs/pt/intlayer_with_vite+react.md +157 -1
- package/docs/pt/intlayer_with_vite+solid.md +159 -3
- package/docs/pt/intlayer_with_vite+svelte.md +159 -3
- package/docs/pt/intlayer_with_vite+vue.md +159 -3
- package/docs/pt/vs_code_extension.md +1 -1
- package/docs/ru/compiler.md +90 -57
- package/docs/ru/configuration.md +78 -67
- package/docs/ru/intlayer_with_analog.md +2 -2
- package/docs/ru/intlayer_with_angular.md +2 -2
- package/docs/ru/intlayer_with_astro.md +2 -2
- package/docs/ru/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +159 -3
- package/docs/ru/intlayer_with_vite+react.md +157 -1
- package/docs/ru/intlayer_with_vite+solid.md +159 -3
- package/docs/ru/intlayer_with_vite+svelte.md +159 -3
- package/docs/ru/intlayer_with_vite+vue.md +159 -3
- package/docs/ru/vs_code_extension.md +1 -1
- package/docs/tr/compiler.md +85 -52
- package/docs/tr/configuration.md +85 -61
- package/docs/tr/intlayer_with_analog.md +2 -2
- package/docs/tr/intlayer_with_angular.md +2 -2
- package/docs/tr/intlayer_with_astro.md +2 -2
- package/docs/tr/intlayer_with_lynx+react.md +2 -2
- 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_nextjs_no_locale_path.md +6 -14
- package/docs/tr/intlayer_with_react_native+expo.md +2 -2
- 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 +159 -3
- package/docs/tr/intlayer_with_vite+react.md +159 -3
- package/docs/tr/intlayer_with_vite+solid.md +159 -3
- package/docs/tr/intlayer_with_vite+svelte.md +159 -3
- package/docs/tr/intlayer_with_vite+vue.md +159 -3
- package/docs/tr/vs_code_extension.md +1 -1
- package/docs/uk/compiler.md +96 -61
- package/docs/uk/configuration.md +85 -57
- package/docs/uk/intlayer_with_analog.md +2 -2
- package/docs/uk/intlayer_with_angular.md +2 -2
- package/docs/uk/intlayer_with_astro.md +2 -2
- package/docs/uk/intlayer_with_lynx+react.md +2 -2
- 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_nextjs_no_locale_path.md +4 -22
- package/docs/uk/intlayer_with_react_native+expo.md +2 -2
- 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 +159 -3
- package/docs/uk/intlayer_with_vite+react.md +157 -1
- package/docs/uk/intlayer_with_vite+solid.md +159 -3
- package/docs/uk/intlayer_with_vite+svelte.md +159 -3
- package/docs/uk/intlayer_with_vite+vue.md +159 -3
- package/docs/uk/vs_code_extension.md +1 -1
- package/docs/vi/compiler.md +85 -50
- package/docs/vi/configuration.md +87 -59
- package/docs/vi/intlayer_with_analog.md +2 -2
- package/docs/vi/intlayer_with_angular.md +2 -2
- package/docs/vi/intlayer_with_astro.md +2 -2
- package/docs/vi/intlayer_with_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +159 -3
- package/docs/vi/intlayer_with_vite+react.md +159 -3
- package/docs/vi/intlayer_with_vite+solid.md +159 -3
- package/docs/vi/intlayer_with_vite+svelte.md +159 -3
- package/docs/vi/intlayer_with_vite+vue.md +159 -3
- package/docs/vi/vs_code_extension.md +1 -1
- package/docs/zh/compiler.md +84 -49
- package/docs/zh/configuration.md +82 -58
- package/docs/zh/intlayer_with_adonisjs.md +1 -1
- package/docs/zh/intlayer_with_analog.md +2 -2
- package/docs/zh/intlayer_with_angular.md +2 -2
- package/docs/zh/intlayer_with_astro.md +2 -2
- 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_lynx+react.md +2 -2
- 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_native+expo.md +2 -2
- 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 +161 -5
- package/docs/zh/intlayer_with_vite+react.md +157 -1
- package/docs/zh/intlayer_with_vite+solid.md +163 -7
- package/docs/zh/intlayer_with_vite+svelte.md +159 -3
- package/docs/zh/intlayer_with_vite+vue.md +162 -6
- package/docs/zh/vs_code_extension.md +2 -2
- package/package.json +8 -8
- package/docs/update_docs.py +0 -65
|
@@ -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,8 +498,8 @@ const changeLocale = (event: Event) => {
|
|
|
498
498
|
|
|
499
499
|
为此,您可以在 `.gitignore` 文件中添加以下指令:
|
|
500
500
|
|
|
501
|
-
```
|
|
502
|
-
#
|
|
501
|
+
```bash
|
|
502
|
+
# 忽略 Intlayer 生成的文件
|
|
503
503
|
.intlayer
|
|
504
504
|
```
|
|
505
505
|
|
|
@@ -520,6 +520,162 @@ const changeLocale = (event: Event) => {
|
|
|
520
520
|
|
|
521
521
|
---
|
|
522
522
|
|
|
523
|
+
### (可选) 步骤 1 : 提取组件内容
|
|
524
|
+
|
|
525
|
+
如果您有现有的代码库,转换数千个文件可能会非常耗时。
|
|
526
|
+
|
|
527
|
+
为了简化此过程,Intlayer 提出了 [编译器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/compiler.md) / [提取器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/extract.md) 来转换您的组件并提取内容。
|
|
528
|
+
|
|
529
|
+
要进行设置,您可以在 `intlayer.config.ts` 文件中添加 `compiler` 部分:
|
|
530
|
+
|
|
531
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
532
|
+
import { type IntlayerConfig } from "intlayer";
|
|
533
|
+
|
|
534
|
+
const config: IntlayerConfig = {
|
|
535
|
+
// ... 您的其他配置
|
|
536
|
+
compiler: {
|
|
537
|
+
/**
|
|
538
|
+
* 指示是否应启用编译器。
|
|
539
|
+
*/
|
|
540
|
+
enabled: true,
|
|
541
|
+
|
|
542
|
+
/**
|
|
543
|
+
* 定义输出文件路径
|
|
544
|
+
*/
|
|
545
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
546
|
+
|
|
547
|
+
/**
|
|
548
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
549
|
+
*/
|
|
550
|
+
saveComponents: false,
|
|
551
|
+
|
|
552
|
+
/**
|
|
553
|
+
* 字典键前缀
|
|
554
|
+
*/
|
|
555
|
+
dictionaryKeyPrefix: "",
|
|
556
|
+
},
|
|
557
|
+
};
|
|
558
|
+
|
|
559
|
+
export default config;
|
|
560
|
+
```
|
|
561
|
+
|
|
562
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
563
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
564
|
+
const config = {
|
|
565
|
+
// ... 您的其他配置
|
|
566
|
+
compiler: {
|
|
567
|
+
/**
|
|
568
|
+
* 指示是否应启用编译器。
|
|
569
|
+
*/
|
|
570
|
+
enabled: true,
|
|
571
|
+
|
|
572
|
+
/**
|
|
573
|
+
* 定义输出文件路径
|
|
574
|
+
*/
|
|
575
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
576
|
+
|
|
577
|
+
/**
|
|
578
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
579
|
+
*/
|
|
580
|
+
saveComponents: false,
|
|
581
|
+
|
|
582
|
+
/**
|
|
583
|
+
* 字典键前缀
|
|
584
|
+
*/
|
|
585
|
+
dictionaryKeyPrefix: "",
|
|
586
|
+
},
|
|
587
|
+
};
|
|
588
|
+
|
|
589
|
+
export default config;
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
593
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
594
|
+
const config = {
|
|
595
|
+
// ... 您的其他配置
|
|
596
|
+
compiler: {
|
|
597
|
+
/**
|
|
598
|
+
* 指示是否应启用编译器。
|
|
599
|
+
*/
|
|
600
|
+
enabled: true,
|
|
601
|
+
|
|
602
|
+
/**
|
|
603
|
+
* 定义输出文件路径
|
|
604
|
+
*/
|
|
605
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
606
|
+
|
|
607
|
+
/**
|
|
608
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
609
|
+
*/
|
|
610
|
+
saveComponents: false,
|
|
611
|
+
|
|
612
|
+
/**
|
|
613
|
+
* 字典键前缀
|
|
614
|
+
*/
|
|
615
|
+
dictionaryKeyPrefix: "",
|
|
616
|
+
},
|
|
617
|
+
};
|
|
618
|
+
|
|
619
|
+
module.exports = config;
|
|
620
|
+
```
|
|
621
|
+
|
|
622
|
+
<Tabs>
|
|
623
|
+
<Tab value='提取命令'>
|
|
624
|
+
|
|
625
|
+
运行提取器以转换组件并提取内容
|
|
626
|
+
|
|
627
|
+
```bash packageManager="npm"
|
|
628
|
+
npx intlayer extract
|
|
629
|
+
```
|
|
630
|
+
|
|
631
|
+
```bash packageManager="pnpm"
|
|
632
|
+
pnpm intlayer extract
|
|
633
|
+
```
|
|
634
|
+
|
|
635
|
+
```bash packageManager="yarn"
|
|
636
|
+
yarn intlayer extract
|
|
637
|
+
```
|
|
638
|
+
|
|
639
|
+
```bash packageManager="bun"
|
|
640
|
+
bunx intlayer extract
|
|
641
|
+
```
|
|
642
|
+
|
|
643
|
+
</Tab>
|
|
644
|
+
<Tab value='Babel 编译器'>
|
|
645
|
+
|
|
646
|
+
更新您的 `vite.config.ts` 以包含 `intlayerCompiler` 插件:
|
|
647
|
+
|
|
648
|
+
```ts fileName="vite.config.ts"
|
|
649
|
+
import { defineConfig } from "vite";
|
|
650
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
651
|
+
|
|
652
|
+
export default defineConfig({
|
|
653
|
+
plugins: [
|
|
654
|
+
intlayer(),
|
|
655
|
+
intlayerCompiler(), // 添加编译器插件
|
|
656
|
+
],
|
|
657
|
+
});
|
|
658
|
+
```
|
|
659
|
+
|
|
660
|
+
```bash packageManager="npm"
|
|
661
|
+
npm run build # 或 npm run dev
|
|
662
|
+
```
|
|
663
|
+
|
|
664
|
+
```bash packageManager="pnpm"
|
|
665
|
+
pnpm run build # 或 pnpm run dev
|
|
666
|
+
```
|
|
667
|
+
|
|
668
|
+
```bash packageManager="yarn"
|
|
669
|
+
yarn build # 或 yarn dev
|
|
670
|
+
```
|
|
671
|
+
|
|
672
|
+
```bash packageManager="bun"
|
|
673
|
+
bun run build # Or bun run dev
|
|
674
|
+
```
|
|
675
|
+
|
|
676
|
+
</Tab>
|
|
677
|
+
</Tabs>
|
|
678
|
+
|
|
523
679
|
### 深入了解
|
|
524
680
|
|
|
525
681
|
要进一步提升,您可以实现[可视化编辑器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_visual_editor.md)或使用[CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/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:
|
|
@@ -55,7 +55,7 @@ history:
|
|
|
55
55
|
<iframe
|
|
56
56
|
src="https://stackblitz.com/github/aymericzip/intlayer-vite-vue-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
57
57
|
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
58
|
-
title="Demo CodeSandbox -
|
|
58
|
+
title="Demo CodeSandbox - 如何使用 Intlayer 实现应用国际化"
|
|
59
59
|
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
60
60
|
loading="lazy"
|
|
61
61
|
/>
|
|
@@ -1058,8 +1058,8 @@ Intlayer 使用模块增强来利用 TypeScript 的优势,使您的代码库
|
|
|
1058
1058
|
|
|
1059
1059
|
为此,您可以在 `.gitignore` 文件中添加以下指令:
|
|
1060
1060
|
|
|
1061
|
-
```
|
|
1062
|
-
#
|
|
1061
|
+
```bash
|
|
1062
|
+
# 忽略 Intlayer 生成的文件
|
|
1063
1063
|
.intlayer
|
|
1064
1064
|
```
|
|
1065
1065
|
|
|
@@ -1080,8 +1080,8 @@ Intlayer 使用模块增强来利用 TypeScript 的优势,使您的代码库
|
|
|
1080
1080
|
|
|
1081
1081
|
为此,您可以在 `.gitignore` 文件中添加以下指令:
|
|
1082
1082
|
|
|
1083
|
-
```
|
|
1084
|
-
#
|
|
1083
|
+
```bash
|
|
1084
|
+
# 忽略由 Intlayer 生成的文件
|
|
1085
1085
|
.intlayer
|
|
1086
1086
|
```
|
|
1087
1087
|
|
|
@@ -1102,6 +1102,162 @@ Intlayer 使用模块增强来利用 TypeScript 的优势,使您的代码库
|
|
|
1102
1102
|
|
|
1103
1103
|
---
|
|
1104
1104
|
|
|
1105
|
+
### (可选) 步骤 1 : 提取组件内容
|
|
1106
|
+
|
|
1107
|
+
如果您有现有的代码库,转换数千个文件可能会非常耗时。
|
|
1108
|
+
|
|
1109
|
+
为了简化此过程,Intlayer 提出了 [编译器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/compiler.md) / [提取器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/extract.md) 来转换您的组件并提取内容。
|
|
1110
|
+
|
|
1111
|
+
要进行设置,您可以在 `intlayer.config.ts` 文件中添加 `compiler` 部分:
|
|
1112
|
+
|
|
1113
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
1114
|
+
import { type IntlayerConfig } from "intlayer";
|
|
1115
|
+
|
|
1116
|
+
const config: IntlayerConfig = {
|
|
1117
|
+
// ... 您的其他配置
|
|
1118
|
+
compiler: {
|
|
1119
|
+
/**
|
|
1120
|
+
* 指示是否应启用编译器。
|
|
1121
|
+
*/
|
|
1122
|
+
enabled: true,
|
|
1123
|
+
|
|
1124
|
+
/**
|
|
1125
|
+
* 定义输出文件路径
|
|
1126
|
+
*/
|
|
1127
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1128
|
+
|
|
1129
|
+
/**
|
|
1130
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1131
|
+
*/
|
|
1132
|
+
saveComponents: false,
|
|
1133
|
+
|
|
1134
|
+
/**
|
|
1135
|
+
* 字典键前缀
|
|
1136
|
+
*/
|
|
1137
|
+
dictionaryKeyPrefix: "",
|
|
1138
|
+
},
|
|
1139
|
+
};
|
|
1140
|
+
|
|
1141
|
+
export default config;
|
|
1142
|
+
```
|
|
1143
|
+
|
|
1144
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
1145
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1146
|
+
const config = {
|
|
1147
|
+
// ... 您的其他配置
|
|
1148
|
+
compiler: {
|
|
1149
|
+
/**
|
|
1150
|
+
* 指示是否应启用编译器。
|
|
1151
|
+
*/
|
|
1152
|
+
enabled: true,
|
|
1153
|
+
|
|
1154
|
+
/**
|
|
1155
|
+
* 定义输出文件路径
|
|
1156
|
+
*/
|
|
1157
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1158
|
+
|
|
1159
|
+
/**
|
|
1160
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1161
|
+
*/
|
|
1162
|
+
saveComponents: false,
|
|
1163
|
+
|
|
1164
|
+
/**
|
|
1165
|
+
* 字典键前缀
|
|
1166
|
+
*/
|
|
1167
|
+
dictionaryKeyPrefix: "",
|
|
1168
|
+
},
|
|
1169
|
+
};
|
|
1170
|
+
|
|
1171
|
+
export default config;
|
|
1172
|
+
```
|
|
1173
|
+
|
|
1174
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
1175
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1176
|
+
const config = {
|
|
1177
|
+
// ... 您的其他配置
|
|
1178
|
+
compiler: {
|
|
1179
|
+
/**
|
|
1180
|
+
* 指示是否应启用编译器。
|
|
1181
|
+
*/
|
|
1182
|
+
enabled: true,
|
|
1183
|
+
|
|
1184
|
+
/**
|
|
1185
|
+
* 定义输出文件路径
|
|
1186
|
+
*/
|
|
1187
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1188
|
+
|
|
1189
|
+
/**
|
|
1190
|
+
* 指示在转换后是否应保存组件。这样,编译器只需运行一次即可转换应用程序,然后即可将其删除。
|
|
1191
|
+
*/
|
|
1192
|
+
saveComponents: false,
|
|
1193
|
+
|
|
1194
|
+
/**
|
|
1195
|
+
* 字典键前缀
|
|
1196
|
+
*/
|
|
1197
|
+
dictionaryKeyPrefix: "",
|
|
1198
|
+
},
|
|
1199
|
+
};
|
|
1200
|
+
|
|
1201
|
+
module.exports = config;
|
|
1202
|
+
```
|
|
1203
|
+
|
|
1204
|
+
<Tabs>
|
|
1205
|
+
<Tab value='提取命令'>
|
|
1206
|
+
|
|
1207
|
+
运行提取器以转换组件并提取内容
|
|
1208
|
+
|
|
1209
|
+
```bash packageManager="npm"
|
|
1210
|
+
npx intlayer extract
|
|
1211
|
+
```
|
|
1212
|
+
|
|
1213
|
+
```bash packageManager="pnpm"
|
|
1214
|
+
pnpm intlayer extract
|
|
1215
|
+
```
|
|
1216
|
+
|
|
1217
|
+
```bash packageManager="yarn"
|
|
1218
|
+
yarn intlayer extract
|
|
1219
|
+
```
|
|
1220
|
+
|
|
1221
|
+
```bash packageManager="bun"
|
|
1222
|
+
bunx intlayer extract
|
|
1223
|
+
```
|
|
1224
|
+
|
|
1225
|
+
</Tab>
|
|
1226
|
+
<Tab value='Babel 编译器'>
|
|
1227
|
+
|
|
1228
|
+
更新您的 `vite.config.ts` 以包含 `intlayerCompiler` 插件:
|
|
1229
|
+
|
|
1230
|
+
```ts fileName="vite.config.ts"
|
|
1231
|
+
import { defineConfig } from "vite";
|
|
1232
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
1233
|
+
|
|
1234
|
+
export default defineConfig({
|
|
1235
|
+
plugins: [
|
|
1236
|
+
intlayer(),
|
|
1237
|
+
intlayerCompiler(), // 添加编译器插件
|
|
1238
|
+
],
|
|
1239
|
+
});
|
|
1240
|
+
```
|
|
1241
|
+
|
|
1242
|
+
```bash packageManager="npm"
|
|
1243
|
+
npm run build # 或 npm run dev
|
|
1244
|
+
```
|
|
1245
|
+
|
|
1246
|
+
```bash packageManager="pnpm"
|
|
1247
|
+
pnpm run build # 或 pnpm run dev
|
|
1248
|
+
```
|
|
1249
|
+
|
|
1250
|
+
```bash packageManager="yarn"
|
|
1251
|
+
yarn build # 或 yarn dev
|
|
1252
|
+
```
|
|
1253
|
+
|
|
1254
|
+
```bash packageManager="bun"
|
|
1255
|
+
bun run build # Or bun run dev
|
|
1256
|
+
```
|
|
1257
|
+
|
|
1258
|
+
</Tab>
|
|
1259
|
+
</Tabs>
|
|
1260
|
+
|
|
1105
1261
|
### 深入了解
|
|
1106
1262
|
|
|
1107
1263
|
要进一步使用,您可以实现 [可视化编辑器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_visual_editor.md) 或使用 [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md) 来外部管理您的内容。
|
|
@@ -120,14 +120,14 @@ Intlayer 建议将您的 AI API 密钥,以及 Intlayer 客户端 ID 和密钥
|
|
|
120
120
|
|
|
121
121
|
#### 选择活动环境
|
|
122
122
|
|
|
123
|
-
- **命令面板**:打开命令面板并运行 `Intlayer: Select Environment`,然后选择环境(例如,`development`、`staging`、`production`)。扩展将尝试加载上述优先级列表中第一个可用的文件,并显示类似“已从
|
|
123
|
+
- **命令面板**:打开命令面板并运行 `Intlayer: Select Environment`,然后选择环境(例如,`development`、`staging`、`production`)。扩展将尝试加载上述优先级列表中第一个可用的文件,并显示类似“已从 `.env.<env>.local` 加载环境”的通知。
|
|
124
124
|
- **设置**:进入 `设置 → 扩展 → Intlayer`,并设置:
|
|
125
125
|
- **环境**:用于解析 `.env.<env>*` 文件的环境名称。
|
|
126
126
|
- (可选)**环境文件**:显式指定一个 `.env` 文件路径。提供后,该路径优先于推断的列表。
|
|
127
127
|
|
|
128
128
|
#### Monorepos 和自定义目录
|
|
129
129
|
|
|
130
|
-
- **命令面板**:打开命令面板并运行 `Intlayer: Select Environment`,然后选择环境(例如,`development`、`staging`、`production`)。扩展将尝试加载上述优先列表中的第一个可用文件,并显示类似“已从
|
|
130
|
+
- **命令面板**:打开命令面板并运行 `Intlayer: Select Environment`,然后选择环境(例如,`development`、`staging`、`production`)。扩展将尝试加载上述优先列表中的第一个可用文件,并显示类似“已从 `.env.<env>.local` 加载环境”的通知。
|
|
131
131
|
- **设置**:进入 `设置 → 扩展 → Intlayer`,并设置:
|
|
132
132
|
- **环境**:用于解析 `.env.<env>*` 文件的环境名称。
|
|
133
133
|
- (可选)**Env 文件**:显式指定一个 `.env` 文件路径。提供后,该路径优先于推断的列表。
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intlayer/docs",
|
|
3
|
-
"version": "8.3.
|
|
3
|
+
"version": "8.3.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Intlayer documentation",
|
|
6
6
|
"keywords": [
|
|
@@ -72,14 +72,14 @@
|
|
|
72
72
|
"watch": "webpack --config ./webpack.config.ts --watch"
|
|
73
73
|
},
|
|
74
74
|
"dependencies": {
|
|
75
|
-
"@intlayer/config": "8.3.
|
|
76
|
-
"@intlayer/core": "8.3.
|
|
77
|
-
"@intlayer/types": "8.3.
|
|
75
|
+
"@intlayer/config": "8.3.2",
|
|
76
|
+
"@intlayer/core": "8.3.2",
|
|
77
|
+
"@intlayer/types": "8.3.2"
|
|
78
78
|
},
|
|
79
79
|
"devDependencies": {
|
|
80
|
-
"@intlayer/api": "8.3.
|
|
81
|
-
"@intlayer/cli": "8.3.
|
|
82
|
-
"@types/node": "25.
|
|
80
|
+
"@intlayer/api": "8.3.2",
|
|
81
|
+
"@intlayer/cli": "8.3.2",
|
|
82
|
+
"@types/node": "25.5.0",
|
|
83
83
|
"@utils/ts-config": "1.0.4",
|
|
84
84
|
"@utils/ts-config-types": "1.0.4",
|
|
85
85
|
"@utils/tsdown-config": "1.0.4",
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"rimraf": "6.1.3",
|
|
88
88
|
"tsdown": "0.21.2",
|
|
89
89
|
"typescript": "5.9.3",
|
|
90
|
-
"vitest": "4.0
|
|
90
|
+
"vitest": "4.1.0"
|
|
91
91
|
},
|
|
92
92
|
"engines": {
|
|
93
93
|
"node": ">=14.18"
|
package/docs/update_docs.py
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import os
|
|
2
|
-
import re
|
|
3
|
-
|
|
4
|
-
locales = [
|
|
5
|
-
"ar", "de", "en", "en-GB", "es", "fr", "hi", "id", "it", "ja", "ko", "pl", "pt", "ru", "tr", "uk", "vi", "zh"
|
|
6
|
-
]
|
|
7
|
-
|
|
8
|
-
translations = {
|
|
9
|
-
"ar": {"cli_title": "الإعداد عبر واجهة سطر أوامر Intlayer (موصى به)"},
|
|
10
|
-
"de": {"cli_title": "Einrichtung über die Intlayer CLI (empfohlen)"},
|
|
11
|
-
"en": {"cli_title": "Setup via Intlayer CLI (recommended)"},
|
|
12
|
-
"en-GB": {"cli_title": "Setup via Intlayer CLI (recommended)"},
|
|
13
|
-
"es": {"cli_title": "Configuración a través de la CLI de Intlayer (recomendado)"},
|
|
14
|
-
"fr": {"cli_title": "Configuration via la CLI Intlayer (recommandé)"},
|
|
15
|
-
"hi": {"cli_title": "Intlayer CLI के माध्यम से सेटअप (अनुशंसित)"},
|
|
16
|
-
"id": {"cli_title": "Setup melalui CLI Intlayer (disarankan)"},
|
|
17
|
-
"it": {"cli_title": "Configurazione tramite la CLI di Intlayer (consigliata)"},
|
|
18
|
-
"ja": {"cli_title": "Intlayer CLI経由のセットアップ(推奨)"},
|
|
19
|
-
"ko": {"cli_title": "Intlayer CLI를 통한 설정 (권장)"},
|
|
20
|
-
"pl": {"cli_title": "Konfiguracja przez Intlayer CLI (zalecane)"},
|
|
21
|
-
"pt": {"cli_title": "Configuração via CLI do Intlayer (recomendado)"},
|
|
22
|
-
"ru": {"cli_title": "Настройка через Intlayer CLI (рекомендуется)"},
|
|
23
|
-
"tr": {"cli_title": "Intlayer CLI aracılığıyla kurulum (önerilen)"},
|
|
24
|
-
"uk": {"cli_title": "Налаштування через Intlayer CLI (рекомендовано)"},
|
|
25
|
-
"vi": {"cli_title": "Thiết lập qua Intlayer CLI (khuyên dùng)"},
|
|
26
|
-
"zh": {"cli_title": "通过 Intlayer CLI 设置(推荐)"}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
base_dir = "/Users/aymericpineau/Documents/intlayer_/docs/docs"
|
|
30
|
-
|
|
31
|
-
vsc_title = "## Setup via Intlayer VS Code extension"
|
|
32
|
-
|
|
33
|
-
for lang in locales:
|
|
34
|
-
file_path = os.path.join(base_dir, lang, "mcp_server.md")
|
|
35
|
-
if not os.path.exists(file_path):
|
|
36
|
-
continue
|
|
37
|
-
|
|
38
|
-
with open(file_path, "r", encoding="utf-8") as f:
|
|
39
|
-
content = f.read()
|
|
40
|
-
|
|
41
|
-
# Update title as requested
|
|
42
|
-
# Standardize titles even if translated before, because user explicitly asked for English title specifically.
|
|
43
|
-
# Pattern to find the section and ensure its title is exactly as requested
|
|
44
|
-
content = re.sub(r"## (Using|Utilisation|Uso|Installation|Einrichtung|إعداد|सेटअप|Setup|でのセットアップ|에서 설정|Konfiguracja|Configuração|Настройка|Kurulum|Thiết lập|通过).*VS Code.*extension.*", "## Setup via Intlayer VS Code extension", content)
|
|
45
|
-
|
|
46
|
-
# Standardize CLI titles too if they exist
|
|
47
|
-
trans = translations.get(lang)
|
|
48
|
-
if trans:
|
|
49
|
-
cli_pattern = r"## (Setup via Intlayer CLI|Configuration via la CLI Intlayer|Configuración a través de la CLI de Intlayer|Einrichtung über die Intlayer CLI|الإعداد عبر واجهة سطر أوامر|Intlayer CLI के माध्यम से|Setup attraverso la CLI|Intlayer CLI経由のセットアップ|Intlayer CLI를 통한 설정|Konfiguracja przez Intlayer CLI|Configuração via CLI|Настройка через Intlayer CLI|Intlayer CLI aracılığıyla|Налаштування через Intlayer CLI|Thiết lập qua Intlayer CLI|通过 Intlayer CLI 设置).*"
|
|
50
|
-
content = re.sub(cli_pattern, f"## {trans['cli_title']}", content)
|
|
51
|
-
|
|
52
|
-
# General updates
|
|
53
|
-
content = re.sub(r"updatedAt: \d{4}-\d{2}-\d{2}", "updatedAt: 2026-03-03", content)
|
|
54
|
-
content = re.sub(r"docs/docs/" + re.escape(lang) + r"/intlayer_cli\.md", "docs/docs/" + lang + "/cli/index.md", content)
|
|
55
|
-
|
|
56
|
-
# Fix Claude Desktop JSON block extra brace issue for all
|
|
57
|
-
# Pattern to fix the double closure if it exists
|
|
58
|
-
# If the file has ...}\n}\n}\n```, change to ...}\n}\n}\n}\n``` if it was meant to be 4 deep?
|
|
59
|
-
# Actually, Claude Desktop config uses "mcpServers": { "intlayer": { ... } } so it needs 3 closing braces for the object + 1 for file?
|
|
60
|
-
# Usually: { "mcpServers": { "intlayer": { ... } } } - so 3 braces at the end.
|
|
61
|
-
|
|
62
|
-
with open(file_path, "w", encoding="utf-8") as f:
|
|
63
|
-
f.write(content)
|
|
64
|
-
|
|
65
|
-
print("Done")
|