diff --git a/cmd/eiblog/config/config.go b/cmd/eiblog/config/config.go index 3f19b1a..3beca38 100644 --- a/cmd/eiblog/config/config.go +++ b/cmd/eiblog/config/config.go @@ -14,8 +14,8 @@ import ( var ( // Conf 配置 Conf Config - // WorkDir 工作目录 - WorkDir string + // EtcDir 工作目录 + EtcDir string ) // Config config @@ -50,11 +50,11 @@ func init() { // 加载配置文件 var err error - WorkDir, err = config.WalkWorkDir() + EtcDir, err = config.WorkEtcPath() if err != nil { panic(err) } - path := filepath.Join(WorkDir, "etc", "app.yml") + path := filepath.Join(EtcDir, "app.yml") data, err := os.ReadFile(path) if err != nil { diff --git a/assets/admin/Moxie.swf b/cmd/eiblog/etc/assets/admin/Moxie.swf similarity index 100% rename from assets/admin/Moxie.swf rename to cmd/eiblog/etc/assets/admin/Moxie.swf diff --git a/assets/admin/diff.js b/cmd/eiblog/etc/assets/admin/diff.js similarity index 100% rename from assets/admin/diff.js rename to cmd/eiblog/etc/assets/admin/diff.js diff --git a/assets/admin/hyperdown.js b/cmd/eiblog/etc/assets/admin/hyperdown.js similarity index 100% rename from assets/admin/hyperdown.js rename to cmd/eiblog/etc/assets/admin/hyperdown.js diff --git a/assets/admin/jquery-ui.js b/cmd/eiblog/etc/assets/admin/jquery-ui.js similarity index 100% rename from assets/admin/jquery-ui.js rename to cmd/eiblog/etc/assets/admin/jquery-ui.js diff --git a/assets/admin/jquery.js b/cmd/eiblog/etc/assets/admin/jquery.js similarity index 100% rename from assets/admin/jquery.js rename to cmd/eiblog/etc/assets/admin/jquery.js diff --git a/assets/admin/moxie.js b/cmd/eiblog/etc/assets/admin/moxie.js similarity index 100% rename from assets/admin/moxie.js rename to cmd/eiblog/etc/assets/admin/moxie.js diff --git a/assets/admin/pagedown-extra.js b/cmd/eiblog/etc/assets/admin/pagedown-extra.js similarity index 100% rename from assets/admin/pagedown-extra.js rename to cmd/eiblog/etc/assets/admin/pagedown-extra.js diff --git a/assets/admin/pagedown.js b/cmd/eiblog/etc/assets/admin/pagedown.js similarity index 100% rename from assets/admin/pagedown.js rename to cmd/eiblog/etc/assets/admin/pagedown.js diff --git a/assets/admin/plupload.js b/cmd/eiblog/etc/assets/admin/plupload.js similarity index 100% rename from assets/admin/plupload.js rename to cmd/eiblog/etc/assets/admin/plupload.js diff --git a/assets/admin/style.css b/cmd/eiblog/etc/assets/admin/style.css similarity index 100% rename from assets/admin/style.css rename to cmd/eiblog/etc/assets/admin/style.css diff --git a/assets/admin/timepicker.js b/cmd/eiblog/etc/assets/admin/timepicker.js similarity index 100% rename from assets/admin/timepicker.js rename to cmd/eiblog/etc/assets/admin/timepicker.js diff --git a/assets/admin/tokeninput.js b/cmd/eiblog/etc/assets/admin/tokeninput.js similarity index 100% rename from assets/admin/tokeninput.js rename to cmd/eiblog/etc/assets/admin/tokeninput.js diff --git a/assets/admin/typecho.js b/cmd/eiblog/etc/assets/admin/typecho.js similarity index 100% rename from assets/admin/typecho.js rename to cmd/eiblog/etc/assets/admin/typecho.js diff --git a/assets/img/ajax-loader.gif b/cmd/eiblog/etc/assets/img/ajax-loader.gif similarity index 100% rename from assets/img/ajax-loader.gif rename to cmd/eiblog/etc/assets/img/ajax-loader.gif diff --git a/assets/img/editor.png b/cmd/eiblog/etc/assets/img/editor.png similarity index 100% rename from assets/img/editor.png rename to cmd/eiblog/etc/assets/img/editor.png diff --git a/assets/img/editor@2x.png b/cmd/eiblog/etc/assets/img/editor@2x.png similarity index 100% rename from assets/img/editor@2x.png rename to cmd/eiblog/etc/assets/img/editor@2x.png diff --git a/assets/img/icons-2x-s481937020b.png b/cmd/eiblog/etc/assets/img/icons-2x-s481937020b.png similarity index 100% rename from assets/img/icons-2x-s481937020b.png rename to cmd/eiblog/etc/assets/img/icons-2x-s481937020b.png diff --git a/assets/img/icons-s0c4f1c5ae6.png b/cmd/eiblog/etc/assets/img/icons-s0c4f1c5ae6.png similarity index 100% rename from assets/img/icons-s0c4f1c5ae6.png rename to cmd/eiblog/etc/assets/img/icons-s0c4f1c5ae6.png diff --git a/assets/img/noscreen.png b/cmd/eiblog/etc/assets/img/noscreen.png similarity index 100% rename from assets/img/noscreen.png rename to cmd/eiblog/etc/assets/img/noscreen.png diff --git a/assets/img/typecho-logo.svg b/cmd/eiblog/etc/assets/img/typecho-logo.svg similarity index 100% rename from assets/img/typecho-logo.svg rename to cmd/eiblog/etc/assets/img/typecho-logo.svg diff --git a/website/template/crossdomainTpl.xml b/cmd/eiblog/etc/template/crossdomainTpl.xml similarity index 100% rename from website/template/crossdomainTpl.xml rename to cmd/eiblog/etc/template/crossdomainTpl.xml diff --git a/website/template/feedTpl.xml b/cmd/eiblog/etc/template/feedTpl.xml similarity index 100% rename from website/template/feedTpl.xml rename to cmd/eiblog/etc/template/feedTpl.xml diff --git a/website/template/opensearchTpl.xml b/cmd/eiblog/etc/template/opensearchTpl.xml similarity index 100% rename from website/template/opensearchTpl.xml rename to cmd/eiblog/etc/template/opensearchTpl.xml diff --git a/website/template/robotsTpl.xml b/cmd/eiblog/etc/template/robotsTpl.xml similarity index 100% rename from website/template/robotsTpl.xml rename to cmd/eiblog/etc/template/robotsTpl.xml diff --git a/website/template/sitemapTpl.xml b/cmd/eiblog/etc/template/sitemapTpl.xml similarity index 100% rename from website/template/sitemapTpl.xml rename to cmd/eiblog/etc/template/sitemapTpl.xml diff --git a/website/404.html b/cmd/eiblog/etc/website/404.html similarity index 100% rename from website/404.html rename to cmd/eiblog/etc/website/404.html diff --git a/website/README.md b/cmd/eiblog/etc/website/README.md similarity index 100% rename from website/README.md rename to cmd/eiblog/etc/website/README.md diff --git a/website/about.html b/cmd/eiblog/etc/website/about.html similarity index 100% rename from website/about.html rename to cmd/eiblog/etc/website/about.html diff --git a/website/admin/adminLayout.html b/cmd/eiblog/etc/website/admin/adminLayout.html similarity index 100% rename from website/admin/adminLayout.html rename to cmd/eiblog/etc/website/admin/adminLayout.html diff --git a/website/admin/discussion.html b/cmd/eiblog/etc/website/admin/discussion.html similarity index 100% rename from website/admin/discussion.html rename to cmd/eiblog/etc/website/admin/discussion.html diff --git a/website/admin/draft.html b/cmd/eiblog/etc/website/admin/draft.html similarity index 100% rename from website/admin/draft.html rename to cmd/eiblog/etc/website/admin/draft.html diff --git a/website/admin/general.html b/cmd/eiblog/etc/website/admin/general.html similarity index 100% rename from website/admin/general.html rename to cmd/eiblog/etc/website/admin/general.html diff --git a/website/admin/login.html b/cmd/eiblog/etc/website/admin/login.html similarity index 100% rename from website/admin/login.html rename to cmd/eiblog/etc/website/admin/login.html diff --git a/website/admin/post.html b/cmd/eiblog/etc/website/admin/post.html similarity index 100% rename from website/admin/post.html rename to cmd/eiblog/etc/website/admin/post.html diff --git a/website/admin/posts.html b/cmd/eiblog/etc/website/admin/posts.html similarity index 100% rename from website/admin/posts.html rename to cmd/eiblog/etc/website/admin/posts.html diff --git a/website/admin/profile.html b/cmd/eiblog/etc/website/admin/profile.html similarity index 100% rename from website/admin/profile.html rename to cmd/eiblog/etc/website/admin/profile.html diff --git a/website/admin/serie.html b/cmd/eiblog/etc/website/admin/serie.html similarity index 100% rename from website/admin/serie.html rename to cmd/eiblog/etc/website/admin/serie.html diff --git a/website/admin/series.html b/cmd/eiblog/etc/website/admin/series.html similarity index 100% rename from website/admin/series.html rename to cmd/eiblog/etc/website/admin/series.html diff --git a/website/admin/tags.html b/cmd/eiblog/etc/website/admin/tags.html similarity index 100% rename from website/admin/tags.html rename to cmd/eiblog/etc/website/admin/tags.html diff --git a/website/admin/trash.html b/cmd/eiblog/etc/website/admin/trash.html similarity index 100% rename from website/admin/trash.html rename to cmd/eiblog/etc/website/admin/trash.html diff --git a/website/archives.html b/cmd/eiblog/etc/website/archives.html similarity index 100% rename from website/archives.html rename to cmd/eiblog/etc/website/archives.html diff --git a/website/article.html b/cmd/eiblog/etc/website/article.html similarity index 100% rename from website/article.html rename to cmd/eiblog/etc/website/article.html diff --git a/website/blogroll.html b/cmd/eiblog/etc/website/blogroll.html similarity index 100% rename from website/blogroll.html rename to cmd/eiblog/etc/website/blogroll.html diff --git a/website/disqus.html b/cmd/eiblog/etc/website/disqus.html similarity index 100% rename from website/disqus.html rename to cmd/eiblog/etc/website/disqus.html diff --git a/website/home.html b/cmd/eiblog/etc/website/home.html similarity index 100% rename from website/home.html rename to cmd/eiblog/etc/website/home.html diff --git a/website/homeLayout.html b/cmd/eiblog/etc/website/homeLayout.html similarity index 100% rename from website/homeLayout.html rename to cmd/eiblog/etc/website/homeLayout.html diff --git a/website/search.html b/cmd/eiblog/etc/website/search.html similarity index 100% rename from website/search.html rename to cmd/eiblog/etc/website/search.html diff --git a/website/series.html b/cmd/eiblog/etc/website/series.html similarity index 100% rename from website/series.html rename to cmd/eiblog/etc/website/series.html diff --git a/website/st_ana.js b/cmd/eiblog/etc/website/st_ana.js similarity index 100% rename from website/st_ana.js rename to cmd/eiblog/etc/website/st_ana.js diff --git a/website/st_blog.css b/cmd/eiblog/etc/website/st_blog.css similarity index 100% rename from website/st_blog.css rename to cmd/eiblog/etc/website/st_blog.css diff --git a/website/st_blog.js b/cmd/eiblog/etc/website/st_blog.js similarity index 100% rename from website/st_blog.js rename to cmd/eiblog/etc/website/st_blog.js diff --git a/website/st_highlight.js b/cmd/eiblog/etc/website/st_highlight.js similarity index 100% rename from website/st_highlight.js rename to cmd/eiblog/etc/website/st_highlight.js diff --git a/website/st_jq.js b/cmd/eiblog/etc/website/st_jq.js similarity index 100% rename from website/st_jq.js rename to cmd/eiblog/etc/website/st_jq.js diff --git a/cmd/eiblog/handler/file/timer.go b/cmd/eiblog/handler/file/timer.go index 14dd2e0..d6c8cda 100644 --- a/cmd/eiblog/handler/file/timer.go +++ b/cmd/eiblog/handler/file/timer.go @@ -16,7 +16,7 @@ import ( var xmlTmpl *template.Template func init() { - root := filepath.Join(config.WorkDir, "website", "template", "*.xml") + root := filepath.Join(config.EtcDir, "template", "*.xml") var err error xmlTmpl, err = template.New("").Funcs(template.FuncMap{ diff --git a/cmd/eiblog/handler/page/page.go b/cmd/eiblog/handler/page/page.go index a878ef3..7f4bfa9 100644 --- a/cmd/eiblog/handler/page/page.go +++ b/cmd/eiblog/handler/page/page.go @@ -17,17 +17,10 @@ var htmlTmpl *template.Template func init() { htmlTmpl = template.New("eiblog").Funcs(tools.TplFuncMap) - root := filepath.Join(config.WorkDir, "website") + root := filepath.Join(config.EtcDir, "website") files := tools.ReadDirFiles(root, func(fi fs.DirEntry) bool { - name := fi.Name() - if strings.HasPrefix(name, ".") { - return true - } - // should not read template dir - if fi.IsDir() && name == "template" { - return true - } - return false + // should not read dir & .DS_Store + return strings.HasPrefix(fi.Name(), ".") || fi.IsDir() }) _, err := htmlTmpl.ParseFiles(files...) if err != nil { diff --git a/cmd/eiblog/main.go b/cmd/eiblog/main.go index b164f5d..65e32e5 100644 --- a/cmd/eiblog/main.go +++ b/cmd/eiblog/main.go @@ -43,7 +43,7 @@ func runHTTPServer(endRun chan error) { swag.RegisterRoutes(e) // static files, page - e.Static("/static", filepath.Join(config.WorkDir, "assets")) + e.Static("/static", filepath.Join(config.EtcDir, "assets")) // static files file.RegisterRoutes(e) diff --git a/pkg/config/config.go b/pkg/config/config.go index 12eb98e..4ca71f8 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -26,25 +26,26 @@ func (mode RunMode) IsRunMode() bool { return mode == RunModeDev || mode == RunModeProd || mode == RunModeLocal } -// WalkWorkDir walk work dir -func WalkWorkDir() (string, error) { +// WorkEtcPath walk etc dir +func WorkEtcPath() (string, error) { gopath := os.Getenv("GOPATH") - workDir, err := os.Getwd() + wd, err := os.Getwd() if err != nil { return "", err } - // find work dir, try 3 times - for gopath != workDir && workDir != "/" { - dir := filepath.Join(workDir, "etc") + // find etc path, try 3 times + var etc string + for gopath != wd && wd != "/" { + etc = filepath.Join(wd, "etc") - _, err := os.Stat(dir) + _, err := os.Stat(etc) if err == nil { break } if !os.IsNotExist(err) { return "", err } - workDir = filepath.Dir(workDir) + wd = filepath.Dir(wd) } - return workDir, nil + return etc, nil }