This is applicable to almost any piece of software with text in it. When starting your new app, you should make sure you are using a separate language file for the strings in your app. This makes text reusable, and you can change it all in one place.

Once your app gains a community, if you did this, you can also get translators!

With Photon i made the massive mistake of hardcoding everything up until the app became massive, and my PR for un-hardcoding all the strings looks like this:

The amount of lines modified in the GitHub PR. 2,067 lines added, 1,082 removed.

It was worth it though! Because the community has translated it into 11 languages!

  • Prunebutt@slrpnk.net
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    edit-2
    3 months ago

    Also: shouldn’t the process of searching and replacing strings be quite easy to automate?

    Edit to clarify: I meant searching and replacing hard-coded strings into whatever library handles translateable strings. Not hard-coding different languages.

      • Prunebutt@slrpnk.net
        link
        fedilink
        arrow-up
        2
        arrow-down
        1
        ·
        3 months ago

        Ok, that’s fair. I’d probably add a # FIXXME flag when I don’t want to mess around with that stuff for the moment to do that.