ref: 40fccf2251a7187f002165653d42178e2f53a49b
parent: b56362defd8f067a1bab2f5502e851dfd9311ec2
author: Daniel TISCHER <dos.7182@gmail.com>
date: Wed Nov 25 18:03:28 EST 2015
Fixes #1292
--- a/helpers/path.go
+++ b/helpers/path.go
@@ -96,7 +96,7 @@
target := make([]rune, 0, len(source))
for _, r := range source {- if unicode.IsLetter(r) || unicode.IsDigit(r) || unicode.IsMark(r) || r == '.' || r == '/' || r == '\\' || r == '_' || r == '-' || r == '#' {+ if unicode.IsLetter(r) || unicode.IsDigit(r) || unicode.IsMark(r) || r == '%' || r == '.' || r == '/' || r == '\\' || r == '_' || r == '-' || r == '#' {target = append(target, r)
}
}
--- a/helpers/path_test.go
+++ b/helpers/path_test.go
@@ -40,7 +40,7 @@
}{ {" Foo bar ", "Foo-bar", true}, {"Foo.Bar/foo_Bar-Foo", "Foo.Bar/foo_Bar-Foo", true},- {"fOO,bar:foo%bAR", "fOObarfoobAR", true},+ {"fOO,bar:foobAR", "fOObarfoobAR", true}, {"FOo/BaR.html", "FOo/BaR.html", true}, {"трям/трям", "трям/трям", true}, {"은행", "은행", true},@@ -47,6 +47,7 @@
{"Банковский кассир", "Банковскии-кассир", true},// Issue #1488
{"संस्कृत", "संस्कृत", false},+ {"a%C3%B1ame", "a%C3%B1ame", false}, // Issue #1292}
for _, test := range tests {@@ -68,7 +69,7 @@
}{ {" FOO bar ", "foo-bar"}, {"Foo.Bar/fOO_bAr-Foo", "foo.bar/foo_bar-foo"},- {"FOO,bar:Foo%Bar", "foobarfoobar"},+ {"FOO,bar:FooBar", "foobarfoobar"}, {"foo/BAR.HTML", "foo/bar.html"}, {"трям/трям", "трям/трям"}, {"은행", "은행"},@@ -93,7 +94,7 @@
}{ {" FOO bar ", "FOO-bar"}, {"Foo.Bar/fOO_bAr-Foo", "Foo.Bar/fOO_bAr-Foo"},- {"FOO,bar:Foo%Bar", "FOObarFooBar"},+ {"FOO,bar:FooBar", "FOObarFooBar"}, {"foo/BAR.HTML", "foo/BAR.HTML"}, {"трям/трям", "трям/трям"}, {"은행", "은행"},@@ -771,6 +772,7 @@
{testDir + " Foo bar ", dir + testDir + " Foo bar " + FilePathSeparator}, {testDir + "Foo.Bar/foo_Bar-Foo", dir + testDir + "Foo.Bar/foo_Bar-Foo" + FilePathSeparator}, {testDir + "fOO,bar:foo%bAR", dir + testDir + "fOObarfoo%bAR" + FilePathSeparator},+ {testDir + "fOO,bar:foobAR", dir + testDir + "fOObarfoobAR" + FilePathSeparator}, {testDir + "FOo/BaR.html", dir + testDir + "FOo/BaR.html" + FilePathSeparator}, {testDir + "трям/трям", dir + testDir + "трям/трям" + FilePathSeparator}, {testDir + "은행", dir + testDir + "은행" + FilePathSeparator},--- a/helpers/url_test.go
+++ b/helpers/url_test.go
@@ -28,7 +28,7 @@
}{ {" foo bar ", "foo-bar"}, {"foo.bar/foo_bar-foo", "foo.bar/foo_bar-foo"},- {"foo,bar:foo%bar", "foobarfoobar"},+ {"foo,bar:foobar", "foobarfoobar"}, {"foo/bar.html", "foo/bar.html"}, {"трям/трям", "%D1%82%D1%80%D1%8F%D0%BC/%D1%82%D1%80%D1%8F%D0%BC"},}
--
⑨