Cross platform: character sets and filename limitations

Yes.

This is tricky and I haven’t seen a proposal yet that I liked. Specifically, I don’t like…

  • replacing characters with underscores or similar: how do we tell the difference between a file just called foo_bar.txt and one renamed to that from foo:bar.txt? What if both exist on the Mac?

  • renaming files to something like above and keeping the actual file name in the index (side channel): what if we lose the index and forget the mapping?

  • renaming files to the SHA256 hash of the actual file name or similar: too user unfriendly, and again, what if we just happen to have a file called that to begin with? Also this is one way so again depends on the side channel.

That’s what I come up with from the top of my head, but throw in more ideas and I’ll try to shoot them down. :wink: If I can’t, we can implement it.

One thing we could do (but that I don’t particularly like either) is to rename or suggest renaming the files on the source (Mac or Linux).

1 Like