diff options
-rw-r--r-- | config/config.go | 12 | ||||
-rw-r--r-- | site/site.go | 16 |
2 files changed, 24 insertions, 4 deletions
diff --git a/config/config.go b/config/config.go index c8b702b..c02d163 100644 --- a/config/config.go +++ b/config/config.go @@ -26,6 +26,8 @@ type Settings struct { PreviewServer string `yaml:"preview_server,omitempty"` PreviewDir string `yaml:"preview_dir,omitempty"` + FileBlacklist []string `yaml:"ignore_files,omitempty"` + Verbose bool `yaml:"verbose,omitempty"` } @@ -79,3 +81,13 @@ func addDefaults() { Config.PreviewDir = Config.HtmlDir } } + +// IgnoredFile returns true if `filename` is in the ignored_files config +func IgnoredFile(filename string) bool { + for _, badFile := range Config.FileBlacklist { + if filename == badFile { + return true + } + } + return false +} diff --git a/site/site.go b/site/site.go index 78eb2f0..a897f4e 100644 --- a/site/site.go +++ b/site/site.go @@ -5,6 +5,7 @@ import ( "adammathes.com/snkt/config" "adammathes.com/snkt/post" "adammathes.com/snkt/render" + "adammathes.com/snkt/vlog" "io/ioutil" "log" "path" @@ -53,7 +54,7 @@ func (s *Site) Read() { } /* -ReadPosts reads all files from the Config.TxtDir, parses them and stores in s.Posts +ReadPosts reads all files from the Config.TxtDir, parses them and stores in s.Posts */ func (s *Site) ReadPosts() { // TODO: filter this as needed @@ -63,15 +64,22 @@ func (s *Site) ReadPosts() { } for _, file := range files { + + if config.IgnoredFile(file.Name()) { + vlog.Printf("ignoring file: %s\n", file.Name()) + continue + } + p := post.NewPost(s) p.Read(file) // Ignore post-dated posts unless overriden in config if !config.Config.ShowFuture && p.InFuture { - log.Printf("Skipping future dated post: %s\n", p.SourceFile) - } else { - s.Posts = append(s.Posts, p) + vlog.Printf("Skipping future dated post: %s\n", p.SourceFile) + continue } + + s.Posts = append(s.Posts, p) } // Sort the posts by date, earliest first |