abdohadi/laravel-langman

轻松管理语言文件。

v2 2021-12-12 10:09 UTC

This package is auto-updated.

Last update: 2024-09-12 16:50:23 UTC


README

Langman 是 artisan 控制台中的语言文件管理器,它可以帮助你轻松搜索、更新、添加和删除翻译行。不再需要为多语言界面烦恼。

Laravel Langman
Build Status StyleCI Latest Stable Version Total Downloads License

安装

首先通过 Composer 安装此包。在你的终端中运行以下命令

$ composer require themsaid/laravel-langman

完成后,在 config/app.php 文件的 providers 数组中添加以下行

Themsaid\Langman\LangmanServiceProvider::class

此包有一个配置选项,它指向 resources/lang 目录,如果需要更改路径,则发布配置文件

php artisan vendor:publish --provider="Themsaid\Langman\LangmanServiceProvider"

使用方法

显示翻译文件的行

php artisan langman:show users

你可以得到

+---------+---------------+-------------+
| key     | en            | nl          |
+---------+---------------+-------------+
| name    | name          | naam        |
| job     | job           | baan        |
+---------+---------------+-------------+
php artisan langman:show users.name

只显示所有语言中 name 键的翻译。

php artisan langman:show users.name.first

显示嵌套键的翻译。

php artisan langman:show package::users.name

显示供应商包语言文件的翻译。

php artisan langman:show users --lang=en,it

只显示 "en" 和 "it" 语言的翻译。

php artisan langman:show users.nam -c

只显示通过紧密匹配匹配给定键的翻译行,因此搜索 nam 会带来类似 nameusernamebranch_name_required 等键的值。

在此命令返回的表中,如果翻译缺失,将以红色标记。

查找翻译行

php artisan langman:find 'log in first'

你将得到一个表格,其中任何值都通过紧密匹配匹配给定的短语。

搜索视图文件中缺失的翻译

php artisan langman:sync

此命令将在 resources/viewsapp 目录中的所有文件中查找未在翻译文件中覆盖的所有翻译键,然后将其追加到具有空字符串值的文件中。

填充缺失的翻译

php artisan langman:missing

它将收集所有任何语言中缺失的键或值等于空字符串的键,提示你为每个键提供翻译,并将最终保存的值保存到文件中。

翻译键

php artisan langman:trans users.name
php artisan langman:trans users.name.first
php artisan langman:trans users.name --lang=en
php artisan langman:trans package::users.name

使用此命令,您可以设置给定组的语言键(平面或嵌套),您也可以指定您希望设置的哪种语言,其他语言保持不变。

如果不存在,此命令将添加新键,如果已存在,则更新键。

删除键

php artisan langman:remove users.name
php artisan langman:remove package::users.name

它将从所有语言文件中删除该键。

重命名键

php artisan langman:rename users.name full_name

这将 users.name 重命名为 users.full_name,控制台将输出曾经存在该键的文件列表。

注意

langman:synclangman:missinglangman:translangman:remove 将通过完整写入来更新你的语言文件,这意味着任何注释或特殊样式都将被删除,因此我建议你备份你的文件。

Web 界面

如果你想有一个 Web 界面来管理你的语言文件,我推荐由 Barry vd. Heuvel 开发的 Laravel 5 Translation Manager