Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Auto I18N (Internationalization) Process

A33cfc536667317a0cc6751c01269153?s=47 andre
April 26, 2016

Auto I18N (Internationalization) Process

[ENG Talk]
Use Git's pros to customized migme's I18N process. And no more developers need to involve in the I18n process any more.

A33cfc536667317a0cc6751c01269153?s=128

andre

April 26, 2016
Tweet

Transcript

  1. Auto I18N Process Andre Lee

  2. Auto Internationalization Process Andre Lee

  3. Outlines 1. Problems 2. The Flow 3. Q&A

  4. Outlines 1. Problems 2. The Flow 3. Q&A

  5. Problems 1. Updating i18n files manually by developers 2. Hard

    to sync the i18n files
  6. Outlines 1. Problems 2. The Flow 3. Q&A

  7. New Flow - Premises 1. It’s a customized flow for

    mig33JSClient 2. We don’t have a “build” till we are ready to release it to STG. 3. Jenkins will be triggered to deploy the new code to QALab when developers merged a PR into the major branch.
  8. New Flow Add {{ translate “Share” }} into a template

    Scanning all templates files New Copies Found No New Copy Found Update to Google Spreadsheet Download as JSON files from Google Spreadsheet Save it into the mig33JSClient repo git add app/language/. git commit git push New Copy Translated Trigger Jenkins hook (or not)
  9. New Flow - Screenshots

  10. New Flow - Screenshots

  11. New Flow - Something you should know 1. RegEx to

    cover all the cases for {{ translate “” var1 var2 }} (your i18n function) 2. Make en_US (Your default language) as the key 3. Save all copies into a hash (Prevent duplicate keys) 4. Sorted the hash by keys 5. Force ignore exit(1) when `git commit` with nothing added
  12. Outlines 1. Problems 2. The Flow 3. Q&A

  13. Q&A