# Localization on iOS

**URL:** <https://forum.juce.com/t/localization-on-ios/11315>\
**Category:** MacOSX and iOS\
**Created:** [August 20, 2013, 9:51am UTC](https://forum.juce.com/t/localization-on-ios/11315 "2013-08-20T09:51:27Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![billythekid](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/billythekid/32/88_2.png) [@billythekid](https://forum.juce.com/u/billythekid)\
**Post date:** [August 20, 2013, 9:51am UTC](https://forum.juce.com/t/localization-on-ios/11315/1 "2013-08-20T09:51:27Z")

</div>

Has anyone managed to localize their iOS app using the newish TRANS macro in juce, so that the language displayed matches the language settings of the phone?

---

<div class="post-metadata">

**Author:** ![symfonysid](https://avatars.discourse-cdn.com/v4/letter/s/82dd89/32.png) [@symfonysid](https://forum.juce.com/u/symfonysid)\
**Post date:** [August 25, 2013, 6:23pm UTC](https://forum.juce.com/t/localization-on-ios/11315/2 "2013-08-25T18:23:44Z")

</div>

Yeap, I'm not sure how Jules uses this macro himself, but what I did was I wrote a python script that parses out all the text surrounded by the trans macro and writes it to a property file with a default where the key equals the value. &nbsp;If the property file exists already, it just updates the file with the new keys and doesn't overwrite any existing translations. &nbsp;Whenever there are any variables that need to be replaced in a display string, I've been using the String&nbsp;replace method to actually do so like this: TRANS("Loading preset '$1'").replace("$1", preset-\>getName())
