Package fspath contains routines for fspath manipulation
func CheckConfigName ¶
CheckConfigName returns an error if configName is invalid
func CheckRemoteName ¶
CheckRemoteName returns an error if remoteName is invalid
func JoinRootPath ¶
JoinRootPath joins any number of path elements into a single path, adding a separating slash if necessary. The result is Cleaned; in particular, all empty strings are ignored. If the first non empty element has a leading "//" this is preserved.
Parse deconstructs a remote path into configName and fsPath ¶
If the path is a local path then configName will be returned as "".
So "remote:path/to/dir" will return "remote", "path/to/dir" and "/path/to/local" will return ("", "/path/to/local")
Note that this will turn \ into / in the fsPath on Windows
An error may be returned if the remote name has invalid characters in it or if the path is empty.
Split splits a remote into a parent and a leaf ¶
if it returns leaf as an empty string then remote is a directory
if it returns parent as an empty string then that means the current directory
The returned values have the property that parent + leaf == remote (except under Windows where \ will be translated into /)