Download the PHP package labor-digital/typo3-translation-utils without Composer
On this page you can find all versions of the php package labor-digital/typo3-translation-utils. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download labor-digital/typo3-translation-utils
More information about labor-digital/typo3-translation-utils
Files in labor-digital/typo3-translation-utils
Package typo3-translation-utils
Short Description A set of TYPO3 cli tasks for working with translation labels
License Apache-2.0
Informations about the package typo3-translation-utils
TYPO3 - Translation Utils
A simple development helper package which provides some command line utilities to work with translation files.
A word of caution: This is a development helper and should not be installed on a production machine!
Requirements
- TYPO3 v10
- TYPO3 - Better API
- Installation using Composer
Installation
Install this package using composer:
After that, you can activate the extension in the Extensions-Manager of your TYPO3 installation
Documentation
t3tu:export
Exports the translation labels of an extension into a csv file. A csv file will be created for every base translation file in your extension. Meaning locallang.xlf will be exported into locallang.csv, while locallang_be.xlf will be exported into locallang_be.csv.
The script will load all translations in your directory, that are named de.locallang.xlf, es.locallang.xlf,... and put the labels into their own column of the file.
With this you can easily provide your Translators an overview of all translations and their matching key.
Option: --format | -f
Allows you to change the output format of the translations. By default a .csv file is exported. With this option you can also set it to .xls, .xlsx or .ods, depending on your needs
t3tu:import
Imports the csv files of a translation into xlf translation files. This is basically the reverse operation to "export". After you changed the content in your csv files in your translation directory. This command will read all the csv files and update/create the required translation xlf files.
NOTE If the script finds .xls, .xlsx or .ods files in your language directory, it will parse them in the same way it does .csv files. This is helpful if you have issues with UTF-8 encoded chars in your excel file
t3tu:sync
Synchronizes all translation files (e.g. de.locallang.xlf,...) with your origin file (e.g. locallang.xlf) and vice versa.
The sync uses the origin file, as "source of truth", meaning all translation keys you add or remove there will be added/removed to the matching translation files. All newly created entries in the translation files are prefixed with COPY FROM - $SOURCELANG: to make them easy to spot.
If you rename a translation key in the origin file, the keys in the translation files will be updated automatically to match. (ONLY if the "source" tag matches both the origin file and the translation file, otherwise the key in the translation file will be recreated!).
The sync will automatically update the "source" tag in your translation files if it was changed in the origin file.
The sync will also make sure that all source files, have the same language variants available to them. This means in practice, if you start with:
- locallang.xlf
- de.locallang.xlf
- locallang_be.xlf
- es.locallang_be.xlf
After the sync you will get something like this:
- locallang.xlf
- de.locallang.xlf
- es.locallang.xlf
- locallang_be.xlf
- de.locallang_be.xlf
- es.locallang_be.xlf
You can also introduce a new language variant by adding an empty file for your language. The file gets automatically prepared with a dummy content and added to all existing origin files.
Configuration
You can configure the extension using the "ext config" framework provided by the TYPO3 - Better API
extension. To create a config, add a new class under $ext_key/Configuration/ExtConfig/TranslationUtils.php
which looks like this:
Configuring other extensions
The configuration is, by default, constrainted to the extension which adds the configuration class. So Our T3baExample
namespace above, is only active for
the t3ba_example
extension. To provide a configuration for other extensions, you can use the "runWithExtKeyAndVendor"
simulator provided by the ext config implementation. Using this method, you can provide configuration as if added by another extension. So to configure ext:news
you could do this:
Postcardware
You're free to use this package, but if it makes it to your production environment we highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using.
Our address is: LABOR.digital - Fischtorplatz 21 - 55116 Mainz, Germany
We publish all received postcards on our company website.