File tree Expand file tree Collapse file tree 2 files changed +42
-2
lines changed
src/main/kotlin/com/hyperdevs/poeditor/gradle/utils Expand file tree Collapse file tree 2 files changed +42
-2
lines changed Original file line number Diff line number Diff line change @@ -30,7 +30,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
3030### Removed
3131- No removed features!
3232### Fixed
33- - No fixed issues!
33+ - Fix Chinese variants support
3434### Security
3535- No security issues fixed!
3636
Original file line number Diff line number Diff line change @@ -28,6 +28,46 @@ fun createValuesModifierFromLangCode(langCode: String): String {
2828 langCode
2929 } else {
3030 val langParts = langCode.split(" -" )
31- " ${langParts[0 ]} -r${langParts[1 ].toUpperCase()} "
31+ val language = langParts[0 ]
32+ val region = langParts[1 ].toLowerCase()
33+
34+ return when (language) {
35+ " zh" -> {
36+ // Chinese support
37+ handleChineseVariants(language, region)
38+ }
39+ else -> {
40+ " $language -r${region.toUpperCase()} "
41+ }
42+ }
43+ }
44+ }
45+
46+ /* *
47+ * Handle Chinese variants supported by PoEditor.
48+ *
49+ * PoEditor handles the following Chinese variants:
50+ * - Chinese
51+ * - Chinese (HK)
52+ * - Chinese (MO)
53+ * - Chinese (SG)
54+ * - Chinese (simplified)
55+ * - Chinese (traditional)
56+ *
57+ * They will be handled the following way:
58+ * - Chinese will be set as values-zh.
59+ * - Chinese (simplified) will be set as values-b+zh+Hans.
60+ * - Chinese (traditional) will be set as values-b+zh+Hant.
61+ * - Regional Chinese variants will be set as values-zh-r<REGION>
62+ */
63+ private fun handleChineseVariants (language : String , region : String ) = when (region) {
64+ " cn" -> {
65+ language
66+ }
67+ " hans" , " hant" -> {
68+ " b+$language +${region.toLowerCase().capitalize()} "
69+ }
70+ else -> {
71+ " $language -r${region.toUpperCase()} "
3272 }
3373}
You can’t perform that action at this time.
0 commit comments