diff --git a/SampleFiles/Strings/Generated/String+GenAllScript.swift b/SampleFiles/Strings/Generated/String+GenAllScript.swift index 761bb15..e80ff50 100644 --- a/SampleFiles/Strings/Generated/String+GenAllScript.swift +++ b/SampleFiles/Strings/Generated/String+GenAllScript.swift @@ -6,7 +6,7 @@ fileprivate let kStringsFileName = "sampleStrings" extension String { - public enum KeyGenAllScript: String { + internal enum KeyGenAllScript: String { case param_lang = "param_lang" case generic_back = "generic_back" case generic_loading_data = "generic_loading_data" @@ -14,7 +14,7 @@ extension String { case test_equal_symbol = "test_equal_symbol" case placeholders_test_one = "placeholders_test_one" - public var keyPath: KeyPath { + internal var keyPath: KeyPath { switch self { case .param_lang: return \String.param_lang case .generic_back: return \String.generic_back @@ -33,7 +33,7 @@ extension String { /// /// Comment : /// No comment - public var param_lang: String { + internal var param_lang: String { NSLocalizedString("param_lang", tableName: kStringsFileName, bundle: Bundle.main, value: "en", comment: "") } @@ -44,17 +44,17 @@ extension String { /// /// Comment : /// No comment - public var generic_back: String { + internal var generic_back: String { NSLocalizedString("generic_back", tableName: kStringsFileName, bundle: Bundle.main, value: "Back", comment: "") } /// Translation in en : - /// Loading data... + /// Loading\ndata... /// /// Comment : /// No comment - public var generic_loading_data: String { - NSLocalizedString("generic_loading_data", tableName: kStringsFileName, bundle: Bundle.main, value: "Loading data...", comment: "") + internal var generic_loading_data: String { + NSLocalizedString("generic_loading_data", tableName: kStringsFileName, bundle: Bundle.main, value: "Loading\ndata...", comment: "") } /// Translation in en : @@ -62,7 +62,7 @@ extension String { /// /// Comment : /// No comment - public var generic_welcome_firstname_format: String { + internal var generic_welcome_firstname_format: String { NSLocalizedString("generic_welcome_firstname_format", tableName: kStringsFileName, bundle: Bundle.main, value: "Welcome \"%@\" !", comment: "") } /// Translation in en : @@ -70,7 +70,7 @@ extension String { /// /// Comment : /// No comment - public func generic_welcome_firstname_format(arg0: String) -> String { + internal func generic_welcome_firstname_format(arg0: String) -> String { String(format: self.generic_welcome_firstname_format, arg0) } @@ -81,7 +81,7 @@ extension String { /// /// Comment : /// No comment - public var test_equal_symbol: String { + internal var test_equal_symbol: String { NSLocalizedString("test_equal_symbol", tableName: kStringsFileName, bundle: Bundle.main, value: "1€ = 1 point !", comment: "") } @@ -92,7 +92,7 @@ extension String { /// /// Comment : /// No comment - public var placeholders_test_one: String { + internal var placeholders_test_one: String { NSLocalizedString("placeholders_test_one", tableName: kStringsFileName, bundle: Bundle.main, value: "You %%: %2$@ %1$@ Age: %3$d", comment: "") } /// Translation in en : @@ -100,7 +100,7 @@ extension String { /// /// Comment : /// No comment - public func placeholders_test_one(arg0: String, arg1: String, arg2: Int) -> String { + internal func placeholders_test_one(arg0: String, arg1: String, arg2: Int) -> String { String(format: self.placeholders_test_one, arg0, arg1, arg2) } } diff --git a/SampleFiles/Strings/Generated/sampleStrings.xcstrings b/SampleFiles/Strings/Generated/sampleStrings.xcstrings index 323caba..652fa16 100644 --- a/SampleFiles/Strings/Generated/sampleStrings.xcstrings +++ b/SampleFiles/Strings/Generated/sampleStrings.xcstrings @@ -32,19 +32,19 @@ "en" : { "stringUnit" : { "state" : "translated", - "value" : "Loading data..." + "value" : "Loading\ndata..." } }, "en-us" : { "stringUnit" : { "state" : "translated", - "value" : "Loading data..." + "value" : "Loading\ndata..." } }, "fr" : { "stringUnit" : { "state" : "translated", - "value" : "Chargement des données..." + "value" : "Chargement\ndes données..." } } } @@ -56,19 +56,19 @@ "en" : { "stringUnit" : { "state" : "translated", - "value" : "Welcome \\\"%@\\\" !" + "value" : "Welcome \"%@\" !" } }, "en-us" : { "stringUnit" : { "state" : "translated", - "value" : "Welcome \\\"%@\\\" !" + "value" : "Welcome \"%@\" !" } }, "fr" : { "stringUnit" : { "state" : "translated", - "value" : "Bienvenue \\\"%@\\\" !" + "value" : "Bienvenue \"%@\" !" } } } diff --git a/SampleFiles/Strings/sampleStrings.txt b/SampleFiles/Strings/sampleStrings.txt index f6a94d5..014a6fd 100644 --- a/SampleFiles/Strings/sampleStrings.txt +++ b/SampleFiles/Strings/sampleStrings.txt @@ -14,11 +14,11 @@ fr = Retour en-us = Back [generic_loading_data] - en = Loading data... + en = Loading\ndata... tags = droid,ios comments = - fr = Chargement des données... - en-us = Loading data... + fr = Chargement\ndes données... + en-us = Loading\ndata... [generic_welcome_firstname_format] en = Welcome "%@" ! tags = droid,ios diff --git a/SampleFiles/genAllRessources.sh b/SampleFiles/genAllRessources.sh index 536a461..b30e8ec 100755 --- a/SampleFiles/genAllRessources.sh +++ b/SampleFiles/genAllRessources.sh @@ -3,34 +3,34 @@ FORCE_FLAG="$1" ## Font -swift run -c release ResgenSwift fonts $FORCE_FLAG "./Fonts/sampleFontsAll.txt" \ - --extension-output-path "./Fonts/Generated" \ - --extension-name "FontYolo" \ - --extension-name-ui-kit "UIFontYolo" \ - --extension-suffix "GenAllScript" \ - --info-plist-paths "./Fonts/Generated/test.plist ./Fonts/Generated/test2.plist" - -echo "\n-------------------------\n" - -## Color -swift run -c release ResgenSwift colors $FORCE_FLAG "./Colors/sampleColors1.txt" \ - --style all \ - --xcassets-path "./Colors/colors.xcassets" \ - --extension-output-path "./Colors/Generated/" \ - --extension-name "ColorYolo" \ - --extension-name-ui-kit "UIhkjhkColorYolo" \ - --extension-suffix "GenAllScript" - -echo "\n-------------------------\n" - -## Twine -swift run -c release ResgenSwift strings twine $FORCE_FLAG "./Twine/sampleStrings.txt" \ - --output-path "./Twine/Generated" \ - --langs "fr en en-us" \ - --default-lang "en" \ - --extension-output-path "./Twine/Generated" - -echo "\n-------------------------\n" +#swift run -c release ResgenSwift fonts $FORCE_FLAG "./Fonts/sampleFontsAll.txt" \ +# --extension-output-path "./Fonts/Generated" \ +# --extension-name "FontYolo" \ +# --extension-name-ui-kit "UIFontYolo" \ +# --extension-suffix "GenAllScript" \ +# --info-plist-paths "./Fonts/Generated/test.plist ./Fonts/Generated/test2.plist" +# +#echo "\n-------------------------\n" +# +### Color +#swift run -c release ResgenSwift colors $FORCE_FLAG "./Colors/sampleColors1.txt" \ +# --style all \ +# --xcassets-path "./Colors/colors.xcassets" \ +# --extension-output-path "./Colors/Generated/" \ +# --extension-name "ColorYolo" \ +# --extension-name-ui-kit "UIhkjhkColorYolo" \ +# --extension-suffix "GenAllScript" +# +#echo "\n-------------------------\n" +# +### Twine +#swift run -c release ResgenSwift strings twine $FORCE_FLAG "./Twine/sampleStrings.txt" \ +# --output-path "./Twine/Generated" \ +# --langs "fr en en-us" \ +# --default-lang "en" \ +# --extension-output-path "./Twine/Generated" +# +#echo "\n-------------------------\n" ## Strings swift run -c release ResgenSwift strings stringium $FORCE_FLAG "./Strings/sampleStrings.txt" \ @@ -41,31 +41,31 @@ swift run -c release ResgenSwift strings stringium $FORCE_FLAG "./Strings/sample --extension-name "String" \ --extension-suffix "GenAllScript" -echo "\n-------------------------\n" - -## Tags -swift run -c release ResgenSwift strings tags $FORCE_FLAG "./Tags/sampleTags.txt" \ - --lang "ium" \ - --extension-output-path "./Tags/Generated" \ - --extension-name "Tags" \ - --extension-suffix "GenAllScript" - -echo "\n-------------------------\n" - -# Analytics -swift run -c release ResgenSwift analytics $FORCE_FLAG "./Tags/sampleTags.yml" \ - --target "firebase" \ - --extension-output-path "./Tags/Generated" \ - --extension-name "Analytics" \ - --extension-suffix "GenAllScript" \ - --static-members true - -echo "\n-------------------------\n" - -## Images -swift run -c release ResgenSwift images $FORCE_FLAG "./Images/sampleImages.txt" \ - --xcassets-path "./Images/imagium.xcassets" \ - --extension-output-path "./Images/Generated" \ - --extension-name "ImageYolo" \ - --extension-name-ui-kit "UIImageYolo" \ - --extension-suffix "GenAllScript" +#echo "\n-------------------------\n" +# +### Tags +#swift run -c release ResgenSwift strings tags $FORCE_FLAG "./Tags/sampleTags.txt" \ +# --lang "ium" \ +# --extension-output-path "./Tags/Generated" \ +# --extension-name "Tags" \ +# --extension-suffix "GenAllScript" +# +#echo "\n-------------------------\n" +# +## Analytics +#swift run -c release ResgenSwift analytics $FORCE_FLAG "./Tags/sampleTags.yml" \ +# --target "firebase" \ +# --extension-output-path "./Tags/Generated" \ +# --extension-name "Analytics" \ +# --extension-suffix "GenAllScript" \ +# --static-members true +# +#echo "\n-------------------------\n" +# +### Images +#swift run -c release ResgenSwift images $FORCE_FLAG "./Images/sampleImages.txt" \ +# --xcassets-path "./Images/imagium.xcassets" \ +# --extension-output-path "./Images/Generated" \ +# --extension-name "ImageYolo" \ +# --extension-name-ui-kit "UIImageYolo" \ +# --extension-suffix "GenAllScript" diff --git a/Sources/ResgenSwift/Strings/Generator/StringsFileGenerator.swift b/Sources/ResgenSwift/Strings/Generator/StringsFileGenerator.swift index 73b420d..1d06422 100644 --- a/Sources/ResgenSwift/Strings/Generator/StringsFileGenerator.swift +++ b/Sources/ResgenSwift/Strings/Generator/StringsFileGenerator.swift @@ -133,15 +133,17 @@ enum StringsFileGenerator { tags inputTags: [String], sections: [Section] ) -> String { - let rootObject = generateRootObject( - langs: langs, - defaultLang: defaultLang, - tags: inputTags, - sections: sections + generateXcStringsFileContentFromRootObject( + rootObject: generateRootObject( + langs: langs, + defaultLang: defaultLang, + tags: inputTags, + sections: sections + ) ) - let file = generateXcStringsFileContentFromRootObject(rootObject: rootObject) - - return file + // Remove unwanted \ generated when transforming object to json + .replacingOccurrences(of: "\\\\", with: "\\") + .replacingOccurrences(of: "\\\"", with: "\"") } static func generateXcStringsFileContentFromRootObject(rootObject: Root) -> String { @@ -196,7 +198,10 @@ enum StringsFileGenerator { let localization = XCStringLocalization( lang: lang, content: XCStringLocalizationLangContent( - stringUnit: DefaultStringUnit(state: "translated", value: value) + stringUnit: DefaultStringUnit( + state: "translated", + value: value + ) ) ) localizationTab.append(localization) @@ -208,10 +213,13 @@ enum StringsFileGenerator { let localization = XCStringLocalization( lang: lang, content: XCStringLocalizationLangContent( - stringUnit: DefaultStringUnit(state: "translated", value: value) + stringUnit: DefaultStringUnit( + state: "translated", + value: value + ) ) ) - + print("VALUE: \(value)") localizationTab.append(localization) } }