forxer/generic-term-translations-for-laravel

A plugin for Laravel Lang that provides generic term translations for Laravel.

1.6.0 2024-02-28 09:42 UTC

This package is auto-updated.

Last update: 2024-04-28 10:02:48 UTC


README

A plugin for Laravel Lang that provides generic term translations for Laravel project.

Consult the glossary to see all the terms available for translation.

Installation

Require the project using Composer:

composer require forxer/generic-term-translations-for-laravel --dev

Then use the locales publisher of Laravel Lang to add/update/reset or remove translations of this package:

Usage

This package provides translations for terms regularly used in projects.

You will find all the terms provided by this package in the glossary.

Terms are categorized into different sections by source files. For example there is an action.php source file that defines the add_something key, you can use it like this:

// "en" locale
trans('action.add_something', [
    'something' => 'a post',
]);

// return: "add a post"

// "fr" locale
trans('action.add_something', [
    'something' => 'un article',
]);

// return: "ajouter un article"

Be careful to escape the data that you do not control:

trans('action.delete_something', [
    'something' => e($post->title),
]);

Feminine and masculine gender

Some languages distinguish between feminine and masculine genders, for the same term the feminine key will then be suffixed by _fem. For example:

In English we use "all", while in French we use "toutes" in the feminine and "tous" in the masculine (see it on Google Translate).

// "en" locale
trans('misc.all'); // return: "all"

trans('misc.all_fem'); // return: "all"

// "fr" locale
trans('misc.all'); // return: "tous"

trans('misc.all_fem'); // return: "toutes"

Development steps

  1. From the package directory, run php composer update
  2. Update the sources as needed in src/source files
  3. Run the console command php vendor/bin/lang sync
  4. Translate modifications in src/locales/{locale}/php.json
  5. Run php generate-glossary
  6. Commit changes