summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--commands/hugo.go3
-rw-r--r--helpers/path.go13
-rw-r--r--helpers/path_test.go6
3 files changed, 17 insertions, 5 deletions
diff --git a/commands/hugo.go b/commands/hugo.go
index 2b0250965..5cea9d095 100644
--- a/commands/hugo.go
+++ b/commands/hugo.go
@@ -141,6 +141,7 @@ func LoadDefaultSettings() {
viper.SetDefault("IgnoreCache", false)
viper.SetDefault("CanonifyURLs", false)
viper.SetDefault("RelativeURLs", false)
+ viper.SetDefault("RemovePathAccents", false)
viper.SetDefault("Taxonomies", map[string]string{"tag": "tags", "category": "categories"})
viper.SetDefault("Permalinks", make(hugolib.PermalinkOverrides, 0))
viper.SetDefault("Sitemap", hugolib.Sitemap{Priority: -1})
@@ -192,7 +193,7 @@ func InitializeConfig() {
if hugoCmdV.PersistentFlags().Lookup("disableSitemap").Changed {
viper.Set("DisableSitemap", DisableSitemap)
}
-
+
if hugoCmdV.PersistentFlags().Lookup("verbose").Changed {
viper.Set("Verbose", Verbose)
}
diff --git a/helpers/path.go b/helpers/path.go
index 5e5e3fa89..0c601a868 100644
--- a/helpers/path.go
+++ b/helpers/path.go
@@ -99,9 +99,16 @@ func UnicodeSanitize(s string) string {
}
}
- // remove accents - see https://blog.golang.org/normalization
- t := transform.Chain(norm.NFD, transform.RemoveFunc(isMn), norm.NFC)
- result, _, _ := transform.String(t, string(target))
+ var result string
+
+ if viper.GetBool("RemovePathAccents") {
+ // remove accents - see https://blog.golang.org/normalization
+ t := transform.Chain(norm.NFD, transform.RemoveFunc(isMn), norm.NFC)
+ result, _, _ = transform.String(t, string(target))
+ } else {
+ result = string(target)
+ }
+
return result
return string(target)
diff --git a/helpers/path_test.go b/helpers/path_test.go
index 3fdb94a4f..5cf863b6c 100644
--- a/helpers/path_test.go
+++ b/helpers/path_test.go
@@ -17,6 +17,10 @@ import (
)
func TestMakePath(t *testing.T) {
+ viper.Reset()
+ defer viper.Reset()
+ viper.Set("RemovePathAccents", true)
+
tests := []struct {
input string
expected string
@@ -717,7 +721,7 @@ func TestGetTempDir(t *testing.T) {
{testDir + "FOo/BaR.html", dir + testDir + "FOo/BaR.html" + FilePathSeparator},
{testDir + "трям/трям", dir + testDir + "трям/трям" + FilePathSeparator},
{testDir + "은행", dir + testDir + "은행" + FilePathSeparator},
- {testDir + "Банковский кассир", dir + testDir + "Банковскии-кассир" + FilePathSeparator},
+ {testDir + "Банковский кассир", dir + testDir + "Банковский-кассир" + FilePathSeparator},
}
for _, test := range tests {