Skip to content

A python script that generates localization files for iOS and Android from a public GoogleSheet.

License

Notifications You must be signed in to change notification settings

r-dent/LocalizationSync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Localization Sync

This is a python script that downloads localization strings and CI color information from a public Google Sheet and generates resource files for iOS and Android projects.

Vizualization of the workflow

Installation

This uses the pip package manager for Python packages (see guide). It depends on the pyexcel-ods package which will be installed alongsite automatically when you run:

pip install localization-sync

Hint: It could be that you need to use pip3 command instead of pip.

Prerequisites

1. Create a Google Sheet

Create a Google Sheet document with sheets like these:

Example of a L10n table Example of a colors table

Mind to not add extra columns or rows at the top/left of your tables. I you need to do so, use keyRow/keyColumn parameters in config to inset the parsing of the table.

2. Publish

Publish the sheeet to the web by pressing File -> Publish to the web. Select Whole Document and Website. This enables the script do export the contents of the sheet as ODS file.

Note: We are using the export instead of the JSON API. Because this way there is no need for creating an API Key and using OAuth on the client (your) side.

3. Get the ID

Find the ID of your document by copying it from your browsers address bar.

sheet_url.png

Usage

Create a data_sync.config.json in your project and populate it with the contents of the example config. Replace the sheetId with your own. You can modify the other settings to fit the needs of your project.

Then open a terminal at your project path and run l10n_sync. Look for your newly created resource files.

You can also copy data_sync.py to your project and then run python3 data_sync.py when your config file is ready.

Example

Have a look into the Output folder for some example files generated by using the provided configuration file.