From 850c1bf7cc438b935f6e283c801b34b91bf629c6 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Wed, 13 Jun 2018 15:55:13 +0200 Subject: [PATCH] Move iso639 strings in its own translation file --- client/src/locale/source/angular_en_US.xml | 229 +++++-- client/src/locale/source/iso639_en_US.xml | 758 +++++++++++++++++++++ client/src/locale/source/server_en_US.xml | 752 -------------------- client/src/locale/target/angular_es_ES.xml | 16 + client/src/locale/target/angular_fr_FR.xml | 155 ++--- client/src/locale/target/server_fr_FR.json | 2 +- scripts/i18n/create-custom-files.ts | 20 +- scripts/i18n/xliff2json.ts | 34 +- support/doc/development/localization.md | 5 +- 9 files changed, 1044 insertions(+), 927 deletions(-) create mode 100644 client/src/locale/source/iso639_en_US.xml create mode 100644 client/src/locale/target/angular_es_ES.xml diff --git a/client/src/locale/source/angular_en_US.xml b/client/src/locale/source/angular_en_US.xml index 859212ae7..456879a68 100644 --- a/client/src/locale/source/angular_en_US.xml +++ b/client/src/locale/source/angular_en_US.xml @@ -379,9 +379,9 @@ app/menu/menu.component.ts 17 - + - My settings + My account app/menu/menu.component.ts @@ -733,53 +733,59 @@ Check this checkbox, save the configuration and test with a video URL of your in app/+admin/config/edit-custom-config/edit-custom-config.component.ts 178 + + If you disable transcoding, many videos from your users will not work! + + app/+admin/config/edit-custom-config/edit-custom-config.component.ts + 180 + Transcoding threads app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 184 + 186 Resolution <x id="INTERPOLATION" equiv-text="{{ resolution }}"/> enabled app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 203 + 205 Cache app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 207 + 209 Previews cache size app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 210 + 212 Previews are not federated. We fetch them directly from the origin instance and cache them. app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 213 + 215 Customizations app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 225 + 227 JavaScript app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 228 + 230 Write directly JavaScript code.<br />Example: <pre>console.log('my instance is amazing');</pre> app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 231 + 233 @@ -799,7 +805,7 @@ Check this checkbox, save the configuration and test with a video URL of your in app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 247 + 249 Advanced configuration @@ -811,7 +817,13 @@ Check this checkbox, save the configuration and test with a video URL of your in Update configuration app/+admin/config/edit-custom-config/edit-custom-config.component.ts - 274 + 276 + + + It seems the configration is invalid. Please search potential errors in the different tabs. + + app/+admin/config/edit-custom-config/edit-custom-config.component.ts + 277 @@ -1458,6 +1470,18 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-edit/shared/video-edit.component.ts 109 + + Wait transcoding before publishing the video + + app/videos/+video-edit/shared/video-edit.component.ts + 115 + + + If you decide to not wait transcoding before publishing the video, it can be unplayable until it transcoding ends. + + app/videos/+video-edit/shared/video-edit.component.ts + 118 + Basic info @@ -1468,19 +1492,19 @@ When you will upload a video in this channel, the video support field will be au Upload thumbnail app/videos/+video-edit/shared/video-edit.component.ts - 119 + 129 Upload preview app/videos/+video-edit/shared/video-edit.component.ts - 126 + 136 Support app/videos/+video-edit/shared/video-edit.component.ts - 132 + 142 app/videos/+video-watch/modal/video-support.component.ts @@ -1488,19 +1512,19 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 53 + 55 Short text to tell people how they can support you (membership platform...). app/videos/+video-edit/shared/video-edit.component.ts - 133 + 143 Advanced settings app/videos/+video-edit/shared/video-edit.component.ts - 115 + 125 (extensions: <x id="INTERPOLATION" equiv-text="{{ videoImageExtensions }}"/>, max size: <x id="INTERPOLATION_1" equiv-text="{{ maxVideoImageSize | bytes }}"/>) @@ -1524,7 +1548,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 87 + 89 Download video @@ -1552,7 +1576,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 69 + 71 Report video @@ -1588,7 +1612,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 58 + 60 URL @@ -1610,8 +1634,10 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/modal/video-share.component.ts 35 - - Video not found :'( + + + The video is being transcoded, it may not work properly. + app/videos/+video-watch/video-watch.component.ts 6 @@ -1622,85 +1648,85 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 15 + 17 Go the channel page app/videos/+video-watch/video-watch.component.ts - 20 + 22 - - You can subscribe to this account via any ActivityPub-capable fediverse instance. For instance with Mastodon or Pleroma you can type in the search box <strong>@<x id="INTERPOLATION" equiv-text="{{video.account.displayName}}"/>@<x id="INTERPOLATION_1" equiv-text="{{video.account.host}}"/></strong> and subscribe there. Subscription as a PeerTube user is being worked on in <a href='https://github.com/Chocobozzz/PeerTube/issues/470'>#470</a>. + + You can subscribe to this account via any ActivityPub-capable fediverse instance. For instance with Mastodon or Pleroma you can type in the search box <strong>@<x id="INTERPOLATION" equiv-text="{{video.account.name}}"/>@<x id="INTERPOLATION_1" equiv-text="{{video.account.host}}"/></strong> and subscribe there. Subscription as a PeerTube user is being worked on in <a href='https://github.com/Chocobozzz/PeerTube/issues/470'>#470</a>. app/videos/+video-watch/video-watch.component.ts - 24 + 26 By <x id="INTERPOLATION" equiv-text="{{ video.by }}"/> app/videos/+video-watch/video-watch.component.ts - 29 + 31 - - Go the account page + + Go to the account page app/videos/+video-watch/video-watch.component.ts - 28 + 30 Like this video app/videos/+video-watch/video-watch.component.ts - 41 + 43 Dislike this video app/videos/+video-watch/video-watch.component.ts - 48 + 50 Download the video app/videos/+video-watch/video-watch.component.ts - 68 + 70 Report app/videos/+video-watch/video-watch.component.ts - 75 + 77 Report this video app/videos/+video-watch/video-watch.component.ts - 74 + 76 Blacklist app/videos/+video-watch/video-watch.component.ts - 81 + 83 Blacklist this video app/videos/+video-watch/video-watch.component.ts - 80 + 82 Update this video app/videos/+video-watch/video-watch.component.ts - 86 + 88 Delete app/videos/+video-watch/video-watch.component.ts - 93 + 95 app/videos/+video-watch/comment/video-comment.component.ts @@ -1710,19 +1736,19 @@ When you will upload a video in this channel, the video support field will be au Delete this video app/videos/+video-watch/video-watch.component.ts - 92 + 94 Show more app/videos/+video-watch/video-watch.component.ts - 112 + 114 Show less app/videos/+video-watch/video-watch.component.ts - 118 + 120 @@ -1730,7 +1756,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 125 + 127 @@ -1738,7 +1764,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 134 + 136 @@ -1746,7 +1772,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 143 + 145 @@ -1754,7 +1780,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 152 + 154 @@ -1762,7 +1788,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 161 + 163 @@ -1770,13 +1796,13 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 175 + 177 Friendly Reminder: app/videos/+video-watch/video-watch.component.ts - 187 + 189 @@ -1784,19 +1810,19 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 189 + 191 More information app/videos/+video-watch/video-watch.component.ts - 192 + 194 Get more information app/videos/+video-watch/video-watch.component.ts - 192 + 194 @@ -1804,7 +1830,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/video-watch.component.ts - 195 + 197 @@ -1814,8 +1840,8 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/comment/video-comments.component.ts 3 - - You can either comment on the page of your instance where this video is federated with your PeerTube account, or via any ActivityPub-capable fediverse instance. For instance with Mastodon or Pleroma you can type in the search box <strong>@<x id="INTERPOLATION" equiv-text="{{video.account.displayName}}"/>@<x id="INTERPOLATION_1" equiv-text="{{video.account.host}}"/></strong> and find back the video. Direct commenting capabilities are being worked on in <a href='https://github.com/Chocobozzz/PeerTube/issues/224'>#224</a>. + + You can either comment on the page of your instance where this video is federated with your PeerTube account, or via any ActivityPub-capable fediverse instance. For instance with Mastodon or Pleroma you can type in the search box <strong>@<x id="INTERPOLATION" equiv-text="{{video.account.name}}"/>@<x id="INTERPOLATION_1" equiv-text="{{video.account.host}}"/></strong> and find back the video. Direct commenting capabilities are being worked on in <a href='https://github.com/Chocobozzz/PeerTube/issues/224'>#224</a>. app/videos/+video-watch/comment/video-comments.component.ts 8 @@ -1824,13 +1850,13 @@ When you will upload a video in this channel, the video support field will be au No comments. app/videos/+video-watch/comment/video-comments.component.ts - 20 + 19 View all <x id="INTERPOLATION" equiv-text="{{ comment.totalReplies }}"/> replies app/videos/+video-watch/comment/video-comments.component.ts - 56 + 55 @@ -1838,7 +1864,7 @@ When you will upload a video in this channel, the video support field will be au app/videos/+video-watch/comment/video-comments.component.ts - 65 + 64 Add comment... @@ -1966,6 +1992,14 @@ When you will upload a video in this channel, the video support field will be au src/app/+my-account/my-account-video-channels/my-account-video-channels.component.ts 1 + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + src/app/core/auth/auth.service.ts 1 @@ -2140,6 +2174,14 @@ When you will upload a video in this channel, the video support field will be au src/app/+my-account/my-account-video-channels/my-account-video-channels.component.ts 1 + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + src/app/login/login.component.ts 1 @@ -2412,6 +2454,66 @@ When you will upload a video in this channel, the video support field will be au 1 + + Do you really want to delete <x id="INTERPOLATION" equiv-text="{{deleteLength}}"/> videos? + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + + + <x id="INTERPOLATION" equiv-text="{{deleteLength}}"/> videos deleted. + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + + + Do you really want to delete <x id="INTERPOLATION" equiv-text="{{videoName}}"/>? + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + + + Video <x id="INTERPOLATION" equiv-text="{{videoName}}"/> deleted. + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + + src/app/videos/+video-watch/video-watch.component.ts + 1 + + + + Published + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + + + Waiting transcoding + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + + + To transcode + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + + + Unknown state + + src/app/+my-account/my-account-videos/my-account-videos.component.ts + 1 + + Error getting about from server @@ -3158,13 +3260,6 @@ When you will upload a video in this channel, the video support field will be au 1 - - Video <x id="INTERPOLATION" equiv-text="{{videoName}}"/> deleted. - - src/app/videos/+video-watch/video-watch.component.ts - 1 - - <x id="INTERPOLATION" equiv-text="{{likesNumber}}"/> likes / <x id="INTERPOLATION_1" equiv-text="{{dislikesNumber}}"/> dislikes diff --git a/client/src/locale/source/iso639_en_US.xml b/client/src/locale/source/iso639_en_US.xml new file mode 100644 index 000000000..4bed9617c --- /dev/null +++ b/client/src/locale/source/iso639_en_US.xml @@ -0,0 +1,758 @@ + + + + + Afar + undefined + + + Abkhazian + undefined + + + Afrikaans + undefined + + + Akan + undefined + + + Amharic + undefined + + + Arabic + undefined + + + Aragonese + undefined + + + American Sign Language + undefined + + + Assamese + undefined + + + Avaric + undefined + + + Aymara + undefined + + + Azerbaijani + undefined + + + Bashkir + undefined + + + Bambara + undefined + + + Belarusian + undefined + + + Bengali + undefined + + + British Sign Language + undefined + + + Bislama + undefined + + + Tibetan + undefined + + + Bosnian + undefined + + + Breton + undefined + + + Bulgarian + undefined + + + Brazilian Sign Language + undefined + + + Catalan + undefined + + + Czech + undefined + + + Chamorro + undefined + + + Chechen + undefined + + + Chuvash + undefined + + + Cornish + undefined + + + Corsican + undefined + + + Cree + undefined + + + Czech Sign Language + undefined + + + Chinese Sign Language + undefined + + + Welsh + undefined + + + Danish + undefined + + + German + undefined + + + Dhivehi + undefined + + + Danish Sign Language + undefined + + + Dzongkha + undefined + + + Modern Greek (1453-) + undefined + + + English + undefined + + + Estonian + undefined + + + Basque + undefined + + + Ewe + undefined + + + Faroese + undefined + + + Persian + undefined + + + Fijian + undefined + + + Finnish + undefined + + + French + undefined + + + Western Frisian + undefined + + + French Sign Language + undefined + + + Fulah + undefined + + + Scottish Gaelic + undefined + + + Irish + undefined + + + Galician + undefined + + + Manx + undefined + + + Guarani + undefined + + + German Sign Language + undefined + + + Gujarati + undefined + + + Haitian + undefined + + + Hausa + undefined + + + Serbo-Croatian + undefined + + + Hebrew + undefined + + + Herero + undefined + + + Hindi + undefined + + + Hiri Motu + undefined + + + Croatian + undefined + + + Hungarian + undefined + + + Armenian + undefined + + + Igbo + undefined + + + Sichuan Yi + undefined + + + Inuktitut + undefined + + + Indonesian + undefined + + + Inupiaq + undefined + + + Icelandic + undefined + + + Italian + undefined + + + Javanese + undefined + + + Japanese + undefined + + + Japanese Sign Language + undefined + + + Kalaallisut + undefined + + + Kannada + undefined + + + Kashmiri + undefined + + + Georgian + undefined + + + Kanuri + undefined + + + Kazakh + undefined + + + Khmer + undefined + + + Kikuyu + undefined + + + Kinyarwanda + undefined + + + Kirghiz + undefined + + + Komi + undefined + + + Kongo + undefined + + + Korean + undefined + + + Kuanyama + undefined + + + Kurdish + undefined + + + Lao + undefined + + + Latvian + undefined + + + Limburgan + undefined + + + Lingala + undefined + + + Lithuanian + undefined + + + Luxembourgish + undefined + + + Luba-Katanga + undefined + + + Ganda + undefined + + + Marshallese + undefined + + + Malayalam + undefined + + + Marathi + undefined + + + Macedonian + undefined + + + Malagasy + undefined + + + Maltese + undefined + + + Mongolian + undefined + + + Maori + undefined + + + Malay (macrolanguage) + undefined + + + Burmese + undefined + + + Nauru + undefined + + + Navajo + undefined + + + South Ndebele + undefined + + + North Ndebele + undefined + + + Ndonga + undefined + + + Nepali (macrolanguage) + undefined + + + Dutch + undefined + + + Norwegian Nynorsk + undefined + + + Norwegian Bokmål + undefined + + + Norwegian + undefined + + + Nyanja + undefined + + + Occitan (post 1500) + undefined + + + Ojibwa + undefined + + + Oriya (macrolanguage) + undefined + + + Oromo + undefined + + + Ossetian + undefined + + + Panjabi + undefined + + + Pakistan Sign Language + undefined + + + Polish + undefined + + + Portuguese + undefined + + + Pushto + undefined + + + Quechua + undefined + + + Romansh + undefined + + + Romanian + undefined + + + Russian Sign Language + undefined + + + Rundi + undefined + + + Russian + undefined + + + Sango + undefined + + + Saudi Arabian Sign Language + undefined + + + South African Sign Language + undefined + + + Sinhala + undefined + + + Slovak + undefined + + + Slovenian + undefined + + + Northern Sami + undefined + + + Samoan + undefined + + + Shona + undefined + + + Sindhi + undefined + + + Somali + undefined + + + Southern Sotho + undefined + + + Spanish + undefined + + + Albanian + undefined + + + Sardinian + undefined + + + Serbian + undefined + + + Swati + undefined + + + Sundanese + undefined + + + Swahili (macrolanguage) + undefined + + + Swedish + undefined + + + Swedish Sign Language + undefined + + + Tahitian + undefined + + + Tamil + undefined + + + Tatar + undefined + + + Telugu + undefined + + + Tajik + undefined + + + Tagalog + undefined + + + Thai + undefined + + + Tigrinya + undefined + + + Tonga (Tonga Islands) + undefined + + + Tswana + undefined + + + Tsonga + undefined + + + Turkmen + undefined + + + Turkish + undefined + + + Twi + undefined + + + Uighur + undefined + + + Ukrainian + undefined + + + Urdu + undefined + + + Uzbek + undefined + + + Venda + undefined + + + Vietnamese + undefined + + + Walloon + undefined + + + Wolof + undefined + + + Xhosa + undefined + + + Yiddish + undefined + + + Yoruba + undefined + + + Zhuang + undefined + + + Chinese + undefined + + + Zulu + undefined + + + + \ No newline at end of file diff --git a/client/src/locale/source/server_en_US.xml b/client/src/locale/source/server_en_US.xml index dab91f98d..e94a01469 100644 --- a/client/src/locale/source/server_en_US.xml +++ b/client/src/locale/source/server_en_US.xml @@ -113,758 +113,6 @@ Private undefined - - Afar - undefined - - - Abkhazian - undefined - - - Afrikaans - undefined - - - Akan - undefined - - - Amharic - undefined - - - Arabic - undefined - - - Aragonese - undefined - - - American Sign Language - undefined - - - Assamese - undefined - - - Avaric - undefined - - - Aymara - undefined - - - Azerbaijani - undefined - - - Bashkir - undefined - - - Bambara - undefined - - - Belarusian - undefined - - - Bengali - undefined - - - British Sign Language - undefined - - - Bislama - undefined - - - Tibetan - undefined - - - Bosnian - undefined - - - Breton - undefined - - - Bulgarian - undefined - - - Brazilian Sign Language - undefined - - - Catalan - undefined - - - Czech - undefined - - - Chamorro - undefined - - - Chechen - undefined - - - Chuvash - undefined - - - Cornish - undefined - - - Corsican - undefined - - - Cree - undefined - - - Czech Sign Language - undefined - - - Chinese Sign Language - undefined - - - Welsh - undefined - - - Danish - undefined - - - German - undefined - - - Dhivehi - undefined - - - Danish Sign Language - undefined - - - Dzongkha - undefined - - - Modern Greek (1453-) - undefined - - - English - undefined - - - Estonian - undefined - - - Basque - undefined - - - Ewe - undefined - - - Faroese - undefined - - - Persian - undefined - - - Fijian - undefined - - - Finnish - undefined - - - French - undefined - - - Western Frisian - undefined - - - French Sign Language - undefined - - - Fulah - undefined - - - Scottish Gaelic - undefined - - - Irish - undefined - - - Galician - undefined - - - Manx - undefined - - - Guarani - undefined - - - German Sign Language - undefined - - - Gujarati - undefined - - - Haitian - undefined - - - Hausa - undefined - - - Serbo-Croatian - undefined - - - Hebrew - undefined - - - Herero - undefined - - - Hindi - undefined - - - Hiri Motu - undefined - - - Croatian - undefined - - - Hungarian - undefined - - - Armenian - undefined - - - Igbo - undefined - - - Sichuan Yi - undefined - - - Inuktitut - undefined - - - Indonesian - undefined - - - Inupiaq - undefined - - - Icelandic - undefined - - - Italian - undefined - - - Javanese - undefined - - - Japanese - undefined - - - Japanese Sign Language - undefined - - - Kalaallisut - undefined - - - Kannada - undefined - - - Kashmiri - undefined - - - Georgian - undefined - - - Kanuri - undefined - - - Kazakh - undefined - - - Khmer - undefined - - - Kikuyu - undefined - - - Kinyarwanda - undefined - - - Kirghiz - undefined - - - Komi - undefined - - - Kongo - undefined - - - Korean - undefined - - - Kuanyama - undefined - - - Kurdish - undefined - - - Lao - undefined - - - Latvian - undefined - - - Limburgan - undefined - - - Lingala - undefined - - - Lithuanian - undefined - - - Luxembourgish - undefined - - - Luba-Katanga - undefined - - - Ganda - undefined - - - Marshallese - undefined - - - Malayalam - undefined - - - Marathi - undefined - - - Macedonian - undefined - - - Malagasy - undefined - - - Maltese - undefined - - - Mongolian - undefined - - - Maori - undefined - - - Malay (macrolanguage) - undefined - - - Burmese - undefined - - - Nauru - undefined - - - Navajo - undefined - - - South Ndebele - undefined - - - North Ndebele - undefined - - - Ndonga - undefined - - - Nepali (macrolanguage) - undefined - - - Dutch - undefined - - - Norwegian Nynorsk - undefined - - - Norwegian Bokmål - undefined - - - Norwegian - undefined - - - Nyanja - undefined - - - Occitan (post 1500) - undefined - - - Ojibwa - undefined - - - Oriya (macrolanguage) - undefined - - - Oromo - undefined - - - Ossetian - undefined - - - Panjabi - undefined - - - Pakistan Sign Language - undefined - - - Polish - undefined - - - Portuguese - undefined - - - Pushto - undefined - - - Quechua - undefined - - - Romansh - undefined - - - Romanian - undefined - - - Russian Sign Language - undefined - - - Rundi - undefined - - - Russian - undefined - - - Sango - undefined - - - Saudi Arabian Sign Language - undefined - - - South African Sign Language - undefined - - - Sinhala - undefined - - - Slovak - undefined - - - Slovenian - undefined - - - Northern Sami - undefined - - - Samoan - undefined - - - Shona - undefined - - - Sindhi - undefined - - - Somali - undefined - - - Southern Sotho - undefined - - - Spanish - undefined - - - Albanian - undefined - - - Sardinian - undefined - - - Serbian - undefined - - - Swati - undefined - - - Sundanese - undefined - - - Swahili (macrolanguage) - undefined - - - Swedish - undefined - - - Swedish Sign Language - undefined - - - Tahitian - undefined - - - Tamil - undefined - - - Tatar - undefined - - - Telugu - undefined - - - Tajik - undefined - - - Tagalog - undefined - - - Thai - undefined - - - Tigrinya - undefined - - - Tonga (Tonga Islands) - undefined - - - Tswana - undefined - - - Tsonga - undefined - - - Turkmen - undefined - - - Turkish - undefined - - - Twi - undefined - - - Uighur - undefined - - - Ukrainian - undefined - - - Urdu - undefined - - - Uzbek - undefined - - - Venda - undefined - - - Vietnamese - undefined - - - Walloon - undefined - - - Wolof - undefined - - - Xhosa - undefined - - - Yiddish - undefined - - - Yoruba - undefined - - - Zhuang - undefined - - - Chinese - undefined - - - Zulu - undefined - Misc undefined diff --git a/client/src/locale/target/angular_es_ES.xml b/client/src/locale/target/angular_es_ES.xml new file mode 100644 index 000000000..ae816930d --- /dev/null +++ b/client/src/locale/target/angular_es_ES.xml @@ -0,0 +1,16 @@ + + + + + + + + Cancel + + Cancelar + + 40 + + + + \ No newline at end of file diff --git a/client/src/locale/target/angular_fr_FR.xml b/client/src/locale/target/angular_fr_FR.xml index 737c723ee..1a3870481 100644 --- a/client/src/locale/target/angular_fr_FR.xml +++ b/client/src/locale/target/angular_fr_FR.xml @@ -76,7 +76,7 @@ or create an account - ou créer un compte + \nou créer un compte 16 @@ -85,7 +85,7 @@ or create an account on another instance - ou créer un compte sur une autre instance + \nou créer un compte sur une autre instance 20 @@ -143,7 +143,7 @@ Reset my password - Réinitialiser mon mot de passe + \nRéinitialiser mon mot de passe 2 @@ -173,7 +173,7 @@ Create an account - Créer un compte + \nCréer un compte 3 @@ -189,7 +189,7 @@ Unlimited - Illimité + \nIllimité 16 @@ -293,15 +293,6 @@ 17 - - - My settings - - Mes paramètres - - 21 - - Log out @@ -551,7 +542,7 @@ User default video quota - Quota de vidéos par défaut par utilisateur + Quota de vidéos par défaut par utilisateur 122 @@ -627,56 +618,56 @@ Cochez cette case, sauvegardez la configuration et testez avec l'URL d'une vidé Transcoding threads Nombre de threads pour l'encodage - 184 + 186 Resolution enabled Définition activée - 203 + 205 Cache Cache - 207 + 209 Previews cache size Taille du cache des prévisualisations - 210 + 212 Previews are not federated. We fetch them directly from the origin instance and cache them. Les aperçus ne sont pas fédérés. Nous les récupérons directement de l'instance d'origine, et les cachons. - 213 + 215 Customizations Personnalisations - 225 + 227 JavaScript JavaScript - 228 + 230 Write directly JavaScript code.<br />Example: <pre>console.log('my instance is amazing');</pre> Écrivez directement du code JavaScript.<br />Exemple: <pre>console.log('mon instance est super géniale');</pre> - 231 + 233 @@ -711,7 +702,7 @@ Cochez cette case, sauvegardez la configuration et testez avec l'URL d'une vidé </pre> - 247 + 249 @@ -725,7 +716,7 @@ Cochez cette case, sauvegardez la configuration et testez avec l'URL d'une vidé Update configuration Mettre à jour la configuration - 274 + 276 @@ -1368,35 +1359,35 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Upload thumbnail Téléverser une vignette - 119 + 129 Upload preview Téléverser un aperçu - 126 + 136 Support Soutenir - 53 + 55 Short text to tell people how they can support you (membership platform...). Courte description des moyens qu'ont les utilisateurs de vous soutenir (financement participatif, etc.). - 133 + 143 Advanced settings Paramétrage avancé - 115 + 125 @@ -1421,7 +1412,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Update Mettre à jour - 87 + 89 @@ -1449,7 +1440,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Download Télécharger - 69 + 71 @@ -1488,7 +1479,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Share Partager - 58 + 60 @@ -1516,13 +1507,6 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au 35 - - Video not found :'( - Vidéo non trouvée :'( - - 6 - - - views @@ -1530,91 +1514,77 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au - vues - 15 + 17 Go the channel page Aller à la page de chaîne - 20 - - - - You can subscribe to this account via any ActivityPub-capable fediverse instance. For instance with Mastodon or Pleroma you can type in the search box <strong>@@</strong> and subscribe there. Subscription as a PeerTube user is being worked on in <a href='https://github.com/Chocobozzz/PeerTube/issues/470'>#470</a>. - Vous pouvez vous abonner à ce compte avec n'importe quel instance compatible ActivityPub. Par exemple, avec Mastodon ou Pleroma, vous pouvez taper dans le champ de recherche <strong>@@</strong> pour ensuite vous abonner à lui. L'abonnement en tant qu'utilisateur PeerTube est travaillé dans <a href='https://github.com/Chocobozzz/PeerTube/issues/470'>#470</a>. - - 24 + 22 By Par - 29 - - - - Go the account page - Aller sur la page du compte - - 28 + 31 Like this video J'aime cette vidéo - 41 + 43 Dislike this video Je n'aime pas cette vidéo - 48 + 50 Download the video Télécharger la vidéo - 68 + 70 Report Signaler - 75 + 77 Report this video Signaler cette vidéo - 74 + 76 Blacklist Blacklister - 81 + 83 Blacklist this video Blacklister cette vidéo - 80 + 82 Update this video Mettre à jour cette vidéo - 86 + 88 @@ -1628,21 +1598,21 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Delete this video Supprimer cette vidéo - 92 + 94 Show more Voir plus - 112 + 114 Show less Montrer moins - 118 + 120 @@ -1651,7 +1621,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Visibilité - 125 + 127 @@ -1660,7 +1630,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Catégorie - 134 + 136 @@ -1671,7 +1641,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Licence - 143 + 145 @@ -1682,7 +1652,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Langue - 152 + 154 @@ -1691,7 +1661,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Étiquettes - 161 + 163 @@ -1702,14 +1672,14 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Autres vidéos - 175 + 177 Friendly Reminder: Rappel: - 187 + 189 @@ -1720,21 +1690,21 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Le système de partage utilisé par cette vidéo nécessite que des informations techniques concernant votre système (notamment votre adresse IP publique) soit rendue publique. - 189 + 191 More information Plus d'informations - 192 + 194 Get more information Obtenir plus d'informations - 192 + 194 @@ -1745,7 +1715,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au OK - 195 + 197 @@ -1757,25 +1727,18 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au 3 - - You can either comment on the page of your instance where this video is federated with your PeerTube account, or via any ActivityPub-capable fediverse instance. For instance with Mastodon or Pleroma you can type in the search box <strong>@@</strong> and find back the video. Direct commenting capabilities are being worked on in <a href='https://github.com/Chocobozzz/PeerTube/issues/224'>#224</a>. - Vous pouvez soit commenter sur la page de l'instance où cette vidéo est fédérée avec votre compte PeerTube, ou via n'importe quelle instance utilisant ActivityPub pour l'échange de messages. Par exemple avec une instance Mastodon ou Pleroma vous pouvez copier l'URL de vidéo dans le champs de recherche, ou écrire <strong>@@</strong> et retrouver la vidéo. Nous travaillons à la possibilité de commenter directement depuis PeerTube avec un compte distant sur <a href='https://github.com/Chocobozzz/PeerTube/issues/224'>#224</a>. - - 8 - - No comments. Aucun commentaire. - 20 + 19 View all replies Voir les réponses - 56 + 55 @@ -1786,7 +1749,7 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au Les commentaires sont désactivés. - 65 + 64 @@ -2122,6 +2085,13 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au 1 + + Video deleted. + La vidéo a été supprimée. + + 1 + + Error getting about from server Erreur lors de la récupération des informations 'about' du serveur @@ -2845,13 +2815,6 @@ Quand vous mettrez en ligne une vidéo sur cette chaîne, la vidéo affichera au 1 - - Video deleted. - La vidéo a été supprimée. - - 1 - - likes / dislikes j'aime / je n'aime pas diff --git a/client/src/locale/target/server_fr_FR.json b/client/src/locale/target/server_fr_FR.json index 43216adf4..72f6e322d 100644 --- a/client/src/locale/target/server_fr_FR.json +++ b/client/src/locale/target/server_fr_FR.json @@ -1 +1 @@ -{"Music":"Musique","Films":"Films","Vehicles":"Transport","Art":"Art","Sports":"Sports","Travels":"Voyages","Gaming":"Jeux vidéos","People":"People","Comedy":"Humour","Entertainment":"Divertissement","News":"Actualités","How To":"Tutoriel","Education":"Éducation","Activism":"Activisme","Science & Technology":"Science & Technologie","Animals":"Animaux","Kids":"Enfants","Food":"Cuisine","Attribution":"Attribution","Attribution - Share Alike":"Attribution - Partage dans les mêmes conditions","Attribution - No Derivatives":"Attribution - Pas d'oeuvre dérivée","Attribution - Non Commercial":"Attribution - Utilisation non commerciale","Attribution - Non Commercial - Share Alike":"Attribution - Utilisation non commerciale - Partage dans les mêmes conditions","Attribution - Non Commercial - No Derivatives":"Attribution - Utilisation non commerciale - Pas d'oeuvre dérivée","Public Domain Dedication":"Domaine public","Public":"Publique","Unlisted":"Non listée","Private":"Privée","French":"Français","French Sign Language":"Langage des signes français","Misc":"Divers","Unknown":"Inconnu"} \ No newline at end of file +{"Music":"Musiques","Films":"Films","Vehicles":"Transport","Art":"Art","Sports":"Sports","Travels":"Voyages","Gaming":"Jeux vidéos","People":"Personnalités","Comedy":"Humour","Entertainment":"Divertissement","News":"Actualités","How To":"Tutoriels","Education":"Éducation","Activism":"Militantisme","Science & Technology":"Science & Technologie","Animals":"Animaux","Kids":"Enfants","Food":"Cuisine","Attribution":"Attribution","Attribution - Share Alike":"Attribution - Partage dans les mêmes conditions","Attribution - No Derivatives":"Attribution - Pas d'oeuvre dérivée","Attribution - Non Commercial":"Attribution - Utilisation non commerciale","Attribution - Non Commercial - Share Alike":"Attribution - Utilisation non commerciale - Partage dans les mêmes conditions","Attribution - Non Commercial - No Derivatives":"Attribution - Utilisation non commerciale - Pas d'oeuvre dérivée","Public Domain Dedication":"Domaine public","Public":"Publique","Unlisted":"Non listée","Private":"Privée","Misc":"Divers","Unknown":"Inconnu","Arabic":"Arabe"} \ No newline at end of file diff --git a/scripts/i18n/create-custom-files.ts b/scripts/i18n/create-custom-files.ts index 3519afd47..7d994a710 100755 --- a/scripts/i18n/create-custom-files.ts +++ b/scripts/i18n/create-custom-files.ts @@ -34,10 +34,6 @@ values(VIDEO_CATEGORIES) .concat(values(VIDEO_PRIVACIES)) .forEach(v => serverKeys[v] = v) -// ISO 639 keys -const languages = buildLanguages() -Object.keys(languages).forEach(k => serverKeys[languages[k]] = languages[k]) - // More keys Object.assign(serverKeys, { 'Misc': 'Misc', @@ -49,13 +45,27 @@ const serverTranslations = { data: serverKeys } +// ISO 639 keys +const languageKeys: any = {} +const languages = buildLanguages() +Object.keys(languages).forEach(k => languageKeys[languages[k]] = languages[k]) + +const iso639Translations = { + target: join(__dirname, '../../../client/src/locale/source/iso639_en_US.xml'), + data: languageKeys +} + saveToXliffFile(playerTranslations, err => { if (err) return handleError(err) saveToXliffFile(serverTranslations, err => { if (err) return handleError(err) - process.exit(0) + saveToXliffFile(iso639Translations, err => { + if (err) return handleError(err) + + process.exit(0) + }) }) }) diff --git a/scripts/i18n/xliff2json.ts b/scripts/i18n/xliff2json.ts index c60739561..17c73181b 100755 --- a/scripts/i18n/xliff2json.ts +++ b/scripts/i18n/xliff2json.ts @@ -1,7 +1,7 @@ import * as xliff12ToJs from 'xliff/xliff12ToJs' -import { unlink, readFileSync, writeFile } from 'fs' +import { readFile, readFileSync, unlink, writeFile } from 'fs' import { join } from 'path' -import { buildFileLocale, I18N_LOCALES, isDefaultLocale, LOCALE_FILES } from '../../shared/models/i18n/i18n' +import { buildFileLocale, I18N_LOCALES, isDefaultLocale } from '../../shared/models/i18n/i18n' import { eachSeries } from 'async' const sources: string[] = [] @@ -9,7 +9,7 @@ const availableLocales = Object.keys(I18N_LOCALES) .filter(l => isDefaultLocale(l) === false) .map(l => buildFileLocale(l)) -for (const file of LOCALE_FILES) { +for (const file of [ 'player', 'server', 'iso639' ]) { for (const locale of availableLocales) { sources.push(join(__dirname, '../../../client/src/locale/target/', `${file}_${locale}.xml`)) } @@ -20,7 +20,11 @@ eachSeries(sources, (source, cb) => { }, err => { if (err) return handleError(err) - process.exit(0) + mergeISO639InServer(err => { + if (err) return handleError(err) + + process.exit(0) + }) }) function handleError (err: any) { @@ -48,6 +52,28 @@ function xliffFile2JSON (filePath: string, cb) { }) } +function mergeISO639InServer (cb) { + eachSeries(availableLocales, (locale, eachCallback) => { + const serverPath = join(__dirname, '../../../client/src/locale/target/', `server_${locale}.json`) + const iso639Path = join(__dirname, '../../../client/src/locale/target/', `iso639_${locale}.json`) + + const resServer = readFileSync(serverPath).toString() + const resISO639 = readFileSync(iso639Path).toString() + + const jsonServer = JSON.parse(resServer) + const jsonISO639 = JSON.parse(resISO639) + + Object.assign(jsonServer, jsonISO639) + const serverString = JSON.stringify(jsonServer) + + writeFile(serverPath, serverString, err => { + if (err) return eachCallback(err) + + return unlink(iso639Path, eachCallback) + }) + }, cb) +} + function removeFirstLine (str: string) { return str.substring(str.indexOf('\n') + 1) } diff --git a/support/doc/development/localization.md b/support/doc/development/localization.md index 3cf797516..97e9e2c51 100644 --- a/support/doc/development/localization.md +++ b/support/doc/development/localization.md @@ -8,7 +8,7 @@ Will generate XLIFF files for Angular and escape inner elements in `source` tag This script will create `player_en_US.xml` XLIFF file using custom strings (VideoJS plugins) and strings from `videojs_en_US.json` file. -It will also create `server_en_US.xml` XLIFF file using custom strings (defined inside the script, we did not find a way to extract them from TypeScript server files). +It will also create `server_en_US.xml` and `iso639_en_US.xml` XLIFF file using server strings and custom strings (defined inside the script, we did not find a way to extract them from TypeScript server files). ``` $ npm run i18n:generate @@ -25,7 +25,8 @@ $ zanata-cli push ## Pull translation Pull XLIFF files from Zanata, and unescape them (so we retrieve inner elements in `source` tag, used by Angular). -A hook converts `player` and `server` translation files to JSON (needed by Video.JS, and our application to have efficient runtime translation). +A hook converts `player` and `server`, `iso639` translation files to JSON (needed by Video.JS, and our application to have efficient runtime translation). +Then, `iso639` files will be merged in `server` files (so we have only one JSON file to serve server translations). ``` $ zanata-cli pull