Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gohugoio/hugo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorChristoph Burgdorf <christoph.burgdorf@bvsn.org>2014-04-15 01:25:54 +0400
committerspf13 <steve.francia@gmail.com>2014-04-27 09:17:54 +0400
commitf271faea066c47817c8a9a62ef5509a151452d6a (patch)
tree7cc9b65bc37abd021d04a77020dd7896099e97d4 /source
parent5581e33a34ce852594ba03c3c7f0c067062d1358 (diff)
Don't process dotfiles
This commit makes it so that not only files but also folders which start with a dot are ignored. Fixes #239
Diffstat (limited to 'source')
-rw-r--r--source/content_directory_test.go6
-rw-r--r--source/filesystem.go6
2 files changed, 7 insertions, 5 deletions
diff --git a/source/content_directory_test.go b/source/content_directory_test.go
index d8ed8128a..aab3410bb 100644
--- a/source/content_directory_test.go
+++ b/source/content_directory_test.go
@@ -4,11 +4,13 @@ import (
"testing"
)
-func TestIgnoreDotFiles(t *testing.T) {
+func TestIgnoreDotFilesAndDirectories(t *testing.T) {
tests := []struct {
path string
ignore bool
}{
+ {".foobar/", true },
+ {"foobar/.barfoo/", true },
{"barfoo.md", false},
{"foobar/barfoo.md", false},
{"foobar/.barfoo.md", true},
@@ -22,7 +24,7 @@ func TestIgnoreDotFiles(t *testing.T) {
}
for _, test := range tests {
- if ignored := ignoreDotFile(test.path); test.ignore != ignored {
+ if ignored := isNonProcessablePath(test.path); test.ignore != ignored {
t.Errorf("File not ignored. Expected: %t, got: %t", test.ignore, ignored)
}
}
diff --git a/source/filesystem.go b/source/filesystem.go
index abec6ca6e..3a176d7ba 100644
--- a/source/filesystem.go
+++ b/source/filesystem.go
@@ -87,12 +87,12 @@ func (f *Filesystem) captureFiles() {
}
if fi.IsDir() {
- if f.avoid(filePath) {
+ if f.avoid(filePath) || isNonProcessablePath(filePath) {
return filepath.SkipDir
}
return nil
} else {
- if ignoreDotFile(filePath) {
+ if isNonProcessablePath(filePath) {
return nil
}
data, err := ioutil.ReadFile(filePath)
@@ -116,7 +116,7 @@ func (f *Filesystem) avoid(filePath string) bool {
return false
}
-func ignoreDotFile(filePath string) bool {
+func isNonProcessablePath(filePath string) bool {
base := filepath.Base(filePath)
if base[0] == '.' {
return true