diff --git a/bin/blogo-amd64-darwin b/bin/blogo-amd64-darwin index 21fb8ac..690cc1b 100755 Binary files a/bin/blogo-amd64-darwin and b/bin/blogo-amd64-darwin differ diff --git a/bin/blogo-amd64-linux b/bin/blogo-amd64-linux index e3b7ef5..15a5643 100755 Binary files a/bin/blogo-amd64-linux and b/bin/blogo-amd64-linux differ diff --git a/bin/blogo-amd64.exe b/bin/blogo-amd64.exe index b408cca..4d45bc3 100755 Binary files a/bin/blogo-amd64.exe and b/bin/blogo-amd64.exe differ diff --git a/main.go b/main.go index 7794dba..f15fead 100644 --- a/main.go +++ b/main.go @@ -12,9 +12,9 @@ import ( "github.com/gomarkdown/markdown/parser" ) -const version = "v0_20220501" +const version = "v0_20220503" const directory = "blogo-input" -const outputDir = "public" +const defaultOutputDir = "public" func main() { devMode := flag.Bool("d", false, "dev mode") @@ -22,7 +22,8 @@ func main() { flag.Parse() fmt.Println("Blogo version:", version) - _ = os.Mkdir(outputDir, os.ModePerm) + readConfig(directory + "/blogo.json") + _ = os.Mkdir(config.OutputDir, os.ModePerm) fmt.Println("devMode:", *devMode) generateHTML() @@ -35,7 +36,7 @@ func main() { // go watch("./public") // serve files - fs := http.FileServer(http.Dir("public")) + fs := http.FileServer(http.Dir(config.OutputDir)) fmt.Printf("Blog being served in: \n http://127.0.0.1:%s\n http://localhost:%s\n", *port, *port) log.Fatal(http.ListenAndServe(":"+*port, fs)) @@ -75,7 +76,7 @@ func generateHTML() { m["[blogo-img]"] = config.AbsoluteUrl + "/" + config.MetaImg m["[blogo-link]"] = config.AbsoluteUrl r := putHTMLToTemplate(indexTemplate, m) - writeFile(outputDir+"/"+"index.html", r) + writeFile(config.OutputDir+"/"+"index.html", r) // generate posts pages @@ -97,13 +98,13 @@ func generateHTML() { m["[blogo-img]"] = config.AbsoluteUrl + "/" + post.MetaImg r := putHTMLToTemplate(indexTemplate, m) - writeFile(outputDir+"/"+filename+".html", r) + writeFile(config.OutputDir+"/"+filename+".html", r) } //copy raw fmt.Println("copying raw:") for _, dir := range config.CopyRaw { - copyRaw(directory+"/"+dir, outputDir+"/") + copyRaw(directory+"/"+dir, config.OutputDir+"/") } } diff --git a/readConfig.go b/readConfig.go index 8d9abf9..5b4a499 100755 --- a/readConfig.go +++ b/readConfig.go @@ -25,6 +25,7 @@ type Config struct { PostThumbTemplate string `json:"postThumbTemplate"` Posts []Post `json:"posts"` CopyRaw []string `json:"copyRaw"` + OutputDir string `json:"outputDir"` } var config Config @@ -37,4 +38,7 @@ func readConfig(path string) { if config.PostsDir != "" { config.PostsDir += "/" } + if config.OutputDir == "" { + config.OutputDir = defaultOutputDir + } }