anourvalar/laravel-interpreter

Laravel 的区域设置通过单个(平面)文件进行翻译

2.10.6 2024-08-09 11:36 UTC

README

  • 将项目中的所有未翻译短语导出到单个文件以供翻译人员使用。
  • 将单个文件中的所有已翻译短语导入到项目的结构中。
  • 在 blade 模板中查找并用缺少 @lang() 指令包裹文本短语。

安装

composer require anourvalar/laravel-interpreter --dev

使用方法:基本流程

步骤 #1:为目标区域创建模式(配置)

php artisan interpreter:schema ru

步骤 #2:填写配置

{
  "source_locale": "en", // reference (source) locale
  "target_locale": "ru",

  "adapter": "AnourValar\\LaravelInterpreter\\Adapters\\JsonAdapter",
  "filename": "ru_i18.json",

  "include_json": true, // include phrases from lang/en.json

  "lang_files": {
    "exclude": [],

    "include": [
      "/admin/" // include all files inside folder lang/en/admin/*
    ],

    "exclude_keys": []
  },

  "view_files": {
    "exclude": [],

    "include": [
      "/admin/" // include all files (parse phrases) inside folder views/admin/*
    ]
  },

  "exclude_phrases": [],
  "include_pattern": null // "white" filter (regexp)
}

步骤 #3:将未翻译的短语导出到单个文件以供翻译人员使用

php artisan interpreter:export ru

此命令还会显示所有未包裹(缺少 @lang)的短语。

步骤 #4:将完成的单个文件导入到项目的结构中

php artisan interpreter:import ru

使用方法:包裹

php artisan interpreter:wrap resources/views/test.blade.php

原始模板

<div>Привет, Мир!</div>

修改后的模板

<div>@lang('Привет, Мир!')</div>