Allow spaces in remotes and check remote names for validity at creation time - fixes #171

This commit is contained in:
Nick Craig-Wood 2015-10-12 17:54:09 +01:00
parent 6344c3051c
commit 4e952af614
2 changed files with 4 additions and 1 deletions

View file

@ -498,11 +498,14 @@ func EditConfig() {
for {
fmt.Printf("name> ")
name := ReadLine()
parts := matcher.FindStringSubmatch(name + ":")
switch {
case name == "":
fmt.Printf("Can't use empty name\n")
case isDriveLetter(name):
fmt.Printf("Can't use %q as it can be confused a drive letter\n", name)
case len(parts) != 3 || parts[2] != "":
fmt.Printf("Can't use %q as it has invalid characters in it %v\n", name, parts)
default:
NewRemote(name)
break nameLoop

View file

@ -284,7 +284,7 @@ func Find(name string) (*Info, error) {
}
// Pattern to match an rclone url
var matcher = regexp.MustCompile(`^([\w_-]+):(.*)$`)
var matcher = regexp.MustCompile(`^([\w_ -]+):(.*)$`)
// NewFs makes a new Fs object from the path
//