# localize-spreadsheet-bot **Repository Path**: jjhoc/localize-spreadsheet-bot ## Basic Information - **Project Name**: localize-spreadsheet-bot - **Description**: Create a localization file in Android, iOS, React-native, flow, format from a Google Spreadsheet - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-24 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Convert a Google Spreadsheet to a localization file ## Installation npm install localize-gsheet-pro -g Supports 1. iOS, Android, js, 2. file splits from inline comments (only supports android) ## Example Given a Google Spreadsheet like this: ![Spreadsheet example](https://github.com/xavierha/localize-with-spreadsheet/raw/master/doc/spreadsheet-example.png) Right now only good for android XML files where there comments with xxxx.xml and they will be split automatically. The tool fetch the spreadsheet and write the result to a file in the Android or iOS format: ![Result android](https://github.com/xavierha/localize-with-spreadsheet/raw/master/doc/result-android.png) ![Result iOS](https://github.com/xavierha/localize-with-spreadsheet/raw/master/doc/result-ios.png) Create a file update-localization.js var Localize = require("localize-gsheet-pro"); var transformer = Localize.fromGoogleSpreadsheet("0Aq6WlQdq71FydDZlaWdmMEUtc2tUb1k2cHRBS2hzd2c", '*'); transformer.setKeyCol('KEY'); transformer.save("values/strings.xml", { valueCol: "NL", format: "android" }); transformer.save("values-fr/strings.xml", { valueCol: "FR", format: "android" }); transformer.save("nl.lproj/Localizable.strings", { valueCol: "NL", format: "ios" }); transformer.save("fr.lproj/Localizable.strings", { valueCol: "FR", format: "ios" }); transformer.save("values/strings.xml", { valueCol: "NL", format: "android" }, function(){ transformer.programSplit ("values/" + "strings.xml", "values", "ZH"); }); Run it with node update-localization.js ## Advanced You can filter the worksheets to include with the second parameter of 'fromGoogleSpreadsheet' Ex: Localize.fromGoogleSpreadsheet("", '*'); Localize.fromGoogleSpreadsheet("", ['HomeScreen, 'ContactScreen']); Localize.fromGoogleSpreadsheet("", [0, 2]); ## Notes - The script will preserve everything that is above the tags: < !-- AUTO-GENERATED --> or // AUTO-GENERATED - Your spreadsheet should be "Published" for this to work - You need to have git installed for the installation