redbluegames / unity-mulligan-renamer

Mulligan Renamer tool for the Unity Editor allows for quick and safe renaming of many assets and gameobjects at once
MIT License
546 stars 57 forks source link

Unicode characters such as Korean in Sprites fail to Rename #291

Closed edwardrowe closed 2 years ago

edwardrowe commented 2 years ago

Link to report: https://forum.unity.com/threads/mulligan-renamer.532182/#post-7850607

When a string like this: 한국어_0 Is serialized to YAML, it becomes: "\uD55C\uAD6D\uC5B4_0"

Things of note - it's escaped with ", and the "_0" did NOT get converted into unicode patterns.

When we regex search the meta file for "한국어", it obviously can't match "\uD55C" because they aren't the same string. Therefore these just fail to rename.

Note that Unity's Rename function does work because it just uses strings and they are never converted to YAML.

edwardrowe commented 2 years ago

I think the fix here is we need to convert the "old name" (the name we are searching on for a change) into whatever YAML format uses.

Unfortunately I don't think Unity's exposed their serialization utilities, and without that I'd be making an assumption and possibly pulling in a dependency I don't want.

So unfortunately I may have to leave this as is for now (Will not Fix).