;;; op-enhance.el --- HTML page customization required by org-page ;; Copyright (C) 2012, 2013 Kelvin Hu ;; Author: Kelvin Hu ;; Keywords: convenience ;; Homepage: https://github.com/kelvinh/org-page ;; This program is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with this program. If not, see . ;;; Commentary: ;; Improve generated html page display effect ;;; Code: (require 'format-spec) (require 'ox) (require 'ht) (require 'op-util) (require 'op-vars) (defun op/get-theme-dir (theme) "Return the resource storage directory of THEME." (file-name-as-directory (expand-file-name (format "themes/%s/resources" (symbol-name theme)) op/load-directory))) (defun op/prepare-theme (pub-root-dir) "Copy theme files to PUB-ROOT-DIR." (let ((pub-theme-dir (expand-file-name "media/" pub-root-dir)) (theme-dir (op/get-theme-dir op/theme))) (unless (file-directory-p theme-dir) (message "Theme %s not found, use default theme `mdo' instead." (symbol-name op/theme)) (setq op/theme 'mdo) (setq theme-dir (op/get-theme-dir 'mdo))) (op/update-theme op/theme) (when (file-directory-p pub-theme-dir) (delete-directory pub-theme-dir t)) (copy-directory theme-dir pub-theme-dir t t t))) (defun op/update-theme (theme) "Update theme related variable(s), to make it(them) take effect after user used a new theme." (unless theme (setq theme 'mdo)) (setq theme (symbol-name theme)) (setq op/template-directory (concat op/load-directory (format "themes/%s/templates/" theme)))) (provide 'op-enhance) ;;; op-enhance.el ends here