On Mon, 18 Jul 2011 13:26:08 -0400, Steven Schveighoffer wrote:

> On Sun, 17 Jul 2011 18:24:30 -0400, Andrej Mitrovic
> <[email protected]> wrote:
> 
>> On 7/17/11, Lars T. Kyllingstad <[email protected]> wrote:
>>> - Should I add toNativePath(), which replaces '/' with '\' on Windows
>>> and
>>> vice versa on POSIX?
>>
>> Actually I withdraw that feature request. Some tools will work with
>> only forward slashes, others only backward slashes, but this is
>> regardless of what platform they're on.
>>
>> E.g. some tools don't work with forward slashes, while GIT doesn't work
>> with backward slashes when running on Windows.
>>
>> I think .replace(r"\", "/") and .replace("/", r"\") are good enough,
>> but maybe an alias to each version wouldn't be bad. E.g.
>> "toForwardSlash" and "toBackslash". It's not hard to define this in our
>> own code, so it's not really a feature request.
> 
> 
> Hum... I wonder if normalize should do this...
> 
> Is normalize supposed to create a canonical path?  If so, then this
> needs to happen.

normalize does this on Windows, where '/' is also a directory separator, 
but not on POSIX, where '\' is an ordinary filename character.

I am not entirely sure what the exact definition of "canonical path" is, 
but according to some it entails resolving symlinks.  normalize does not 
do this, but it does everything else:

  - resolves . and .. to the extent possible
  - collapses redundant directory separators
  - changes '/' to '\' on Windows

-Lars
-Lars

Reply via email to