@@ -14,7 +14,8 @@ import java.io.File
1414
1515class IosPluralsGenerator (
1616 sourceSet : KotlinSourceSet ,
17- pluralsFileTree : FileTree
17+ pluralsFileTree : FileTree ,
18+ private val baseLocalizationRegion : String
1819) : PluralsGenerator(
1920 sourceSet = sourceSet,
2021 pluralsFileTree = pluralsFileTree
@@ -30,20 +31,7 @@ class IosPluralsGenerator(
3031 )
3132 }
3233
33- override fun generateResources (
34- resourcesGenerationDir : File ,
35- language : String? ,
36- strings : Map <KeyType , PluralMap >
37- ) {
38- val resDirName = when (language) {
39- null -> " Base.lproj"
40- else -> " $language .lproj"
41- }
42-
43- val resDir = File (resourcesGenerationDir, resDirName)
44- val localizableFile = File (resDir, " Localizable.stringsdict" )
45- resDir.mkdirs()
46-
34+ private fun writeStringsFile (file : File , strings : Map <KeyType , PluralMap >) {
4735 val head = """ <?xml version="1.0" encoding="UTF-8"?>
4836<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
4937<plist version="1.0">
@@ -79,8 +67,31 @@ class IosPluralsGenerator(
7967 </dict>
8068</plist>"""
8169
82- localizableFile.writeText(head)
83- localizableFile.appendText(content)
84- localizableFile.appendText(footer)
70+ file.writeText(head)
71+ file.appendText(content)
72+ file.appendText(footer)
73+ }
74+
75+ override fun generateResources (
76+ resourcesGenerationDir : File ,
77+ language : String? ,
78+ strings : Map <KeyType , PluralMap >
79+ ) {
80+ val resDirName = when (language) {
81+ null -> " Base.lproj"
82+ else -> " $language .lproj"
83+ }
84+
85+ val resDir = File (resourcesGenerationDir, resDirName)
86+ val localizableFile = File (resDir, " Localizable.stringsdict" )
87+ resDir.mkdirs()
88+ writeStringsFile(localizableFile, strings)
89+
90+ if (language == null ) {
91+ val regionDir = File (resourcesGenerationDir, " $baseLocalizationRegion .lproj" )
92+ regionDir.mkdirs()
93+ val regionFile = File (regionDir, " Localizable.stringsdict" )
94+ writeStringsFile(regionFile, strings)
95+ }
8596 }
8697}
0 commit comments