Skip to main content

Url

Host.Url(path) constructs a URL path object for file operations, package resources, and navigation.

Properties

PropertyTypeWritableExampleDescription
namestringNo"file.txt"Last path component
urlstringNo"local://$USERCONTENT/folder/file.txt"Full URL string
extensionstringNo"txt"File extension
protocolstringNo"local", "memory"URL protocol scheme
hostnamestringNo"$USERCONTENT", "test"Host portion of the URL

Methods

MethodReturnsParametersDescription
ascend()noneNavigate up one directory level
descend(name)name — subdirectory or file name stringNavigate into a subdirectory
contains(filter)filter — filter stringCheck or apply a named filter
fromDisplayString(str)str — display stringParse a file path from a display string
getName()stringnoneGet the last path component (same as .name)
makeUnique()noneGenerate a unique file name variant
toDisplayString()stringnoneConvert the path to a display string

URL Schemes

local://$USERCONTENT/ — User content directory for persistent file storage.

var path = Host.Url("local://$USERCONTENT/folder/file.txt");
path.ascend(); // -> $USERCONTENT/folder/
path.descend("file.txt"); // -> $USERCONTENT/folder/file.txt

package://PackageID/ — Package resources directory (PackageID from metainfo.xml).

var res = Host.Url("package://" + packageID + "/resources/menu.xml");

memory:// — Temporary in-memory URL. Supports ascend()/descend() navigation and Host.IO.findFiles().

var mem = Host.Url("memory://MyNamespace/", true);
mem.descend("child"); // url -> "memory://MyNamespace/child"
mem.ascend(); // url -> "memory://MyNamespace/"

Document Path Access

The active document's .path property returns a Host.Url-like object.

function getSongFolder(fileName) {
var docManager = Host.Objects.getObjectByUrl("://hostapp/DocumentManager");
var doc = docManager.activeDocument;
var path = doc.path;
path.ascend();
path.descend(fileName);
return path;
}