# How can I remove a localization from a String Catalog in a Swift Package?

**URL:** <https://forums.swift.org/t/how-can-i-remove-a-localization-from-a-string-catalog-in-a-swift-package/82840>\
**Category:** Using Swift\
**Created:** [October 24, 2025, 12:34pm UTC](https://forums.swift.org/t/how-can-i-remove-a-localization-from-a-string-catalog-in-a-swift-package/82840 "2025-10-24T12:34:38Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![alpennec](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/alpennec/32/43211_2.png) [@alpennec](https://forums.swift.org/u/alpennec)\
**Post date:** [October 24, 2025, 12:34pm UTC](https://forums.swift.org/t/how-can-i-remove-a-localization-from-a-string-catalog-in-a-swift-package/82840/1 "2025-10-24T12:34:38Z")

</div>

Hello,

I'm trying to remove a localization from a String Catalog in a Swift Package. How can I do that?

I tried to remove the file and create a new one, but all the languages are back. The only place where I've found a reference to the languages is in Package/.swiftpm/xcode/package.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstate

But I don't know how to edit this file to remove a language.

Thank you,  
Axel

---

<div class="post-metadata">

**Author:** ![alpennec](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/alpennec/32/43211_2.png) [@alpennec](https://forums.swift.org/u/alpennec)\
**Post date:** [October 27, 2025, 9:07am UTC](https://forums.swift.org/t/how-can-i-remove-a-localization-from-a-string-catalog-in-a-swift-package/82840/2 "2025-10-27T09:07:45Z")

</div>

Hello,

The solution I came up to was:

1. Close Xcode.
2. Remove the hidden folder `.swiftpm` from the Package folder. I noticed the UserInterfaceState.xcuserstate file in a subfolder of this folder contained some references to the languages (I could find language codes in it like "pt-PT").
3. Open the package again with Xcode.

The languages that weren't translated at all (0% progress) got removed from the string catalog. The other languages where at least one string was translated stayed in the string catalog.

I don't think this is ideal but I hope it can help others.

Axel
