def pluggable_url(parser, token):
    bits = token.contents.split(' ')
    if len(bits) < 2:
        raise TemplateSyntaxError("'%s' takes at least one argument"
                                  " (path to a view)" % bits[0])
    request = parser.compile_filter('request')
    viewname = bits[1]
    args = []
    kwargs = {}
    asvar = None

    if len(bits) > 2:
        bits = iter(bits[2:])
        for bit in bits:
            if bit == 'as':
                asvar = bits.next()
                break
            else:
                for arg in bit.split(","):
                    if '=' in arg:
                        k, v = arg.split('=', 1)
                        k = k.strip()
                        kwargs[k] = parser.compile_filter(v)
                    elif arg:
                        args.append(parser.compile_filter(arg))
    return PluggableURLNode(request, viewname, args, kwargs, asvar)
:param rel_path: Base path of the "source" file paths. By default, path of the
dataset/ETHPy150Open nowells/django-pluggables/pluggables/templatetags/pluggables.py/pluggable_url--crossover with--dataset/ETHPy150Open pantsbuild/pants/src/python/pants/backend/jvm/targets/jvm_app.py/Bundle.__call__