Download the PHP package sitegeist/csvpo without Composer

On this page you can find all versions of the php package sitegeist/csvpo. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package csvpo

Sitegeist.CsvPO

Neos package for easy handling of translation labels in csv files, with a backend module for label overriding and cli support

This package allows to manage translations as csv-files directly in the fusion component folder with easy access in the style of css-modules.

The package comes with a backend module for overriding translations and cli commands to bake overrides back to the csv files for versioning.

Advantages:

Drawback:

Authors & Sponsors

The development and the public-releases of this package is generously sponsored by our employer http://www.sitegeist.de.

Usage

The CsvPO helper provides the eel function CsvPO.create that takes the path to the translation csv file as argument. The returned object allows to access the translations in fusion and afx.

Example.fusion

Chain translations and optional overrides

When multiple csv files are given the labels from files at the end of the chain take precedence.

Combined with the @private syntax from fusion in Neos 8.3 this allows to specify generic translations and allow to optionally pass translation-files that will take precedence.

Placeholders

CSVPO supports the same syntax for placeholders as the classic xliff translations of Flow. See: https://flowframework.readthedocs.io/en/stable/TheDefinitiveGuide/PartIII/Internationalization.html?highlight=translations#placeholders

Global translations

Global translations can be extracted into a prototype to be used across the whole project. It is recommended to use the Neos.Fusion:Memo as base prototype to only evaluate the prototype once.

In Development context missing translations are marked with -- i18n-add -- if the identifier is unknown and -- i18n-translate -- if the translation value was empty. In Production context the identifier is returned when no translation could be determined.

CSV files

Each csv file manages a number of translations in all locales. The First line of the csv is treated as header and identifies the meaning of the translation.

Example.translation.csv

Rules:

CSV file are chosen because of the wide tooling support since literally every spreadsheet application can edit those files.

NOTE: Using xliff was evaluated and rejected because it requires multiple files, makes it exceptionally hard to spot missing translations and has very weak tooling support. The only xliff feature csv does not support is plural forms which is rarely used.

Backend Module & Policies

The Translations backend module allows to show all translations of the given source. Translation overrides can be defined and are visualized for the editors aswell as fallbacks.

The backend module is accessible to the roles Administrator and TranslationEditor. Editors must be given access to modify the translations explicitly.

CLI

CvsPO comes with several cli commands

Configuration

The following configurations allow to control the behavior of the package and the provided management options.

Caching

Translations are cached in the Sitegeist_CsvPO_TranslationCache Cache. A file monitor will invalidate the caches whenever a .csv file is changed inside a Fusion Folder of any Flow-Package.

If you are storing the translation csv files in another place make sure to call ./flow cache:flushone Sitegeist_CsvPO_TranslationCache after changing a translation.csv.

Installation

Sitegeist.CsvPO is available via packagist. Just run composer require sitegeist/csvpo. We use semantic-versioning so every breaking change will increase the major-version number.


All versions of csvpo with dependencies

PHP Build Version
Package Version
Requires neos/flow Version ^8.0 || ^9.0 || dev-master
neos/fusion Version ^8.0 || ^9.0 || dev-master
neos/fusion-form Version >1.0
league/csv Version ^9.2
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package sitegeist/csvpo contains the following files

Loading the files please wait ....