diff --git a/Sources/GenerationLibrary/Generation.swift b/Sources/GenerationLibrary/Generation.swift index c2f6efb..c7ec4c2 100644 --- a/Sources/GenerationLibrary/Generation.swift +++ b/Sources/GenerationLibrary/Generation.swift @@ -224,7 +224,7 @@ public enum Generation { ) -> String { var result = "public func string(for language: String) -> String {\n" let languages = getLanguages(dictionary: dictionary) - for language in languages where language != defaultLanguage { + for language in languages.sorted().reversed() where language != defaultLanguage { result += indent("if language.hasPrefix(\"\(language)\") {", by: indentTwo) result += indent("\nreturn \(language)", by: indentThree) result += indent("\n} else", by: indentTwo) diff --git a/Sources/Localized/System.swift b/Sources/Localized/System.swift index d9dd576..0a72e83 100644 --- a/Sources/Localized/System.swift +++ b/Sources/Localized/System.swift @@ -21,8 +21,7 @@ public enum System { guard let lang = ProcessInfo.processInfo.environment["LANG"] else { return "en" } - let components = lang.split(separator: "_") - systemLanguage = .init(components.first ?? "en") + systemLanguage = lang #endif #if os(macOS) systemLanguage = Locale.preferredLanguages.first diff --git a/Tests/PluginTests/Localized.yml b/Tests/PluginTests/Localized.yml index 4eafe72..7d4b005 100644 --- a/Tests/PluginTests/Localized.yml +++ b/Tests/PluginTests/Localized.yml @@ -4,6 +4,7 @@ hello(name): en: Hello, (name)! de: Hallo, (name)! fr: Salut, (name)! + pt_BR: Olá, (name)! house: en: House