Handle backslash in xcstrings file generation
All checks were successful
gitea-openium/resgen.swift/pipeline/head This commit looks good

This commit is contained in:
2025-08-04 10:38:45 +02:00
parent f329386ccf
commit 2ae06867c7
5 changed files with 96 additions and 88 deletions

View File

@@ -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)
}
}