mirror of
https://github.com/python/cpython.git
synced 2025-08-02 16:13:13 +00:00
Bug #649974: make docstrings for url2pathname consistent
This commit is contained in:
parent
ddddd2f7e6
commit
c0b24734e0
4 changed files with 25 additions and 21 deletions
|
@ -8,7 +8,8 @@ import os
|
||||||
__all__ = ["url2pathname","pathname2url"]
|
__all__ = ["url2pathname","pathname2url"]
|
||||||
|
|
||||||
def url2pathname(pathname):
|
def url2pathname(pathname):
|
||||||
"Convert /-delimited pathname to mac pathname"
|
"""OS-specific conversion from a relative URL of the 'file' scheme
|
||||||
|
to a file system path; not recommended for general use."""
|
||||||
#
|
#
|
||||||
# XXXX The .. handling should be fixed...
|
# XXXX The .. handling should be fixed...
|
||||||
#
|
#
|
||||||
|
@ -49,7 +50,8 @@ def url2pathname(pathname):
|
||||||
return urllib.unquote(rv)
|
return urllib.unquote(rv)
|
||||||
|
|
||||||
def pathname2url(pathname):
|
def pathname2url(pathname):
|
||||||
"convert mac pathname to /-delimited pathname"
|
"""OS-specific conversion from a file system path to a relative URL
|
||||||
|
of the 'file' scheme; not recommended for general use."""
|
||||||
if '/' in pathname:
|
if '/' in pathname:
|
||||||
raise RuntimeError, "Cannot convert pathname containing slashes"
|
raise RuntimeError, "Cannot convert pathname containing slashes"
|
||||||
components = pathname.split(':')
|
components = pathname.split(':')
|
||||||
|
|
|
@ -1,14 +1,12 @@
|
||||||
"""Convert a NT pathname to a file URL and vice versa."""
|
"""Convert a NT pathname to a file URL and vice versa."""
|
||||||
|
|
||||||
def url2pathname(url):
|
def url2pathname(url):
|
||||||
r"""Convert a URL to a DOS path.
|
"""OS-specific conversion from a relative URL of the 'file' scheme
|
||||||
|
to a file system path; not recommended for general use."""
|
||||||
///C|/foo/bar/spam.foo
|
# e.g.
|
||||||
|
# ///C|/foo/bar/spam.foo
|
||||||
becomes
|
# becomes
|
||||||
|
# C:\foo\bar\spam.foo
|
||||||
C:\foo\bar\spam.foo
|
|
||||||
"""
|
|
||||||
import string, urllib
|
import string, urllib
|
||||||
# Windows itself uses ":" even in URLs.
|
# Windows itself uses ":" even in URLs.
|
||||||
url = url.replace(':', '|')
|
url = url.replace(':', '|')
|
||||||
|
@ -35,15 +33,12 @@ def url2pathname(url):
|
||||||
return path
|
return path
|
||||||
|
|
||||||
def pathname2url(p):
|
def pathname2url(p):
|
||||||
r"""Convert a DOS path name to a file url.
|
"""OS-specific conversion from a file system path to a relative URL
|
||||||
|
of the 'file' scheme; not recommended for general use."""
|
||||||
C:\foo\bar\spam.foo
|
# e.g.
|
||||||
|
# C:\foo\bar\spam.foo
|
||||||
becomes
|
# becomes
|
||||||
|
# ///C|/foo/bar/spam.foo
|
||||||
///C|/foo/bar/spam.foo
|
|
||||||
"""
|
|
||||||
|
|
||||||
import urllib
|
import urllib
|
||||||
if not ':' in p:
|
if not ':' in p:
|
||||||
# No drive specifier, just convert slashes and quote the name
|
# No drive specifier, just convert slashes and quote the name
|
||||||
|
|
|
@ -11,7 +11,8 @@ __all__ = ["url2pathname","pathname2url"]
|
||||||
__slash_dot = string.maketrans("/.", "./")
|
__slash_dot = string.maketrans("/.", "./")
|
||||||
|
|
||||||
def url2pathname(url):
|
def url2pathname(url):
|
||||||
"Convert URL to a RISC OS path."
|
"""OS-specific conversion from a relative URL of the 'file' scheme
|
||||||
|
to a file system path; not recommended for general use."""
|
||||||
tp = urllib.splittype(url)[0]
|
tp = urllib.splittype(url)[0]
|
||||||
if tp and tp <> 'file':
|
if tp and tp <> 'file':
|
||||||
raise RuntimeError, 'Cannot convert non-local URL to pathname'
|
raise RuntimeError, 'Cannot convert non-local URL to pathname'
|
||||||
|
@ -46,7 +47,8 @@ def url2pathname(url):
|
||||||
return '.'.join(components)
|
return '.'.join(components)
|
||||||
|
|
||||||
def pathname2url(pathname):
|
def pathname2url(pathname):
|
||||||
"Convert a RISC OS path name to a file url."
|
"""OS-specific conversion from a file system path to a relative URL
|
||||||
|
of the 'file' scheme; not recommended for general use."""
|
||||||
return urllib.quote('///' + pathname.translate(__slash_dot), "/$:")
|
return urllib.quote('///' + pathname.translate(__slash_dot), "/$:")
|
||||||
|
|
||||||
def test():
|
def test():
|
||||||
|
|
|
@ -50,8 +50,13 @@ elif os.name == 'riscos':
|
||||||
from rourl2path import url2pathname, pathname2url
|
from rourl2path import url2pathname, pathname2url
|
||||||
else:
|
else:
|
||||||
def url2pathname(pathname):
|
def url2pathname(pathname):
|
||||||
|
"""OS-specific conversion from a relative URL of the 'file' scheme
|
||||||
|
to a file system path; not recommended for general use."""
|
||||||
return unquote(pathname)
|
return unquote(pathname)
|
||||||
|
|
||||||
def pathname2url(pathname):
|
def pathname2url(pathname):
|
||||||
|
"""OS-specific conversion from a file system path to a relative URL
|
||||||
|
of the 'file' scheme; not recommended for general use."""
|
||||||
return quote(pathname)
|
return quote(pathname)
|
||||||
|
|
||||||
# This really consists of two pieces:
|
# This really consists of two pieces:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue