1 ;;; blog.el --- Config file used to export blog -*- lexical-binding: t; -*-
3 ;; Copyright (C) 2017 Peng Li
5 ;; Author: Peng Li <seudut@gmail.com>
8 ;; This program is free software; you can redistribute it and/or modify
9 ;; it under the terms of the GNU General Public License as published by
10 ;; the Free Software Foundation, either version 3 of the License, or
11 ;; (at your option) any later version.
13 ;; This program is distributed in the hope that it will be useful,
14 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
15 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 ;; GNU General Public License for more details.
18 ;; You should have received a copy of the GNU General Public License
19 ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
23 ;; This is emacs config used to export Blog Org files in batch mode.
28 (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/"))
31 (setq debug-on-error t)
34 (unless (package-installed-p 'htmlize)
35 (package-refresh-contents)
36 (package-install 'htmlize))
40 ;; (defconst root-dir "~/Private/blog/")
41 (defconst root-dir (file-name-directory (or load-file-name buffer-file-name)))
42 (defconst publish-dir (concat root-dir "_site/"))
43 (defconst css-file "../css/worg.css")
44 ;; (defconst css-file (concat root-dir "css/worg.css"))
49 ;; (require 'org-html)
55 ;; To prevent inline-css when exporting html. will use external css
56 (setq org-html-htmlize-output-type 'css)
58 (setq org-publish-project-alist
61 :base-directory ,root-dir
63 :publishing-directory ,publish-dir
65 :publishing-function org-html-publish-to-html
69 :auto-sitemap t ;Generate sitmap.org automagicaly...
70 :sitemap-filename "sitemap.org" ;... call it sitemap.org (it's the default )...
71 :sitemap-title "Sitemap"
73 :html-table-of-contents nil
74 :html-postamble nil ;dont export creator auto validation info in html postamble div
76 :html-head ,(concat "<link rel='stylesheet' href='" css-file "' />")
77 :html-head-include-default-style nil
78 :html-head-include-scripts nil)
80 :base-directory ,root-dir
81 :base-extension "css\\|js\\|png\\|gif\\|pdf\\|mp3\\|ogg\\|swf\\|el"
82 :publishing-directory ,publish-dir
84 :publishing-function org-publish-attachment
85 :table-of-contents nil)
86 ("org" :components ("org-notes" "org-static"))))