Grammatical agreement
Use
^[Bienvenido](inflect: true) a tu iPhoneto provide automatic inflection (in supported languages like Spanish, French, or Italian)New locales added: European Portuguese and German
Dependency agreement
New API on localization options named
conceptsto pass a distinct string to another string which are related (e.g. ingredients of a food)
var options = AttributedString.LocalizationOptions()
options.concepts = [.localizedPhrase(food.localizedName)]
let size = AttributedString(localized: "small", options: options)To choose the concept, provide a 1-indexed value like in
^pequeno](agreeWithConcept: 1)The new
agreeWithConceptoption can be used even in older OS versions – it’ll be ignored in them

When multiple inflections in one text needed but only one gets
%@argument passed, use newagreeWithArgument: 1instead on other


To make demonstrative adjectives grammatically agree in French, use
^[Ce %@](inflect: true) conteient : %@.
Inclusive language
New type
TermOfAddressfor.masculine,.feminine, or.neutral– can be passed as localization option in.conceptsarray

New
referenceConceptattribute in agreement, like"\(person.name) is on ^[their](referentConcept: 1) way."You can provide custom
TermOfAddressusingTermOfAddress.localized(language:pronouns:)and pass array ofMophology.Pronoun

