X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=blog.el;h=f6c1e6c9566e245ac95f82d0f0021f8108a7cf0f;hb=323ccbeededf2954ddeb3e14ff68a275ccb231ff;hp=3e28bcbcc308d53fd35d6e494e7a6483c541d665;hpb=055045ab3a3ccf69504b2f2e08e3e6527b663980;p=blog.git
diff --git a/blog.el b/blog.el
index 3e28bcb..f6c1e6c 100644
--- a/blog.el
+++ b/blog.el
@@ -39,52 +39,134 @@
;; constants
;; (defconst root-dir "~/Private/blog/")
(defconst root-dir (file-name-directory (or load-file-name buffer-file-name)))
-(defconst publish-dir (concat root-dir "_site/"))
-(defconst res-dir (concat root-dir "res/"))
-(defconst css-file (concat res-dir "worg.css"))
+(defvar publish-dir (concat root-dir "_site/"))
+(defconst css-file "../css/worg.css")
+(defvar force-publish nil)
+;; (defconst css-file (concat root-dir "css/worg.css"))
+(let ((aa (pop command-line-args-left)))
+ (if (> (length aa) 0)
+ (setq publish-dir aa)))
+(let ((force (pop command-line-args-left)))
+ (if (string= force "true")
+ (setq force-publish t)))
+
+
+;; (setq publish-dir (or (pop command-line-args-left) publish-dir))
+(message publish-dir)
+
(require 'org)
-;; (require 'org-html)
(require 'ox-publish)
(require 'htmlize)
-
+(message "Org-mode version %s" (org-version))
+(message "publish directory is %s" publish-dir)
+(message "force %s" force-publish)
;; To prevent inline-css when exporting html. will use external css
(setq org-html-htmlize-output-type 'css)
+
+(setq blog-extra-head
+ (concat
+ ;; "\n"
+ "\n"
+ ""
+ ))
+
+(setq blog-header
+ (concat
+ " Peng Li
"
+ "
"
+ ""
+ "
RSS +License: CC BY-SA 4.0
\n +\n") + +;; don't know why setting this null in `org-publish-project-alist' doesn't work +;; (setf org-html-home/up-format "") + (setq org-publish-project-alist `( - ("org-notes" - :base-directory ,root-dir - :base-extension "org" - :publishing-directory ,publish-dir - :recursive t - :publishing-function org-html-publish-to-html - :headline-levels 4 - :section-numbers nil - :auto-preamble t - :auto-sitemap t ;Generate sitmap.org automagicaly... - :sitemap-filename "sitemap.org" ;... call it sitemap.org (it's the default )... - :sitemap-title "Sitemap" - - :html-table-of-contents nil - :html-postamble nil ;dont export creator auto validation info in html postamble div - :html-link-home "/" - :html-head ,(concat "") - :html-head-include-default-style nil - :html-head-include-scripts nil) - ("org-static" - :base-directory ,root-dir - :base-extension "css\\|js\\|png\\|gif\\|pdf\\|mp3\\|ogg\\|swf" - :publishing-directory ,publish-dir - :recursive t - :publishing-function org-publish-attachment - :table-of-contents nil) - ("org" :components ("org-notes" "org-static")))) - - -(provide 'blog) + ("blog-pages" + ;; publishing + :base-directory ,root-dir + :base-extension "org" + :publishing-directory ,publish-dir + :recursive nil + :publishing-function org-html-publish-to-html + + ;; html style + :htlm-link-home "/" + ;; disable home/up div + :html-home/up-format "" + :html-link-home "" + :html-link-up "" + ;; + :html-head nil + :html-head-include-default-style nil + :html-head-include-scripts nil + :html-head-extra ,blog-extra-head + :html-preamble ,blog-header + :html-postamble ,blog-footer) + + ("blog-posts" + ;; publishing + :base-directory ,(concat root-dir "/posts") + :base-extension "org" + :publishing-directory ,(concat publish-dir "/posts") + :recursive t + :publishing-function org-html-publish-to-html + + ;; html style + :html-link-home "/" + ;; disable Home/Up + :html-home/up-format "" + :html-link-up "" + :html-link-home "" + ;; Add css file, preamble and posamble + :html-head nil + :html-head-include-default-style nil + :html-head-include-scripts nil + :html-head-extra ,blog-extra-head + :html-preamble ,blog-header + :html-postamble ,blog-footer + + ;; sitemap + :auto-sitemap t + :sitemap-filename "sitemap.org" + :sitemap-title "Sitemap" + ) + + ("blog-css" + :base-directory ,(concat root-dir "/css") + :base-extension ".*" + :publishing-directory ,(concat publish-dir "/css") + :publishing-function org-publish-attachment + :recursive t) + ("blog-cgi" + :base-directory ,(concat root-dir "/cgi-bin") + :base-extension ".*" + :publishing-directory ,(concat publish-dir "/cgi-bin") + :publishing-function org-publish-attachment + :recursive t) + ("blog" :components ("blog-pages" "blog-posts" "blog-css" "blog-cgi")))) + +(org-publish-project "blog" force-publish) + +;; (provide 'blog) +(kill-emacs 0) ;;; blog.el ends here