As promised, a technical write-up about the knowledge-journey I went on to implement Japanese Unicode support in my software-rendered retro game engine.

There's a lot of juicy bits here about Unicode, string parsing, localization strategies, and more! Enjoy!

https://blog.brianna.town/japanese-font-support

#gamedev #indiedev #japanese #retrocomputing #unicode #gaming #pixelart

Japanese Font Support

Or: The Least Critical-Path Feature I Could Have Possibly Spent a Day On The General Plan Localization has been on my mind a bit recen...

The Ebonheim Chronicle
@britown This is one of my blindspots, I'll have to check it out!
@britown Alright, I read through it and I have a couple of thoughts. The minor one is that writing a basic UTF-8 transcoder is a write of passage in text handling IMO. The second is have you thought about formatted strings at all/do you use formatted strings? That's one of the biggest things I'm worried I'll screw up because different languages have different rules for "you have %d item%s" sorts of strings. For me Unicode is mildly scary but not particularly intimidating because it's got a doc..
@gudenau so right now I use a printf-style formatter that is %s %d etc but that is prone to an issue where the translated text might need to change the order of the arguments. A fix for that is to use a custom formatting scheme where you mark you arguments as like {0} {1} etc so the text can move them around but still be referencing the same argument list.
@britown Yeah that's what I was afraid of, I really don't like using the braces for format strings but I guess I'll have to.