Even though there are “hacks” to create files with illegal filenames in Windows (e.g. the trailing space mentioned above, or things like nul, com1, etc.), Windows Explorer (and most other Windows software) cannot deal with them, thus Syncthing prevents such files from being synced to Windows systems.
But the name is not illegal. It is possible to create directory with such name.
If file system supports such directory then it should be available.
Windows Explorer cannot be used as source of rules.
I do not know if answer matches specification, but it looks so:
Non printable ASCII 0-31, but space is 32. So it is the bug in Syncthing.
This has been discussed to death on the GitHub issue tracker, so I would suggest looking up the multiple issues that have dealt with this problem so far.
The main idea for using Windows Explorer as the baseline is that this is what your typical Windows user is going to use when dealing with files created by Syncthing. If they cannot delete a file that has been synced to their computer (e.g. in a folder that their Linux friend has added there), they will come here complaining about Syncthing creating “broken” files.
Yeah, I would have no problem with having an advanced option for this. However, this still requires the code responsible for enabling and disabling the option, so unless someone decides to do the work, you’re out of luck, at least for now, unfortunately.
I am just a regular user (and a minor contributor, but with no real responsibility), so you may only try to put a feature request on GitHub. Don’t be surprised if it gets closed though, unless you follow up with a relevant pull request, as there are lots of feature requests there hanging around for many years now, and the maintainers may not want any more added to the already very long list.
Sad, I tried Syncthing many years ago, now I am trying to give it 2nd chance ))
And no luck as I see… Nothing is changed, great idea, problematic implementation.
Well, if you absolutely need this feature, at the moment the only possible way would be to modify the code yourself and disable/remove the relevant parts, and then compile your own binaries. Not necessary recommending going this route, but there is likely no other alternative.
Do not end a file or directory name with a space or a period. Although the underlying file system may support such names, the Windows shell and user interface does not. However, it is acceptable to specify a period as the first character of a name. For example, “.temp”
Please note that there is a draft PR that addresses this issue: https://github.com/syncthing/syncthing/pull/7876 . It’s still in draft status until more tests are written, but I am using the branch locally, on Windows and Linux systems, on NTFS and exFAT partitions, and don’t have any outstanding issues with the code.
It is not Win32 API. So kernel obviously support that.
It means you will not be able to create folder named “Some name”, if "Some name " exists using windows explorer. But even explorer can move or copy trees with such names.
So I can move directory tree to samba in both directions with Windows Explorer, but I cannot do that using Syncthing.