shithub: hugo

Download patch

ref: bc06135c96aa4db6fe36a4fc4f19a18fa1cb8935
parent: 45e3ed517a17648d54e8ce33618a8f251cfec603
author: Bjørn Erik Pedersen <[email protected]>
date: Sat Jan 7 14:29:20 EST 2017

helpers: Allow tilde in URLs

See #2177

--- a/helpers/path.go
+++ b/helpers/path.go
@@ -124,7 +124,7 @@
 	for i, r := range source {
 		if r == '%' && i+2 < len(source) && ishex(source[i+1]) && ishex(source[i+2]) {
 			target = append(target, r)
-		} else if unicode.IsLetter(r) || unicode.IsDigit(r) || unicode.IsMark(r) || r == '.' || r == '/' || r == '\\' || r == '_' || r == '-' || r == '#' || r == '+' {
+		} else if unicode.IsLetter(r) || unicode.IsDigit(r) || unicode.IsMark(r) || r == '.' || r == '/' || r == '\\' || r == '_' || r == '-' || r == '#' || r == '+' || r == '~' {
 			target = append(target, r)
 		}
 	}
--- a/helpers/path_test.go
+++ b/helpers/path_test.go
@@ -58,6 +58,8 @@
 		{"संस्कृत", "संस्कृत", false},
 		{"a%C3%B1ame", "a%C3%B1ame", false},         // Issue #1292
 		{"this+is+a+test", "this+is+a+test", false}, // Issue #1290
+		{"~foo", "~foo", false},                     // Issue #2177
+
 	}
 
 	for _, test := range tests {