使用Swift 5.3,最终可以添加本地化资源?
包初始值设定项现在有一个defaultLocalization
参数,可用于本地化资源.
public init(
name: String,
defaultLocalization: LocalizationTag = nil, // New defaultLocalization parameter.
pkgConfig: String? = nil,
providers: [SystemPackageProvider]? = nil,
products: [Product] = [],
dependencies: [Dependency] = [],
targets: [Target] = [],
swiftLanguageVersions: [Int]? = nil,
cLanguageStandard: CLanguageStandard? = nil,
cxxLanguageStandard: CXXLanguageStandard? = nil
)
假设你有一个Icon.png
,你想为说英语和德语的人本地化.
图像应包含在Resources/en.lproj/Icon.png
&;Resources/de.lproj/Icon.png
在您的软件包中引用它们之后:
let package = Package(
name: "BestPackage",
defaultLocalization: "en",
targets: [
.target(name: "BestTarget", resources: [
.process("Resources/Icon.png"),
])
]
)
请注意LocalizationTag
是IETF Language Tag的包装.
学分和following proposals overview的输入,请查看更多细节.