quarkinocom / laravel-translation-manager
A Laravel Artisan command package to manage and automate language translations, leveraging OpenAI for high-quality translations.
Requires
- php: ^7.3|^8.0|^8.1|^8.2|^8.3
- illuminate/support: ^6.0|^7.0|^8.0|^9.0|^10.0
README
Laravel翻译管理器是一个Artisan命令套件,专为管理并自动化Laravel应用程序中的翻译过程而设计。利用OpenAI API,此包简化了在不同语言中显示、比较、翻译和修复语言文件的任务,对于从事多语言项目的开发人员来说是必备的。
安装
要开始使用,请通过Composer安装此包
composer require quarkinocom/laravel-translation-manager
此命令将自动安装包并注册其服务提供者,通过Laravel的包发现机制。
发布配置
要自定义包的设置,例如指定您的OpenAI API密钥,请发布配置文件
php artisan vendor:publish --provider="Quarkinocom\TranslationManager\TranslationManagerServiceProvider" --tag="config"
此命令将配置文件 translation-manager.php
复制到您项目的 config
目录。
用法
该包引入了几个Artisan命令,以简化语言文件管理
显示命令
显示指定语言的全部翻译文件列表,包括翻译键的数量。
用法:
php artisan language:translate show {language}
示例命令:
php artisan language:translate show en
预期输出:
+---------------------+---------------+-------+
| Directory | File | Keys |
+---------------------+---------------+-------+
| /resources/lang/en | messages.php | 10 |
| /resources/lang/en | validation.php| 42 |
+---------------------+---------------+-------+
Total files: 2
比较命令
比较两种语言的翻译文件,突出显示缺失或空键。
用法:
php artisan language:translate compare {source-language} {target-language}
示例命令:
php artisan language:translate compare en fr
预期输出:
+---------------------+-----------+-----------------------+
| File | Key | Status |
+---------------------+-----------+-----------------------+
| messages.php | welcome | Missing in target |
| validation.php | required | Empty value in target |
+---------------------+-----------+-----------------------+
Differences detected: 2
翻译命令
从源语言到目标语言翻译缺失或空键。可选地创建或更新翻译文件。
用法:
- 要翻译所有键
php artisan language:translate translate {source-language} {target-language}
- 要修复(仅翻译缺失或空键)
php artisan language:translate repair {source-language} {target-language}
示例命令:
php artisan language:translate translate en fr
预期结果:此命令将输出翻译的键的数量和API调用次数,结果没有特定的表格格式,因为结果取决于所执行的翻译。
Git仓库
在GitHub上探索或为Laravel翻译管理器做出贡献
https://github.com/quarkinocom/laravel-translation-manager
贡献
欢迎并非常感谢您的贡献!请随意分叉仓库,做出您的更改,并提交一个拉取请求。对于重大更改,请首先打开一个问题来讨论您想要更改的内容。请记住,根据需要更新测试。