blob: e53bbaa5bf05ac9dc47e5cb4bf5145fd4e7d3845 [file] [log] [blame] [edit]
#!/usr/bin/env python3
import os
import os.path
def normpath(p, to=None):
p = os.path.realpath(os.path.abspath(p))
if to is None:
return p
return os.path.relpath(p, normpath(to))
def curpath(p):
return normpath(p, os.curdir)
def modfile(p, pattern):
assert "{}" not in p
filename = os.path.basename(p)
pathname = os.path.dirname(p)
newfilename = pattern.format(filename)
while newfilename.startswith(".."):
newfilename = newfilename[1:]
newpath = os.path.join(pathname, newfilename)
return newpath