Problem with filenames under linux (german umlaut)


Junge

Recommended Posts

Hi guys

I installed btsync on 3 machines: 2 win and 1 linux machine. the sync between the win machines works fine. but the sync to the linux machines causes problems.

before I startet the sync via btsync I manually synced with a windows programm over samba, so all the files were identical. now after starting btsync all files that had special characters like german umlauts (üöä) or french accents (éèê) caused problems. btsync made an extra copy of these files on my linux machine. This led to the fact that all files with special characters in their names that exististed before I started the initial btsync where duplicated on my linux machine. eg zfrénch and zfrénch

When I create (as an example) a file named: zfrénch on my win machine - on my linux machine I get a file named: zfrénch

Also when I create a file with special characters on my linux machine btsync doesn't recognize it and therefore doesn't sync it.

btsync is not able to read files with filenames containing special characters on my linux machine.

I use the 1.1.42-2~wheezy debian package called btsync.

my linux system runs with the de_DE@euro locale which is iso8859-15 or latin-9.

I would really appreciate some help with this since btsync is a really great program and I would like to enjoy it to it's full extent.

Link to comment
Share on other sites

BTSync assumes your Linux machine is using UTF-8 for it's system character set (locale de_DE.UTF-8 or similar).

You really should switch to it you know, otherwise how can you represent a file with a "☺" or a "☢" in the name.

Modern terminal emulators can all do UTF-8. (By definition :) ) If yours isn't modern I, of course, would recommend PuTTY or Pterm.

Link to comment
Share on other sites

Thank you for the answer.

Still I think this is bug. BTSync shouldn't just assume something. It should read the locales like every other program and afterwards KNOW which character set is beeing used.

So far the system works quite fine with iso8859-15. afaik Windows uses Win-1252 which is iso8859-something anyway. There won't be any filenames windows can't handle.

Sooo... any other suggestions?

Thank you

Link to comment
Share on other sites

NT based Windows uses Unicode (UTF-16 to be exact nowadays) and always has done (Win95/98 can use unicode but don't by default). It converts the 'OEM' and 'ANSI' character sets using somewhat non-standard tables. The US and Western Europe windows ANSI character set is CP1252 which is an extension (or rather several extensions) of ISO-8859-1. The character set ISO-8859-15 does NOT contain all the graphic characters in the CP1252 set (nor does ISO-8859-1)

As I understand it, at the moment the Linux client does nothing with character sets, it's the windows client that converts it's UTF-16 characters to UTF-8 for transmission. I suspect it would be rather complex to add an iconv conversion in the filesystem interface of the Linux client because it would be really difficult to say what should happen when CJK is involved at one end or the other.

As for the other clients, there would probably have to be some complex choices as to the availability of the iconv library and data files (which are NOT insignificant) and a large number of new failure modes for very little gain.

All in all it would be a lot better if you switched to Unicode with the rest of the world and used "luit" for those applications that simply can't be converted at the moment.

But, don't forget to add this to the Wishlist thread.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.