symvaro / artisan-lang-utils
v0.1.0
2020-03-19 07:11 UTC
Requires
- ext-json: *
- laravel/framework: ^5.1|^6.0|^7.0
Requires (Dev)
- fzaninotto/faker: ^1.6
- phpunit/phpunit: ^8.5
This package is auto-updated.
Last update: 2024-09-07 08:15:48 UTC
README
此软件包包含 artisan 命令,用于导入/导出和处理语言资源。
安装
composer require --dev symvaro/artisan-lang-utils
使用
警告: artisan 语言命令在编辑或导入时将更改语言文件。这意味着
- 除了键和值之外的所有内容都将被删除(例如,注释),
- 变量将被其值替换,
- 嵌套数组结构将被扁平化。
因此,建议仅与 VCS 结合使用这些工具!
导出/导入
要导出支持格式的语言字符串,请使用类似以下命令:
php artisan lang:export --language=en --format=po filename.po
如果省略文件名,则使用 stdout,如果没有指定语言参数,则使用默认语言。目前支持以下格式:tsv(默认)、json、po 和 resource,其中 resource 是 laravel 语言文件夹。tsv 格式包含每行的制表符分隔的键和消息对。控制字符 \n, \t, \\, \r\n
用 \
转义。
导入命令行 API 与导出结构类似。
php artisan lang:import --language=en --format=po filename
如果没有指定文件名,它将读取 stdin。还有一个 --replace-all
选项,如果导入文件中不存在语言字符串,则将其删除。
编辑
可用于简化语言字符串编辑的命令
- 添加或替换(《lang:add {--l|language=} {?key}》)
- 删除(《lang:remove {?key}》)
示例
可以将这些命令与常见的 shell 工具结合使用。tsv 格式特别支持这一点。例如,要 列出所有非唯一消息,可以使用以下命令:
./artisan lang:export \ | awk -F"\t" '{ print $2 }' \ | sort | uniq -c | sort -rn \ | grep -vE "^[ ]*1"
贡献
这个库将只包含导入/导出工具,帮助你在命令行中编辑语言文件。范围外的功能请求或贡献将不予接受。对于特殊案例或错误的测试用例非常欢迎。