nodus-it / laravel-translation-manager
TranslationManager 是一个用于简化 Laravel 中翻译字符串管理的包。它能够在控制台执行翻译,或者创建一个包含所有字符串的导出文件,以便之后重新导入。
0.1-beta
2018-12-13 08:04 UTC
Requires
- php: >=7.1.3
- laravel/framework: ^5.5
Requires (Dev)
- aws/aws-sdk-php: 3.9.*
Suggests
- aws/aws-sdk-php: Allows automatic translation by aws service
This package is auto-updated.
Last update: 2024-09-06 19:49:02 UTC
README
关于
TranslationManager 是一个用于简化 Laravel 中翻译字符串管理的包。它能够在控制台执行翻译,或者创建一个包含所有字符串的导出文件,以便之后重新导入。
要求
- Laravel 5.5+
安装
使用 composer 安装此包。建议只在开发环境中使用此包。
composer require nodus-framework/translation-manager --dev
Laravel 5.5 使用包自动发现功能,因此不需要您手动添加 ServiceProvider。
用法
默认语言由 Laravel 自动采用。如果您想更改语言,可以使用 "--default-locale" 选项。默认语言始终被认为是完整的翻译,并用作其他语言翻译的基础。
显示翻译状态
显示所有语言及其文件和值的数量
php artisan nodus:translate
de: Found 65 files with 1880 values *primary locale
en: Found 1 files with 6 values
导出
导出会生成一个包含翻译键、标准语言的翻译以及为所需语言留空的列的 CSV 文件。文件存储在主目录中。目前只导出缺失的值。
php artisan nodus:translate export In which language do you want to translate? [en]: >
导入
导入会根据导出文件的格式处理 CSV 文件。每个文件只导入一种语言。如果文件可以读取,则会自动创建新的语言的所有文件和文件夹。如果文件已存在,则将其合并。如果有重复的值,则取导入的值。
php artisan nodus:translate import --file=translation_de-en.csv
自动翻译
此选项允许您自动化翻译。目前有一个已实现的提供者:Amazon AWS Translate。输入以下命令后,将查询提供者和目标语言。随后,将显示此翻译的成本,并必须明确确认。以下列出了提供者的特殊功能和要求。
php artisan nodus:translate auto-translate
AWS
要求
- AWS-Account
- Package aws/aws-sdk-php
- 环境变量:NODUS_TRANSLATION_MANAGER_AWS_KEY, NODUS_TRANSLATION_MANAGER_AWS_SECRET
成本
- 每 100 万字符 15 美元
- 使用此服务后 12 个月内每月免费 200 万字符的免费层
待办事项列表
- 内联翻译服务
- 更多导出/导入格式