ref: cece27fa2e5b4c273bb763cefa749ff9b6c46636
parent: e31d4609098f8f9c86551c3d1b11cb887b42bfcb
author: Joel Scoble <[email protected]>
date: Mon Aug 18 15:52:43 EDT 2014
fix issue 411, /path/to/site/archetypes : is a directory error
--- a/create/content.go
+++ b/create/content.go
@@ -30,11 +30,11 @@
)
func NewContent(kind, name string) (err error) {
- jww.INFO.Println("attempting to create", name, "of", kind)
+ jww.INFO.Println("attempting to create ", name, "of", kind)
location := FindArchetype(kind)
- var by []byte
+ var by []byte
if location != "" {
by, err = ioutil.ReadFile(location)
@@ -118,11 +118,21 @@
}
for _, x := range search {
- pathsToCheck := []string{kind + ".md", kind, "default.md", "default"}
+ // If the new content isn't in a subdirectory, kind == "".
+ // Therefore it should be excluded otherwise `is a directory`
+ // error will occur. github.com/spf13/hugo/issues/411
+ var pathsToCheck []string
+
+ if kind == "" {
+ pathsToCheck = []string{"default.md", "default"}
+ } else {
+ pathsToCheck = []string{kind + ".md", kind, "default.md", "default"}
+ }
for _, p := range pathsToCheck {
curpath := path.Join(x, p)
jww.DEBUG.Println("checking", curpath, "for archetypes")
if exists, _ := helpers.Exists(curpath); exists {
+ jww.INFO.Println("curpath: " + curpath)
return curpath
}
}