Page MenuHomePhabricator

Enable languages supported by Google Translate that are not supported yet in Content Translation
Open, MediumPublic

Description

Based on comments from @Bugreporter in T369815#10475799, there seems to be some languages supported by Google Translate that are not currently exposed in content Translation:

hmn (Hmong) is also supported by Google Translate but not cxserver and not listed in this task.

This ticket proposes to (a) review the current support from Google Translate to identify languages which languages are not exposed in Content Translation, and (b) enable the support for those languages.

Event Timeline

This is a list of language codes (https://cloud.google.com/translate/docs/languages) supported by cloud translate API (some are duplicated and non-standard codes): 198 codes
A = {'ab', 'ace', 'ach', 'af', 'ak', 'alz', 'am', 'ar', 'as', 'awa', 'ay', 'az', 'ba', 'ban', 'bbc', 'be', 'bem', 'bew', 'bg', 'bho', 'bik', 'bm', 'bn', 'br', 'bs', 'bts', 'btx', 'bua', 'ca', 'ceb', 'cgg', 'chm', 'ckb', 'cnh', 'co', 'crh', 'crs', 'cs', 'cv', 'cy', 'da', 'de', 'din', 'doi', 'dov', 'dv', 'dz', 'ee', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fa', 'ff', 'fi', 'fil', 'fj', 'fr', 'fr-CA', 'fr-FR', 'fy', 'ga', 'gaa', 'gd', 'gl', 'gn', 'gom', 'gu', 'ha', 'haw', 'he', 'hi', 'hil', 'hmn', 'hr', 'hrx', 'ht', 'hu', 'hy', 'id', 'ig', 'ilo', 'is', 'it', 'iw', 'ja', 'jv', 'jw', 'ka', 'kk', 'km', 'kn', 'ko', 'kri', 'ktu', 'ku', 'ky', 'la', 'lb', 'lg', 'li', 'lij', 'lmo', 'ln', 'lo', 'lt', 'ltg', 'luo', 'lus', 'lv', 'mai', 'mak', 'mg', 'mi', 'min', 'mk', 'ml', 'mn', 'mni-Mtei', 'mr', 'ms', 'ms-Arab', 'mt', 'my', 'ne', 'new', 'nl', 'no', 'nr', 'nso', 'nus', 'ny', 'oc', 'om', 'or', 'pa', 'pa-Arab', 'pag', 'pam', 'pap', 'pl', 'ps', 'pt', 'pt-BR', 'pt-PT', 'qu', 'rn', 'ro', 'rom', 'ru', 'rw', 'sa', 'scn', 'sd', 'sg', 'shn', 'si', 'sk', 'sl', 'sm', 'sn', 'so', 'sq', 'sr', 'ss', 'st', 'su', 'sv', 'sw', 'szl', 'ta', 'te', 'tet', 'tg', 'th', 'ti', 'tk', 'tl', 'tn', 'tr', 'ts', 'tt', 'ug', 'uk', 'ur', 'uz', 'vi', 'xh', 'yi', 'yo', 'yua', 'yue', 'zh', 'zh-CN', 'zh-TW', 'zu'}

The list of language codes supported by online Google translation (https://translate.google.com/): 249 codes
B = {'aa', 'ab', 'ace', 'ach', 'af', 'ak', 'alz', 'am', 'ar', 'as', 'av', 'awa', 'ay', 'az', 'ba', 'bal', 'ban', 'bbc', 'bci', 'be', 'bem', 'ber', 'ber-Latn', 'bew', 'bg', 'bho', 'bik', 'bm', 'bm-Nkoo', 'bn', 'bo', 'br', 'bs', 'bts', 'btx', 'bua', 'ca', 'ce', 'ceb', 'cgg', 'ch', 'chk', 'chm', 'ckb', 'cnh', 'co', 'crh', 'crh-Latn', 'crs', 'cs', 'cv', 'cy', 'da', 'de', 'din', 'doi', 'dov', 'dv', 'dyu', 'dz', 'ee', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fa', 'fa-AF', 'ff', 'fi', 'fj', 'fo', 'fon', 'fr', 'fr-CA', 'fur', 'fy', 'ga', 'gaa', 'gd', 'gl', 'gn', 'gom', 'gu', 'gv', 'ha', 'haw', 'hi', 'hil', 'hmn', 'hr', 'hrx', 'ht', 'hu', 'hy', 'iba', 'id', 'ig', 'ilo', 'is', 'it', 'iu', 'iu-Latn', 'iw', 'ja', 'jam', 'jw', 'ka', 'kac', 'kek', 'kg', 'kha', 'kk', 'kl', 'km', 'kn', 'ko', 'kr', 'kri', 'ktu', 'ku', 'kv', 'ky', 'la', 'lb', 'lg', 'li', 'lij', 'lmo', 'ln', 'lo', 'lt', 'ltg', 'lua', 'luo', 'lus', 'lv', 'mad', 'mai', 'mak', 'mam', 'mfe', 'mg', 'mh', 'mi', 'min', 'mk', 'ml', 'mn', 'mni-Mtei', 'mr', 'ms', 'ms-Arab', 'mt', 'mwr', 'my', 'ndc-ZW', 'ne', 'new', 'nhe', 'nl', 'no', 'nr', 'nso', 'nus', 'ny', 'oc', 'om', 'or', 'os', 'pa', 'pa-Arab', 'pag', 'pam', 'pap', 'pl', 'ps', 'pt', 'pt-PT', 'qu', 'rn', 'ro', 'rom', 'ru', 'rw', 'sa', 'sah', 'sat', 'sat-Latn', 'scn', 'sd', 'se', 'sg', 'shn', 'si', 'sk', 'sl', 'sm', 'sn', 'so', 'sq', 'sr', 'ss', 'st', 'su', 'sus', 'sv', 'sw', 'szl', 'ta', 'tcy', 'te', 'tet', 'tg', 'th', 'ti', 'tiv', 'tk', 'tl', 'tn', 'to', 'tpi', 'tr', 'trp', 'ts', 'tt', 'tum', 'ty', 'tyv', 'udm', 'ug', 'uk', 'ur', 'uz', 've', 'vec', 'vi', 'war', 'wo', 'xh', 'yi', 'yo', 'yua', 'yue', 'zap', 'zh-CN', 'zh-TW', 'zu'}

List of codes proposed in https://gerrit.wikimedia.org/r/c/mediawiki/services/cxserver/+/1112450: 237 codes
C = {'aa', 'ab', 'ace', 'ach', 'af', 'alz', 'am', 'ar', 'arh', 'arz', 'as', 'av', 'awa', 'ay', 'az', 'ba', 'ban', 'bbc', 'bci', 'bcl', 'be', 'be-tarask', 'bem', 'bew', 'bg', 'bho', 'bm', 'bn', 'bo', 'br', 'bs', 'bts', 'btx', 'ca', 'ce', 'ceb', 'cgg', 'ch', 'chk', 'ckb', 'cnh', 'co', 'crh', 'crs', 'cs', 'cv', 'cy', 'da', 'de', 'din', 'dv', 'dyu', 'dz', 'ee', 'el', 'en', 'eo', 'es', 'et', 'eu', 'fa', 'ff', 'fi', 'fj', 'fo', 'fon', 'fr', 'fur', 'fy', 'ga', 'gaa', 'gan', 'gd', 'gl', 'gn', 'gom', 'gu', 'gv', 'ha', 'haw', 'he', 'hi', 'hil', 'hr', 'hrx', 'ht', 'hu', 'hy', 'iba', 'id', 'ig', 'ilo', 'is', 'it', 'ja', 'jam', 'jv', 'ka', 'kac', 'kek', 'kg', 'kha', 'kk', 'kl', 'km', 'kn', 'ko', 'kr', 'kri', 'ktu', 'ku', 'kv', 'ky', 'la', 'lb', 'lg', 'li', 'lij', 'lmo', 'ln', 'lo', 'lt', 'ltg', 'luo', 'lus', 'lv', 'mad', 'mai', 'mak', 'mam', 'mfe', 'mg', 'mh', 'mhr', 'mi', 'min', 'mk', 'ml', 'mn', 'mni', 'mr', 'ms', 'mt', 'my', 'nah', 'nb', 'ndc', 'ndq', 'ne', 'new', 'nl', 'no', 'nr', 'nso', 'nus', 'ny', 'oc', 'om', 'or', 'os', 'pa', 'pag', 'pam', 'pap', 'pl', 'pnb', 'ps', 'pt', 'qu', 'rmy', 'rn', 'ro', 'ru', 'rw', 'sa', 'sah', 'scn', 'sd', 'sg', 'sh', 'shn', 'si', 'simple', 'sk', 'sl', 'sm', 'sn', 'so', 'sq', 'sr', 'ss', 'st', 'su', 'sus', 'sv', 'sw', 'szl', 'ta', 'tcy', 'te', 'tet', 'tg', 'th', 'ti', 'tiv', 'tk', 'tl', 'tn', 'to', 'tpi', 'tr', 'trp', 'ts', 'tt', 'tum', 'tw', 'ty', 'tyv', 'udm', 'ug', 'uk', 'ur', 'uz', 've', 'vec', 'vi', 'war', 'wo', 'wuu', 'xh', 'yi', 'yo', 'yua', 'yue', 'zap', 'zh', 'zu'}

A - B = {'he', 'fr-FR', 'pt-BR', 'fil', 'zh', 'jv'} # Google Translate use fr, pt, tl, zh-CN/zh-TW and non-standard iw, jw
B - A = {'tcy', 've', 'mam', 'kek', 'tpi', 'war', 'udm', 'kv', 'kha', 'tiv', 'se', 'bal', 'sah', 'iu-Latn', 'fa-AF', 'ber', 'iu', 'mh', 'kac', 'sat', 'zap', 'lua', 'bm-Nkoo', 'aa', 'mad', 'chk', 'sat-Latn', 'ce', 'ber-Latn', 'wo', 'fur', 'fo', 'kr', 'gv', 'tum', 'bo', 'iba', 'dyu', 'os', 'mwr', 'mfe', 'jam', 'bci', 'kg', 'to', 'vec', 'sus', 'fon', 'tyv', 'ch', 'ty', 'crh-Latn', 'trp', 'ndc-ZW', 'kl', 'nhe', 'av'} # not sure whether supported by API
A - C = {'bik', 'pt-PT', 'iw', 'dov', 'jw', 'chm', 'bua', 'fr-FR', 'pa-Arab', 'zh-CN', 'hmn', 'zh-TW', 'ak', 'pt-BR', 'fr-CA', 'mni-Mtei', 'rom', 'doi', 'ms-Arab', 'fil'}
B - C = {'bik', 'pt-PT', 'iw', 'dov', 'jw', 'chm', 'bua', 'se', 'pa-Arab', 'zh-CN', 'bal', 'iu-Latn', 'fa-AF', 'ber', 'iu', 'hmn', 'zh-TW', 'sat', 'lua', 'ak', 'bm-Nkoo', 'fr-CA', 'mni-Mtei', 'rom', 'sat-Latn', 'ber-Latn', 'mwr', 'crh-Latn', 'ms-Arab', 'doi', 'ndc-ZW', 'nhe'}
C - B = {'be-tarask', 'simple', 'bcl', 'tw', 'arh', 'mhr', 'ndc', 'rmy', 'he', 'arz', 'pnb', 'sh', 'gan', 'zh', 'nb', 'jv', 'nah', 'mni', 'ndq', 'wuu'}

Nikerabbit triaged this task as Medium priority.Jan 23 2025, 8:53 AM
Nikerabbit moved this task from Needs Triage to MT on the ContentTranslation board.