I believe this is dependent on the application, but usually it uses the OS conventions. URLs are a notable exception: a file: URL currently forces the character to be $/ (though it just might possibly work if you used the local convention...).
By the way, Squeak on UNIX doesn't do any auto-correction if you use \ or : in filenames, because those are valid characters for a file to have. The fact that most Windows systems auto-correct when you use a /, even outside of Squeak, is because:
1) Most Windows things are written in C or C++, and C originated on Unix, and so people would like to compile the examples out of their C books.
2) You have to escape \'s in C strings, which makes the paths harder to read. "/dos/system.ini" versus "\\dos\\system.ini".
3) It's really easy to implement.
Similarly, files in Windows tend to convert from CRLF to LF line endings in their default mode; this lets Unix programs be recompiled without much effort, and it's nicer anyways just having a single newline character to deal with instead of a pair of characters. For instance, what do you do if you see just a LF or CR by itself?
Lex
Kevin Fisher <kfisher at rim.net> wrote:
>> Oh and can someone clear up a long-standing mystery with me: Directory
> delimination on differing operating systems! For example, when setting up the
> Server Directory in the PWS should I be using 'C:\squeak\Server' or
> 'C:$\squeak$\Server'? Likewise for UNIX, I guess, substituting \ with /...
> The FileStream class 'automatically' figures things out, right (through
> StandardFileStream or CrLfFileStream)?
>