utils.py
32 lines
| 1.0 KiB
| text/x-python
|
PythonLexer
Brian E. Granger
|
r10642 | """Notebook related utilities | ||
Authors: | ||||
* Brian Granger | ||||
""" | ||||
#----------------------------------------------------------------------------- | ||||
# Copyright (C) 2011 The IPython Development Team | ||||
# | ||||
# Distributed under the terms of the BSD License. The full license is in | ||||
# the file COPYING, distributed as part of this software. | ||||
#----------------------------------------------------------------------------- | ||||
#----------------------------------------------------------------------------- | ||||
# Imports | ||||
#----------------------------------------------------------------------------- | ||||
def url_path_join(*pieces): | ||||
"""Join components of url into a relative url | ||||
Use to prevent double slash when joining subpath. This will leave the | ||||
initial and final / in place | ||||
""" | ||||
initial = pieces[0].startswith('/') | ||||
final = pieces[-1].endswith('/') | ||||
striped = [s.strip('/') for s in pieces] | ||||
result = '/'.join(s for s in striped if s) | ||||
if initial: result = '/' + result | ||||
if final: result = result + '/' | ||||
Brian E. Granger
|
r10644 | if result == '//': result = '/' | ||
Brian E. Granger
|
r10642 | return result | ||