Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rickykaare/csvtrans

Translation tools using Google Sheet/CSV as source
https://github.com/rickykaare/csvtrans

csv google-sheets resx translation

Last synced: 2 months ago
JSON representation

Translation tools using Google Sheet/CSV as source

Awesome Lists containing this project

README

        

# csvtrans
_Tool for building translations from Google Sheet_

[![Build Status](https://dev.azure.com/rickykaare/csvtrans/_apis/build/status/csvtrans-ci?branchName=master)](https://dev.azure.com/rickykaare/csvtrans/_build/latest?definitionId=2&branchName=master) [![NuGet](https://img.shields.io/nuget/dt/csvtrans.svg?style=flat-square)](http://www.nuget.org/packages/csvtrans) [![NuGet](https://img.shields.io/nuget/v/csvtrans.svg?style=flat-square)](http://www.nuget.org/packages/csvtrans)

The idea behind the tool is to read translations from a Google Sheet and output them as string resources for iOS or Android.

### Installation
Tool can be installed using the command

dotnet tool install -g csvtrans

### Input
The tool supports the following input sources:

- A local CSV file
- An online CSV source
- A Google Sheet

The column headers in the input identifies the target languages (e.g. en, en-US, da-DK etc.) with the following special columns:

|Column Name |Purpose |
|------------|--------|
Key|Mandatory identifier for the string
Comment|Optional comment for the trasnslation
Default|Optional default value

An example sheet can be found here: [SampleTranslations](https://docs.google.com/spreadsheets/d/1SpSu13Gtk8aBsGK4b-iRK4wmmTtywx3twN1yABAVTOA/edit?usp=sharing)

### Output
Supported outputs are:

- Apple string resources (iOS)
- Android string resources
- Json dictionary
- Resx resources

### CLI interface

USAGE: csvtrans [--help] [--sheet ]
[--csv ] [--format ]
[--outputdir ] [--name ]
[--convert-placeholders ]

OPTIONS:

--sheet, -s
specify a Google Sheet as input.
--csv, -c
specify a online or local cvs file as input.
--format, -f
specify the output format.
--outputdir, -o
specify the output directory.
--name, -n specify an optional name for the output.
--convert-placeholders, -p
convert placeholders to match the output format.
--help display this list of options.